aboutsummaryrefslogtreecommitdiff
path: root/dep/include/ace
diff options
context:
space:
mode:
Diffstat (limited to 'dep/include/ace')
-rw-r--r--dep/include/ace/ACE.h825
-rw-r--r--dep/include/ace/ACE.inl349
-rw-r--r--dep/include/ace/ACE_export.h77
-rw-r--r--dep/include/ace/ARGV.h334
-rw-r--r--dep/include/ace/ARGV.inl104
-rw-r--r--dep/include/ace/ATM_Acceptor.h122
-rw-r--r--dep/include/ace/ATM_Acceptor.inl43
-rw-r--r--dep/include/ace/ATM_Addr.h197
-rw-r--r--dep/include/ace/ATM_Addr.inl37
-rw-r--r--dep/include/ace/ATM_Connector.h165
-rw-r--r--dep/include/ace/ATM_Connector.inl132
-rw-r--r--dep/include/ace/ATM_Params.h214
-rw-r--r--dep/include/ace/ATM_Params.inl235
-rw-r--r--dep/include/ace/ATM_QoS.h115
-rw-r--r--dep/include/ace/ATM_QoS.inl29
-rw-r--r--dep/include/ace/ATM_Stream.h107
-rw-r--r--dep/include/ace/ATM_Stream.inl133
-rw-r--r--dep/include/ace/Acceptor.h687
-rw-r--r--dep/include/ace/Activation_Queue.h174
-rw-r--r--dep/include/ace/Activation_Queue.inl31
-rw-r--r--dep/include/ace/Active_Map_Manager.h116
-rw-r--r--dep/include/ace/Active_Map_Manager.inl95
-rw-r--r--dep/include/ace/Active_Map_Manager_T.h211
-rw-r--r--dep/include/ace/Active_Map_Manager_T.inl311
-rw-r--r--dep/include/ace/Addr.h104
-rw-r--r--dep/include/ace/Addr.inl61
-rw-r--r--dep/include/ace/Arg_Shifter.h222
-rw-r--r--dep/include/ace/Argv_Type_Converter.h120
-rw-r--r--dep/include/ace/Argv_Type_Converter.inl44
-rw-r--r--dep/include/ace/Array.h30
-rw-r--r--dep/include/ace/Array_Base.h257
-rw-r--r--dep/include/ace/Array_Base.inl146
-rw-r--r--dep/include/ace/Array_Map.h300
-rw-r--r--dep/include/ace/Array_Map.inl133
-rw-r--r--dep/include/ace/Assert.h39
-rw-r--r--dep/include/ace/Asynch_Acceptor.h282
-rw-r--r--dep/include/ace/Asynch_Connector.h170
-rw-r--r--dep/include/ace/Asynch_IO.h1731
-rw-r--r--dep/include/ace/Asynch_IO_Impl.h814
-rw-r--r--dep/include/ace/Asynch_IO_Impl.inl105
-rw-r--r--dep/include/ace/Asynch_Pseudo_Task.h74
-rw-r--r--dep/include/ace/Atomic_Op.h261
-rw-r--r--dep/include/ace/Atomic_Op.inl334
-rw-r--r--dep/include/ace/Atomic_Op_Sparc.h15
-rw-r--r--dep/include/ace/Atomic_Op_T.h370
-rw-r--r--dep/include/ace/Atomic_Op_T.inl339
-rw-r--r--dep/include/ace/Auto_Event.h74
-rw-r--r--dep/include/ace/Auto_Event.inl12
-rw-r--r--dep/include/ace/Auto_Functor.h128
-rw-r--r--dep/include/ace/Auto_Functor.inl134
-rw-r--r--dep/include/ace/Auto_IncDec_T.h91
-rw-r--r--dep/include/ace/Auto_IncDec_T.inl25
-rw-r--r--dep/include/ace/Auto_Ptr.h241
-rw-r--r--dep/include/ace/Auto_Ptr.inl171
-rw-r--r--dep/include/ace/Barrier.h216
-rw-r--r--dep/include/ace/Barrier.inl22
-rw-r--r--dep/include/ace/Base_Thread_Adapter.h193
-rw-r--r--dep/include/ace/Base_Thread_Adapter.inl48
-rw-r--r--dep/include/ace/Based_Pointer_Repository.h91
-rw-r--r--dep/include/ace/Based_Pointer_T.h206
-rw-r--r--dep/include/ace/Based_Pointer_T.inl139
-rw-r--r--dep/include/ace/Basic_Stats.h87
-rw-r--r--dep/include/ace/Basic_Stats.inl53
-rw-r--r--dep/include/ace/Basic_Types.h888
-rw-r--r--dep/include/ace/Basic_Types.inl952
-rw-r--r--dep/include/ace/Bound_Ptr.h389
-rw-r--r--dep/include/ace/Bound_Ptr.inl492
-rw-r--r--dep/include/ace/CDR_Base.h378
-rw-r--r--dep/include/ace/CDR_Base.inl255
-rw-r--r--dep/include/ace/CDR_Size.h237
-rw-r--r--dep/include/ace/CDR_Size.inl419
-rw-r--r--dep/include/ace/CDR_Stream.h1398
-rw-r--r--dep/include/ace/CDR_Stream.inl1720
-rw-r--r--dep/include/ace/CE_Screen_Output.h110
-rw-r--r--dep/include/ace/CORBA_macros.h575
-rw-r--r--dep/include/ace/Cache_Map_Manager_T.h406
-rw-r--r--dep/include/ace/Cache_Map_Manager_T.inl244
-rw-r--r--dep/include/ace/Cached_Connect_Strategy_T.h263
-rw-r--r--dep/include/ace/Caching_Strategies_T.h552
-rw-r--r--dep/include/ace/Caching_Strategies_T.inl456
-rw-r--r--dep/include/ace/Caching_Utility_T.h348
-rw-r--r--dep/include/ace/Capabilities.h220
-rw-r--r--dep/include/ace/Capabilities.inl52
-rw-r--r--dep/include/ace/Cleanup.h138
-rw-r--r--dep/include/ace/Cleanup.inl12
-rw-r--r--dep/include/ace/Cleanup_Strategies_T.h149
-rw-r--r--dep/include/ace/Codecs.h121
-rw-r--r--dep/include/ace/Codeset_IBM1047.h127
-rw-r--r--dep/include/ace/Codeset_Registry.h105
-rw-r--r--dep/include/ace/Codeset_Registry.inl102
-rw-r--r--dep/include/ace/Codeset_Symbols.h221
-rw-r--r--dep/include/ace/Condition_Recursive_Thread_Mutex.h119
-rw-r--r--dep/include/ace/Condition_T.h168
-rw-r--r--dep/include/ace/Condition_T.inl51
-rw-r--r--dep/include/ace/Condition_Thread_Mutex.h191
-rw-r--r--dep/include/ace/Condition_Thread_Mutex.inl74
-rw-r--r--dep/include/ace/Configuration.h893
-rw-r--r--dep/include/ace/Configuration.inl13
-rw-r--r--dep/include/ace/Configuration_Import_Export.h216
-rw-r--r--dep/include/ace/Connection_Recycling_Strategy.h64
-rw-r--r--dep/include/ace/Connector.h564
-rw-r--r--dep/include/ace/Containers.h72
-rw-r--r--dep/include/ace/Containers.inl25
-rw-r--r--dep/include/ace/Containers_T.h2065
-rw-r--r--dep/include/ace/Containers_T.inl473
-rw-r--r--dep/include/ace/Copy_Disabled.h66
-rw-r--r--dep/include/ace/Countdown_Time.h81
-rw-r--r--dep/include/ace/DEV.h78
-rw-r--r--dep/include/ace/DEV.inl18
-rw-r--r--dep/include/ace/DEV_Addr.h91
-rw-r--r--dep/include/ace/DEV_Addr.inl51
-rw-r--r--dep/include/ace/DEV_Connector.h110
-rw-r--r--dep/include/ace/DEV_Connector.inl34
-rw-r--r--dep/include/ace/DEV_IO.h186
-rw-r--r--dep/include/ace/DEV_IO.inl126
-rw-r--r--dep/include/ace/DLL.h195
-rw-r--r--dep/include/ace/DLL_Manager.h269
-rw-r--r--dep/include/ace/Date_Time.h126
-rw-r--r--dep/include/ace/Date_Time.inl219
-rw-r--r--dep/include/ace/Default_Constants.h574
-rw-r--r--dep/include/ace/Dev_Poll_Reactor.h1250
-rw-r--r--dep/include/ace/Dev_Poll_Reactor.inl227
-rw-r--r--dep/include/ace/Dirent.h123
-rw-r--r--dep/include/ace/Dirent.inl99
-rw-r--r--dep/include/ace/Dirent_Selector.h76
-rw-r--r--dep/include/ace/Dirent_Selector.inl19
-rw-r--r--dep/include/ace/Dump.h172
-rw-r--r--dep/include/ace/Dump_T.h82
-rw-r--r--dep/include/ace/Dynamic.h76
-rw-r--r--dep/include/ace/Dynamic.inl34
-rw-r--r--dep/include/ace/Dynamic_Message_Strategy.h218
-rw-r--r--dep/include/ace/Dynamic_Message_Strategy.inl75
-rw-r--r--dep/include/ace/Dynamic_Service.h90
-rw-r--r--dep/include/ace/Dynamic_Service.inl39
-rw-r--r--dep/include/ace/Dynamic_Service_Base.h75
-rw-r--r--dep/include/ace/Dynamic_Service_Dependency.h69
-rw-r--r--dep/include/ace/Encoding_Converter.h71
-rw-r--r--dep/include/ace/Encoding_Converter_Factory.h55
-rw-r--r--dep/include/ace/Env_Value_T.h167
-rw-r--r--dep/include/ace/Env_Value_T.inl60
-rw-r--r--dep/include/ace/Event.h144
-rw-r--r--dep/include/ace/Event.inl18
-rw-r--r--dep/include/ace/Event_Handler.h389
-rw-r--r--dep/include/ace/Event_Handler.inl12
-rw-r--r--dep/include/ace/Event_Handler_T.h192
-rw-r--r--dep/include/ace/Event_Handler_T.inl135
-rw-r--r--dep/include/ace/Exception_Macros.h56
-rw-r--r--dep/include/ace/FIFO.h85
-rw-r--r--dep/include/ace/FIFO.inl25
-rw-r--r--dep/include/ace/FIFO_Recv.h85
-rw-r--r--dep/include/ace/FIFO_Recv.inl24
-rw-r--r--dep/include/ace/FIFO_Recv_Msg.h138
-rw-r--r--dep/include/ace/FIFO_Recv_Msg.inl137
-rw-r--r--dep/include/ace/FIFO_Send.h75
-rw-r--r--dep/include/ace/FIFO_Send.inl24
-rw-r--r--dep/include/ace/FIFO_Send_Msg.h91
-rw-r--r--dep/include/ace/FIFO_Send_Msg.inl53
-rw-r--r--dep/include/ace/FILE.h140
-rw-r--r--dep/include/ace/FILE.inl18
-rw-r--r--dep/include/ace/FILE_Addr.h90
-rw-r--r--dep/include/ace/FILE_Addr.inl33
-rw-r--r--dep/include/ace/FILE_Connector.h114
-rw-r--r--dep/include/ace/FILE_Connector.inl36
-rw-r--r--dep/include/ace/FILE_IO.h171
-rw-r--r--dep/include/ace/FILE_IO.inl152
-rw-r--r--dep/include/ace/File_Lock.h171
-rw-r--r--dep/include/ace/File_Lock.inl96
-rw-r--r--dep/include/ace/Filecache.h353
-rw-r--r--dep/include/ace/Flag_Manip.h59
-rw-r--r--dep/include/ace/Flag_Manip.inl26
-rw-r--r--dep/include/ace/Framework_Component.h211
-rw-r--r--dep/include/ace/Framework_Component.inl39
-rw-r--r--dep/include/ace/Framework_Component_T.h72
-rw-r--r--dep/include/ace/Free_List.h151
-rw-r--r--dep/include/ace/Functor.h593
-rw-r--r--dep/include/ace/Functor.inl282
-rw-r--r--dep/include/ace/Functor_String.h138
-rw-r--r--dep/include/ace/Functor_String.inl53
-rw-r--r--dep/include/ace/Functor_T.h157
-rw-r--r--dep/include/ace/Functor_T.inl42
-rw-r--r--dep/include/ace/Future.h388
-rw-r--r--dep/include/ace/Future_Set.h147
-rw-r--r--dep/include/ace/Get_Opt.h495
-rw-r--r--dep/include/ace/Get_Opt.inl97
-rw-r--r--dep/include/ace/Global_Macros.h1119
-rw-r--r--dep/include/ace/Guard_T.h366
-rw-r--r--dep/include/ace/Guard_T.inl170
-rw-r--r--dep/include/ace/Handle_Gobbler.h68
-rw-r--r--dep/include/ace/Handle_Gobbler.inl78
-rw-r--r--dep/include/ace/Handle_Ops.h51
-rw-r--r--dep/include/ace/Handle_Set.h241
-rw-r--r--dep/include/ace/Handle_Set.inl193
-rw-r--r--dep/include/ace/Hash_Cache_Map_Manager_T.h213
-rw-r--r--dep/include/ace/Hash_Cache_Map_Manager_T.inl73
-rw-r--r--dep/include/ace/Hash_Map_Manager.h32
-rw-r--r--dep/include/ace/Hash_Map_Manager_T.h1304
-rw-r--r--dep/include/ace/Hash_Map_Manager_T.inl1253
-rw-r--r--dep/include/ace/Hash_Map_With_Allocator_T.h112
-rw-r--r--dep/include/ace/Hash_Map_With_Allocator_T.inl82
-rw-r--r--dep/include/ace/Hash_Multi_Map_Manager_T.h968
-rw-r--r--dep/include/ace/Hash_Multi_Map_Manager_T.inl994
-rw-r--r--dep/include/ace/Hashable.h66
-rw-r--r--dep/include/ace/Hashable.inl13
-rw-r--r--dep/include/ace/High_Res_Timer.h316
-rw-r--r--dep/include/ace/High_Res_Timer.inl150
-rw-r--r--dep/include/ace/ICMP_Socket.h111
-rw-r--r--dep/include/ace/INET_Addr.h391
-rw-r--r--dep/include/ace/INET_Addr.inl256
-rw-r--r--dep/include/ace/IOStream.h512
-rw-r--r--dep/include/ace/IOStream_T.h298
-rw-r--r--dep/include/ace/IOStream_T.inl123
-rw-r--r--dep/include/ace/IO_Cntl_Msg.h112
-rw-r--r--dep/include/ace/IO_Cntl_Msg.inl61
-rw-r--r--dep/include/ace/IO_SAP.h95
-rw-r--r--dep/include/ace/IO_SAP.inl42
-rw-r--r--dep/include/ace/IPC_SAP.h97
-rw-r--r--dep/include/ace/IPC_SAP.inl40
-rw-r--r--dep/include/ace/If_Then_Else.h90
-rw-r--r--dep/include/ace/Init_ACE.h62
-rw-r--r--dep/include/ace/Intrusive_Auto_Ptr.h165
-rw-r--r--dep/include/ace/Intrusive_Auto_Ptr.inl146
-rw-r--r--dep/include/ace/Intrusive_List.h145
-rw-r--r--dep/include/ace/Intrusive_List.inl40
-rw-r--r--dep/include/ace/Intrusive_List_Node.h86
-rw-r--r--dep/include/ace/Intrusive_List_Node.inl31
-rw-r--r--dep/include/ace/LOCK_SOCK_Acceptor.h67
-rw-r--r--dep/include/ace/LSOCK.h84
-rw-r--r--dep/include/ace/LSOCK.inl43
-rw-r--r--dep/include/ace/LSOCK_Acceptor.h95
-rw-r--r--dep/include/ace/LSOCK_CODgram.h78
-rw-r--r--dep/include/ace/LSOCK_CODgram.inl30
-rw-r--r--dep/include/ace/LSOCK_Connector.h92
-rw-r--r--dep/include/ace/LSOCK_Connector.inl27
-rw-r--r--dep/include/ace/LSOCK_Dgram.h74
-rw-r--r--dep/include/ace/LSOCK_Dgram.inl22
-rw-r--r--dep/include/ace/LSOCK_Stream.h82
-rw-r--r--dep/include/ace/LSOCK_Stream.inl25
-rw-r--r--dep/include/ace/Lib_Find.h131
-rw-r--r--dep/include/ace/Local_Memory_Pool.h134
-rw-r--r--dep/include/ace/Local_Name_Space.h133
-rw-r--r--dep/include/ace/Local_Name_Space_T.h280
-rw-r--r--dep/include/ace/Local_Tokens.h1122
-rw-r--r--dep/include/ace/Local_Tokens.inl288
-rw-r--r--dep/include/ace/Lock.h162
-rw-r--r--dep/include/ace/Lock.inl12
-rw-r--r--dep/include/ace/Lock_Adapter_T.h124
-rw-r--r--dep/include/ace/Lock_Adapter_T.inl16
-rw-r--r--dep/include/ace/Log_Msg.h747
-rw-r--r--dep/include/ace/Log_Msg.inl233
-rw-r--r--dep/include/ace/Log_Msg_Backend.h88
-rw-r--r--dep/include/ace/Log_Msg_Callback.h70
-rw-r--r--dep/include/ace/Log_Msg_IPC.h80
-rw-r--r--dep/include/ace/Log_Msg_NT_Event_Log.h73
-rw-r--r--dep/include/ace/Log_Msg_UNIX_Syslog.h77
-rw-r--r--dep/include/ace/Log_Priority.h86
-rw-r--r--dep/include/ace/Log_Record.h223
-rw-r--r--dep/include/ace/Log_Record.inl123
-rw-r--r--dep/include/ace/Logging_Strategy.h196
-rw-r--r--dep/include/ace/MEM_Acceptor.h193
-rw-r--r--dep/include/ace/MEM_Acceptor.inl103
-rw-r--r--dep/include/ace/MEM_Addr.h155
-rw-r--r--dep/include/ace/MEM_Addr.inl110
-rw-r--r--dep/include/ace/MEM_Connector.h180
-rw-r--r--dep/include/ace/MEM_Connector.inl30
-rw-r--r--dep/include/ace/MEM_IO.h308
-rw-r--r--dep/include/ace/MEM_IO.inl247
-rw-r--r--dep/include/ace/MEM_SAP.h170
-rw-r--r--dep/include/ace/MEM_SAP.inl63
-rw-r--r--dep/include/ace/MEM_Stream.h158
-rw-r--r--dep/include/ace/MEM_Stream.inl179
-rw-r--r--dep/include/ace/MMAP_Memory_Pool.h348
-rw-r--r--dep/include/ace/MMAP_Memory_Pool.inl21
-rw-r--r--dep/include/ace/Malloc.h394
-rw-r--r--dep/include/ace/Malloc.inl26
-rw-r--r--dep/include/ace/Malloc_Allocator.h147
-rw-r--r--dep/include/ace/Malloc_Allocator.inl16
-rw-r--r--dep/include/ace/Malloc_Base.h168
-rw-r--r--dep/include/ace/Malloc_T.h932
-rw-r--r--dep/include/ace/Malloc_T.inl183
-rw-r--r--dep/include/ace/Managed_Object.h169
-rw-r--r--dep/include/ace/Managed_Object.inl23
-rw-r--r--dep/include/ace/Manual_Event.h74
-rw-r--r--dep/include/ace/Manual_Event.inl12
-rw-r--r--dep/include/ace/Map.h32
-rw-r--r--dep/include/ace/Map_Manager.h720
-rw-r--r--dep/include/ace/Map_Manager.inl729
-rw-r--r--dep/include/ace/Map_T.h1612
-rw-r--r--dep/include/ace/Map_T.inl415
-rw-r--r--dep/include/ace/Mem_Map.h236
-rw-r--r--dep/include/ace/Mem_Map.inl237
-rw-r--r--dep/include/ace/Memory_Pool.h32
-rw-r--r--dep/include/ace/Message_Block.h871
-rw-r--r--dep/include/ace/Message_Block.inl507
-rw-r--r--dep/include/ace/Message_Block_T.h89
-rw-r--r--dep/include/ace/Message_Block_T.inl31
-rw-r--r--dep/include/ace/Message_Queue.h238
-rw-r--r--dep/include/ace/Message_Queue.inl12
-rw-r--r--dep/include/ace/Message_Queue_NT.h232
-rw-r--r--dep/include/ace/Message_Queue_NT.inl131
-rw-r--r--dep/include/ace/Message_Queue_T.h1560
-rw-r--r--dep/include/ace/Message_Queue_Vx.h228
-rw-r--r--dep/include/ace/Message_Queue_Vx.inl19
-rw-r--r--dep/include/ace/Method_Object.h38
-rw-r--r--dep/include/ace/Method_Request.h99
-rw-r--r--dep/include/ace/Metrics_Cache.h139
-rw-r--r--dep/include/ace/Metrics_Cache_T.h243
-rw-r--r--dep/include/ace/Metrics_Cache_T.inl230
-rw-r--r--dep/include/ace/Min_Max.h71
-rw-r--r--dep/include/ace/Module.h216
-rw-r--r--dep/include/ace/Module.inl65
-rw-r--r--dep/include/ace/Monitor_Admin.h110
-rw-r--r--dep/include/ace/Monitor_Admin_Manager.h71
-rw-r--r--dep/include/ace/Monitor_Base.h153
-rw-r--r--dep/include/ace/Monitor_Base.inl59
-rw-r--r--dep/include/ace/Monitor_Control_Action.h66
-rw-r--r--dep/include/ace/Monitor_Control_Types.h125
-rw-r--r--dep/include/ace/Monitor_Point_Registry.h101
-rw-r--r--dep/include/ace/Monitor_Size.h65
-rw-r--r--dep/include/ace/Msg_WFMO_Reactor.h120
-rw-r--r--dep/include/ace/Msg_WFMO_Reactor.inl35
-rw-r--r--dep/include/ace/Multihomed_INET_Addr.h199
-rw-r--r--dep/include/ace/Multihomed_INET_Addr.inl15
-rw-r--r--dep/include/ace/Mutex.h193
-rw-r--r--dep/include/ace/Mutex.inl174
-rw-r--r--dep/include/ace/NT_Service.h439
-rw-r--r--dep/include/ace/NT_Service.inl82
-rw-r--r--dep/include/ace/Name_Proxy.h101
-rw-r--r--dep/include/ace/Name_Request_Reply.h265
-rw-r--r--dep/include/ace/Name_Space.h165
-rw-r--r--dep/include/ace/Naming_Context.h388
-rw-r--r--dep/include/ace/Naming_Context.inl44
-rw-r--r--dep/include/ace/Netlink_Addr.h119
-rw-r--r--dep/include/ace/Netlink_Addr.inl50
-rw-r--r--dep/include/ace/Node.h85
-rw-r--r--dep/include/ace/Notification_Queue.h157
-rw-r--r--dep/include/ace/Notification_Queue.inl50
-rw-r--r--dep/include/ace/Notification_Strategy.h76
-rw-r--r--dep/include/ace/Notification_Strategy.inl31
-rw-r--r--dep/include/ace/Null_Barrier.h60
-rw-r--r--dep/include/ace/Null_Condition.h86
-rw-r--r--dep/include/ace/Null_Mutex.h232
-rw-r--r--dep/include/ace/Null_Semaphore.h106
-rw-r--r--dep/include/ace/Numeric_Limits.h270
-rw-r--r--dep/include/ace/OS.h328
-rw-r--r--dep/include/ace/OS.inl92
-rw-r--r--dep/include/ace/OS_Dirent.h33
-rw-r--r--dep/include/ace/OS_Errno.h102
-rw-r--r--dep/include/ace/OS_Errno.inl67
-rw-r--r--dep/include/ace/OS_Log_Msg_Attributes.h91
-rw-r--r--dep/include/ace/OS_Log_Msg_Attributes.inl12
-rw-r--r--dep/include/ace/OS_Memory.h339
-rw-r--r--dep/include/ace/OS_NS_Thread.h2022
-rw-r--r--dep/include/ace/OS_NS_Thread.inl3634
-rw-r--r--dep/include/ace/OS_NS_arpa_inet.h75
-rw-r--r--dep/include/ace/OS_NS_arpa_inet.inl98
-rw-r--r--dep/include/ace/OS_NS_ctype.h131
-rw-r--r--dep/include/ace/OS_NS_ctype.inl163
-rw-r--r--dep/include/ace/OS_NS_dirent.h154
-rw-r--r--dep/include/ace/OS_NS_dirent.inl184
-rw-r--r--dep/include/ace/OS_NS_dlfcn.h70
-rw-r--r--dep/include/ace/OS_NS_dlfcn.inl286
-rw-r--r--dep/include/ace/OS_NS_errno.h101
-rw-r--r--dep/include/ace/OS_NS_errno.inl83
-rw-r--r--dep/include/ace/OS_NS_fcntl.h84
-rw-r--r--dep/include/ace/OS_NS_fcntl.inl23
-rw-r--r--dep/include/ace/OS_NS_macros.h113
-rw-r--r--dep/include/ace/OS_NS_math.h113
-rw-r--r--dep/include/ace/OS_NS_math.inl41
-rw-r--r--dep/include/ace/OS_NS_netdb.h146
-rw-r--r--dep/include/ace/OS_NS_netdb.inl750
-rw-r--r--dep/include/ace/OS_NS_poll.h67
-rw-r--r--dep/include/ace/OS_NS_poll.inl45
-rw-r--r--dep/include/ace/OS_NS_pwd.h81
-rw-r--r--dep/include/ace/OS_NS_pwd.inl120
-rw-r--r--dep/include/ace/OS_NS_regex.h66
-rw-r--r--dep/include/ace/OS_NS_regex.inl39
-rw-r--r--dep/include/ace/OS_NS_signal.h154
-rw-r--r--dep/include/ace/OS_NS_signal.inl236
-rw-r--r--dep/include/ace/OS_NS_stdio.h542
-rw-r--r--dep/include/ace/OS_NS_stdio.inl1211
-rw-r--r--dep/include/ace/OS_NS_stdlib.h332
-rw-r--r--dep/include/ace/OS_NS_stdlib.inl556
-rw-r--r--dep/include/ace/OS_NS_string.h472
-rw-r--r--dep/include/ace/OS_NS_string.inl560
-rw-r--r--dep/include/ace/OS_NS_strings.h87
-rw-r--r--dep/include/ace/OS_NS_strings.inl59
-rw-r--r--dep/include/ace/OS_NS_stropts.h173
-rw-r--r--dep/include/ace/OS_NS_stropts.inl201
-rw-r--r--dep/include/ace/OS_NS_sys_mman.h98
-rw-r--r--dep/include/ace/OS_NS_sys_mman.inl297
-rw-r--r--dep/include/ace/OS_NS_sys_msg.h78
-rw-r--r--dep/include/ace/OS_NS_sys_msg.inl78
-rw-r--r--dep/include/ace/OS_NS_sys_resource.h67
-rw-r--r--dep/include/ace/OS_NS_sys_resource.inl98
-rw-r--r--dep/include/ace/OS_NS_sys_select.h78
-rw-r--r--dep/include/ace/OS_NS_sys_select.inl80
-rw-r--r--dep/include/ace/OS_NS_sys_sendfile.h65
-rw-r--r--dep/include/ace/OS_NS_sys_sendfile.inl24
-rw-r--r--dep/include/ace/OS_NS_sys_shm.h75
-rw-r--r--dep/include/ace/OS_NS_sys_shm.inl76
-rw-r--r--dep/include/ace/OS_NS_sys_socket.h302
-rw-r--r--dep/include/ace/OS_NS_sys_socket.inl1002
-rw-r--r--dep/include/ace/OS_NS_sys_stat.h150
-rw-r--r--dep/include/ace/OS_NS_sys_stat.inl292
-rw-r--r--dep/include/ace/OS_NS_sys_time.h70
-rw-r--r--dep/include/ace/OS_NS_sys_time.inl96
-rw-r--r--dep/include/ace/OS_NS_sys_uio.h81
-rw-r--r--dep/include/ace/OS_NS_sys_uio.inl55
-rw-r--r--dep/include/ace/OS_NS_sys_utsname.h72
-rw-r--r--dep/include/ace/OS_NS_sys_wait.h88
-rw-r--r--dep/include/ace/OS_NS_sys_wait.inl105
-rw-r--r--dep/include/ace/OS_NS_time.h287
-rw-r--r--dep/include/ace/OS_NS_time.inl505
-rw-r--r--dep/include/ace/OS_NS_unistd.h382
-rw-r--r--dep/include/ace/OS_NS_unistd.inl1192
-rw-r--r--dep/include/ace/OS_NS_wchar.h200
-rw-r--r--dep/include/ace/OS_NS_wchar.inl87
-rw-r--r--dep/include/ace/OS_QoS.h449
-rw-r--r--dep/include/ace/OS_String.h33
-rw-r--r--dep/include/ace/OS_TLI.h285
-rw-r--r--dep/include/ace/OS_TLI.inl390
-rw-r--r--dep/include/ace/OS_Thread_Adapter.h73
-rw-r--r--dep/include/ace/OS_main.h306
-rw-r--r--dep/include/ace/Obchunk.h77
-rw-r--r--dep/include/ace/Obchunk.inl12
-rw-r--r--dep/include/ace/Object_Manager.h466
-rw-r--r--dep/include/ace/Object_Manager.inl40
-rw-r--r--dep/include/ace/Object_Manager_Base.h248
-rw-r--r--dep/include/ace/Obstack.h32
-rw-r--r--dep/include/ace/Obstack_T.h135
-rw-r--r--dep/include/ace/Obstack_T.inl19
-rw-r--r--dep/include/ace/PI_Malloc.h214
-rw-r--r--dep/include/ace/PI_Malloc.inl33
-rw-r--r--dep/include/ace/POSIX_Asynch_IO.h1296
-rw-r--r--dep/include/ace/POSIX_CB_Proactor.h97
-rw-r--r--dep/include/ace/POSIX_Proactor.h656
-rw-r--r--dep/include/ace/POSIX_Proactor.inl13
-rw-r--r--dep/include/ace/Pagefile_Memory_Pool.h202
-rw-r--r--dep/include/ace/Pagefile_Memory_Pool.inl54
-rw-r--r--dep/include/ace/Pair.h32
-rw-r--r--dep/include/ace/Pair_T.h129
-rw-r--r--dep/include/ace/Pair_T.inl90
-rw-r--r--dep/include/ace/Parse_Node.h522
-rw-r--r--dep/include/ace/Ping_Socket.h119
-rw-r--r--dep/include/ace/Ping_Socket.inl13
-rw-r--r--dep/include/ace/Pipe.h166
-rw-r--r--dep/include/ace/Pipe.inl188
-rw-r--r--dep/include/ace/Priority_Reactor.h101
-rw-r--r--dep/include/ace/Proactor.h690
-rw-r--r--dep/include/ace/Proactor.inl80
-rw-r--r--dep/include/ace/Proactor_Impl.h265
-rw-r--r--dep/include/ace/Process.h635
-rw-r--r--dep/include/ace/Process.inl412
-rw-r--r--dep/include/ace/Process_Manager.h478
-rw-r--r--dep/include/ace/Process_Manager.inl13
-rw-r--r--dep/include/ace/Process_Mutex.h217
-rw-r--r--dep/include/ace/Process_Mutex.inl118
-rw-r--r--dep/include/ace/Process_Semaphore.h161
-rw-r--r--dep/include/ace/Process_Semaphore.inl66
-rw-r--r--dep/include/ace/Profile_Timer.h139
-rw-r--r--dep/include/ace/Profile_Timer.inl129
-rw-r--r--dep/include/ace/RB_Tree.h902
-rw-r--r--dep/include/ace/RB_Tree.inl1103
-rw-r--r--dep/include/ace/RW_Mutex.h142
-rw-r--r--dep/include/ace/RW_Mutex.inl83
-rw-r--r--dep/include/ace/RW_Process_Mutex.h145
-rw-r--r--dep/include/ace/RW_Process_Mutex.inl77
-rw-r--r--dep/include/ace/RW_Thread_Mutex.h75
-rw-r--r--dep/include/ace/RW_Thread_Mutex.inl19
-rw-r--r--dep/include/ace/Reactor.h880
-rw-r--r--dep/include/ace/Reactor.inl498
-rw-r--r--dep/include/ace/Reactor_Impl.h569
-rw-r--r--dep/include/ace/Reactor_Notification_Strategy.h67
-rw-r--r--dep/include/ace/Reactor_Notification_Strategy.inl19
-rw-r--r--dep/include/ace/Reactor_Timer_Interface.h61
-rw-r--r--dep/include/ace/Reactor_Token_T.h93
-rw-r--r--dep/include/ace/Read_Buffer.h130
-rw-r--r--dep/include/ace/Read_Buffer.inl32
-rw-r--r--dep/include/ace/Recursive_Thread_Mutex.h195
-rw-r--r--dep/include/ace/Recursive_Thread_Mutex.inl95
-rw-r--r--dep/include/ace/Recyclable.h80
-rw-r--r--dep/include/ace/Recyclable.inl20
-rw-r--r--dep/include/ace/Refcountable.h33
-rw-r--r--dep/include/ace/Refcountable_T.h68
-rw-r--r--dep/include/ace/Refcountable_T.inl35
-rw-r--r--dep/include/ace/Refcounted_Auto_Ptr.h200
-rw-r--r--dep/include/ace/Refcounted_Auto_Ptr.inl190
-rw-r--r--dep/include/ace/Registry.h558
-rw-r--r--dep/include/ace/Registry_Name_Space.h140
-rw-r--r--dep/include/ace/Remote_Name_Space.h147
-rw-r--r--dep/include/ace/Remote_Tokens.h322
-rw-r--r--dep/include/ace/Remote_Tokens.inl48
-rw-r--r--dep/include/ace/Reverse_Lock_T.h140
-rw-r--r--dep/include/ace/Reverse_Lock_T.inl19
-rw-r--r--dep/include/ace/SOCK.h139
-rw-r--r--dep/include/ace/SOCK.inl39
-rw-r--r--dep/include/ace/SOCK_Acceptor.h179
-rw-r--r--dep/include/ace/SOCK_Acceptor.inl13
-rw-r--r--dep/include/ace/SOCK_CODgram.h143
-rw-r--r--dep/include/ace/SOCK_CODgram.inl19
-rw-r--r--dep/include/ace/SOCK_Connector.h322
-rw-r--r--dep/include/ace/SOCK_Connector.inl38
-rw-r--r--dep/include/ace/SOCK_Dgram.h240
-rw-r--r--dep/include/ace/SOCK_Dgram.inl167
-rw-r--r--dep/include/ace/SOCK_Dgram_Bcast.h140
-rw-r--r--dep/include/ace/SOCK_Dgram_Bcast.inl37
-rw-r--r--dep/include/ace/SOCK_Dgram_Mcast.h384
-rw-r--r--dep/include/ace/SOCK_Dgram_Mcast.inl52
-rw-r--r--dep/include/ace/SOCK_IO.h137
-rw-r--r--dep/include/ace/SOCK_IO.inl123
-rw-r--r--dep/include/ace/SOCK_Netlink.h107
-rw-r--r--dep/include/ace/SOCK_Netlink.inl37
-rw-r--r--dep/include/ace/SOCK_SEQPACK_Acceptor.h189
-rw-r--r--dep/include/ace/SOCK_SEQPACK_Acceptor.inl13
-rw-r--r--dep/include/ace/SOCK_SEQPACK_Association.h203
-rw-r--r--dep/include/ace/SOCK_SEQPACK_Association.inl177
-rw-r--r--dep/include/ace/SOCK_SEQPACK_Connector.h332
-rw-r--r--dep/include/ace/SOCK_SEQPACK_Connector.inl38
-rw-r--r--dep/include/ace/SOCK_Stream.h185
-rw-r--r--dep/include/ace/SOCK_Stream.inl177
-rw-r--r--dep/include/ace/SPIPE.h116
-rw-r--r--dep/include/ace/SPIPE.inl18
-rw-r--r--dep/include/ace/SPIPE_Acceptor.h168
-rw-r--r--dep/include/ace/SPIPE_Addr.h123
-rw-r--r--dep/include/ace/SPIPE_Addr.inl58
-rw-r--r--dep/include/ace/SPIPE_Connector.h119
-rw-r--r--dep/include/ace/SPIPE_Connector.inl15
-rw-r--r--dep/include/ace/SPIPE_Stream.h172
-rw-r--r--dep/include/ace/SPIPE_Stream.inl275
-rw-r--r--dep/include/ace/SSL/SSL_Asynch_BIO.h42
-rw-r--r--dep/include/ace/SSL/SSL_Asynch_Stream.h425
-rw-r--r--dep/include/ace/SSL/SSL_Context.h384
-rw-r--r--dep/include/ace/SSL/SSL_Context.inl113
-rw-r--r--dep/include/ace/SSL/SSL_Export.h45
-rw-r--r--dep/include/ace/SSL/SSL_SOCK.h103
-rw-r--r--dep/include/ace/SSL/SSL_SOCK.inl71
-rw-r--r--dep/include/ace/SSL/SSL_SOCK_Acceptor.h197
-rw-r--r--dep/include/ace/SSL/SSL_SOCK_Acceptor.inl85
-rw-r--r--dep/include/ace/SSL/SSL_SOCK_Connector.h318
-rw-r--r--dep/include/ace/SSL/SSL_SOCK_Connector.inl28
-rw-r--r--dep/include/ace/SSL/SSL_SOCK_Stream.h321
-rw-r--r--dep/include/ace/SSL/SSL_SOCK_Stream.inl330
-rw-r--r--dep/include/ace/SSL/sslconf.h55
-rw-r--r--dep/include/ace/SString.h499
-rw-r--r--dep/include/ace/SString.inl299
-rw-r--r--dep/include/ace/SStringfwd.h56
-rw-r--r--dep/include/ace/SUN_Proactor.h127
-rw-r--r--dep/include/ace/SV_Message.h66
-rw-r--r--dep/include/ace/SV_Message.inl37
-rw-r--r--dep/include/ace/SV_Message_Queue.h106
-rw-r--r--dep/include/ace/SV_Message_Queue.inl81
-rw-r--r--dep/include/ace/SV_Semaphore_Complex.h160
-rw-r--r--dep/include/ace/SV_Semaphore_Complex.inl84
-rw-r--r--dep/include/ace/SV_Semaphore_Simple.h198
-rw-r--r--dep/include/ace/SV_Semaphore_Simple.inl128
-rw-r--r--dep/include/ace/SV_Shared_Memory.h122
-rw-r--r--dep/include/ace/SV_Shared_Memory.inl118
-rw-r--r--dep/include/ace/Sample_History.h91
-rw-r--r--dep/include/ace/Sample_History.inl26
-rw-r--r--dep/include/ace/Sbrk_Memory_Pool.h118
-rw-r--r--dep/include/ace/Sched_Params.h233
-rw-r--r--dep/include/ace/Sched_Params.inl133
-rw-r--r--dep/include/ace/Select_Reactor.h70
-rw-r--r--dep/include/ace/Select_Reactor_Base.h612
-rw-r--r--dep/include/ace/Select_Reactor_Base.inl152
-rw-r--r--dep/include/ace/Select_Reactor_T.h719
-rw-r--r--dep/include/ace/Select_Reactor_T.inl236
-rw-r--r--dep/include/ace/Semaphore.h184
-rw-r--r--dep/include/ace/Semaphore.inl119
-rw-r--r--dep/include/ace/Service_Config.h681
-rw-r--r--dep/include/ace/Service_Config.inl202
-rw-r--r--dep/include/ace/Service_Gestalt.h506
-rw-r--r--dep/include/ace/Service_Gestalt.inl74
-rw-r--r--dep/include/ace/Service_Manager.h121
-rw-r--r--dep/include/ace/Service_Object.h208
-rw-r--r--dep/include/ace/Service_Object.inl79
-rw-r--r--dep/include/ace/Service_Repository.h280
-rw-r--r--dep/include/ace/Service_Repository.inl51
-rw-r--r--dep/include/ace/Service_Templates.h29
-rw-r--r--dep/include/ace/Service_Types.h207
-rw-r--r--dep/include/ace/Service_Types.inl32
-rw-r--r--dep/include/ace/Shared_Memory.h58
-rw-r--r--dep/include/ace/Shared_Memory_MM.h120
-rw-r--r--dep/include/ace/Shared_Memory_MM.inl42
-rw-r--r--dep/include/ace/Shared_Memory_Pool.h211
-rw-r--r--dep/include/ace/Shared_Memory_SV.h101
-rw-r--r--dep/include/ace/Shared_Memory_SV.inl30
-rw-r--r--dep/include/ace/Shared_Object.h63
-rw-r--r--dep/include/ace/Shared_Object.inl12
-rw-r--r--dep/include/ace/Sig_Adapter.h82
-rw-r--r--dep/include/ace/Sig_Handler.h238
-rw-r--r--dep/include/ace/Sig_Handler.inl15
-rw-r--r--dep/include/ace/Signal.h267
-rw-r--r--dep/include/ace/Signal.inl265
-rw-r--r--dep/include/ace/Singleton.h328
-rw-r--r--dep/include/ace/Singleton.inl42
-rw-r--r--dep/include/ace/Sock_Connect.h108
-rw-r--r--dep/include/ace/Stack_Trace.h108
-rw-r--r--dep/include/ace/Static_Object_Lock.h79
-rw-r--r--dep/include/ace/Stats.h222
-rw-r--r--dep/include/ace/Stats.inl104
-rw-r--r--dep/include/ace/Strategies.h33
-rw-r--r--dep/include/ace/Strategies_T.h1076
-rw-r--r--dep/include/ace/Strategies_T.inl230
-rw-r--r--dep/include/ace/Stream.h242
-rw-r--r--dep/include/ace/Stream.inl51
-rw-r--r--dep/include/ace/Stream_Modules.h167
-rw-r--r--dep/include/ace/String_Base.h613
-rw-r--r--dep/include/ace/String_Base.inl158
-rw-r--r--dep/include/ace/String_Base_Const.h52
-rw-r--r--dep/include/ace/Svc_Conf.h108
-rw-r--r--dep/include/ace/Svc_Conf_Lexer.h71
-rw-r--r--dep/include/ace/Svc_Conf_Param.h141
-rw-r--r--dep/include/ace/Svc_Conf_Token_Table.h83
-rw-r--r--dep/include/ace/Svc_Conf_Tokens.h29
-rw-r--r--dep/include/ace/Svc_Handler.h346
-rw-r--r--dep/include/ace/Synch.h66
-rw-r--r--dep/include/ace/Synch_Options.h164
-rw-r--r--dep/include/ace/Synch_T.h43
-rw-r--r--dep/include/ace/Synch_Traits.h153
-rw-r--r--dep/include/ace/System_Time.h100
-rw-r--r--dep/include/ace/TLI.h116
-rw-r--r--dep/include/ace/TLI.inl49
-rw-r--r--dep/include/ace/TLI_Acceptor.h123
-rw-r--r--dep/include/ace/TLI_Connector.h130
-rw-r--r--dep/include/ace/TLI_Connector.inl49
-rw-r--r--dep/include/ace/TLI_Stream.h141
-rw-r--r--dep/include/ace/TLI_Stream.inl25
-rw-r--r--dep/include/ace/TP_Reactor.h319
-rw-r--r--dep/include/ace/TP_Reactor.inl118
-rw-r--r--dep/include/ace/TSS_Adapter.h62
-rw-r--r--dep/include/ace/TSS_T.h254
-rw-r--r--dep/include/ace/TSS_T.inl42
-rw-r--r--dep/include/ace/TTY_IO.h114
-rw-r--r--dep/include/ace/Task.h308
-rw-r--r--dep/include/ace/Task.inl77
-rw-r--r--dep/include/ace/Task_Ex_T.h206
-rw-r--r--dep/include/ace/Task_Ex_T.inl109
-rw-r--r--dep/include/ace/Task_T.h199
-rw-r--r--dep/include/ace/Task_T.inl105
-rw-r--r--dep/include/ace/Test_and_Set.h75
-rw-r--r--dep/include/ace/Thread.h283
-rw-r--r--dep/include/ace/Thread.inl286
-rw-r--r--dep/include/ace/Thread_Adapter.h101
-rw-r--r--dep/include/ace/Thread_Adapter.inl13
-rw-r--r--dep/include/ace/Thread_Control.h102
-rw-r--r--dep/include/ace/Thread_Control.inl46
-rw-r--r--dep/include/ace/Thread_Exit.h111
-rw-r--r--dep/include/ace/Thread_Hook.h65
-rw-r--r--dep/include/ace/Thread_Manager.h1265
-rw-r--r--dep/include/ace/Thread_Manager.inl307
-rw-r--r--dep/include/ace/Thread_Mutex.h176
-rw-r--r--dep/include/ace/Thread_Mutex.inl97
-rw-r--r--dep/include/ace/Thread_Semaphore.h90
-rw-r--r--dep/include/ace/Thread_Semaphore.inl12
-rw-r--r--dep/include/ace/Throughput_Stats.h86
-rw-r--r--dep/include/ace/Time_Value.h381
-rw-r--r--dep/include/ace/Time_Value.inl422
-rw-r--r--dep/include/ace/Timeprobe.h202
-rw-r--r--dep/include/ace/Timeprobe.inl14
-rw-r--r--dep/include/ace/Timeprobe_T.h219
-rw-r--r--dep/include/ace/Timer_Hash.h74
-rw-r--r--dep/include/ace/Timer_Hash_T.h343
-rw-r--r--dep/include/ace/Timer_Heap.h42
-rw-r--r--dep/include/ace/Timer_Heap_T.h339
-rw-r--r--dep/include/ace/Timer_List.h42
-rw-r--r--dep/include/ace/Timer_List_T.h227
-rw-r--r--dep/include/ace/Timer_Queue.h53
-rw-r--r--dep/include/ace/Timer_Queue_Adapters.h262
-rw-r--r--dep/include/ace/Timer_Queue_Adapters.inl29
-rw-r--r--dep/include/ace/Timer_Queue_T.h563
-rw-r--r--dep/include/ace/Timer_Queue_T.inl222
-rw-r--r--dep/include/ace/Timer_Queuefwd.h39
-rw-r--r--dep/include/ace/Timer_Wheel.h42
-rw-r--r--dep/include/ace/Timer_Wheel_T.h227
-rw-r--r--dep/include/ace/Token.h376
-rw-r--r--dep/include/ace/Token.inl176
-rw-r--r--dep/include/ace/Token_Collection.h242
-rw-r--r--dep/include/ace/Token_Collection.inl17
-rw-r--r--dep/include/ace/Token_Invariants.h246
-rw-r--r--dep/include/ace/Token_Manager.h151
-rw-r--r--dep/include/ace/Token_Manager.inl25
-rw-r--r--dep/include/ace/Token_Request_Reply.h270
-rw-r--r--dep/include/ace/Token_Request_Reply.inl205
-rw-r--r--dep/include/ace/Trace.h97
-rw-r--r--dep/include/ace/Truncate.h1054
-rw-r--r--dep/include/ace/Typed_SV_Message.h107
-rw-r--r--dep/include/ace/Typed_SV_Message.inl96
-rw-r--r--dep/include/ace/Typed_SV_Message_Queue.h93
-rw-r--r--dep/include/ace/Typed_SV_Message_Queue.inl80
-rw-r--r--dep/include/ace/UNIX_Addr.h117
-rw-r--r--dep/include/ace/UNIX_Addr.inl55
-rw-r--r--dep/include/ace/UPIPE_Acceptor.h99
-rw-r--r--dep/include/ace/UPIPE_Acceptor.inl14
-rw-r--r--dep/include/ace/UPIPE_Addr.h33
-rw-r--r--dep/include/ace/UPIPE_Connector.h115
-rw-r--r--dep/include/ace/UPIPE_Connector.inl34
-rw-r--r--dep/include/ace/UPIPE_Stream.h140
-rw-r--r--dep/include/ace/UPIPE_Stream.inl14
-rw-r--r--dep/include/ace/UTF16_Encoding_Converter.h87
-rw-r--r--dep/include/ace/UTF16_Encoding_Converter.inl76
-rw-r--r--dep/include/ace/UTF32_Encoding_Converter.h68
-rw-r--r--dep/include/ace/UTF8_Encoding_Converter.h72
-rw-r--r--dep/include/ace/UUID.h240
-rw-r--r--dep/include/ace/UUID.inl200
-rw-r--r--dep/include/ace/Unbounded_Queue.h298
-rw-r--r--dep/include/ace/Unbounded_Queue.inl27
-rw-r--r--dep/include/ace/Unbounded_Set.h104
-rw-r--r--dep/include/ace/Unbounded_Set.inl48
-rw-r--r--dep/include/ace/Unbounded_Set_Ex.h348
-rw-r--r--dep/include/ace/Unbounded_Set_Ex.inl23
-rw-r--r--dep/include/ace/Value_Ptr.h168
-rw-r--r--dep/include/ace/Vector_T.h316
-rw-r--r--dep/include/ace/Vector_T.inl107
-rw-r--r--dep/include/ace/Version.h10
-rw-r--r--dep/include/ace/Versioned_Namespace.h51
-rw-r--r--dep/include/ace/WFMO_Reactor.h1368
-rw-r--r--dep/include/ace/WFMO_Reactor.inl1200
-rw-r--r--dep/include/ace/WIN32_Asynch_IO.h1936
-rw-r--r--dep/include/ace/WIN32_Proactor.h325
-rw-r--r--dep/include/ace/XML_Svc_Conf.h65
-rw-r--r--dep/include/ace/XTI_ATM_Mcast.h137
-rw-r--r--dep/include/ace/XTI_ATM_Mcast.inl65
-rw-r--r--dep/include/ace/ace_wchar.h386
-rw-r--r--dep/include/ace/ace_wchar.inl183
-rw-r--r--dep/include/ace/checked_iterator.h59
-rw-r--r--dep/include/ace/config-WinCE.h237
-rw-r--r--dep/include/ace/config-aix-5.x.h334
-rw-r--r--dep/include/ace/config-all.h90
-rw-r--r--dep/include/ace/config-borland-common.h67
-rw-r--r--dep/include/ace/config-cray.h214
-rw-r--r--dep/include/ace/config-cxx-common.h87
-rw-r--r--dep/include/ace/config-cygwin32.h207
-rw-r--r--dep/include/ace/config-doxygen.h121
-rw-r--r--dep/include/ace/config-freebsd.h284
-rw-r--r--dep/include/ace/config-g++-common.h137
-rw-r--r--dep/include/ace/config-ghs-common.h44
-rw-r--r--dep/include/ace/config-hpux-11.00.h449
-rw-r--r--dep/include/ace/config-icc-common.h114
-rw-r--r--dep/include/ace/config-integritySCA.h231
-rw-r--r--dep/include/ace/config-irix6.5.x-sgic++.h19
-rw-r--r--dep/include/ace/config-irix6.x-common.h257
-rw-r--r--dep/include/ace/config-irix6.x-g++.h24
-rw-r--r--dep/include/ace/config-irix6.x-sgic++.h37
-rw-r--r--dep/include/ace/config-linux-common.h449
-rw-r--r--dep/include/ace/config-linux.h76
-rw-r--r--dep/include/ace/config-lite.h164
-rw-r--r--dep/include/ace/config-lynxos.h163
-rw-r--r--dep/include/ace/config-macosx-leopard.h227
-rw-r--r--dep/include/ace/config-macosx-panther.h192
-rw-r--r--dep/include/ace/config-macosx-tiger.h219
-rw-r--r--dep/include/ace/config-macosx.h192
-rw-r--r--dep/include/ace/config-macros.h637
-rw-r--r--dep/include/ace/config-minimal.h40
-rw-r--r--dep/include/ace/config-mvs.h132
-rw-r--r--dep/include/ace/config-netbsd.h168
-rw-r--r--dep/include/ace/config-openbsd.h235
-rw-r--r--dep/include/ace/config-openvms.h196
-rw-r--r--dep/include/ace/config-pharlap.h91
-rw-r--r--dep/include/ace/config-posix-nonetworking.h87
-rw-r--r--dep/include/ace/config-posix.h74
-rw-r--r--dep/include/ace/config-qnx-neutrino.h138
-rw-r--r--dep/include/ace/config-qnx-rtp-62x.h130
-rw-r--r--dep/include/ace/config-qnx-rtp-common.h47
-rw-r--r--dep/include/ace/config-qnx-rtp-pre62x.h152
-rw-r--r--dep/include/ace/config-qnx-rtp.h26
-rw-r--r--dep/include/ace/config-rtems.h166
-rw-r--r--dep/include/ace/config-sco-5.0.0-nothread.h15
-rw-r--r--dep/include/ace/config-sco-5.0.0.h98
-rw-r--r--dep/include/ace/config-suncc-common.h68
-rw-r--r--dep/include/ace/config-sunos5.10.h52
-rw-r--r--dep/include/ace/config-sunos5.11.h16
-rw-r--r--dep/include/ace/config-sunos5.4-g++.h182
-rw-r--r--dep/include/ace/config-sunos5.4-sunc++-4.x.h191
-rw-r--r--dep/include/ace/config-sunos5.5.h417
-rw-r--r--dep/include/ace/config-sunos5.6.h126
-rw-r--r--dep/include/ace/config-sunos5.7.h79
-rw-r--r--dep/include/ace/config-sunos5.8.h40
-rw-r--r--dep/include/ace/config-sunos5.9.h19
-rw-r--r--dep/include/ace/config-tandem-nsk-mips-v2.h396
-rw-r--r--dep/include/ace/config-tandem-nsk-mips-v3.h463
-rw-r--r--dep/include/ace/config-tandem.h193
-rw-r--r--dep/include/ace/config-tru64.h155
-rw-r--r--dep/include/ace/config-unixware-7.1.0.h412
-rw-r--r--dep/include/ace/config-unixware-7.1.0.udk.h456
-rw-r--r--dep/include/ace/config-visualage.h21
-rw-r--r--dep/include/ace/config-vxworks.h56
-rw-r--r--dep/include/ace/config-vxworks5.x.h346
-rw-r--r--dep/include/ace/config-vxworks6.2.h329
-rw-r--r--dep/include/ace/config-vxworks6.3.h318
-rw-r--r--dep/include/ace/config-vxworks6.4.h341
-rw-r--r--dep/include/ace/config-vxworks6.5.h26
-rw-r--r--dep/include/ace/config-vxworks6.6.h30
-rw-r--r--dep/include/ace/config-win32-borland.h126
-rw-r--r--dep/include/ace/config-win32-common.h663
-rw-r--r--dep/include/ace/config-win32-dmc.h111
-rw-r--r--dep/include/ace/config-win32-ghs.h97
-rw-r--r--dep/include/ace/config-win32-interix.h100
-rw-r--r--dep/include/ace/config-win32-mingw.h101
-rw-r--r--dep/include/ace/config-win32-msvc-7.h126
-rw-r--r--dep/include/ace/config-win32-msvc-8.h149
-rw-r--r--dep/include/ace/config-win32-msvc-9.h141
-rw-r--r--dep/include/ace/config-win32-msvc.h170
-rw-r--r--dep/include/ace/config-win32.h92
-rw-r--r--dep/include/ace/iosfwd.h99
-rw-r--r--dep/include/ace/os_include/arpa/os_inet.h75
-rw-r--r--dep/include/ace/os_include/net/os_if.h120
-rw-r--r--dep/include/ace/os_include/netinet/os_in.h186
-rw-r--r--dep/include/ace/os_include/netinet/os_tcp.h47
-rw-r--r--dep/include/ace/os_include/os_aio.h48
-rw-r--r--dep/include/ace/os_include/os_assert.h47
-rw-r--r--dep/include/ace/os_include/os_byteswap.h42
-rw-r--r--dep/include/ace/os_include/os_complex.h43
-rw-r--r--dep/include/ace/os_include/os_cpio.h43
-rw-r--r--dep/include/ace/os_include/os_ctype.h46
-rw-r--r--dep/include/ace/os_include/os_dirent.h109
-rw-r--r--dep/include/ace/os_include/os_dlfcn.h102
-rw-r--r--dep/include/ace/os_include/os_errno.h154
-rw-r--r--dep/include/ace/os_include/os_fcntl.h107
-rw-r--r--dep/include/ace/os_include/os_fenv.h43
-rw-r--r--dep/include/ace/os_include/os_float.h43
-rw-r--r--dep/include/ace/os_include/os_fmtmsg.h43
-rw-r--r--dep/include/ace/os_include/os_fnmatch.h43
-rw-r--r--dep/include/ace/os_include/os_ftw.h45
-rw-r--r--dep/include/ace/os_include/os_glob.h43
-rw-r--r--dep/include/ace/os_include/os_grp.h45
-rw-r--r--dep/include/ace/os_include/os_iconv.h45
-rw-r--r--dep/include/ace/os_include/os_intrin.h58
-rw-r--r--dep/include/ace/os_include/os_inttypes.h47
-rw-r--r--dep/include/ace/os_include/os_iso646.h43
-rw-r--r--dep/include/ace/os_include/os_kstat.h44
-rw-r--r--dep/include/ace/os_include/os_langinfo.h45
-rw-r--r--dep/include/ace/os_include/os_libgen.h43
-rw-r--r--dep/include/ace/os_include/os_limits.h144
-rw-r--r--dep/include/ace/os_include/os_local.h45
-rw-r--r--dep/include/ace/os_include/os_math.h45
-rw-r--r--dep/include/ace/os_include/os_monetary.h45
-rw-r--r--dep/include/ace/os_include/os_mqueue.h45
-rw-r--r--dep/include/ace/os_include/os_ndbm.h45
-rw-r--r--dep/include/ace/os_include/os_netdb.h109
-rw-r--r--dep/include/ace/os_include/os_nl_types.h43
-rw-r--r--dep/include/ace/os_include/os_pdh.h46
-rw-r--r--dep/include/ace/os_include/os_pdhmsg.h42
-rw-r--r--dep/include/ace/os_include/os_poll.h43
-rw-r--r--dep/include/ace/os_include/os_pthread.h424
-rw-r--r--dep/include/ace/os_include/os_pwd.h59
-rw-r--r--dep/include/ace/os_include/os_regex.h49
-rw-r--r--dep/include/ace/os_include/os_sched.h53
-rw-r--r--dep/include/ace/os_include/os_search.h45
-rw-r--r--dep/include/ace/os_include/os_semaphore.h78
-rw-r--r--dep/include/ace/os_include/os_setjmp.h43
-rw-r--r--dep/include/ace/os_include/os_signal.h254
-rw-r--r--dep/include/ace/os_include/os_spawn.h47
-rw-r--r--dep/include/ace/os_include/os_stdarg.h51
-rw-r--r--dep/include/ace/os_include/os_stdbool.h43
-rw-r--r--dep/include/ace/os_include/os_stddef.h98
-rw-r--r--dep/include/ace/os_include/os_stdint.h141
-rw-r--r--dep/include/ace/os_include/os_stdio.h88
-rw-r--r--dep/include/ace/os_include/os_stdlib.h78
-rw-r--r--dep/include/ace/os_include/os_string.h77
-rw-r--r--dep/include/ace/os_include/os_strings.h53
-rw-r--r--dep/include/ace/os_include/os_stropts.h121
-rw-r--r--dep/include/ace/os_include/os_syslog.h43
-rw-r--r--dep/include/ace/os_include/os_tar.h43
-rw-r--r--dep/include/ace/os_include/os_termios.h47
-rw-r--r--dep/include/ace/os_include/os_tgmath.h46
-rw-r--r--dep/include/ace/os_include/os_time.h124
-rw-r--r--dep/include/ace/os_include/os_trace.h45
-rw-r--r--dep/include/ace/os_include/os_ucontext.h49
-rw-r--r--dep/include/ace/os_include/os_ulimit.h43
-rw-r--r--dep/include/ace/os_include/os_unistd.h204
-rw-r--r--dep/include/ace/os_include/os_utime.h45
-rw-r--r--dep/include/ace/os_include/os_utmpx.h45
-rw-r--r--dep/include/ace/os_include/os_wchar.h50
-rw-r--r--dep/include/ace/os_include/os_wctype.h46
-rw-r--r--dep/include/ace/os_include/os_wordexp.h45
-rw-r--r--dep/include/ace/os_include/sys/os_ipc.h75
-rw-r--r--dep/include/ace/os_include/sys/os_loadavg.h42
-rw-r--r--dep/include/ace/os_include/sys/os_mman.h123
-rw-r--r--dep/include/ace/os_include/sys/os_msg.h56
-rw-r--r--dep/include/ace/os_include/sys/os_pstat.h43
-rw-r--r--dep/include/ace/os_include/sys/os_resource.h105
-rw-r--r--dep/include/ace/os_include/sys/os_select.h60
-rw-r--r--dep/include/ace/os_include/sys/os_sem.h91
-rw-r--r--dep/include/ace/os_include/sys/os_shm.h49
-rw-r--r--dep/include/ace/os_include/sys/os_socket.h308
-rw-r--r--dep/include/ace/os_include/sys/os_stat.h128
-rw-r--r--dep/include/ace/os_include/sys/os_statvfs.h43
-rw-r--r--dep/include/ace/os_include/sys/os_sysctl.h42
-rw-r--r--dep/include/ace/os_include/sys/os_sysinfo.h40
-rw-r--r--dep/include/ace/os_include/sys/os_time.h61
-rw-r--r--dep/include/ace/os_include/sys/os_timeb.h50
-rw-r--r--dep/include/ace/os_include/sys/os_times.h45
-rw-r--r--dep/include/ace/os_include/sys/os_types.h159
-rw-r--r--dep/include/ace/os_include/sys/os_uio.h77
-rw-r--r--dep/include/ace/os_include/sys/os_un.h52
-rw-r--r--dep/include/ace/os_include/sys/os_utsname.h43
-rw-r--r--dep/include/ace/os_include/sys/os_wait.h98
-rw-r--r--dep/include/ace/post.h23
-rw-r--r--dep/include/ace/pre.h26
-rw-r--r--dep/include/ace/streams.h137
-rw-r--r--dep/include/ace/svc_export.h45
902 files changed, 0 insertions, 174484 deletions
diff --git a/dep/include/ace/ACE.h b/dep/include/ace/ACE.h
deleted file mode 100644
index ea7a3fa02e4..00000000000
--- a/dep/include/ace/ACE.h
+++ /dev/null
@@ -1,825 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file ACE.h
- *
- * $Id: ACE.h 82581 2008-08-11 08:58:24Z johnnyw $
- *
- * This file contains value added ACE functions that extend the
- * behavior of the UNIX and Win32 OS calls.
- *
- * All these ACE static functions are consolidated in a single place
- * in order to manage the namespace better. These functions are put
- * here rather than in @c ACE_OS in order to separate concerns.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_ACE_H
-#define ACE_ACE_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/OS_NS_math.h"
-#include "ace/Flag_Manip.h"
-#include "ace/Handle_Ops.h"
-#include "ace/Lib_Find.h"
-#include "ace/Init_ACE.h"
-#include "ace/Sock_Connect.h"
-#include "ace/Default_Constants.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-// Open versioned namespace, if enabled by the user.
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declarations.
-class ACE_Time_Value;
-class ACE_Message_Block;
-class ACE_Handle_Set;
-
-/**
- * @namespace ACE
- *
- * @brief The namespace containing the ACE framework itself.
- *
- * The ACE namespace contains all types (classes, structures,
- * typedefs, etc), and global functions and variables in the ACE
- * framework.
- */
-namespace ACE
-{
- // = ACE version information.
- /// e.g., the "5" in ACE 5.1.12.
- extern ACE_Export u_int major_version (void);
-
- /// e.g., the "1" in ACE 5.1.12.
- extern ACE_Export u_int minor_version (void);
-
- /// e.g., the "12" in ACE 5.1.12.
- /// Returns 0 for "stable" (non-beta) releases.
- extern ACE_Export u_int beta_version (void);
-
- // = C++ compiler version information.
- /// E.g., the "SunPro C++" in SunPro C++ 4.32.0
- extern ACE_Export const ACE_TCHAR * compiler_name (void);
-
- /// E.g., the "4" in SunPro C++ 4.32.0
- extern ACE_Export u_int compiler_major_version (void);
-
- /// E.g., the "32" in SunPro C++ 4.32.0
- extern ACE_Export u_int compiler_minor_version (void);
-
- /// E.g., the "0" in SunPro C++ 4.32.0
- extern ACE_Export u_int compiler_beta_version (void);
-
- /// Check if error indicates the process being out of handles (file
- /// descriptors).
- extern ACE_Export int out_of_handles (int error);
-
- /// Simple wildcard matching function supporting '*' and '?'
- /// return true if string s matches pattern.
- extern ACE_Export bool wild_match(const char* s, const char* pattern, bool case_sensitive = true);
-
- /**
- * @name I/O operations
- *
- * Notes on common parameters:
- *
- * @a handle is the connected endpoint that will be used for I/O.
- *
- * @a buf is the buffer to write from or receive into.
- *
- * @a len is the number of bytes to transfer.
- *
- * The @a timeout parameter in the following methods indicates how
- * long to blocking trying to transfer data. If @a timeout == 0,
- * then the call behaves as a normal send/recv call, i.e., for
- * blocking sockets, the call will block until action is possible;
- * for non-blocking sockets, @c EWOULDBLOCK will be returned if no
- * action is immediately possible.
- *
- * If @a timeout != 0, the call will wait until the relative time
- * specified in @a *timeout elapses.
- *
- * The "_n()" I/O methods keep looping until all the data has been
- * transferred. These methods also work for sockets in non-blocking
- * mode i.e., they keep looping on @c EWOULDBLOCK. @a timeout is
- * used to make sure we keep making progress, i.e., the same timeout
- * value is used for every I/O operation in the loop and the timeout
- * is not counted down.
- *
- * The return values for the "*_n()" methods match the return values
- * from the non "_n()" methods and are specified as follows:
- *
- * - On complete transfer, the number of bytes transferred is returned.
- * - On timeout, -1 is returned, @c errno == @c ETIME.
- * - On error, -1 is returned, @c errno is set to appropriate error.
- * - On @c EOF, 0 is returned, @c errno is irrelevant.
- *
- * On partial transfers, i.e., if any data is transferred before
- * timeout / error / @c EOF, @a bytes_transferred> will contain the
- * number of bytes transferred.
- *
- * Methods with @a iovec parameter are I/O vector variants of the
- * I/O operations.
- *
- * Methods with the extra @a flags argument will always result in
- * @c send getting called. Methods without the extra @a flags
- * argument will result in @c send getting called on Win32
- * platforms, and @c write getting called on non-Win32 platforms.
- */
- //@{
- extern ACE_Export ssize_t recv (ACE_HANDLE handle,
- void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout = 0);
-
-#if defined (ACE_HAS_TLI)
-
- extern ACE_Export ssize_t t_rcv (ACE_HANDLE handle,
- void *buf,
- size_t len,
- int *flags,
- const ACE_Time_Value *timeout = 0);
-
-#endif /* ACE_HAS_TLI */
-
- extern ACE_Export ssize_t recv (ACE_HANDLE handle,
- void *buf,
- size_t len,
- const ACE_Time_Value *timeout = 0);
-
- extern ACE_Export ssize_t recvmsg (ACE_HANDLE handle,
- struct msghdr *msg,
- int flags,
- const ACE_Time_Value *timeout = 0);
-
- extern ACE_Export ssize_t recvfrom (ACE_HANDLE handle,
- char *buf,
- int len,
- int flags,
- struct sockaddr *addr,
- int *addrlen,
- const ACE_Time_Value *timeout = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t recv_n (ACE_HANDLE handle,
- void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0);
-
-#if defined (ACE_HAS_TLI)
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t t_rcv_n (ACE_HANDLE handle,
- void *buf,
- size_t len,
- int *flags,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0);
-
-#endif /* ACE_HAS_TLI */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t recv_n (ACE_HANDLE handle,
- void *buf,
- size_t len,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0);
-
- /// Receive into a variable number of pieces.
- /**
- * Accepts a variable, caller-specified, number of pointer/length
- * pairs. Arguments following @a n are char *, size_t pairs.
- *
- * @param handle The I/O handle to receive on
- * @param n The total number of char *, size_t pairs following @a n.
- *
- * @return -1 on error, else total number of bytes received.
- */
- extern ACE_Export ssize_t recv (ACE_HANDLE handle, size_t n, ...);
-
- extern ACE_Export ssize_t recvv (ACE_HANDLE handle,
- iovec *iov,
- int iovcnt,
- const ACE_Time_Value *timeout = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t recvv_n (ACE_HANDLE handle,
- iovec *iov,
- int iovcnt,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0);
-
- extern ACE_Export ssize_t recv_n (ACE_HANDLE handle,
- ACE_Message_Block *message_block,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0);
-
- extern ACE_Export ssize_t send (ACE_HANDLE handle,
- const void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout = 0);
-
-#if defined (ACE_HAS_TLI)
-
- extern ACE_Export ssize_t t_snd (ACE_HANDLE handle,
- const void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout = 0);
-
-#endif /* ACE_HAS_TLI */
-
- extern ACE_Export ssize_t send (ACE_HANDLE handle,
- const void *buf,
- size_t len,
- const ACE_Time_Value *timeout = 0);
-
- extern ACE_Export ssize_t sendmsg (ACE_HANDLE handle,
- const struct msghdr *msg,
- int flags,
- const ACE_Time_Value *timeout = 0);
-
- extern ACE_Export ssize_t sendto (ACE_HANDLE handle,
- const char *buf,
- int len,
- int flags,
- const struct sockaddr *addr,
- int addrlen,
- const ACE_Time_Value *timeout = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t send_n (ACE_HANDLE handle,
- const void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0);
-
-#if defined (ACE_HAS_TLI)
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t t_snd_n (ACE_HANDLE handle,
- const void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0);
-
-#endif /* ACE_HAS_TLI */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t send_n (ACE_HANDLE handle,
- const void *buf,
- size_t len,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0);
-
- /// Varargs variant.
- extern ACE_Export ssize_t send (ACE_HANDLE handle, size_t n, ...);
-
- extern ACE_Export ssize_t sendv (ACE_HANDLE handle,
- const iovec *iov,
- int iovcnt,
- const ACE_Time_Value *timeout = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t sendv_n (ACE_HANDLE handle,
- const iovec *iov,
- int iovcnt,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0);
-
- /// Send all the @a message_blocks chained through their @c next and
- /// @c cont pointers. This call uses the underlying OS gather-write
- /// operation to reduce the domain-crossing penalty.
- extern ACE_Export ssize_t send_n (ACE_HANDLE handle,
- const ACE_Message_Block *message_block,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0);
-
- // = File system I/O functions (these don't support timeouts).
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t read_n (ACE_HANDLE handle,
- void *buf,
- size_t len,
- size_t *bytes_transferred = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t write_n (ACE_HANDLE handle,
- const void *buf,
- size_t len,
- size_t *bytes_transferred = 0);
-
- /// Write all the @a message_blocks chained through their @c next
- /// and @c cont pointers. This call uses the underlying OS
- /// gather-write operation to reduce the domain-crossing penalty.
- extern ACE_Export ssize_t write_n (ACE_HANDLE handle,
- const ACE_Message_Block *message_block,
- size_t *bytes_transferred = 0);
-
- extern ACE_Export ssize_t readv_n (ACE_HANDLE handle,
- iovec *iov,
- int iovcnt,
- size_t *bytes_transferred = 0);
-
- extern ACE_Export ssize_t writev_n (ACE_HANDLE handle,
- const iovec *iov,
- int iovcnt,
- size_t *bytes_transferred = 0);
- //@}
-
- /**
- * Wait up to @a timeout amount of time to passively establish a
- * connection. This method doesn't perform the @c accept, it just
- * does the timed wait.
- */
- extern ACE_Export int handle_timed_accept (ACE_HANDLE listener,
- ACE_Time_Value *timeout,
- int restart);
-
- /**
- * Wait up to @a timeout amount of time to complete an actively
- * established non-blocking connection. If @a is_tli is non-0 then
- * we are being called by a TLI wrapper (which behaves slightly
- * differently from a socket wrapper).
- */
- extern ACE_Export ACE_HANDLE handle_timed_complete (
- ACE_HANDLE listener,
- const ACE_Time_Value *timeout,
- int is_tli = 0);
-
- /**
- * Reset the limit on the number of open handles. If @a new_limit
- * == -1 set the limit to the maximum allowable. Otherwise, set
- * the limit value to @a new_limit. If @a increase_limit_only is
- * non-0 then only allow increases to the limit.
- */
- extern ACE_Export int set_handle_limit (int new_limit = -1,
- int increase_limit_only = 0);
-
- /**
- * Returns the maximum number of open handles currently permitted in
- * this process. This maximum may be extended using
- * @c ACE::set_handle_limit.
- */
- extern ACE_Export int max_handles (void);
-
- // = String functions
-#if !defined (ACE_HAS_WINCE)
- /**
- * Return a dynamically allocated duplicate of @a str, substituting
- * the environment variable if @c str[0] @c == @c '$'. Note that
- * the pointer is allocated with @c ACE_OS::malloc and must be freed
- * by @c ACE_OS::free.
- */
- extern ACE_Export ACE_TCHAR *strenvdup (const ACE_TCHAR *str);
-#endif /* ACE_HAS_WINCE */
-
- /// Returns a pointer to the "end" of the string, i.e., the character
- /// past the '\0'.
- extern ACE_Export const char *strend (const char *s);
-
- /// This method is just like @c strdup, except that it uses
- /// @c operator @c new rather than @c malloc. If @a s is NULL
- /// returns NULL rather than segfaulting.
- extern ACE_Export char *strnew (const char *s);
-
- /// Delete the memory allocated by @c strnew.
- ACE_NAMESPACE_INLINE_FUNCTION void strdelete (char *s);
-
- /// Create a fresh new copy of @a str, up to @a n chars long. Uses
- /// @c ACE_OS::malloc to allocate the new string.
- extern ACE_Export char *strndup (const char *str, size_t n);
-
- /// Create a fresh new copy of @a str, up to @a n chars long. Uses
- /// @c ACE_OS::malloc to allocate the new string.
- extern ACE_Export char *strnnew (const char *str, size_t n);
-
-#if defined (ACE_HAS_WCHAR)
- extern ACE_Export const wchar_t *strend (const wchar_t *s);
-
- extern ACE_Export wchar_t *strnew (const wchar_t *s);
-
- ACE_NAMESPACE_INLINE_FUNCTION void strdelete (wchar_t *s);
-
- extern ACE_Export wchar_t *strndup (const wchar_t *str, size_t n);
-
- extern ACE_Export wchar_t *strnnew (const wchar_t *str, size_t n);
-
-#endif /* ACE_HAS_WCHAR */
-
- /**
- * On Windows, determines if a specified pathname ends with ".exe"
- * (not case sensitive). If on Windows and there is no ".exe" suffix,
- * a new ACE_TCHAR array is allocated and a copy of @c pathname with
- * the ".exe" suffix is copied into it. In this case, the caller is
- * responsible for calling delete [] on the returned pointer.
- *
- * @param pathname The name to check for a proper suffix.
- *
- * @retval @c pathname if there is a proper suffix for Windows. This is
- * always the return value for non-Windows platforms.
- * @retval If a suffix needs to be added, returns a pointer to new[]
- * allocated memory containing the original @c pathname plus
- * a ".exe" suffix. The caller is responsible for freeing the
- * memory using delete [].
- */
- extern ACE_Export const ACE_TCHAR *execname (const ACE_TCHAR *pathname);
-
- /**
- * Returns the "basename" of a @a pathname separated by @a delim.
- * For instance, the basename of "/tmp/foo.cpp" is "foo.cpp" when
- * @a delim is @a '/'.
- */
- extern ACE_Export const ACE_TCHAR *basename (const ACE_TCHAR *pathname,
- ACE_TCHAR delim =
- ACE_DIRECTORY_SEPARATOR_CHAR);
-
- /**
- * Returns the "dirname" of a @a pathname. For instance, the
- * dirname of "/tmp/foo.cpp" is "/tmp" when @a delim is @a '/'. If
- * @a pathname has no @a delim ".\0" is returned. This method does
- * not modify @a pathname and is not reentrant.
- */
- extern ACE_Export const ACE_TCHAR *dirname (const ACE_TCHAR *pathname,
- ACE_TCHAR delim =
- ACE_DIRECTORY_SEPARATOR_CHAR);
-
- /**
- * Returns the current timestamp in the form
- * "hour:minute:second:microsecond." The month, day, and year are
- * also stored in the beginning of the @a date_and_time array, which
- * is a user-supplied array of size @a time_len> @c ACE_TCHARs.
- * Returns 0 if unsuccessful, else returns pointer to beginning of the
- * "time" portion of @a date_and_time. If @a
- * return_pointer_to_first_digit is 0 then return a pointer to the
- * space before the time, else return a pointer to the beginning of
- * the time portion.
- */
- extern ACE_Export ACE_TCHAR *timestamp (ACE_TCHAR date_and_time[],
- size_t time_len,
- bool return_pointer_to_first_digit = false);
-
- /**
- * if @a avoid_zombies == 0 call @c ACE_OS::fork directly, else
- * create an orphan process that's inherited by the init process;
- * init cleans up when the orphan process terminates so we don't
- * create zombies. Returns -1 on failure and either the child PID
- * on success if @a avoid_zombies == 0 or 1 on success if @a
- * avoid_zombies != 0 (this latter behavior is a known bug that
- * needs to be fixed).
- */
- extern ACE_Export pid_t fork (
- const ACE_TCHAR *program_name = ACE_TEXT ("<unknown>"),
- int avoid_zombies = 0);
-
- /**
- * Become a daemon process using the algorithm in Richard Stevens
- * "Advanced Programming in the UNIX Environment." If
- * @a close_all_handles is non-zero then all open file handles are
- * closed.
- */
- extern ACE_Export int daemonize (
- const ACE_TCHAR pathname[] = ACE_TEXT ("/"),
- bool close_all_handles = ACE_DEFAULT_CLOSE_ALL_HANDLES,
- const ACE_TCHAR program_name[] = ACE_TEXT ("<unknown>"));
-
- // = Miscellaneous functions.
- /// Rounds the request to a multiple of the page size.
- extern ACE_Export size_t round_to_pagesize (size_t len);
-
- /// Rounds the request to a multiple of the allocation granularity.
- extern ACE_Export size_t round_to_allocation_granularity (size_t len);
-
- // @@ UNICODE what about buffer?
- /// Format buffer into printable format. This is useful for
- /// debugging.
- extern ACE_Export size_t format_hexdump (const char *buffer, size_t size,
- ACE_TCHAR *obuf, size_t obuf_sz);
-
- /// Computes the hash value of {str} using the "Hash PJW" routine.
- extern ACE_Export u_long hash_pjw (const char *str);
-
- /// Computes the hash value of {str} using the "Hash PJW" routine.
- extern ACE_Export u_long hash_pjw (const char *str, size_t len);
-
-#if defined (ACE_HAS_WCHAR)
- /// Computes the hash value of {str} using the "Hash PJW" routine.
- extern ACE_Export u_long hash_pjw (const wchar_t *str);
-
- /// Computes the hash value of {str} using the "Hash PJW" routine.
- extern ACE_Export u_long hash_pjw (const wchar_t *str, size_t len);
-#endif /* ACE_HAS_WCHAR */
-
- /// Computes CRC-CCITT for the string.
- extern ACE_Export ACE_UINT16 crc_ccitt(const char *str);
-
- /// Computes CRC-CCITT for the buffer.
- extern ACE_Export ACE_UINT16 crc_ccitt(const void *buf, size_t len,
- ACE_UINT16 crc = 0);
-
- /// Computes CRC-CCITT for the @ len iovec buffers.
- extern ACE_Export ACE_UINT16 crc_ccitt(const iovec *iov, int len,
- ACE_UINT16 crc = 0);
-
- /// Computes the ISO 8802-3 standard 32 bits CRC for the string.
- extern ACE_Export ACE_UINT32 crc32 (const char *str);
-
- /// Computes the ISO 8802-3 standard 32 bits CRC for the buffer.
- extern ACE_Export ACE_UINT32 crc32 (const void *buf, size_t len,
- ACE_UINT32 crc = 0);
-
- /// Computes the ISO 8802-3 standard 32 bits CRC for the
- /// @ len iovec buffers.
- extern ACE_Export ACE_UINT32 crc32 (const iovec *iov, int len,
- ACE_UINT32 crc = 0);
-
- /// Euclid's greatest common divisor algorithm.
- extern ACE_Export u_long gcd (u_long x, u_long y);
-
- /// Calculates the minimum enclosing frame size for the given values.
- extern ACE_Export u_long minimum_frame_size (u_long period1, u_long period2);
-
- /**
- * Function that can burn up noticeable CPU time: brute-force
- * determination of whether number @a n is prime. Returns 0 if
- * it is prime, or the smallest factor if it is not prime.
- * @a min_factor and @a max_factor can be used to partition the work
- * among threads. For just one thread, typical values are 2 and
- * n/2.
- */
- extern ACE_Export u_long is_prime (const u_long n,
- const u_long min_factor,
- const u_long max_factor);
-
- /// Map troublesome win32 errno values to values that standard C
- /// strerr function understands. Thank you Microsoft.
- extern ACE_Export int map_errno (int error);
-
- /// Returns a string containing the error message corresponding to a
- /// WinSock error. This works around an omission in the Win32 API.
- /// @internal
- extern ACE_Export const ACE_TCHAR * sock_error (int error);
-
- /// Determins whether the given error code corresponds to to a
- /// WinSock error. If so returns true, false otherwise.
- /// @internal
- extern ACE_Export bool is_sock_error (int error);
-
- /**
- * Checks if process with {pid} is still alive. Returns 1 if it is
- * still alive, 0 if it isn't alive, and -1 if something weird
- * happened.
- */
- extern ACE_Export int process_active (pid_t pid);
-
- /**
- * Terminate the process abruptly with id @a pid. On Win32 platforms
- * this uses {TerminateProcess} and on POSIX platforms is uses
- * {kill} with the -9 (SIGKILL) signal, which cannot be caught or
- * ignored. Note that this call is potentially dangerous to use
- * since the process being terminated may not have a chance to
- * cleanup before it shuts down.
- */
- extern ACE_Export int terminate_process (pid_t pid);
-
- /**
- * This method uses process id and object pointer to come up with a
- * machine wide unique name. The process ID will provide uniqueness
- * between processes on the same machine. The "this" pointer of the
- * {object} will provide uniqueness between other "live" objects in
- * the same process. The uniqueness of this name is therefore only
- * valid for the life of {object}.
- */
- ACE_NAMESPACE_INLINE_FUNCTION void unique_name (const void *object,
- ACE_TCHAR *name,
- size_t length);
-
- /// Computes the base 2 logarithm of {num}.
- ACE_NAMESPACE_INLINE_FUNCTION u_long log2 (u_long num);
-
- /// Hex conversion utility.
- ACE_NAMESPACE_INLINE_FUNCTION ACE_TCHAR nibble2hex (u_int n);
-
- /// Convert a hex character to its byte representation.
- ACE_NAMESPACE_INLINE_FUNCTION u_char hex2byte (ACE_TCHAR c);
-
- // = Set/get the debug level.
- extern ACE_Export bool debug (void);
- extern ACE_Export void debug (bool onoff);
-
- /// Wrapper facade for @c select that uses @c ACE_Handle_Sets.
- extern ACE_Export int select (int width,
- ACE_Handle_Set *readfds,
- ACE_Handle_Set *writefds = 0,
- ACE_Handle_Set *exceptfds = 0,
- const ACE_Time_Value *timeout = 0);
-
- /// Wrapper facade for the most common use of @c select that uses
- /// @c ACE_Handle_Sets.
- extern ACE_Export int select (int width,
- ACE_Handle_Set &readfds,
- const ACE_Time_Value *timeout = 0);
-
- /// Timed wait for handle to get read ready.
- ACE_NAMESPACE_INLINE_FUNCTION
- int handle_read_ready (ACE_HANDLE handle,
- const ACE_Time_Value *timeout);
-
- /// Timed wait for handle to get write ready.
- ACE_NAMESPACE_INLINE_FUNCTION
- int handle_write_ready (ACE_HANDLE handle,
- const ACE_Time_Value *timeout);
-
- /// Timed wait for handle to get exception ready.
- ACE_NAMESPACE_INLINE_FUNCTION
- int handle_exception_ready (ACE_HANDLE handle,
- const ACE_Time_Value *timeout);
-
- /// Timed wait for handle to get read, write, or exception ready.
- extern ACE_Export int handle_ready (ACE_HANDLE handle,
- const ACE_Time_Value *timeout,
- int read_ready,
- int write_ready,
- int exception_ready);
-
- /// Wait for @a timeout before proceeding to a @c recv operation.
- /// @a val keeps track of whether we're in non-blocking mode or
- /// not.
- extern ACE_Export int enter_recv_timedwait (ACE_HANDLE handle,
- const ACE_Time_Value *timeout,
- int &val);
-
- /// Wait for @a timeout before proceeding to a @c send operation.
- /// @a val keeps track of whether we're in non-blocking mode or
- /// not.
- extern ACE_Export int enter_send_timedwait (ACE_HANDLE handle,
- const ACE_Time_Value* timeout,
- int &val);
-
- /// This makes sure that @a handle is set into non-blocking mode.
- /// @a val keeps track of whether were in non-blocking mode or not.
- extern ACE_Export void record_and_set_non_blocking_mode (ACE_HANDLE handle,
- int &val);
-
- /// Cleanup after a timed operation, restore the appropriate
- /// non-blocking status of @a handle.
- extern ACE_Export void restore_non_blocking_mode (ACE_HANDLE handle,
- int val);
-
- // private:
- // These functions aren't meant to be used internally, so they are
- // not exported.
-
- //
- // = Recv_n helpers
- //
-
- ACE_NAMESPACE_INLINE_FUNCTION ssize_t recv_i (ACE_HANDLE handle,
- void *buf,
- size_t len);
-
- extern ACE_Export ssize_t recv_n_i (ACE_HANDLE handle,
- void *buf,
- size_t len,
- int flags,
- size_t *bytes_transferred);
-
- extern ACE_Export ssize_t recv_n_i (ACE_HANDLE handle,
- void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred);
-
-#if defined (ACE_HAS_TLI)
-
- extern ACE_Export ssize_t t_rcv_n_i (ACE_HANDLE handle,
- void *buf,
- size_t len,
- int *flags,
- size_t *bytes_transferred);
-
- extern ACE_Export ssize_t t_rcv_n_i (ACE_HANDLE handle,
- void *buf,
- size_t len,
- int *flags,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred);
-
-#endif /* ACE_HAS_TLI */
-
- extern ACE_Export ssize_t recv_n_i (ACE_HANDLE handle,
- void *buf,
- size_t len,
- size_t *bytes_transferred);
-
- extern ACE_Export ssize_t recv_n_i (ACE_HANDLE handle,
- void *buf,
- size_t len,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred);
-
- extern ACE_Export ssize_t recvv_n_i (ACE_HANDLE handle,
- iovec *iov,
- int iovcnt,
- size_t *bytes_transferred);
-
- extern ACE_Export ssize_t recvv_n_i (ACE_HANDLE handle,
- iovec *iov,
- int iovcnt,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred);
-
- //
- // = Send_n helpers
- //
-
- ACE_NAMESPACE_INLINE_FUNCTION ssize_t send_i (ACE_HANDLE handle,
- const void *buf,
- size_t len);
-
- extern ACE_Export ssize_t send_n_i (ACE_HANDLE handle,
- const void *buf,
- size_t len,
- int flags,
- size_t *bytes_transferred);
-
- extern ACE_Export ssize_t send_n_i (ACE_HANDLE handle,
- const void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred);
-
-#if defined (ACE_HAS_TLI)
-
- extern ACE_Export ssize_t t_snd_n_i (ACE_HANDLE handle,
- const void *buf,
- size_t len,
- int flags,
- size_t *bytes_transferred);
-
- extern ACE_Export ssize_t t_snd_n_i (ACE_HANDLE handle,
- const void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred);
-
-#endif /* ACE_HAS_TLI */
-
- extern ACE_Export ssize_t send_n_i (ACE_HANDLE handle,
- const void *buf,
- size_t len,
- size_t *bytes_transferred);
-
- extern ACE_Export ssize_t send_n_i (ACE_HANDLE handle,
- const void *buf,
- size_t len,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred);
-
- extern ACE_Export ssize_t sendv_n_i (ACE_HANDLE handle,
- const iovec *iov,
- int iovcnt,
- size_t *bytes_transferred);
-
- extern ACE_Export ssize_t sendv_n_i (ACE_HANDLE handle,
- const iovec *iov,
- int iovcnt,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred);
-
-}
-
-// Close versioned namespace, if enabled by the user.
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/ACE.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_ACE_H */
-
diff --git a/dep/include/ace/ACE.inl b/dep/include/ace/ACE.inl
deleted file mode 100644
index 8e92cb2bc39..00000000000
--- a/dep/include/ace/ACE.inl
+++ /dev/null
@@ -1,349 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: ACE.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_unistd.h"
-#include "ace/OS_NS_Thread.h"
-#include "ace/OS_NS_ctype.h"
-#include "ace/OS_NS_sys_socket.h"
-
-// Open versioned namespace, if enabled by the user.
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Wrappers for methods that have been moved to ACE_OS.
-
-ACE_INLINE ssize_t
-ACE::read_n (ACE_HANDLE handle,
- void *buf,
- size_t len,
- size_t *bytes_transferred)
-{
- return ACE_OS::read_n (handle,
- buf,
- len,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE::write_n (ACE_HANDLE handle,
- const void *buf,
- size_t len,
- size_t *bytes_transferred)
-{
- return ACE_OS::write_n (handle,
- buf,
- len,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE::recv_n (ACE_HANDLE handle,
- void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred)
-{
- if (timeout == 0)
- return ACE::recv_n_i (handle,
- buf,
- len,
- flags,
- bytes_transferred);
- else
- return ACE::recv_n_i (handle,
- buf,
- len,
- flags,
- timeout,
- bytes_transferred);
-}
-
-#if defined (ACE_HAS_TLI)
-
-ACE_INLINE ssize_t
-ACE::t_rcv_n (ACE_HANDLE handle,
- void *buf,
- size_t len,
- int *flags,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred)
-{
- if (timeout == 0)
- return ACE::t_rcv_n_i (handle,
- buf,
- len,
- flags,
- bytes_transferred);
- else
- return ACE::t_rcv_n_i (handle,
- buf,
- len,
- flags,
- timeout,
- bytes_transferred);
-}
-
-#endif /* ACE_HAS_TLI */
-
-ACE_INLINE ssize_t
-ACE::recv_n (ACE_HANDLE handle,
- void *buf,
- size_t len,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred)
-{
- if (timeout == 0)
- return ACE::recv_n_i (handle,
- buf,
- len,
- bytes_transferred);
- else
- return ACE::recv_n_i (handle,
- buf,
- len,
- timeout,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE::recvv_n (ACE_HANDLE handle,
- iovec *iov,
- int iovcnt,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred)
-{
- if (timeout == 0)
- return ACE::recvv_n_i (handle,
- iov,
- iovcnt,
- bytes_transferred);
- else
- return ACE::recvv_n_i (handle,
- iov,
- iovcnt,
- timeout,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE::send_n (ACE_HANDLE handle,
- const void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred)
-{
- if (timeout == 0)
- return ACE::send_n_i (handle,
- buf,
- len,
- flags,
- bytes_transferred);
- else
- return ACE::send_n_i (handle,
- buf,
- len,
- flags,
- timeout,
- bytes_transferred);
-}
-
-#if defined (ACE_HAS_TLI)
-
-ACE_INLINE ssize_t
-ACE::t_snd_n (ACE_HANDLE handle,
- const void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred)
-{
- if (timeout == 0)
- return ACE::t_snd_n_i (handle,
- buf,
- len,
- flags,
- bytes_transferred);
- else
- return ACE::t_snd_n_i (handle,
- buf,
- len,
- flags,
- timeout,
- bytes_transferred);
-}
-
-#endif /* ACE_HAS_TLI */
-
-ACE_INLINE ssize_t
-ACE::send_n (ACE_HANDLE handle,
- const void *buf,
- size_t len,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred)
-{
- if (timeout == 0)
- return ACE::send_n_i (handle,
- buf,
- len,
- bytes_transferred);
- else
- return ACE::send_n_i (handle,
- buf,
- len,
- timeout,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE::sendv_n (ACE_HANDLE handle,
- const iovec *iov,
- int iovcnt,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred)
-{
- if (timeout == 0)
- return ACE::sendv_n_i (handle,
- iov,
- iovcnt,
- bytes_transferred);
- else
- return ACE::sendv_n_i (handle,
- iov,
- iovcnt,
- timeout,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE::send_i (ACE_HANDLE handle, const void *buf, size_t len)
-{
-#if defined (ACE_WIN32) || defined (HPUX)
- return ACE_OS::send (handle, (const char *) buf, len);
-#else
- return ACE_OS::write (handle, (const char *) buf, len);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE ssize_t
-ACE::recv_i (ACE_HANDLE handle, void *buf, size_t len)
-{
-#if defined (ACE_WIN32) || defined (ACE_OPENVMS) || defined (ACE_TANDEM_T1248_PTHREADS)
- return ACE_OS::recv (handle, (char *) buf, len);
-#else
- return ACE_OS::read (handle, (char *) buf, len);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE int
-ACE::handle_read_ready (ACE_HANDLE handle,
- const ACE_Time_Value *timeout)
-{
- return ACE::handle_ready (handle,
- timeout,
- 1,
- 0,
- 0);
-}
-
-ACE_INLINE int
-ACE::handle_write_ready (ACE_HANDLE handle,
- const ACE_Time_Value *timeout)
-{
- return ACE::handle_ready (handle,
- timeout,
- 0,
- 1,
- 0);
-}
-
-ACE_INLINE int
-ACE::handle_exception_ready (ACE_HANDLE handle,
- const ACE_Time_Value *timeout)
-{
- return ACE::handle_ready (handle,
- timeout,
- 0,
- 0,
- 1);
-}
-
-ACE_INLINE void
-ACE::strdelete (char *s)
-{
- delete [] s;
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE void
-ACE::strdelete (wchar_t *s)
-{
- delete [] s;
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE void
-ACE::unique_name (const void *object,
- ACE_TCHAR *name,
- size_t length)
-{
- ACE_OS::unique_name (object, name, length);
-}
-
-ACE_INLINE u_long
-ACE::log2 (u_long num)
-{
- u_long log = 0;
-
- for (; num > 1; ++log)
- num >>= 1;
-
- return log;
-}
-
-ACE_INLINE ACE_TCHAR
-ACE::nibble2hex (u_int n)
-{
- // Hexadecimal characters.
-#if defined (ACE_VXWORKS) && !defined (__DCPLUSPLUS__)
- // temporary solution to prevent Windriver GNU toolchains from spewing
- // loads of warnings when inlining.
- // problem (incorrect warning leftover from older GNU) has been reported as
- // TSR to Windriver.
- const ACE_TCHAR hex_chars[] = ACE_TEXT ("0123456789abcdef");
-#else
- static const ACE_TCHAR hex_chars[] = ACE_TEXT ("0123456789abcdef");
-#endif
-
- // Yes, this works for UNICODE
- return hex_chars[n & 0x0f];
-}
-
-ACE_INLINE int
-ACE::map_errno (int error)
-{
-#if defined (ACE_WIN32)
- switch (error)
- {
- case WSAEWOULDBLOCK:
- return EAGAIN; // Same as UNIX errno EWOULDBLOCK.
- }
-#endif /* ACE_WIN32 */
-
- return error;
-}
-
-ACE_INLINE u_char
-ACE::hex2byte (ACE_TCHAR c)
-{
- if (ACE_OS::ace_isdigit (c))
- return (u_char) (c - ACE_TEXT ('0'));
- else if (ACE_OS::ace_islower (c))
- return (u_char) (10 + c - ACE_TEXT ('a'));
- else
- return (u_char) (10 + c - ACE_TEXT ('A'));
-}
-
-// Close versioned namespace, if enabled by the user.
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/ACE_export.h b/dep/include/ace/ACE_export.h
deleted file mode 100644
index 60e79b01f1f..00000000000
--- a/dep/include/ace/ACE_export.h
+++ /dev/null
@@ -1,77 +0,0 @@
-// -*- C++ -*-
-// $Id: ACE_export.h 80826 2008-03-04 14:51:23Z wotte $
-// Definition for Win32 Export directives.
-// This file is generated automatically by
-// generate_export_file.pl
-// ------------------------------
-
-#ifndef ACE_EXPORT_H
-#define ACE_EXPORT_H
-
-#include "ace/config-lite.h"
-
-#if defined (ACE_AS_STATIC_LIBS)
-
-# if !defined (ACE_HAS_DLL)
-# define ACE_HAS_DLL 0
-# endif /* ! ACE_HAS_DLL */
-#else
-# if !defined (ACE_HAS_DLL)
-# define ACE_HAS_DLL 1
-# endif /* ! ACE_HAS_DLL */
-#endif /* ACE_AS_STATIC_LIB */
-
-#if defined (ACE_HAS_DLL)
-# if (ACE_HAS_DLL == 1)
-# if defined (ACE_BUILD_DLL)
-# define ACE_Export ACE_Proper_Export_Flag
-# define ACE_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
-# define ACE_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-# else
-# define ACE_Export ACE_Proper_Import_Flag
-# define ACE_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
-# define ACE_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-# endif /* ACE_BUILD_DLL */
-# else
-# define ACE_Export
-# define ACE_SINGLETON_DECLARATION(T)
-# define ACE_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-# endif /* ! ACE_HAS_DLL == 1 */
-#else
-# define ACE_Export
-# define ACE_SINGLETON_DECLARATION(T)
-# define ACE_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-#endif /* ACE_HAS_DLL */
-
-// Added by hand to help with ACE_OS namespace
-#if defined (__TANDEM) && defined (USE_EXPLICIT_EXPORT)
-#define ACE_NAMESPACE_STORAGE_CLASS ACE_EXPORT_MACRO extern
-#else
-#define ACE_NAMESPACE_STORAGE_CLASS extern ACE_EXPORT_MACRO
-#endif
-
-#if defined (__ACE_INLINE__)
-# if defined (_MSC_VER) || defined (__MINGW32__) || defined (CYGWIN32) || \
- (defined (__SUNPRO_CC) && __SUNPRO_CC >= 0x560) || \
- (defined (__HP_aCC) && (__HP_aCC >= 60500)) || \
- (defined (__sgi) && \
- defined (_COMPILER_VERSION) && _COMPILER_VERSION <= 730)
-# define ACE_NAMESPACE_INLINE_FUNCTION inline
-# else
-# define ACE_NAMESPACE_INLINE_FUNCTION ACE_NAMESPACE_STORAGE_CLASS inline
-# endif
-# define ACE_INLINE_TEMPLATE_FUNCTION inline
-#else
-# define ACE_NAMESPACE_INLINE_FUNCTION ACE_NAMESPACE_STORAGE_CLASS
-// Microsoft Visual C++ will accept 'extern'; others refuse.
-# if defined (_MSC_VER) || defined (__BORLANDC__)
-# define ACE_INLINE_TEMPLATE_FUNCTION ACE_Export
-# else
-# define ACE_INLINE_TEMPLATE_FUNCTION
-# endif
-#endif
-
-#endif /* ACE_EXPORT_H */
-
-// End of auto generated file.
-
diff --git a/dep/include/ace/ARGV.h b/dep/include/ace/ARGV.h
deleted file mode 100644
index c2995a451f2..00000000000
--- a/dep/include/ace/ARGV.h
+++ /dev/null
@@ -1,334 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file ARGV.h
- *
- * $Id: ARGV.h 81156 2008-03-30 20:56:47Z iliyan $
- *
- * @author Doug Schmidt <schmidt@cs.wustl.edu>
- * @author Everett Anderson <eea1@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_ARGUMENT_VECTOR_H
-#define ACE_ARGUMENT_VECTOR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Global_Macros.h"
-#include "ace/Unbounded_Queue.h"
-
-// Open versioned namespace, if enabled by the user.
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_ARGV_Queue_Entry_T
- *
- * @brief An entry in the queue which keeps user supplied arguments.
- */
-template <typename CHAR_TYPE>
-class ACE_ARGV_Queue_Entry_T
-{
-public:
- // = Initialization and termination.
- /// Initialize a ACE_ARGV_Queue_Entry_T.
- ACE_ARGV_Queue_Entry_T (void);
-
- /**
- * Initialize a ACE_ARGV_Queue_Entry_T.
- *
- * @param arg Pointer to an argument
- *
- * @param quote_arg The argument @a arg need to be quoted
- * while adding to the vector.
- */
- ACE_ARGV_Queue_Entry_T (const CHAR_TYPE *arg,
- bool quote_arg);
-
- /**
- * Initialize a ACE_ARGV_Queue_Entry_T.
- *
- * @param entry Pointer to a queue entry
- */
- ACE_ARGV_Queue_Entry_T (const ACE_ARGV_Queue_Entry_T<CHAR_TYPE> &entry);
-
- /// We need this destructor to keep some compilers from complaining.
- /// It's just a no-op, however.
- ~ACE_ARGV_Queue_Entry_T (void);
-
- /// Dump the state of this object.
- void dump (void) const;
-
- // Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /// Pointer to the argument.
- const CHAR_TYPE * arg_;
-
- /// The argument need to be quoted while adding to the vector.
- bool quote_arg_;
-};
-
-/**
- * @class ACE_ARGV_T
- *
- * @brief Builds a counted argument vector (ala argc/argv) from either
- * a string or a set of separate tokens. This class preserves whitespace
- * within tokens only if the whitespace-containing token is enclosed in
- * either single (') or double (") quotes. This is consistent with the
- * expected behavior if an argument vector obtained using this class is
- * passed to, for example, ACE_Get_Opt.
- *
- * This class can substitute environment variable values for tokens that
- * are environment variable references (e.g., @c $VAR). This only works
- * if the token is an environment variable reference and nothing else; it
- * doesn't substitute environment variable references within a token.
- * For example, @c $HOME/file will not substitute the value of the HOME
- * environment variable.
- */
-template <typename CHAR_TYPE>
-class ACE_ARGV_T
-{
-public:
- // = Initialization and termination.
- /**
- * Splits the specified string into an argument vector. Arguments in the
- * string are delimited by whitespace. Whitespace-containing arguments
- * must be enclosed in quotes, either single (') or double (").
- *
- * @param buf A nul-terminated CHAR_TYPE array to split into arguments
- * for the vector.
- *
- * @param substitute_env_args If non-zero, any token that is an
- * environment variable reference (e.g., @c $VAR) will have
- * its environment variable value in the resultant vector
- * in place of the environment variable name.
- */
- explicit ACE_ARGV_T (const CHAR_TYPE buf[],
- bool substitute_env_args = true);
-
- /**
- * Initializes the argument vector from a set of arguments. Any environment
- * variable references are translated (if applicable) during execution of
- * this method. In contrast with ACE_ARGV_T(CHAR_TYPE *[], bool, bool), this
- * ctor does not require argv to be 0-terminated as the number of arguments
- * is provided explicitely.
- *
- * @param argc The number of arguments in the argv array.
- *
- * @param argv An array of tokens to initialize the object with. All needed
- * data is copied from @a argv during this call; the pointers
- * in @a argv are not needed after this call, and the memory
- * referred to by @a argv is not referenced by this object.
- *
- * @param substitute_env_args If non-zero, any element of @a argv that is
- * an environment variable reference (e.g., @c $VAR) will have
- * its environment variable value in the resultant vector
- * in place of the environment variable name.
- *
- * @param quote_args If non-zero each argument @a argv[i] needs to
- * be enclosed in double quotes ('"').
- */
- explicit ACE_ARGV_T (int argc,
- CHAR_TYPE *argv[],
- bool substitute_env_args = true,
- bool quote_args = false);
-
- /**
- * Initializes the argument vector from a set of arguments. Any environment
- * variable references are translated (if applicable) during execution of
- * this method.
- *
- * @param argv An array of tokens to initialize the object with. The
- * array must be terminated with a 0 pointer. All needed
- * data is copied from @a argv during this call; the pointers
- * in @a argv are not needed after this call, and the memory
- * referred to by @a argv is not referenced by this object.
- *
- * @param substitute_env_args If non-zero, any element of @a argv that is
- * an environment variable reference (e.g., @c $VAR) will have
- * its environment variable value in the resultant vector
- * in place of the environment variable name.
- *
- * @param quote_args If non-zero each argument @a argv[i] needs to
- * be enclosed in double quotes ('"').
- */
- explicit ACE_ARGV_T (CHAR_TYPE *argv[],
- bool substitute_env_args = true,
- bool quote_args = false);
-
- /**
- * Initializes the argument vector from two combined argument vectors.
- *
- * @param first_argv An array of tokens to initialize the object with.
- * The array must be terminated with a 0 pointer.
- * @param second_argv An array of tokens that is concatenated with the
- * the tokens in @a first_argv. The array must be
- * terminated with a 0 pointer.
- * @param substitute_env_args If non-zero, any element of @a first_argv
- * or @a second_argv that is an environment variable
- * reference (e.g., @c $VAR) will have its environment
- * variable value in the resultant vector in place
- * of the environment variable name.
- *
- * @param quote_args If non-zero each arguments @a first_argv[i] and
- * @a second_argv[i] needs to be enclosed
- * in double quotes ('"').
- */
- ACE_ARGV_T (CHAR_TYPE *first_argv[],
- CHAR_TYPE *second_argv[],
- bool substitute_env_args = true,
- bool quote_args = false);
-
- /**
- * Initialize this object so arguments can be added later using one
- * of the add methods. This is referred to as the @i iterative method
- * of adding arguments to this object.
- */
- explicit ACE_ARGV_T (bool substitute_env_args = true);
-
- /// Destructor.
- ~ACE_ARGV_T (void);
-
- /** @name Accessor methods
- *
- * These methods access the argument vector contained in this object.
- */
- //@{
- /**
- * Returns the specified element of the current argument vector.
- *
- * @param index Index to the desired element.
- *
- * @retval Pointer to the indexed string.
- * @retval 0 if @a index is out of bounds.
- */
- const CHAR_TYPE *operator[] (size_t index);
-
- /**
- * Returns the current argument vector. The returned pointers are to data
- * maintained internally to this class. Do not change or delete either the
- * pointers or the memory to which they refer.
- */
- CHAR_TYPE **argv (void);
-
- /// Returns the current number of arguments.
- int argc (void) const;
-
- /**
- * Returns a single string form of the current arguments. The returned
- * pointer refers to memory maintained internally to this class. Do not
- * change or delete it.
- */
- const CHAR_TYPE *buf (void);
-
- //@}
-
- /// Dump the state of this object.
- void dump (void) const;
-
- // Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /**
- * Add another argument. This only works in the iterative mode.
- *
- * @note This method copies the specified pointer, but not the data
- * contained in the referenced memory. Thus, if the content of
- * the memory referred to by @a next_arg are changed after this
- * method returns, the results are undefined.
- *
- * @param next_arg Pointer to the next argument to add to the vector.
- *
- * @param quote_arg The argument @a next_arg need to be quoted while
- * adding to the vector.
- *
- * @retval 0 on success; -1 on failure. Most likely @c errno values are:
- * - EINVAL: This object is not in iterative mode.
- * - ENOMEM: Not enough memory available to save @a next_arg.
- */
- int add (const CHAR_TYPE *next_arg, bool quote_arg = false);
-
- /**
- * Add an array of arguments. This only works in the iterative mode.
- *
- * @note This method copies the specified pointers, but not the data
- * contained in the referenced memory. Thus, if the content of
- * the memory referred to by any of the @a argv elements is
- * changed after this method returns, the results are undefined.
- *
- * @param argv Pointers to the arguments to add to the vector.
- * @a argv must be terminated by a 0 pointer.
- *
- * @param quote_args If non-zero each argument @a argv[i] needs to
- * be enclosed in double quotes ('"').
- *
- * @retval 0 on success; -1 on failure. Most likely @c errno values are:
- * - EINVAL: This object is not in iterative mode.
- * - ENOMEM: Not enough memory available to save @a next_arg.
- */
- int add (CHAR_TYPE *argv[], bool quote_args = false);
-
-private:
- /// Copy constructor not implemented.
- ACE_UNIMPLEMENTED_FUNC (ACE_ARGV_T (const ACE_ARGV_T<CHAR_TYPE>&))
-
- /// Assignment operator not implemented.
- ACE_UNIMPLEMENTED_FUNC (ACE_ARGV_T operator= (const ACE_ARGV_T<CHAR_TYPE>&))
-
- /// Creates buf_ from the queue of added args, deletes previous buf_.
- int create_buf_from_queue (void);
-
- /// Converts buf_ into the CHAR_TYPE *argv[] format.
- int string_to_argv (void);
-
- /// Replace args with environment variable values?
- bool substitute_env_args_;
-
- bool iterative_;
-
- /// Number of arguments in the ARGV array.
- int argc_;
-
- /// The array of string arguments.
- CHAR_TYPE **argv_;
-
- /// Buffer containing the <argv> contents.
- CHAR_TYPE *buf_;
-
- /// Total length of the arguments in the queue, not counting
- /// separating spaces
- size_t length_;
-
- /// Queue which keeps user supplied arguments. This is only
- /// active in the "iterative" mode.
- ACE_Unbounded_Queue<ACE_ARGV_Queue_Entry_T<CHAR_TYPE> > queue_;
-};
-
-typedef ACE_ARGV_Queue_Entry_T<ACE_TCHAR> ACE_ARGV_Queue_Entry;
-typedef ACE_ARGV_T<ACE_TCHAR> ACE_ARGV;
-
-// Close versioned namespace, if enabled by the user.
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/ARGV.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/ARGV.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("ARGV.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_ARGUMENT_VECTOR_H */
-
diff --git a/dep/include/ace/ARGV.inl b/dep/include/ace/ARGV.inl
deleted file mode 100644
index fdc5b13d7c3..00000000000
--- a/dep/include/ace/ARGV.inl
+++ /dev/null
@@ -1,104 +0,0 @@
-/* -*- C++ -*- */
-// $Id: ARGV.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Global_Macros.h"
-
-// Open versioned namespace, if enabled by the user.
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <typename CHAR_TYPE> ACE_INLINE
-ACE_ARGV_Queue_Entry_T<CHAR_TYPE>::ACE_ARGV_Queue_Entry_T (void)
- : arg_(0),
- quote_arg_(false)
-{
- // No-op
-}
-
-template <typename CHAR_TYPE> ACE_INLINE
-ACE_ARGV_Queue_Entry_T<CHAR_TYPE>::ACE_ARGV_Queue_Entry_T (const CHAR_TYPE *arg,
- bool quote_arg)
- : arg_(arg),
- quote_arg_(quote_arg)
-{
- // No-op
-}
-
-template <typename CHAR_TYPE> ACE_INLINE
-ACE_ARGV_Queue_Entry_T<CHAR_TYPE>::ACE_ARGV_Queue_Entry_T (const ACE_ARGV_Queue_Entry_T<CHAR_TYPE> &entry)
- : arg_(entry.arg_),
- quote_arg_(entry.quote_arg_)
-{
- // No-op
-}
-
-template <typename CHAR_TYPE> ACE_INLINE
-ACE_ARGV_Queue_Entry_T<CHAR_TYPE>::~ACE_ARGV_Queue_Entry_T (void)
-{
- // No-op just to keep some compilers happy...
-}
-
-// Return the number of args
-template <typename CHAR_TYPE>
-ACE_INLINE int
-ACE_ARGV_T<CHAR_TYPE>::argc (void) const
-{
- ACE_TRACE ("ACE_ARGV_T::argc");
- // Try to create the argv_ if it isn't there
- ACE_ARGV_T<CHAR_TYPE> *nonconst_this =
- const_cast <ACE_ARGV_T<CHAR_TYPE> *> (this);
- (void) nonconst_this->argv ();
- return this->argc_;
-}
-
-// Return the arguments in a space-separated string
-template <typename CHAR_TYPE>
-ACE_INLINE const CHAR_TYPE *
-ACE_ARGV_T<CHAR_TYPE>::buf (void)
-{
- ACE_TRACE ("ACE_ARGV_T::buf");
-
- if (this->buf_ == 0 && this->iterative_)
- this->create_buf_from_queue ();
-
- return (const CHAR_TYPE *) this->buf_;
-}
-
-// Return the arguments in an entry-per-argument array
-
-template <typename CHAR_TYPE>
-ACE_INLINE CHAR_TYPE **
-ACE_ARGV_T<CHAR_TYPE>::argv (void)
-{
- ACE_TRACE ("ACE_ARGV_T::argv");
-
- // Try to create the argv_ if it isn't there
- if (this->argv_ == 0)
- {
- if (this->iterative_ && this->buf_ == 0)
- this->create_buf_from_queue ();
-
- // Convert buf_ to argv_
- if (this->string_to_argv () == -1)
- return (CHAR_TYPE **) 0;
- }
-
- return (CHAR_TYPE **) this->argv_;
-}
-
-// Subscript operator.
-
-template <typename CHAR_TYPE>
-ACE_INLINE const CHAR_TYPE *
-ACE_ARGV_T<CHAR_TYPE>::operator[] (size_t i)
-{
- ACE_TRACE ("ACE_ARGV_T::operator[]");
-
- // Don't go out of bounds.
- if (i >= static_cast<size_t> (this->argc_))
- return 0;
-
- return (const CHAR_TYPE *) this->argv ()[i];
-}
-
-// Close versioned namespace, if enabled by the user.
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/ATM_Acceptor.h b/dep/include/ace/ATM_Acceptor.h
deleted file mode 100644
index 762a8c2122c..00000000000
--- a/dep/include/ace/ATM_Acceptor.h
+++ /dev/null
@@ -1,122 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file ATM_Acceptor.h
- *
- * $Id: ATM_Acceptor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Joe Hoffert
- */
-//=============================================================================
-
-#ifndef ACE_ATM_ACCEPTOR_H
-#define ACE_ATM_ACCEPTOR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_ATM)
-
-#include "ace/ATM_Stream.h"
-#include "ace/ATM_Params.h"
-#include "ace/ATM_QoS.h"
-
-#if defined (ACE_HAS_LINUX_ATM)
-#include /**/ "atm.h"
-#endif /* ACE_HAS_LINUX_ATM */
-
-#if defined (ACE_HAS_FORE_ATM_WS2) || defined (ACE_HAS_LINUX_ATM)
-#include "ace/SOCK_Acceptor.h"
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef ACE_SOCK_Acceptor ATM_Acceptor;
-ACE_END_VERSIONED_NAMESPACE_DECL
-#elif defined (ACE_HAS_FORE_ATM_XTI)
-#include "ace/TLI_Acceptor.h"
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef ACE_TLI_Acceptor ATM_Acceptor;
-ACE_END_VERSIONED_NAMESPACE_DECL
-#endif // ACE_HAS_FORE_ATM_WS2 || ACE_HAS_LINUX_ATM
-
-// Open versioned namespace, if enabled by the user.
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declarations.
-class ACE_Time_Value;
-
-/**
- * @class ACE_ATM_Acceptor
- *
- * @brief Defines the member functions for ACE_ATM_Acceptor abstraction.
- *
- * This class wraps up the ACE_SOCK_Acceptor and ACE_TLI_Acceptor
- * to make the mechanism for the ATM protocol transparent.
- */
-class ACE_Export ACE_ATM_Acceptor
-{
-
-public:
- // = Initialization and termination methods.
- /// Default constructor.
- ACE_ATM_Acceptor (void);
-
- ~ACE_ATM_Acceptor ();
-
- /// Initiate a passive mode connection.
- ACE_ATM_Acceptor (const ACE_Addr &remote_sap,
- int backlog = ACE_DEFAULT_BACKLOG,
- ACE_ATM_Params params = ACE_ATM_Params());
-
- /// Initiate a passive mode socket.
- ACE_HANDLE open (const ACE_Addr &remote_sap,
- int backlog = ACE_DEFAULT_BACKLOG,
- ACE_ATM_Params params = ACE_ATM_Params());
-
- /// Close down the acceptor and release resources.
- int close (void);
-
- // = Passive connection acceptance method.
-
- /// Accept a new data transfer connection. A @a timeout of 0 means
- /// block forever, a @a timeout of {0, 0} means poll. @a restart == 1
- /// means "restart if interrupted."
- int accept (ACE_ATM_Stream &new_sap,
- ACE_Addr *remote_addr = 0,
- ACE_Time_Value *timeout = 0,
- int restart = 1,
- int reset_new_handle = 0,
- ACE_ATM_Params params = ACE_ATM_Params(),
- ACE_ATM_QoS qos = ACE_ATM_QoS());
-
- /// Get the local address currently listening on
- int get_local_addr( ACE_ATM_Addr &local_addr );
-
- // = Meta-type info
- typedef ACE_ATM_Addr PEER_ADDR;
- typedef ACE_ATM_Stream PEER_STREAM;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- ATM_Acceptor acceptor_;
-};
-
-// Close versioned namespace, if enabled by the user.
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/ATM_Acceptor.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_ATM */
-#include /**/ "ace/post.h"
-#endif /* ACE_ATM_ACCEPTOR_H */
-
diff --git a/dep/include/ace/ATM_Acceptor.inl b/dep/include/ace/ATM_Acceptor.inl
deleted file mode 100644
index fa60c4ad89a..00000000000
--- a/dep/include/ace/ATM_Acceptor.inl
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: ATM_Acceptor.inl 80826 2008-03-04 14:51:23Z wotte $
-
-// Open versioned namespace, if enabled by the user.
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE void
-ACE_ATM_Acceptor::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_ATM_Acceptor::dump");
-#endif /* ACE_HAS_DUMP */
-}
-
-ACE_INLINE
-ACE_ATM_Acceptor::ACE_ATM_Acceptor (const ACE_Addr &remote_sap,
- int backlog,
- ACE_ATM_Params params)
-{
- ACE_TRACE ("ACE_ATM_Acceptor::ACE_ATM_Acceptor");
-
- //FUZZ: disable check_for_lack_ACE_OS
- if (open (remote_sap, backlog, params) < 0)
- //FUZZ: enable check_for_lack_ACE_OS
- ACE_ERROR ((LM_ERROR,
- ACE_TEXT ("%p\n"),
- ACE_TEXT ("ACE_ATM_Acceptor::ACE_ATM_Acceptor")));
-}
-
-ACE_INLINE
-int
-ACE_ATM_Acceptor::close (void)
-{
-#if defined (ACE_HAS_FORE_ATM_XTI) || defined (ACE_HAS_FORE_ATM_WS2) || defined (ACE_HAS_LINUX_ATM)
- return (acceptor_.close());
-#else
- return 0;
-#endif // ACE_HAS_FORE_ATM_XTI || ACE_HAS_FORE_ATM_WS2 || ACE_HAS_LINUX_ATM
-}
-
-// Close versioned namespace, if enabled by the user.
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/ATM_Addr.h b/dep/include/ace/ATM_Addr.h
deleted file mode 100644
index 3c586f10a11..00000000000
--- a/dep/include/ace/ATM_Addr.h
+++ /dev/null
@@ -1,197 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file ATM_Addr.h
- *
- * $Id: ATM_Addr.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Joe Hoffert <joeh@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_ATM_ADDR_H
-#define ACE_ATM_ADDR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_ATM)
-
-#include /**/ "ace/ACE_export.h"
-#include "ace/Addr.h"
-
-#if defined (ACE_HAS_FORE_ATM_XTI)
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef ATMSAPAddress ATM_Addr;
-ACE_END_VERSIONED_NAMESPACE_DECL
-#elif defined (ACE_HAS_FORE_ATM_WS2)
-#define FORE_NAME_SPACE NS_ALL
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef struct sockaddr_atm ATM_Addr;
-ACE_END_VERSIONED_NAMESPACE_DECL
-#elif defined (ACE_HAS_LINUX_ATM)
-
-#include /**/ "atm.h"
-
-// Open versioned namespace, if enabled by the user.
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-//pbrandao:as Linux has this 2 structs separeted we "link it" here
-typedef struct _linux_atm_addr
-{
- struct sockaddr_atmsvc sockaddratmsvc;
- struct atm_sap atmsap;
-} ATM_Addr;
-#else
-typedef int ATM_Addr;
-#endif /* ACE_HAS_FORE_ATM_XTI/ACE_HAS_FORE_ATM_WS2/ACE_HAS_LINUX_ATM */
-
-/**
- * @class ACE_ATM_Addr
- *
- * @brief Defines the ATM domain address family address format.
- */
-class ACE_Export ACE_ATM_Addr : public ACE_Addr
-{
-public:
- // Constants used for ATM options
- static const long LINE_RATE;
- static const int OPT_FLAGS_CPID;
- static const int OPT_FLAGS_PMP;
- static const int DEFAULT_SELECTOR;
-
- // = Initialization methods.
- /// Default constructor.
- ACE_ATM_Addr (u_char selector = DEFAULT_SELECTOR);
-
- /// Copy constructor.
- ACE_ATM_Addr (const ACE_ATM_Addr &,
- u_char selector = DEFAULT_SELECTOR);
-
- /**
- * Creates an ACE_ATM_Addr from an ATMSAPAddress structure. This
- * is vendor specific (FORE systems). May need to change when other
- * vendors are supported.
- */
- ACE_ATM_Addr (const ATM_Addr *,
- u_char selector = DEFAULT_SELECTOR);
-
- /**
- * Initializes an ACE_ATM_Addr from the <sap> which can be
- * "atm-address" (e.g.,
- * "47.0005.80.ffe100.0000.f20f.2200.0020480694f9.00") or "hostname"
- * (e.g., "frisbee.cs.wustl.edu").
- */
- ACE_ATM_Addr (const ACE_TCHAR sap[],
- u_char selector = DEFAULT_SELECTOR);
-
- /// Default dtor.
- ~ACE_ATM_Addr (void);
-
- // = Initialization methods (useful after object construction).
- /// Default initialization for non-address values (e.g.,
- /// t_atm_sap_addr.SVE_tag_addr, t_atm_sap_addr.SVE_tag_selector)
- void init (u_char selector = DEFAULT_SELECTOR);
-
- /// Initializes from another ACE_ATM_Addr.
- int set (const ACE_ATM_Addr &,
- u_char selector = DEFAULT_SELECTOR);
-
- /**
- * Initializes an ACE_ATM_Addr from an ATMSAPAddress/sockaddr_atm
- * structure. This is vendor specific (FORE systems). May need to
- * change when other vendors are supported.
- */
- int set (const ATM_Addr *,
- u_char selector = DEFAULT_SELECTOR);
-
- /**
- * Initializes an ACE_ATM_Addr from the <sap> which can be
- * "atm-address" (e.g.,
- * "47.0005.80.ffe100.0000.f20f.2200.0020480694f9.00") or "hostname"
- * (e.g., "frisbee.cs.wustl.edu").
- */
- int set (const ACE_TCHAR sap[],
- u_char selector = DEFAULT_SELECTOR);
-
- /**
- * Initializes an ACE_ATM_Addr from the <sap> which can be
- * "atm-address" (e.g.,
- * "47.0005.80.ffe100.0000.f20f.2200.0020480694f9.00") or "hostname"
- * (e.g., "frisbee.cs.wustl.edu").
- */
- virtual int string_to_addr (const ACE_TCHAR sap[]);
-
- /**
- * Return the character representation of the ATM address (e.g.,
- * "47.0005.80.ffe100.0000.f20f.2200.0020480694f9.00") storing it in
- * the @a addr (which is assumed to be <addrlen> bytes long). This
- * version is reentrant. Returns -1 if the <addrlen> of the @a addr
- * is too small, else 0.
- */
- virtual int addr_to_string (ACE_TCHAR addr[],
- size_t addrlen) const;
-
- /**
- * Return the character representation of the ATM address (e.g.,
- * "47.0005.80.ffe100.0000.f20f.2200.0020480694f9.00"). Returns -1
- * if the <size> of the <buffer> is too small, else 0.(This version
- * is non-reentrant since it returns a pointer to a static data
- * area.)
- */
- const ACE_TCHAR *addr_to_string (void) const;
-
- /// Return a pointer to the underlying network address.
- virtual void *get_addr (void) const;
-
- /// Set a pointer to the address.
- virtual void set_addr (void *, int);
-
- /// Return the selector for network address.
- u_char get_selector (void) const;
-
- /// Set the selector for the network address.
- void set_selector (u_char selector);
-
- /**
- * Compare two addresses for equality. The addresses are considered
- * equal if they contain the same ATM address. Q: Is there any
- * other check for equality needed for ATM?
- */
- bool operator == (const ACE_ATM_Addr &SAP) const;
-
- /// Compare two addresses for inequality.
- bool operator != (const ACE_ATM_Addr &SAP) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-// char *construct_options (ACE_HANDLE fd,
-// int qos_kb,
-// int flags,
-// long *optsize);
-// // Construct options for ATM connections
-
-private:
- ATM_Addr atm_addr_;
-};
-
-// Close versioned namespace, if enabled by the user.
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/ATM_Addr.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_ATM */
-#include /**/ "ace/post.h"
-#endif /* ACE_ATM_ADDR_H */
-
diff --git a/dep/include/ace/ATM_Addr.inl b/dep/include/ace/ATM_Addr.inl
deleted file mode 100644
index 55f43d6613a..00000000000
--- a/dep/include/ace/ATM_Addr.inl
+++ /dev/null
@@ -1,37 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: ATM_Addr.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE u_char
-ACE_ATM_Addr::get_selector (void) const
-{
- ACE_TRACE ("ACE_ATM_Addr::get_selector");
-#if defined (ACE_HAS_FORE_ATM_XTI)
- return atm_addr_.sap.t_atm_sap_addr.address[ATMNSAP_ADDR_LEN - 1];
-#elif defined (ACE_HAS_FORE_ATM_WS2)
- return atm_addr_.satm_number.Addr[ ATM_ADDR_SIZE - 1 ];
-#elif defined (ACE_HAS_LINUX_ATM)
- return atm_addr_.sockaddratmsvc.sas_addr.prv[ATM_ESA_LEN - 1];
-#else
- return 0;
-#endif /* ACE_HAS_FORE_ATM_XTI || ACE_HAS_FORE_ATM_WS2 || ACE_HAS_LINUX_ATM */
-}
-
-ACE_INLINE void
-ACE_ATM_Addr::set_selector (u_char selector)
-{
- ACE_TRACE ("ACE_ATM_Addr::set_selector");
-#if defined (ACE_HAS_FORE_ATM_XTI)
- atm_addr_.sap.t_atm_sap_addr.address[ATMNSAP_ADDR_LEN - 1] = selector;
-#elif defined (ACE_HAS_FORE_ATM_WS2)
- atm_addr_.satm_number.Addr[ ATM_ADDR_SIZE - 1 ] = selector;
-#elif defined (ACE_HAS_LINUX_ATM)
- atm_addr_.sockaddratmsvc.sas_addr.prv[ATM_ESA_LEN - 1] = selector;
-#else
- ACE_UNUSED_ARG (selector);
-#endif /* ACE_HAS_FORE_ATM_XTI || ACE_HAS_FORE_ATM_WS2 || ACE_HAS_LINUX_ATM */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/ATM_Connector.h b/dep/include/ace/ATM_Connector.h
deleted file mode 100644
index e8657e91a23..00000000000
--- a/dep/include/ace/ATM_Connector.h
+++ /dev/null
@@ -1,165 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file ATM_Connector.h
- *
- * $Id: ATM_Connector.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Joe Hoffert <joeh@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_ATM_CONNECTOR_H
-#define ACE_ATM_CONNECTOR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_ATM)
-
-#include "ace/ATM_Stream.h"
-#include "ace/ATM_Params.h"
-#include "ace/ATM_QoS.h"
-
-#if defined (ACE_WIN32) || defined (ACE_HAS_LINUX_ATM)
-#include "ace/SOCK_Connector.h"
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef ACE_SOCK_Connector ATM_Connector;
-ACE_END_VERSIONED_NAMESPACE_DECL
-#else
-#include "ace/XTI_ATM_Mcast.h"
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef ACE_XTI_ATM_Mcast ATM_Connector;
-// Open versioned namespace, if enabled by the user.
-ACE_END_VERSIONED_NAMESPACE_DECL
-#endif
-
-// Open versioned namespace, if enabled by the user.
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_ATM_Connector
- *
- * @brief Defines an active connection factory for the ACE_ATM C++
- * wrappers.
- */
-class ACE_Export ACE_ATM_Connector
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_ATM_Connector (void);
-
- /**
- * Actively connect and produce a @a new_stream if things go well.
- * The @a remote_sap is the address that we are trying to connect
- * with. The <params> are the parameters needed for either socket
- * or XTI/ATM connections. The @a timeout is the amount of time to
- * wait to connect. If it's 0 then we block indefinitely. If
- * *timeout == {0, 0} then the connection is done using non-blocking
- * mode. In this case, if the connection can't be made immediately
- * the value of -1 is returned with @c errno == EWOULDBLOCK. If
- * *timeout > {0, 0} then this is the maximum amount of time to wait before
- * timing out. If the time expires before the connection is made
- * @c errno == ETIME. The @a local_sap is the value of local address
- * to bind to. If it's the default value of <ACE_ATM_Addr::sap_any> then
- * the user is letting the OS do the binding. If @a reuse_addr == 1
- * then the <local_addr> is reused, even if it hasn't been cleanedup yet.
- */
- ACE_ATM_Connector (ACE_ATM_Stream &new_stream,
- const ACE_ATM_Addr &remote_sap,
- ACE_ATM_Params params = ACE_ATM_Params(),
- ACE_ATM_QoS options = ACE_ATM_QoS(),
- ACE_Time_Value *timeout = 0,
- const ACE_ATM_Addr &local_sap = ACE_ATM_Addr( "", 0 ),
- int reuse_addr = 0,
-#if defined (ACE_WIN32)
- int flags = 0,
-#else
- int flags = O_RDWR,
-#endif /* ACE_WIN32 */
- int perms = 0);
-
- /**
- * Actively connect and produce a @a new_stream if things go well.
- * The @a remote_sap is the address that we are trying to connect
- * with. The <params> are the parameters needed for either socket
- * or XTI/ATM connections. The @a timeout is the amount of time to
- * wait to connect. If it's 0 then we block indefinitely. If
- * *timeout == {0, 0} then the connection is done using non-blocking
- * mode. In this case, if the connection can't be made immediately
- * the value of -1 is returned with @c errno == EWOULDBLOCK. If
- * *timeout > {0, 0} then this is the maximum amount of time to wait before
- * timing out. If the time expires before the connection is made
- * @c errno == ETIME. The @a local_sap is the value of local address
- * to bind to. If it's the default value of <ACE_ATM_Addr::sap_any> then
- * the user is letting the OS do the binding. If @a reuse_addr == 1
- * then the <local_addr> is reused, even if it hasn't been cleanedup yet.
- */
- int connect (ACE_ATM_Stream &new_stream,
- const ACE_ATM_Addr &remote_sap,
- ACE_ATM_Params params = ACE_ATM_Params(),
- ACE_ATM_QoS options = ACE_ATM_QoS(),
- ACE_Time_Value *timeout = 0,
- const ACE_ATM_Addr &local_sap = ACE_ATM_Addr( "",
- 0 ),
- int reuse_addr = 0,
-#if defined (ACE_WIN32)
- int flags = 0,
-#else
- int flags = O_RDWR,
-#endif /* ACE_WIN32 */
- int perms = 0);
-
- /**
- * Try to complete a non-blocking connection.
- * If connection completion is successful then @a new_stream contains
- * the connected ACE_SOCK_Stream. If @a remote_sap is non-NULL then it
- * will contain the address of the connected peer.
- */
- int complete (ACE_ATM_Stream &new_stream,
- ACE_ATM_Addr *remote_sap,
- ACE_Time_Value *tv);
-
- /**
- * Actively add a leaf to the root (i.e., point-to-multipoint). The
- * @a remote_sap is the address of the leaf that we
- * are trying to add.
- */
- int add_leaf (ACE_ATM_Stream &current_stream,
- const ACE_Addr &remote_sap,
- ACE_ATM_QoS &qos);
-
- /// Resets any event associations on this handle
- int reset_new_handle (ACE_HANDLE handle);
-
- // = Meta-type info
- typedef ACE_ATM_Addr PEER_ADDR;
- typedef ACE_ATM_Stream PEER_STREAM;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- ATM_Connector connector_;
-};
-
-// Open versioned namespace, if enabled by the user.
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/ATM_Connector.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_ATM */
-#include /**/ "ace/post.h"
-#endif /* ACE_ATM_CONNECTOR_H */
-
diff --git a/dep/include/ace/ATM_Connector.inl b/dep/include/ace/ATM_Connector.inl
deleted file mode 100644
index 0b89cbf0828..00000000000
--- a/dep/include/ace/ATM_Connector.inl
+++ /dev/null
@@ -1,132 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: ATM_Connector.inl 80826 2008-03-04 14:51:23Z wotte $
-
-// Open versioned namespace, if enabled by the user.
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE void
-ACE_ATM_Connector::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_ATM_Connector::dump");
-#endif /* ACE_HAS_DUMP */
-}
-
-ACE_INLINE
-ACE_ATM_Connector::ACE_ATM_Connector (ACE_ATM_Stream &new_stream,
- const ACE_ATM_Addr &remote_sap,
- ACE_ATM_Params params,
- ACE_ATM_QoS options,
- ACE_Time_Value *timeout,
- const ACE_ATM_Addr &local_sap,
- int reuse_addr,
- int flags,
- int perms)
-{
- ACE_TRACE ("ACE_ATM_Connector::ACE_ATM_Connector");
- if ((ACE_HANDLE)this->connect (new_stream,
- remote_sap,
- params,
- options,
- timeout,
- local_sap,
- reuse_addr,
- flags,
- perms) == ACE_INVALID_HANDLE
- && timeout != 0 && !(errno == EWOULDBLOCK || errno == ETIME))
- ACE_ERROR ((LM_ERROR, ACE_TEXT ("%p\n"),
- ACE_TEXT ("ACE_ATM_Stream::ACE_ATM_Stream")));
-}
-
-// Try to complete a non-blocking connection.
-
-ACE_INLINE
-int
-ACE_ATM_Connector::complete (ACE_ATM_Stream &new_stream,
- ACE_ATM_Addr *remote_sap,
- ACE_Time_Value *tv)
-{
- ACE_TRACE ("ACE_ATM_Connector::complete");
-#if defined (ACE_HAS_ATM)
- return connector_.complete(new_stream.get_stream(),
- remote_sap,
- tv);
-#else
- ACE_UNUSED_ARG(new_stream);
- ACE_UNUSED_ARG(remote_sap);
- ACE_UNUSED_ARG(tv);
- return 0;
-#endif
-}
-
-ACE_INLINE
-int
-ACE_ATM_Connector::add_leaf (ACE_ATM_Stream &current_stream,
- const ACE_Addr &remote_sap,
- ACE_ATM_QoS &qos)
-{
- ACE_TRACE ("ACE_ATM_Connector::add_leaf");
-#if defined (ACE_HAS_FORE_ATM_XTI)
- return connector_.add_leaf(current_stream.get_stream(),
- remote_sap,
- leaf_id,
- timeout);
-#elif defined (ACE_HAS_FORE_ATM_WS2)
- struct sockaddr_atm *saddr = (struct sockaddr_atm *)remote_sap.get_addr();
- ACE_QoS cqos = qos.get_qos();
- int addr_len = sizeof( struct sockaddr_atm );
-
- ACE_QoS_Params qos_params(0,
- 0,
- &cqos,
- 0,
- (JL_SENDER_ONLY));
-
- ACE_OS::printf( "ATM_Connector::add_leaf: connecting...\n" );
-
- ACE_HANDLE result = ACE_OS::join_leaf(current_stream.get_handle(),
- (struct sockaddr *)saddr,
- addr_len,
- qos_params);
-
- if ( result == ACE_INVALID_HANDLE )
- ACE_OS::printf( "ATM_Connector(add_leaf): connection failed, %d\n",
- ::WSAGetLastError());
-
- return (result != ACE_INVALID_HANDLE);
-#elif defined (ACE_HAS_LINUX_ATM)
- ACE_OS::printf("ATM_Connector(add_leaf): not yet implemented in Linux \n");
-
- ACE_UNUSED_ARG(current_stream);
- ACE_UNUSED_ARG(remote_sap);
- ACE_UNUSED_ARG(leaf_id);
- ACE_UNUSED_ARG(timeout);
-
- return 0;
-#else
- ACE_UNUSED_ARG(current_stream);
- ACE_UNUSED_ARG(remote_sap);
- ACE_UNUSED_ARG(leaf_id);
- ACE_UNUSED_ARG(timeout);
- return 0;
-#endif
-}
-
-ACE_INLINE
-int
-ACE_ATM_Connector::reset_new_handle (ACE_HANDLE handle)
-{
-#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
- // Reset the event association
- return ::WSAEventSelect ((SOCKET) handle,
- 0,
- 0);
-#else /* !defined ACE_HAS_WINSOCK2 */
- ACE_UNUSED_ARG (handle);
- return 0;
-#endif /* ACE_WIN32 */
-}
-
-// Close versioned namespace, if enabled by the user.
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/ATM_Params.h b/dep/include/ace/ATM_Params.h
deleted file mode 100644
index c460afbd3c2..00000000000
--- a/dep/include/ace/ATM_Params.h
+++ /dev/null
@@ -1,214 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file ATM_Params.h
- *
- * $Id: ATM_Params.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Joe Hoffert <joeh@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_ATM_PARAMS_H
-#define ACE_ATM_PARAMS_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_ATM)
-
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_HAS_FORE_ATM_XTI)
-#include "ace/TLI.h"
-#define ATM_PROTOCOL_DEFAULT 0
-typedef struct t_info Param_Info;
-typedef struct netbuf Param_Udata;
-#elif defined (ACE_HAS_FORE_ATM_WS2)
-#include "ace/SOCK.h"
-#define ATM_PROTOCOL_DEFAULT ATMPROTO_AAL5
-#define ACE_XTI_ATM_DEVICE ""
-typedef int Param_Info;
-typedef int Param_Udata;
-#elif defined (ACE_HAS_LINUX_ATM)
-#include /**/ "atm.h"
-#define AF_ATM PF_ATMSVC
-#define ACE_XTI_ATM_DEVICE ""
-#define ATM_PROTOCOL_DEFAULT ATM_AAL5
-typedef int Param_Info;
-typedef int Param_Udata;
-#else
-#define ACE_XTI_ATM_DEVICE ""
-typedef int Param_Info;
-typedef int Param_Udata;
-#endif /* ACE_HAS_FORE_ATM_XTI || ACE_HAS_FORE_ATM_WS2 || ACE_HAS_LINUX_ATM */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_ATM_Params
- *
- * @brief Wrapper class that simplifies the information passed to the ATM
- * enabled ACE_ATM_Connector class.
- */
-class ACE_Export ACE_ATM_Params
-{
-public:
- /**
- * Initialize the data members. This class combines options from
- * ACE_SOCK_Connector (@a protocol_family, @a protocol, <type>,
- * @a protocol_info, <group>, and @a flags) and
- * ACE_TLI_Connector (<device>, <info>, <rw_flag>, <oflag>, and <udata>)
- * so that either mechanism can be used transparently for ATM.
- */
- ACE_ATM_Params (int rw_flag = 1,
- const char device[] = ACE_XTI_ATM_DEVICE,
- Param_Info *info = 0,
- Param_Udata *udata = 0,
- int oflag = O_RDWR,
- int protocol_family = AF_ATM,
- int protocol = ATM_PROTOCOL_DEFAULT,
- int type =
-#if defined (ACE_HAS_LINUX_ATM)
- SOCK_DGRAM,
-#else
- SOCK_RAW,
-#endif /* ACE_HAS_LINUX_ATM */
- ACE_Protocol_Info *protocol_info = 0,
- ACE_SOCK_GROUP g = 0,
- u_long flags
- = ACE_FLAG_MULTIPOINT_C_ROOT
- | ACE_FLAG_MULTIPOINT_D_ROOT, // connector by default
- int reuse_addr = 0);
-
- /// Destructor.
- ~ACE_ATM_Params ();
-
- /// Get protocol family.
- int get_protocol_family (void) const;
-
- /// Set protocol family.
- void set_protocol_family (int);
-
- /// Get protocol.
- int get_protocol (void) const;
-
- /// Set protocol.
- void set_protocol (int);
-
- /// Get type.
- int get_type (void) const;
-
- /// Set type.
- void set_type (int);
-
- /// Get protocol info.
- ACE_Protocol_Info *get_protocol_info( void );
-
- /// Set protocol info.
- void set_protocol_info( ACE_Protocol_Info *);
-
- /// Get socket group.
- ACE_SOCK_GROUP get_sock_group( void );
-
- /// Set socket group.
- void set_sock_group( ACE_SOCK_GROUP );
-
- /// Get socket flags.
- u_long get_flags( void );
-
- /// Set socket flags.
- void set_flags( u_long );
-
- /// Get reuse_addr flag.
- int get_reuse_addr (void) const;
-
- /// Set reuse_addr flag.
- void set_reuse_addr (int);
-
- /// Get device.
- const char* get_device (void) const;
-
- /// Get info.
- Param_Info* get_info (void) const;
-
- /// Set info.
- void set_info (Param_Info *);
-
- /// Get r/w flag.
- int get_rw_flag (void) const;
-
- /// Set r/w flag.
- void set_rw_flag (int);
-
- /// Get user data.
- Param_Udata* get_user_data (void) const;
-
- /// Set user data.
- void set_user_data (Param_Udata*);
-
- /// Get open flag.
- int get_oflag (void) const;
-
- /// Set open flag.
- void set_oflag (int);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Protocol family for sockets connections.
- int protocol_family_;
-
- /// Protocol for sockets connections.
- int protocol_;
-
- /// Type for opening sockets.
- int type_;
-
- /// Information about the protocol.
- ACE_Protocol_Info *protocol_info_;
-
- /// Socket group used (for sockets only).
- ACE_SOCK_GROUP group_;
-
- /// Flags for sockets (for sockets only).
- u_long flags_;
-
- /// Flag for reusing address for opening sockets.
- int reuse_addr_;
-
- /// Device name for XTI/ATM connections.
- const char *device_;
-
- /// Info for XTI/ATM connections.
- Param_Info *info_;
-
- /// R/W flag for XTI/ATM connections.
- int rw_flag_;
-
- /// User data for XTI/ATM connections.
- Param_Udata *udata_;
-
- /// Open flag for XTI/ATM connections.
- int oflag_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/ATM_Params.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_ATM */
-#include /**/ "ace/post.h"
-#endif /* ACE_ATM_PARAMS_H */
-
diff --git a/dep/include/ace/ATM_Params.inl b/dep/include/ace/ATM_Params.inl
deleted file mode 100644
index de2a4d45127..00000000000
--- a/dep/include/ace/ATM_Params.inl
+++ /dev/null
@@ -1,235 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: ATM_Params.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE void
-ACE_ATM_Params::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_ATM_Params::dump");
-#endif /* ACE_HAS_DUMP */
-}
-
-ACE_INLINE
-ACE_ATM_Params::ACE_ATM_Params (int rw_flag,
- const char device[],
- Param_Info *info,
- Param_Udata *udata,
- int oflag,
- int protocol_family,
- int protocol,
- int type,
- ACE_Protocol_Info *protocol_info,
- ACE_SOCK_GROUP g,
- u_long flags,
- int reuse_addr)
- : protocol_family_(protocol_family),
- protocol_(protocol),
- type_(type),
- protocol_info_(protocol_info),
- group_(g),
- flags_(flags),
- reuse_addr_(reuse_addr),
- device_(device),
- info_(info),
- rw_flag_(rw_flag),
- udata_(udata),
- oflag_(oflag)
-{
- ACE_TRACE ("ACE_ATM_Params::ACE_ATM_Params");
-}
-
-// Default dtor.
-ACE_INLINE
-ACE_ATM_Params::~ACE_ATM_Params (void)
-{
- ACE_TRACE ("ACE_ATM_Params::~ACE_ATM_Params");
-}
-
-ACE_INLINE
-int
-ACE_ATM_Params::get_protocol_family (void) const
-{
- ACE_TRACE ("ACE_ATM_Params::get_protocol_family");
- return protocol_family_;
-}
-
-ACE_INLINE
-void
-ACE_ATM_Params::set_protocol_family (int family)
-{
- ACE_TRACE ("ACE_ATM_Params::set_protocol_family");
- protocol_family_ = family;
-}
-
-ACE_INLINE
-int
-ACE_ATM_Params::get_protocol (void) const
-{
- ACE_TRACE ("ACE_ATM_Params::get_protocol");
- return protocol_;
-}
-
-ACE_INLINE
-void
-ACE_ATM_Params::set_protocol (int protocol)
-{
- ACE_TRACE ("ACE_ATM_Params::set_protocol");
- protocol_ = protocol;
-}
-
-ACE_INLINE
-int
-ACE_ATM_Params::get_type (void) const
-{
- ACE_TRACE ("ACE_ATM_Params::get_type");
- return type_;
-}
-
-ACE_INLINE
-void
-ACE_ATM_Params::set_type (int type)
-{
- ACE_TRACE ("ACE_ATM_Params::set_type");
- type_ = type;
-}
-
-ACE_INLINE
-ACE_Protocol_Info*
-ACE_ATM_Params::get_protocol_info( void )
-{
- ACE_TRACE ("ACE_ATM_Params::get_protocol_info");
- return protocol_info_;
-}
-
-ACE_INLINE
-void
-ACE_ATM_Params::set_protocol_info( ACE_Protocol_Info *protocol_info )
-{
- ACE_TRACE ("ACE_ATM_Params::set_protocol_info");
- protocol_info_ = protocol_info;
-}
-
-ACE_INLINE
-ACE_SOCK_GROUP
-ACE_ATM_Params::get_sock_group( void )
-{
- ACE_TRACE ("ACE_ATM_Params::get_sock_group");
- return group_;
-}
-
-ACE_INLINE
-void
-ACE_ATM_Params::set_sock_group( ACE_SOCK_GROUP g )
-{
- ACE_TRACE ("ACE_ATM_Params::set_sock_group");
- group_ = g;
-}
-
-ACE_INLINE
-u_long
-ACE_ATM_Params::get_flags( void )
-{
- ACE_TRACE ("ACE_ATM_Params::get_flags");
- return flags_;
-}
-
-ACE_INLINE
-void
-ACE_ATM_Params::set_flags( u_long flags)
-{
- ACE_TRACE ("ACE_ATM_Params::set_flags");
- flags_ = flags;
-}
-
-ACE_INLINE
-int
-ACE_ATM_Params::get_reuse_addr (void) const
-{
- ACE_TRACE ("ACE_ATM_Params::get_reuse_addr");
- return reuse_addr_;
-}
-
-ACE_INLINE
-void
-ACE_ATM_Params::set_reuse_addr (int reuse_addr)
-{
- ACE_TRACE ("ACE_ATM_Params::set_reuse_addr");
- reuse_addr_ = reuse_addr;
-}
-
-ACE_INLINE
-const char*
-ACE_ATM_Params::get_device (void) const
-{
- ACE_TRACE ("ACE_ATM_Params::get_device");
- return device_;
-}
-
-ACE_INLINE
-Param_Info*
-ACE_ATM_Params::get_info (void) const
-{
- ACE_TRACE ("ACE_ATM_Params::get_info");
- return info_;
-}
-
-ACE_INLINE
-void
-ACE_ATM_Params::set_info (Param_Info* info)
-{
- ACE_TRACE ("ACE_ATM_Params::set_info");
- info_ = info;
-}
-
-ACE_INLINE
-int
-ACE_ATM_Params::get_rw_flag (void) const
-{
- ACE_TRACE ("ACE_ATM_Params::get_rw_flag");
- return rw_flag_;
-}
-
-ACE_INLINE
-void
-ACE_ATM_Params::set_rw_flag (int rw_flag)
-{
- ACE_TRACE ("ACE_ATM_Params::set_rw_flag");
- rw_flag_ = rw_flag;
-}
-
-ACE_INLINE
-Param_Udata*
-ACE_ATM_Params::get_user_data (void) const
-{
- ACE_TRACE ("ACE_ATM_Params::get_user_data");
- return udata_;
-}
-
-ACE_INLINE
-void
-ACE_ATM_Params::set_user_data (Param_Udata *udata)
-{
- ACE_TRACE ("ACE_ATM_Params::set_user_data");
- udata_ = udata;
-}
-
-ACE_INLINE
-int
-ACE_ATM_Params::get_oflag (void) const
-{
- ACE_TRACE ("ACE_ATM_Params::get_oflag");
- return oflag_;
-}
-
-ACE_INLINE
-void
-ACE_ATM_Params::set_oflag (int oflag)
-{
- ACE_TRACE ("ACE_ATM_Params::set_oflag");
- oflag_ = oflag;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/ATM_QoS.h b/dep/include/ace/ATM_QoS.h
deleted file mode 100644
index 927005aa68d..00000000000
--- a/dep/include/ace/ATM_QoS.h
+++ /dev/null
@@ -1,115 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file ATM_QoS.h
- *
- * $Id: ATM_QoS.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Joe Hoffert
- */
-//==========================================================================
-
-#ifndef ACE_ATM_QoS_H
-#define ACE_ATM_QoS_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined(ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_ATM)
-
-#if defined (ACE_HAS_FORE_ATM_WS2)
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-// just map to WS2 GQOS struct
-typedef ACE_QoS ATM_QoS;
-ACE_END_VERSIONED_NAMESPACE_DECL
-#elif defined (ACE_HAS_FORE_ATM_XTI)
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef struct netbuf ATM_QoS;
-ACE_END_VERSIONED_NAMESPACE_DECL
-#elif defined (ACE_HAS_LINUX_ATM)
-#include /**/ "atm.h"
-#include "ace/ATM_Params.h"
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef struct atm_qos ATM_QoS;
-ACE_END_VERSIONED_NAMESPACE_DECL
-#else
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef int ATM_QoS;
-ACE_END_VERSIONED_NAMESPACE_DECL
-#endif /* ACE_HAS_FORE_ATM_WS2 || ACE_HAS_FORE_ATM_XTI || ACE_HAS_LINUX_ATM */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_ATM_QoS
- *
- * @brief Define the QoS parameters for ATM
- *
- * This class wraps up QoS parameters for both ATM/XTI and
- * ATM/WinSock2 to make the mechanism for the ATM protocol
- * transparent.
- */
-class ACE_Export ACE_ATM_QoS
-{
-public:
- // Constants used for ATM options
- static const long LINE_RATE;
- static const int OPT_FLAGS_CPID;
- static const int OPT_FLAGS_PMP;
- static const int DEFAULT_SELECTOR;
- static const int DEFAULT_PKT_SIZE;
-
- // = Initializattion and termination methods.
- /// Default constructor.
- ACE_ATM_QoS(int = DEFAULT_PKT_SIZE);
-
- /// Constructor with a CBR rate.
- ACE_ATM_QoS(int,
- int = DEFAULT_PKT_SIZE);
-
- ~ACE_ATM_QoS ();
-
- /// Set the rate.
- void set_rate (ACE_HANDLE,
- int,
- int);
-
- /// Set CBR rate in cells per second.
- void set_cbr_rate (int,
- int = DEFAULT_PKT_SIZE);
-
- /// Get ATM_QoS struct.
- ATM_QoS get_qos (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Construct QoS options.
- char* construct_options(ACE_HANDLE,
- int,
- int,
- long*);
-
-private:
- ATM_QoS qos_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/ATM_QoS.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_ATM */
-#include /**/ "ace/post.h"
-#endif /* ACE_ATM_QoS_H */
-
diff --git a/dep/include/ace/ATM_QoS.inl b/dep/include/ace/ATM_QoS.inl
deleted file mode 100644
index 52b5211190d..00000000000
--- a/dep/include/ace/ATM_QoS.inl
+++ /dev/null
@@ -1,29 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: ATM_QoS.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE void
-ACE_ATM_QoS::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_ATM_QoS::dump");
-#endif /* ACE_HAS_DUMP */
-}
-
-ACE_INLINE
-ACE_ATM_QoS::~ACE_ATM_QoS ()
-{
- ACE_TRACE ("ACE_ATM_QoS::~ACE_ATM_QoS");
-}
-
-ACE_INLINE
-ATM_QoS
-ACE_ATM_QoS::get_qos (void)
-{
- ACE_TRACE ("ACE_ATM_QoS::get_qos");
- return qos_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/ATM_Stream.h b/dep/include/ace/ATM_Stream.h
deleted file mode 100644
index 2d31c7654d1..00000000000
--- a/dep/include/ace/ATM_Stream.h
+++ /dev/null
@@ -1,107 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file ATM_Stream.h
- *
- * $Id: ATM_Stream.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Joe Hoffert
- */
-//=============================================================================
-
-#ifndef ACE_ATM_STREAM_H
-#define ACE_ATM_STREAM_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_ATM)
-
-#include "ace/ATM_Addr.h"
-#include "ace/ATM_Params.h"
-
-#if defined (ACE_WIN32)
-#include "ace/SOCK_Stream.h"
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef ACE_SOCK_Stream ATM_Stream;
-ACE_END_VERSIONED_NAMESPACE_DECL
-#else
-#include "ace/TLI_Stream.h"
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef ACE_TLI_Stream ATM_Stream;
-ACE_END_VERSIONED_NAMESPACE_DECL
-#endif
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_ATM_Stream
- *
- * @brief Defines the member functions for ACE_ATM_Stream abstraction.
- */
-class ACE_Export ACE_ATM_Stream
-{
-public:
- // = Initialization and termination methods.
- /// Default constructor.
- ACE_ATM_Stream (void);
-
- // = ATM-specific open and shutdown operations.
- /// open the stream.
- int open (ACE_ATM_Params params = ACE_ATM_Params());
-
- /// Close down and release resources.
- int close (void);
-
- /// Get the underlying handle.
- ACE_HANDLE get_handle (void) const;
-
- /// Get the underlying stream.
- ATM_Stream& get_stream (void);
-
- /// Get the name of the connected host.
- char* get_peer_name (void) const;
-
- /// Get the VPI and VCI of the stream.
- int get_vpi_vci (ACE_UINT16 &vpi,
- ACE_UINT16 &vci) const;
-
- /// Recv an n byte buffer from the connected transport mechanism.
- ssize_t recv (void *buf,
- size_t n,
- int *flags = 0) const;
-
- /// Send exactly n bytes to the connected transport mechanism.
- ssize_t send_n (const void *buf,
- size_t n,
- int flags) const;
-
- // = Meta-type info
- typedef ACE_ATM_Addr PEER_ADDR;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Typedef'd to the appropriate stream mechanism above.
- ATM_Stream stream_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/ATM_Stream.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_ATM */
-#include /**/ "ace/post.h"
-#endif /* ACE_ATM_STREAM_H */
-
diff --git a/dep/include/ace/ATM_Stream.inl b/dep/include/ace/ATM_Stream.inl
deleted file mode 100644
index 087c1ed440b..00000000000
--- a/dep/include/ace/ATM_Stream.inl
+++ /dev/null
@@ -1,133 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: ATM_Stream.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE void
-ACE_ATM_Stream::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_ATM_Stream::dump");
-#endif /* ACE_HAS_DUMP */
-}
-
-ACE_INLINE
-ACE_ATM_Stream::ACE_ATM_Stream (void)
-{
- ACE_TRACE ("ACE_ATM_Stream::ACE_ATM_Stream");
-}
-
-ACE_INLINE
-int
-ACE_ATM_Stream::open (ACE_ATM_Params params)
-{
- ACE_TRACE ("ACE_ATM_Stream::open");
-#if defined (ACE_HAS_FORE_ATM_XTI)
- ACE_HANDLE handle = stream_.open (params.get_device(),
- params.get_oflag(),
- params.get_info());
- return (handle == ACE_INVALID_HANDLE ? -1 : 0);
-#elif defined (ACE_HAS_FORE_ATM_WS2)
- params.set_flags( ACE_FLAG_MULTIPOINT_C_ROOT | ACE_FLAG_MULTIPOINT_D_ROOT );
-
- int retval = stream_.open (params.get_type(),
- params.get_protocol_family(),
- params.get_protocol(),
- params.get_protocol_info(),
- params.get_sock_group(),
- params.get_flags(),
- params.get_reuse_addr());
- if (retval == -1)
- return -1;
-
- struct sockaddr_atm sock_addr;
-
- ACE_OS::memset(&sock_addr, 0, sizeof(struct sockaddr_atm));
- sock_addr.satm_family = AF_ATM;
- sock_addr.satm_number.AddressType=ADDR_ANY;
- sock_addr.satm_number.NumofDigits = ATM_ADDR_SIZE;
- sock_addr.satm_blli.Layer2Protocol = SAP_FIELD_ABSENT;
- sock_addr.satm_blli.Layer3Protocol = SAP_FIELD_ABSENT;
- sock_addr.satm_bhli.HighLayerInfoType = SAP_FIELD_ABSENT;
- if (ACE_OS::bind(get_handle(),
- (struct sockaddr FAR *)&sock_addr,
- sizeof(struct sockaddr_atm)) < 0)
- {
- ACE_OS::printf("Error binding local address: %d",WSAGetLastError());
- return -1;
- }
-
- return 0;
-#else
- ACE_UNUSED_ARG(params);
- return 0;
-#endif /* ACE_HAS_FORE_ATM_XTI */
-}
-
-ACE_INLINE
-int
-ACE_ATM_Stream::close (void)
-{
- ACE_TRACE ("ACE_ATM_Stream::close");
-#if defined (ACE_HAS_FORE_ATM_XTI) || defined (ACE_HAS_FORE_ATM_WS2)
- return stream_.close ();
-#else
- return 0;
-#endif /* ACE_HAS_FORE_ATM_XTI || ACE_HAS_FORE_ATM_WS2 */
-}
-
-ACE_INLINE
-ATM_Stream&
-ACE_ATM_Stream::get_stream (void)
-{
- ACE_TRACE ("ACE_ATM_Stream::get_stream");
- return stream_;
-}
-
-ACE_INLINE
-ssize_t
-ACE_ATM_Stream::recv (void *buf,
- size_t n,
- int *flags) const
-{
- ACE_TRACE ("ACE_ATM_Stream::recv");
-#if defined (ACE_HAS_FORE_ATM_XTI)
- return stream_.recv (buf,
- n,
- flags);
-#elif defined (ACE_HAS_FORE_ATM_WS2)
- return stream_.recv (buf,
- n);
-#else
- ACE_UNUSED_ARG(buf);
- ACE_UNUSED_ARG(n);
- ACE_UNUSED_ARG(flags);
- return (0);
-#endif /* ACE_HAS_FORE_ATM_XTI */
-}
-
-ACE_INLINE
-ssize_t
-ACE_ATM_Stream::send_n (const void *buf,
- size_t n,
- int flags) const
-{
- ACE_TRACE ("ACE_ATM_Stream::send_n");
-#if defined (ACE_HAS_FORE_ATM_XTI)
- return stream_.send_n (buf,
- n,
- flags);
-#elif defined (ACE_HAS_FORE_ATM_WS2)
- return stream_.send_n (buf,
- n,
- flags);
-#else
- ACE_UNUSED_ARG(buf);
- ACE_UNUSED_ARG(n);
- ACE_UNUSED_ARG(flags);
- return (0);
-#endif /* ACE_HAS_FORE_ATM_XTI */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Acceptor.h b/dep/include/ace/Acceptor.h
deleted file mode 100644
index 8f0f16935fb..00000000000
--- a/dep/include/ace/Acceptor.h
+++ /dev/null
@@ -1,687 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Acceptor.h
- *
- * $Id: Acceptor.h 81460 2008-04-28 11:34:23Z elliott_c $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_ACCEPTOR_H
-#define ACE_ACCEPTOR_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Service_Object.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Strategies_T.h"
-#include "ace/Synch_Options.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Acceptor
- *
- * @brief Abstract factory for creating a service handler
- * (SVC_HANDLER), accepting into the SVC_HANDLER, and
- * activating the SVC_HANDLER.
- *
- * Implements the basic strategy for passively establishing
- * connections with clients. An ACE_Acceptor is parameterized
- * by concrete types that conform to the interfaces of
- * PEER_ACCEPTOR and SVC_HANDLER. The PEER_ACCEPTOR is
- * instantiated with a transport mechanism that passively
- * establishes connections. The SVC_HANDLER is instantiated
- * with a concrete type that performs the application-specific
- * service. An ACE_Acceptor inherits from ACE_Service_Object,
- * which in turn inherits from ACE_Event_Handler. This enables
- * the ACE_Reactor to dispatch the ACE_Acceptor's handle_input
- * method when connection events occur. The handle_input method
- * performs the ACE_Acceptor's default creation, connection
- * establishment, and service activation strategies. These
- * strategies can be overridden by subclasses individually or as
- * a group.
- */
-template <class SVC_HANDLER, ACE_PEER_ACCEPTOR_1>
-class ACE_Acceptor : public ACE_Service_Object
-{
-public:
-
- // Useful STL-style traits.
- typedef ACE_PEER_ACCEPTOR_ADDR addr_type;
- typedef ACE_PEER_ACCEPTOR acceptor_type;
- typedef SVC_HANDLER handler_type;
- typedef typename SVC_HANDLER::stream_type stream_type;
-
- /// "Do-nothing" constructor.
- ACE_Acceptor (ACE_Reactor * = 0,
- int use_select = 1);
-
- /**
- * Open the contained @c PEER_ACCEPTOR object to begin listening, and
- * register with the specified reactor for accept events. An
- * acceptor can only listen to one port at a time, so make sure to
- * @c close() the acceptor before calling @c open() again.
- *
- * The @c PEER_ACCEPTOR handle is put into non-blocking mode as a
- * safeguard against the race condition that can otherwise occur
- * between the time when the passive-mode socket handle is "ready"
- * and when the actual @c accept() call is made. During this
- * interval, the client can shutdown the connection, in which case,
- * the @c accept() call can hang.
- *
- * @param local_addr The address to listen at.
- * @param reactor Pointer to the ACE_Reactor instance to register
- * this object with. The default is the singleton.
- * @param flags Flags to control what mode an accepted socket
- * will be put into after it is accepted. The only
- * legal value for this argument is @c ACE_NONBLOCK,
- * which enables non-blocking mode on the accepted
- * peer stream object in @c SVC_HANDLER. The default
- * is 0.
- * @param use_select Affects behavior when called back by the reactor
- * when a connection can be accepted. If non-zero,
- * this object will accept all pending connections,
- * intead of just the one that triggered the reactor
- * callback. Uses ACE_OS::select() internally to
- * detect any remaining acceptable connections.
- * The default is 1.
- * @param reuse_addr Passed to the @c PEER_ACCEPTOR::open() method with
- * @p local_addr. Generally used to request that the
- * OS allow reuse of the listen port. The default is 1.
- */
- ACE_Acceptor (const ACE_PEER_ACCEPTOR_ADDR &local_addr,
- ACE_Reactor *reactor = ACE_Reactor::instance (),
- int flags = 0,
- int use_select = 1,
- int reuse_addr = 1);
-
- /**
- * Open the contained @c PEER_ACCEPTOR object to begin listening, and
- * register with the specified reactor for accept events. An
- * acceptor can only listen to one port at a time, so make sure to
- * @c close() the acceptor before calling @c open() again.
- *
- * The @c PEER_ACCEPTOR handle is put into non-blocking mode as a
- * safeguard against the race condition that can otherwise occur
- * between the time when the passive-mode socket handle is "ready"
- * and when the actual @c accept() call is made. During this
- * interval, the client can shutdown the connection, in which case,
- * the @c accept() call can hang.
- *
- * @param local_addr The address to listen at.
- * @param reactor Pointer to the ACE_Reactor instance to register
- * this object with. The default is the singleton.
- * @param flags Flags to control what mode an accepted socket
- * will be put into after it is accepted. The only
- * legal value for this argument is @c ACE_NONBLOCK,
- * which enables non-blocking mode on the accepted
- * peer stream object in @c SVC_HANDLER. The default
- * is 0.
- * @param use_select Affects behavior when called back by the reactor
- * when a connection can be accepted. If non-zero,
- * this object will accept all pending connections,
- * intead of just the one that triggered the reactor
- * callback. Uses ACE_OS::select() internally to
- * detect any remaining acceptable connections.
- * The default is 1.
- * @param reuse_addr Passed to the @c PEER_ACCEPTOR::open() method with
- * @p local_addr. Generally used to request that the
- * OS allow reuse of the listen port. The default is 1.
- *
- * @retval 0 Success
- * @retval -1 Failure, @c errno contains an error code.
- */
- virtual int open (const ACE_PEER_ACCEPTOR_ADDR &local_addr,
- ACE_Reactor *reactor = ACE_Reactor::instance (),
- int flags = 0,
- int use_select = 1,
- int reuse_addr = 1);
-
- /// Close down the Acceptor's resources.
- virtual ~ACE_Acceptor (void);
-
- /// Return the underlying PEER_ACCEPTOR object.
- virtual operator ACE_PEER_ACCEPTOR &() const;
-
- /// Return the underlying PEER_ACCEPTOR object.
- virtual ACE_PEER_ACCEPTOR &acceptor (void) const;
-
- /// Returns the listening acceptor's {ACE_HANDLE}.
- virtual ACE_HANDLE get_handle (void) const;
-
- /// Close down the Acceptor
- virtual int close (void);
-
- /// In the event that an accept fails, this method will be called and
- /// the return value will be returned from handle_input().
- virtual int handle_accept_error (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- // = The following three methods define the Acceptor's strategies
- // for creating, accepting, and activating SVC_HANDLER's,
- // respectively.
-
- /**
- * Bridge method for creating a SVC_HANDLER. The default is to
- * create a new {SVC_HANDLER} if {sh} == 0, else {sh} is unchanged.
- * However, subclasses can override this policy to perform
- * SVC_HANDLER creation in any way that they like (such as creating
- * subclass instances of SVC_HANDLER, using a singleton, dynamically
- * linking the handler, etc.). Returns -1 on failure, else 0.
- */
- virtual int make_svc_handler (SVC_HANDLER *&sh);
-
- /**
- * Bridge method for accepting the new connection into the
- * <svc_handler>. The default behavior delegates to the
- * PEER_ACCEPTOR::accept.
- */
- virtual int accept_svc_handler (SVC_HANDLER *svc_handler);
-
- /**
- * Bridge method for activating a {svc_handler} with the appropriate
- * concurrency strategy. The default behavior of this method is to
- * activate the SVC_HANDLER by calling its {open} method (which
- * allows the SVC_HANDLER to define its own concurrency strategy).
- * However, subclasses can override this strategy to do more
- * sophisticated concurrency activations (such as making the
- * SVC_HANDLER as an "active object" via multi-threading or
- * multi-processing).
- */
- virtual int activate_svc_handler (SVC_HANDLER *svc_handler);
-
- // = Demultiplexing hooks.
- /// Perform termination activities when {this} is removed from the
- /// {reactor}.
- virtual int handle_close (ACE_HANDLE = ACE_INVALID_HANDLE,
- ACE_Reactor_Mask = ACE_Event_Handler::ALL_EVENTS_MASK);
-
- /// Accepts all pending connections from clients, and creates and
- /// activates SVC_HANDLERs.
- virtual int handle_input (ACE_HANDLE);
-
- // = Dynamic linking hooks.
- /// Default version does no work and returns -1. Must be overloaded
- /// by application developer to do anything meaningful.
- virtual int init (int argc, ACE_TCHAR *argv[]);
-
- /// Calls {handle_close}.
- virtual int fini (void);
-
- /// Default version returns address info in {buf}.
- virtual int info (ACE_TCHAR **buf, size_t) const;
-
-public:
- // = Service management hooks.
- /// This method calls {Reactor::suspend}.
- virtual int suspend (void);
-
- /// This method calls {Reactor::resume}.
- virtual int resume (void);
-
-protected:
- /// Concrete factory for accepting connections from clients...
- ACE_PEER_ACCEPTOR peer_acceptor_;
-
- /// Needed to reopen the socket if {accept} fails.
- ACE_PEER_ACCEPTOR_ADDR peer_acceptor_addr_;
-
- /**
- * Flags that indicate how {SVC_HANDLER}'s should be initialized
- * prior to being activated. Right now, the only flag that is
- * processed is {ACE_NONBLOCK}, which enabled non-blocking I/O on
- * the {SVC_HANDLER} when it is opened.
- */
- int flags_;
-
- /// Flag that indicates whether it shall use {select} in the
- /// {accept}-loop.
- int use_select_;
-
- /// Needed to reopen the socket if {accept} fails.
- int reuse_addr_;
-};
-
-/**
- * @class ACE_Strategy_Acceptor
- *
- * @brief Abstract factory for creating a service handler
- * (SVC_HANDLER), accepting into the SVC_HANDLER, and activating
- * the SVC_HANDLER.
- *
- * Implements a flexible and extensible set of strategies for
- * passively establishing connections with clients. There are
- * three main strategies: (1) creating a SVC_HANDLER, (2)
- * passively accepting a new connection from a client into the
- * SVC_HANDLER, and (3) activating the SVC_HANDLER with a
- * particular concurrency mechanism.
- */
-template <class SVC_HANDLER, ACE_PEER_ACCEPTOR_1>
-class ACE_Strategy_Acceptor
- : public ACE_Acceptor <SVC_HANDLER, ACE_PEER_ACCEPTOR_2>
-{
-public:
-
- // Useful STL-style traits.
- typedef ACE_Creation_Strategy<SVC_HANDLER>
- creation_strategy_type;
- typedef ACE_Accept_Strategy<SVC_HANDLER, ACE_PEER_ACCEPTOR_2>
- accept_strategy_type;
- typedef ACE_Concurrency_Strategy<SVC_HANDLER>
- concurrency_strategy_type;
- typedef ACE_Scheduling_Strategy<SVC_HANDLER> scheduling_strategy_type;
- typedef ACE_Acceptor <SVC_HANDLER, ACE_PEER_ACCEPTOR_2>
- base_type;
-
- // = Define some useful (old style) traits.
- typedef ACE_Creation_Strategy<SVC_HANDLER> CREATION_STRATEGY;
- typedef ACE_Accept_Strategy<SVC_HANDLER, ACE_PEER_ACCEPTOR_2> ACCEPT_STRATEGY;
- typedef ACE_Concurrency_Strategy<SVC_HANDLER> CONCURRENCY_STRATEGY;
- typedef ACE_Scheduling_Strategy<SVC_HANDLER> SCHEDULING_STRATEGY;
-
- /// Default constructor.
- ACE_Strategy_Acceptor (const ACE_TCHAR service_name[] = 0,
- const ACE_TCHAR service_description[] = 0,
- int use_select = 1,
- int reuse_addr = 1);
-
- /**
- * Initialize the appropriate strategies for creation, passive
- * connection acceptance, and concurrency, and then register {this}
- * with the Reactor and listen for connection requests at the
- * designated {local_addr}.
- */
- ACE_Strategy_Acceptor (const ACE_PEER_ACCEPTOR_ADDR &local_addr,
- ACE_Reactor * = ACE_Reactor::instance (),
- ACE_Creation_Strategy<SVC_HANDLER> * = 0,
- ACE_Accept_Strategy<SVC_HANDLER, ACE_PEER_ACCEPTOR_2> * = 0,
- ACE_Concurrency_Strategy<SVC_HANDLER> * = 0,
- ACE_Scheduling_Strategy<SVC_HANDLER> * = 0,
- const ACE_TCHAR service_name[] = 0,
- const ACE_TCHAR service_description[] = 0,
- int use_select = 1,
- int reuse_addr = 1);
-
- /**
- * Open the contained @c PEER_ACCEPTOR object to begin listening, and
- * register with the specified reactor for accept events.
- *
- * The @c PEER_ACCEPTOR handle is put into non-blocking mode as a
- * safeguard against the race condition that can otherwise occur
- * between the time when the passive-mode socket handle is "ready"
- * and when the actual @c accept call is made. During this
- * interval, the client can shutdown the connection, in which case,
- * the {accept} call can hang.
- *
- * @param local_addr The address to listen at.
- * @param reactor Pointer to the ACE_Reactor instance to register
- * this object with. The default is the singleton.
- * @param flags Flags to control what mode an accepted socket
- * will be put into after it is accepted. The only
- * legal value for this argument is @c ACE_NONBLOCK,
- * which enables non-blocking mode on the accepted
- * peer stream object in @c SVC_HANDLER. The default
- * is 0.
- * @param use_select Affects behavior when called back by the reactor
- * when a connection can be accepted. If non-zero,
- * this object will accept all pending connections,
- * intead of just the one that triggered the reactor
- * callback. Uses ACE_OS::select() internally to
- * detect any remaining acceptable connections.
- * The default is 1.
- * @param reuse_addr Passed to the @c PEER_ACCEPTOR::open() method with
- * @p local_addr. Generally used to request that the
- * OS allow reuse of the listen port. The default is 1.
- *
- * @retval 0 Success
- * @retval -1 Failure, @c errno contains an error code.
- */
- virtual int open (const ACE_PEER_ACCEPTOR_ADDR &local_addr,
- ACE_Reactor *reactor,
- int flags = 0,
- int use_select = 1,
- int reuse_addr = 1);
-
- /**
- * Initialize the appropriate strategies for creation, passive
- * connection acceptance, and concurrency, and then register {this}
- * with the Reactor and listen for connection requests at the
- * designated {local_addr}.
- */
- virtual int open (const ACE_PEER_ACCEPTOR_ADDR &,
- ACE_Reactor * = ACE_Reactor::instance (),
- ACE_Creation_Strategy<SVC_HANDLER> * = 0,
- ACE_Accept_Strategy<SVC_HANDLER, ACE_PEER_ACCEPTOR_2> * =0,
- ACE_Concurrency_Strategy<SVC_HANDLER> * = 0,
- ACE_Scheduling_Strategy<SVC_HANDLER> * = 0,
- const ACE_TCHAR *service_name = 0,
- const ACE_TCHAR *service_description = 0,
- int use_select = 1,
- int reuse_addr = 1);
-
- /// Close down the Strategy_Acceptor's resources.
- virtual ~ACE_Strategy_Acceptor (void);
-
- /// Return the underlying PEER_ACCEPTOR object.
- virtual operator ACE_PEER_ACCEPTOR &() const;
-
- /// Return the underlying PEER_ACCEPTOR object.
- virtual ACE_PEER_ACCEPTOR &acceptor (void) const;
-
- /// Returns the listening acceptor's {ACE_HANDLE}.
- virtual ACE_HANDLE get_handle (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- // = Service management hooks.
-
- /// This method delegates to the {Scheduling_Strategy}'s {suspend}
- /// method.
- virtual int suspend (void);
-
- /// This method delegates to the {Scheduling_Strategy}'s {resume}
- /// method.
- virtual int resume (void);
-
-protected:
-
- /// Calls {handle_close} when dynamically unlinked.
- virtual int fini (void);
-
- /// Default version returns address info in {buf}.
- virtual int info (ACE_TCHAR **buf, size_t) const;
-
- // = The following three methods define the {Acceptor}'s strategies
- // for creating, accepting, and activating {SVC_HANDLER}'s,
- // respectively.
-
- /**
- * Bridge method for creating a {SVC_HANDLER}. The strategy for
- * creating a {SVC_HANDLER} are configured into the Acceptor via
- * it's {creation_strategy_}. The default is to create a new
- * {SVC_HANDLER} if {sh} == 0, else {sh} is unchanged. However,
- * subclasses can override this policy to perform {SVC_HANDLER}
- * creation in any way that they like (such as creating subclass
- * instances of {SVC_HANDLER}, using a singleton, dynamically
- * linking the handler, etc.). Returns -1 on failure, else 0.
- */
- virtual int make_svc_handler (SVC_HANDLER *&);
-
- /**
- * Bridge method for accepting the new connection into the
- * {SVC_HANDLER}. The default behavior delegates to the
- * {PEER_ACCEPTOR::accept} in the {Acceptor_Strategy}.
- */
- virtual int accept_svc_handler (SVC_HANDLER *svc_handler);
-
- /**
- * Bridge method for activating a {SVC_HANDLER} with the appropriate
- * concurrency strategy. The default behavior of this method is to
- * activate the {SVC_HANDLER} by calling its {open} method (which
- * allows the {SVC_HANDLER} to define its own concurrency strategy).
- * However, subclasses can override this strategy to do more
- * sophisticated concurrency activations (such as creating the
- * {SVC_HANDLER} as an "active object" via multi-threading or
- * multi-processing).
- */
- virtual int activate_svc_handler (SVC_HANDLER *svc_handler);
-
- // = Demultiplexing hooks.
- /// Perform termination activities when {this} is removed from the
- /// {Reactor}.
- virtual int handle_close (ACE_HANDLE = ACE_INVALID_HANDLE,
- ACE_Reactor_Mask = ACE_Event_Handler::ALL_EVENTS_MASK);
-
- /// Handle SIGINT.
- virtual int handle_signal (int signum, siginfo_t *, ucontext_t *);
-
- // = These data members are "logically private" but are put in the
- // protected part in case subclasses want to access them.
-
- // = Strategy objects.
-
- /// Creation strategy for an Acceptor.
- CREATION_STRATEGY *creation_strategy_;
-
- /// true if {Acceptor} created the creation strategy and thus should
- /// delete it, else false.
- bool delete_creation_strategy_;
-
- /// Accept strategy for an {Acceptor}.
- ACCEPT_STRATEGY *accept_strategy_;
-
- /// true if {Acceptor} created the accept strategy and thus should delete
- /// it, else false.
- bool delete_accept_strategy_;
-
- /// Concurrency strategy for an {Acceptor}.
- CONCURRENCY_STRATEGY *concurrency_strategy_;
-
- /// true if {Acceptor} created the concurrency strategy and thus should
- /// delete it, else false.
- bool delete_concurrency_strategy_;
-
- /// Scheduling strategy for an {Acceptor}.
- SCHEDULING_STRATEGY *scheduling_strategy_;
-
- /// true if {Acceptor} created the scheduling strategy and thus should
- /// delete it, else false.
- bool delete_scheduling_strategy_;
-
- // = Service information objects.
-
- /// Name of the service.
- ACE_TCHAR *service_name_;
-
- /// Description of the service.
- ACE_TCHAR *service_description_;
-
- /// Address that the {Strategy_Acceptor} uses to listen for
- /// connections.
- ACE_PEER_ACCEPTOR_ADDR service_addr_;
-};
-
-/**
- * @class ACE_Oneshot_Acceptor
- *
- * @brief Generic factory for passively connecting clients and creating
- * exactly one service handler (SVC_HANDLER).
- *
- * This class works similarly to the regular {ACE_Acceptor},
- * with the following differences:
- * 1. This class doesn't automagically register {this} with the
- * {ACE_Reactor} since it expects to have its {accept} method
- * called directly. However, it stashes the {ACE_Reactor}
- * pointer away in case it's needed later to finish accepting
- * a connection asynchronously.
- * 2. The class doesn't need an {ACE_Creation_Strategy} (since
- * the user supplies the SVC_HANDLER) or an
- * {ACE_Accept_Strategy} (since this class only accepts one
- * connection and then removes all traces of itself from the
- * {ACE_Reactor} if it was registered for asynchronous
- * accepts).
- */
-template <class SVC_HANDLER, ACE_PEER_ACCEPTOR_1>
-class ACE_Oneshot_Acceptor : public ACE_Service_Object
-{
-public:
-
- // Useful STL-style traits.
- typedef ACE_PEER_ACCEPTOR_ADDR addr_type;
- typedef ACE_PEER_ACCEPTOR acceptor_type;
- typedef SVC_HANDLER handler_type;
- typedef typename SVC_HANDLER::stream_type stream_type;
-
- /// Constructor.
- ACE_Oneshot_Acceptor (void);
-
- /**
- * Initialize the appropriate strategies for concurrency and then
- * open the {peer_acceptor} at the designated {local_addr}. Note
- * that unlike the {ACE_Acceptor} and {ACE_Strategy_Acceptor}, this
- * method does NOT register {this} acceptor with the {reactor} at
- * this point -- it just stashes the {reactor} away in case it's
- * needed later.
- */
- ACE_Oneshot_Acceptor (const ACE_PEER_ACCEPTOR_ADDR &local_addr,
- ACE_Reactor *reactor = ACE_Reactor::instance (),
- ACE_Concurrency_Strategy<SVC_HANDLER> * = 0);
-
- /**
- * Initialize the appropriate strategies for concurrency and then
- * open the {peer_acceptor} at the designated {local_addr}. Note
- * that unlike the {ACE_Acceptor} and {ACE_Strategy_Acceptor}, this
- * method does NOT register {this} acceptor with the {reactor} at
- * this point -- it just stashes the {reactor} away in case it's
- * needed later.
- */
- int open (const ACE_PEER_ACCEPTOR_ADDR &,
- ACE_Reactor *reactor = ACE_Reactor::instance (),
- ACE_Concurrency_Strategy<SVC_HANDLER> * = 0);
-
- /// Close down the {Oneshot_Acceptor}.
- virtual ~ACE_Oneshot_Acceptor (void);
-
- // = Explicit factory operation.
- /// Create a {SVC_HANDLER}, accept the connection into the
- /// {SVC_HANDLER}, and activate the {SVC_HANDLER}.
- virtual int accept (SVC_HANDLER * = 0,
- ACE_PEER_ACCEPTOR_ADDR *remote_addr = 0,
- const ACE_Synch_Options &synch_options = ACE_Synch_Options::defaults,
- int restart = 1,
- int reset_new_handle = 0);
-
- /// Cancel a oneshot acceptor that was started asynchronously.
- virtual int cancel (void);
-
- /// Return the underlying {PEER_ACCEPTOR} object.
- virtual operator ACE_PEER_ACCEPTOR &() const;
-
- /// Return the underlying {PEER_ACCEPTOR} object.
- virtual ACE_PEER_ACCEPTOR &acceptor (void) const;
-
- /// Close down the {Oneshot_Acceptor}.
- virtual int close (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /**
- * Bridge method for activating a {svc_handler} with the appropriate
- * concurrency strategy. Default behavior is to activate the
- * {SVC_HANDLER} as a "passive object." However, subclasses can
- * override this strategy to do more sophisticated concurrency
- * activations (such as creating the {SVC_HANDLER} as an "active
- * object" via multi-threading or multi-processing).
- */
- virtual int activate_svc_handler (SVC_HANDLER *svc_handler);
-
- /// Factors out the code shared between the {accept} and
- /// {handle_input} methods.
- int shared_accept (SVC_HANDLER *svc_handler,
- ACE_PEER_ACCEPTOR_ADDR *remote_addr,
- ACE_Time_Value *timeout,
- int restart,
- int reset_new_handle);
-
- // = Demultiplexing hooks.
- /// Returns the listening acceptor's {ACE_HANDLE}.
- virtual ACE_HANDLE get_handle (void) const;
-
- /// Perform termination activities when {this} is removed from the
- /// {reactor}.
- virtual int handle_close (ACE_HANDLE = ACE_INVALID_HANDLE,
- ACE_Reactor_Mask = ACE_Event_Handler::ALL_EVENTS_MASK);
-
- /// Accept one connection from a client and activates the
- /// SVC_HANDLER.
- virtual int handle_input (ACE_HANDLE);
-
- /// Called when an acceptor times out...
- virtual int handle_timeout (const ACE_Time_Value &tv,
- const void *arg);
-
- // = Dynamic linking hooks.
- /// Default version does no work and returns -1. Must be overloaded
- /// by application developer to do anything meaningful.
- virtual int init (int argc, ACE_TCHAR *argv[]);
-
- /// Default version does no work and returns -1. Must be overloaded
- /// by application developer to do anything meaningful.
- virtual int fini (void);
-
- /// Default version returns address info in {buf}.
- virtual int info (ACE_TCHAR **, size_t) const;
-
- // = Service management hooks.
- /// Default version does no work and returns -1. Must be overloaded
- /// by application developer to do anything meaningful.
- virtual int suspend (void);
-
- /// Default version does no work and returns -1. Must be overloaded
- /// by application developer to do anything meaningful.
- virtual int resume (void);
-
-private:
- /**
- * Insert ourselves into the {ACE_Reactor} so that we can continue
- * accepting this connection asynchronously. This method should NOT
- * be called by developers directly.
- */
- int register_handler (SVC_HANDLER *svc_handler,
- const ACE_Synch_Options &options,
- int restart);
-
- /// Hold the svc_handler_ across asynchrony boundaries.
- SVC_HANDLER *svc_handler_;
-
- /// Hold the restart flag across asynchrony boundaries.
- int restart_;
-
- /// Factory that establishes connections passively.
- ACE_PEER_ACCEPTOR peer_acceptor_;
-
- /// Concurrency strategy for an Acceptor.
- ACE_Concurrency_Strategy<SVC_HANDLER> *concurrency_strategy_;
-
- /// true if Acceptor created the concurrency strategy and thus should
- /// delete it, else false.
- bool delete_concurrency_strategy_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Acceptor.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Acceptor.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_ACCEPTOR_H */
-
diff --git a/dep/include/ace/Activation_Queue.h b/dep/include/ace/Activation_Queue.h
deleted file mode 100644
index 69197c1b72d..00000000000
--- a/dep/include/ace/Activation_Queue.h
+++ /dev/null
@@ -1,174 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Activation_Queue.h
- *
- * $Id: Activation_Queue.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Andres Kruse <Andres.Kruse@cern.ch>
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_ACTIVATION_QUEUE_H
-#define ACE_ACTIVATION_QUEUE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Message_Queue.h"
-#include "ace/Condition_Thread_Mutex.h"
-
-/// Define to be compatible with the terminology in the POSA2 book!
-#define ACE_Activation_List ACE_Activation_Queue
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Method_Request;
-
-/**
- * @class ACE_Activation_Queue
- *
- * @brief Reifies a method into a request. Subclasses typically
- * represent necessary state and behavior.
- *
- * Maintains a priority-ordered queue of ACE_Method_Request objects.
- * A scheduler class (often derived from ACE_Task) subsequently removes
- * each method request and invokes its @c call() method.
- *
- * This class is discussed in depth in the Active Object chapter
- * of POSA2. In that book, it is referred to as an Activation List.
- *
- * @sa ACE_Method_Request
- */
-class ACE_Export ACE_Activation_Queue
-{
-public:
- // = Initialization and termination methods.
- /// Constructor.
- /**
- * Initializes a new activation queue.
- *
- * @param new_queue The activation queue uses an ACE_Message_Queue to
- * queue and order the method requests. If this argument
- * is 0, a new ACE_Message_Queue is created for this
- * object's use and will be deleted when this object is
- * destroyed. If a non-zero pointer is supplied, the
- * passed object will be used and will not be deleted when
- * this object is destroyed. If an ACE_Task is being created
- * to act as the scheduler, for instance, its
- * ACE_Message_Queue pointer can be passed to this object.
- * @param alloc Optional, the allocator to use when allocating
- * ACE_Message_Block instances that wrap the method requests
- * queued to this activation queue. Defaults to
- * ACE_Allocator::instance().
- * @param db_alloc Optional, the allocator to use when allocating
- * data blocks for the ACE_Message_Block instances that
- * wrap the method requests queued to this activation queue.
- * Defaults to ACE_Allocator::instance().
- */
- ACE_Activation_Queue (ACE_Message_Queue<ACE_SYNCH> *new_queue = 0,
- ACE_Allocator *alloc = 0,
- ACE_Allocator *db_alloc = 0);
-
- /// Destructor.
- virtual ~ACE_Activation_Queue (void);
-
- // = Activate Queue operations.
-
- /// Dequeue the next available ACE_Method_Request.
- /**
- * @param tv If 0, the method will block until a method request is
- * available, else will wait until the absolute time specified
- * in the referenced ACE_Time_Value. This method will return,
- * earlier, however, if queue is closed, deactivated, or when
- * a signal occurs.
- *
- * @retval Pointer to the dequeued ACE_Method_Request object.
- * @retval 0 an error occurs; errno contains further information. If
- * the specified timeout elapses, errno will be @c EWOULDBLOCK.
- */
- ACE_Method_Request *dequeue (ACE_Time_Value *tv = 0);
-
- /// Enqueue the ACE_Method_Request in priority order.
- /**
- * The priority of the method request is obtained via the @c priority()
- * method of the queued method request. Priority ordering is determined
- * by the ACE_Message_Queue class; 0 is the lowest priority.
- *
- * @param new_method_request Pointer to the ACE_Method_Request object to
- * queue. This object's @c priority() method is called to obtain
- * the priority.
- * @param tv If 0, the method will block until the method request can
- * be queued, else will wait until the absolute time specified
- * in the referenced ACE_Time_Value. This method will return,
- * earlier, however, if queue is closed, deactivated, or when
- * a signal occurs.
- *
- * @retval >0 The number of method requests on the queue after adding
- * the specified request.
- * @retval -1 if an error occurs; errno contains further information. If
- * the specified timeout elapses, errno will be @c EWOULDBLOCK.
- */
- int enqueue (ACE_Method_Request *new_method_request, ACE_Time_Value *tv = 0);
-
- /// Get the current number of method objects in the queue.
- size_t method_count (void) const;
-
- /// Returns 1 if the queue is empty, 0 otherwise.
- int is_empty (void) const;
-
- /// Returns 1 if the queue is full, 0 otherwise.
- int is_full (void) const;
-
- /// Dump the state of an request.
- void dump (void) const;
-
- /// Get a pointer to the underlying queue.
- ACE_Message_Queue<ACE_SYNCH> *queue (void) const;
-
- /// Set the pointer to the underlying queue.
- void queue (ACE_Message_Queue<ACE_SYNCH> *q);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-
- // = Prevent copying and assignment.
- ACE_Activation_Queue (const ACE_Activation_Queue &);
- void operator= (const ACE_Activation_Queue &);
-
-protected:
-
- /// Stores the Method_Requests.
- ACE_Message_Queue<ACE_SYNCH> *queue_;
-
- /// Keeps track of whether we need to delete the queue.
- bool delete_queue_;
-
-private:
-
- /// Allocation strategy of the queue.
- ACE_Allocator *allocator_;
-
- /// Allocation strategy of the message blocks.
- ACE_Allocator *data_block_allocator_;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Activation_Queue.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_ACTIVATION_QUEUE_H */
-
diff --git a/dep/include/ace/Activation_Queue.inl b/dep/include/ace/Activation_Queue.inl
deleted file mode 100644
index 4c0ffc049d3..00000000000
--- a/dep/include/ace/Activation_Queue.inl
+++ /dev/null
@@ -1,31 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Activation_Queue.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE size_t
-ACE_Activation_Queue::method_count (void) const
-{
- return queue_->message_count ();
-}
-
-ACE_INLINE int
-ACE_Activation_Queue::is_full (void) const
-{
- return queue_->is_full ();
-}
-
-ACE_INLINE int
-ACE_Activation_Queue::is_empty (void) const
-{
- return queue_->is_empty ();
-}
-
-ACE_INLINE ACE_Message_Queue<ACE_SYNCH> *
-ACE_Activation_Queue::queue (void) const
-{
- return queue_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Active_Map_Manager.h b/dep/include/ace/Active_Map_Manager.h
deleted file mode 100644
index c72d6dbba4c..00000000000
--- a/dep/include/ace/Active_Map_Manager.h
+++ /dev/null
@@ -1,116 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Active_Map_Manager.h
- *
- * $Id: Active_Map_Manager.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Irfan Pyarali
- */
-//=============================================================================
-
-#ifndef ACE_ACTIVE_MAP_MANAGER_H
-#define ACE_ACTIVE_MAP_MANAGER_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Basic_Types.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Active_Map_Manager_Key
- *
- * @brief Key used in the Active Object Map.
- *
- * This key keeps information of the index and the generation
- * count of the slot it represents. Since the index information
- * is part of the key, lookups are super fast and predictable,
- */
-class ACE_Export ACE_Active_Map_Manager_Key
-{
-public:
- /// Default constructor.
- ACE_Active_Map_Manager_Key (void);
-
- /**
- * Constructor given the @a slot_index and @a slot_generation number.
- * This is useful once the user has somehow recovered the
- * @a slot_index and @a slot_generation number from the client.
- */
- ACE_Active_Map_Manager_Key (ACE_UINT32 slot_index,
- ACE_UINT32 slot_generation);
-
- /// Get the slot_index.
- ACE_UINT32 slot_index (void) const;
-
- /// Set the slot_index.
- void slot_index (ACE_UINT32 i);
-
- /// Get the slot_generation number.
- ACE_UINT32 slot_generation (void) const;
-
- /// Set the slot_generation number.
- void slot_generation (ACE_UINT32 g);
-
- /// Size required to store information about active key.
- static size_t size (void);
-
- /// Recover state of active key from @a data. User must make sure
- /// that @a data encoded using the encode() method.
- void decode (const void *data);
-
- /// Encode state of the active key into @a data. @a data must be as
- /// big as the value returned from <size>.
- void encode (void *data) const;
-
- /// Compare keys.
- bool operator== (const ACE_Active_Map_Manager_Key &rhs) const;
- bool operator!= (const ACE_Active_Map_Manager_Key &rhs) const;
-
- // = This really should be protected but because of template
- // friends, they are not.
-
- /// Increment the <slot_generation> number.
- void increment_slot_generation_count (void);
-
-private:
-
- /**
- * @brief Data for the Active Object Map Key.
- *
- * This separate structure makes it easier to manage copying
- * the index and the generation to and from the user buffer.
- *
- */
- struct key_data
- {
- /// Slot index in the active map.
- ACE_UINT32 slot_index_;
-
- /// Slot generation number of <slot_index_> slot in the active map.
- ACE_UINT32 slot_generation_;
- };
-
- /// Data for the Active Object Map Key.
- key_data key_data_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Active_Map_Manager.inl"
-#endif /* __ACE_INLINE__ */
-
-// Include the templates here.
-#include "ace/Active_Map_Manager_T.h"
-
-#include /**/ "ace/post.h"
-#endif /* ACE_ACTIVE_MAP_MANAGER_H */
-
diff --git a/dep/include/ace/Active_Map_Manager.inl b/dep/include/ace/Active_Map_Manager.inl
deleted file mode 100644
index df90ada6a00..00000000000
--- a/dep/include/ace/Active_Map_Manager.inl
+++ /dev/null
@@ -1,95 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Active_Map_Manager.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_string.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Active_Map_Manager_Key::ACE_Active_Map_Manager_Key (void)
-{
- // If you change ~0, please change ACE_Map_Manager::free_list_id()
- // accordingly.
- this->key_data_.slot_index_ = (ACE_UINT32) ~0;
- this->key_data_.slot_generation_ = 0;
-}
-
-ACE_INLINE
-ACE_Active_Map_Manager_Key::ACE_Active_Map_Manager_Key (ACE_UINT32 slot_index,
- ACE_UINT32 slot_generation)
-{
- this->key_data_.slot_index_ = slot_index;
- this->key_data_.slot_generation_ = slot_generation;
-}
-
-ACE_INLINE ACE_UINT32
-ACE_Active_Map_Manager_Key::slot_index (void) const
-{
- return this->key_data_.slot_index_;
-}
-
-ACE_INLINE ACE_UINT32
-ACE_Active_Map_Manager_Key::slot_generation (void) const
-{
- return this->key_data_.slot_generation_;
-}
-
-ACE_INLINE bool
-ACE_Active_Map_Manager_Key::operator== (const ACE_Active_Map_Manager_Key &rhs) const
-{
- return
- this->key_data_.slot_index_ == rhs.key_data_.slot_index_ &&
- this->key_data_.slot_generation_ == rhs.key_data_.slot_generation_;
-}
-
-ACE_INLINE bool
-ACE_Active_Map_Manager_Key::operator!= (const ACE_Active_Map_Manager_Key &rhs) const
-{
- return !this->operator== (rhs);
-}
-
-ACE_INLINE void
-ACE_Active_Map_Manager_Key::slot_index (ACE_UINT32 i)
-{
- this->key_data_.slot_index_ = i;
-}
-
-ACE_INLINE void
-ACE_Active_Map_Manager_Key::slot_generation (ACE_UINT32 g)
-{
- this->key_data_.slot_generation_ = g;
-}
-
-ACE_INLINE void
-ACE_Active_Map_Manager_Key::increment_slot_generation_count (void)
-{
- ++this->key_data_.slot_generation_;
-}
-
-/* static */
-ACE_INLINE size_t
-ACE_Active_Map_Manager_Key::size (void)
-{
- return sizeof (ACE_UINT32) + sizeof (ACE_UINT32);
-}
-
-ACE_INLINE void
-ACE_Active_Map_Manager_Key::decode (const void *data)
-{
- // Copy the information from the user buffer into the key.
- ACE_OS::memcpy (&this->key_data_,
- data,
- sizeof this->key_data_);
-}
-
-ACE_INLINE void
-ACE_Active_Map_Manager_Key::encode (void *data) const
-{
- // Copy the key data to the user buffer.
- ACE_OS::memcpy (data,
- &this->key_data_,
- sizeof this->key_data_);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Active_Map_Manager_T.h b/dep/include/ace/Active_Map_Manager_T.h
deleted file mode 100644
index 660f0bbbec4..00000000000
--- a/dep/include/ace/Active_Map_Manager_T.h
+++ /dev/null
@@ -1,211 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Active_Map_Manager_T.h
- *
- * $Id: Active_Map_Manager_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Irfan Pyarali
- */
-//=============================================================================
-
-#ifndef ACE_ACTIVE_MAP_MANAGER_T_H
-#define ACE_ACTIVE_MAP_MANAGER_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Map_Manager.h"
-#include "ace/Active_Map_Manager.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Null_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Active_Map_Manager
- *
- * @brief Define a map abstraction that associates system generated
- * keys with user specified values.
- *
- * Since the key is system generated, searches are very fast and
- * take a constant amount of time.
- */
-template <class T>
-class ACE_Active_Map_Manager : public ACE_Map_Manager<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex>
-{
-public:
-
- // = Traits.
- typedef ACE_Active_Map_Manager_Key key_type;
- typedef T mapped_type;
-
- typedef ACE_Map_Entry<ACE_Active_Map_Manager_Key, T> ENTRY;
- typedef ACE_Map_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> ITERATOR;
- typedef ACE_Map_Reverse_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> REVERSE_ITERATOR;
-
- typedef ENTRY entry;
- typedef ITERATOR iterator;
- typedef REVERSE_ITERATOR reverse_iterator;
-
- // = Initialization and termination methods.
- /// Initialize a <Active_Map_Manager> with the ACE_DEFAULT_MAP_SIZE.
- ACE_Active_Map_Manager (ACE_Allocator *alloc = 0);
-
- /// Initialize a <Active_Map_Manager> with @a size entries.
- ACE_Active_Map_Manager (size_t size,
- ACE_Allocator *alloc = 0);
-
- /// Close down a <Active_Map_Manager> and release dynamically
- /// allocated resources.
- ~ACE_Active_Map_Manager (void);
-
- /// Initialize a <Active_Map_Manager> with size @a length.
- int open (size_t length = ACE_DEFAULT_MAP_SIZE,
- ACE_Allocator *alloc = 0);
-
- /// Close down a <Active_Map_Manager> and release dynamically
- /// allocated resources.
- int close (void);
-
- /// Add @a value to the map, and the corresponding key produced by the
- /// Active_Map_Manager is returned through @a key.
- int bind (const T &value,
- ACE_Active_Map_Manager_Key &key);
-
- /// Add @a value to the map. The user does not care about the
- /// corresponding key produced by the Active_Map_Manager.
- int bind (const T &value);
-
- /**
- * Reserves a slot in the internal structure and returns the key and
- * a pointer to the value. User should place their @a value into
- * <*internal_value>. This method is useful in reducing the number
- * of copies required in some cases. Note that <internal_value> is
- * only a temporary pointer and will change when the map resizes.
- * Therefore, the user should use the pointer immediately and not
- * hold on to it.
- */
- int bind (ACE_Active_Map_Manager_Key &key,
- T *&internal_value);
-
- /// Reassociate @a key with @a value. The function fails if @a key is
- /// not in the map.
- int rebind (const ACE_Active_Map_Manager_Key &key,
- const T &value);
-
- /**
- * Reassociate @a key with @a value, storing the old value into the
- * "out" parameter @a old_value. The function fails if @a key is not
- * in the map.
- */
- int rebind (const ACE_Active_Map_Manager_Key &key,
- const T &value,
- T &old_value);
-
- /**
- * Reassociate @a key with @a value, storing the old key and value
- * into the "out" parameter @a old_key and @a old_value. The function
- * fails if @a key is not in the map.
- */
- int rebind (const ACE_Active_Map_Manager_Key &key,
- const T &value,
- ACE_Active_Map_Manager_Key &old_key,
- T &old_value);
-
- /// Locate @a value associated with @a key.
- int find (const ACE_Active_Map_Manager_Key &key,
- T &value) const;
-
- /// Is @a key in the map?
- int find (const ACE_Active_Map_Manager_Key &key) const;
-
- /**
- * Locate @a value associated with @a key. The value is returned via
- * <internal_value> and hence a copy is saved. Note that
- * <internal_value> is only a temporary pointer and will change when
- * the map resizes. Therefore, the user should use the pointer
- * immediately and not hold on to it.
- */
- int find (const ACE_Active_Map_Manager_Key &key,
- T *&internal_value) const;
-
- // Creates a key. User should place their @a value into
- // <*internal_value>. This method is useful in reducing the number
- // of copies required in some cases.
-
- /// Remove @a key from the map.
- int unbind (const ACE_Active_Map_Manager_Key &key);
-
- /// Remove @a key from the map, and return the @a value associated with
- /// @a key.
- int unbind (const ACE_Active_Map_Manager_Key &key,
- T &value);
-
- /**
- * Locate @a value associated with @a key. The value is returned via
- * <internal_value> and hence a copy is saved. Note that
- * <internal_value> is only a temporary pointer and will change when
- * the map resizes or when this slot is reused. Therefore, the user
- * should use the pointer immediately and not hold on to it.
- */
- int unbind (const ACE_Active_Map_Manager_Key &key,
- T *&internal_value);
-
- /// Return the current size of the map.
- size_t current_size (void) const;
-
- /// Return the total size of the map.
- size_t total_size (void) const;
-
- /// Returns a key that cannot be found in the map.
- static const ACE_Active_Map_Manager_Key npos (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL styled iterator factory functions.
-
- /// Return forward iterator.
- ACE_Map_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> begin (void);
- ACE_Map_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> end (void);
-
- /// Return reverse iterator.
- ACE_Map_Reverse_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> rbegin (void);
- ACE_Map_Reverse_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> rend (void);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
-
- /// Private base class
- typedef ACE_Map_Manager<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex> ACE_AMM_BASE;
-
-private:
-
- // = Disallow these operations.
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Active_Map_Manager<T> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Active_Map_Manager (const ACE_Active_Map_Manager<T> &))
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Active_Map_Manager_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Active_Map_Manager_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Active_Map_Manager_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_ACTIVE_MAP_MANAGER_T_H */
-
diff --git a/dep/include/ace/Active_Map_Manager_T.inl b/dep/include/ace/Active_Map_Manager_T.inl
deleted file mode 100644
index 647b55ebd56..00000000000
--- a/dep/include/ace/Active_Map_Manager_T.inl
+++ /dev/null
@@ -1,311 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Active_Map_Manager_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class T> ACE_INLINE int
-ACE_Active_Map_Manager<T>::bind (ACE_Active_Map_Manager_Key &key,
- T *&internal_value)
-{
- ACE_UINT32 slot_index;
- int result = this->next_free (slot_index);
-
- if (result == 0)
- {
- // Move from free list to occupied list
- this->move_from_free_list_to_occupied_list (slot_index);
-
- // Reset the key.
- this->search_structure_[slot_index].ext_id_.increment_slot_generation_count ();
- this->search_structure_[slot_index].ext_id_.slot_index (slot_index);
-
- // Copy the key for the user.
- key = this->search_structure_[slot_index].ext_id_;
-
- // This is where the user should place the value.
- internal_value = &this->search_structure_[slot_index].int_id_;
-
- // Update the current size.
- ++this->cur_size_;
- }
-
- return result;
-}
-
-template <class T> ACE_INLINE int
-ACE_Active_Map_Manager<T>::bind (const T &value,
- ACE_Active_Map_Manager_Key &key)
-{
- T *internal_value = 0;
- int result = this->bind (key,
- internal_value);
-
- if (result == 0)
- {
- // Store new value.
- *internal_value = value;
- }
-
- return result;
-}
-
-template <class T> ACE_INLINE int
-ACE_Active_Map_Manager<T>::bind (const T &value)
-{
- ACE_Active_Map_Manager_Key key;
- return this->bind (value, key);
-}
-
-template <class T> ACE_INLINE int
-ACE_Active_Map_Manager<T>::find (const ACE_Active_Map_Manager_Key &key,
- T *&internal_value) const
-{
- ACE_UINT32 slot_index = key.slot_index ();
- ACE_UINT32 slot_generation = key.slot_generation ();
-
- if (slot_index > this->total_size_ ||
-#if defined (ACE_HAS_LAZY_MAP_MANAGER)
- this->search_structure_[slot_index].free_ ||
-#endif /* ACE_HAS_LAZY_MAP_MANAGER */
- this->search_structure_[slot_index].ext_id_.slot_generation () != slot_generation ||
- this->search_structure_[slot_index].ext_id_.slot_index () ==
- (ACE_UINT32)this->free_list_id ())
- {
- return -1;
- }
- else
- {
- // This is where the user value is.
- internal_value = &this->search_structure_[slot_index].int_id_;
- }
-
- return 0;
-}
-
-template <class T> ACE_INLINE int
-ACE_Active_Map_Manager<T>::find (const ACE_Active_Map_Manager_Key &key) const
-{
- T *internal_value = 0;
- return this->find (key,
- internal_value);
-}
-
-template <class T> ACE_INLINE int
-ACE_Active_Map_Manager<T>::find (const ACE_Active_Map_Manager_Key &key,
- T &value) const
-{
- T *internal_value = 0;
- int result = this->find (key,
- internal_value);
-
- if (result == 0)
- value = *internal_value;
-
- return result;
-}
-
-template <class T> ACE_INLINE int
-ACE_Active_Map_Manager<T>::rebind (const ACE_Active_Map_Manager_Key &key,
- const T &value)
-{
- int result = this->find (key);
-
- if (result == 0)
- {
- // Store new value.
- this->search_structure_[key.slot_index ()].int_id_ = value;
- }
-
- return result;
-}
-
-template <class T> ACE_INLINE int
-ACE_Active_Map_Manager<T>::rebind (const ACE_Active_Map_Manager_Key &key,
- const T &value,
- T &old_value)
-{
- int result = this->find (key);
-
- if (result == 0)
- {
- // Copy old value.
- old_value = this->search_structure_[key.slot_index ()].int_id_;
-
- // Store new value.
- this->search_structure_[key.slot_index ()].int_id_ = value;
- }
-
- return result;
-}
-
-template <class T> ACE_INLINE int
-ACE_Active_Map_Manager<T>::rebind (const ACE_Active_Map_Manager_Key &key,
- const T &value,
- ACE_Active_Map_Manager_Key &old_key,
- T &old_value)
-{
- int result = this->find (key);
-
- if (result == 0)
- {
- // Copy old key.
- old_key = this->search_structure_[key.slot_index ()].ext_id_;
-
- // Copy old value.
- old_value = this->search_structure_[key.slot_index ()].int_id_;
-
- // Store new value.
- this->search_structure_[key.slot_index ()].int_id_ = value;
- }
-
- return result;
-}
-
-template <class T> ACE_INLINE int
-ACE_Active_Map_Manager<T>::unbind (const ACE_Active_Map_Manager_Key &key,
- T *&internal_value)
-{
- int result = this->find (key,
- internal_value);
-
- if (result == 0)
- {
- ACE_UINT32 slot_index = key.slot_index ();
-
-#if defined (ACE_HAS_LAZY_MAP_MANAGER)
-
- //
- // In the case of lazy map managers, the movement of free slots
- // from the occupied list to the free list is delayed until we
- // run out of free slots in the free list.
- //
-
- this->search_structure_[slot_index].free_ = 1;
-
-#else
-
- // Move from occupied list to free list.
- this->move_from_occupied_list_to_free_list (slot_index);
-
-#endif /* ACE_HAS_LAZY_MAP_MANAGER */
-
- // Reset the slot_index. This will tell us that this entry is free.
- this->search_structure_[slot_index].ext_id_.slot_index (this->free_list_id ());
-
- // Update the current size.
- --this->cur_size_;
- }
-
- return result;
-}
-
-template <class T> ACE_INLINE int
-ACE_Active_Map_Manager<T>::unbind (const ACE_Active_Map_Manager_Key &key,
- T &value)
-{
- T *internal_value;
- int result = this->unbind (key,
- internal_value);
-
- if (result == 0)
- {
- // Copy old value.
- value = *internal_value;
- }
-
- return result;
-}
-
-template <class T> ACE_INLINE int
-ACE_Active_Map_Manager<T>::unbind (const ACE_Active_Map_Manager_Key &key)
-{
- T *internal_value;
- return this->unbind (key,
- internal_value);
-}
-
-template <class T> ACE_INLINE
-ACE_Active_Map_Manager<T>::ACE_Active_Map_Manager (ACE_Allocator *alloc)
- : ACE_AMM_BASE (alloc)
-{
-}
-
-template <class T> ACE_INLINE
-ACE_Active_Map_Manager<T>::ACE_Active_Map_Manager (size_t size,
- ACE_Allocator *alloc)
- : ACE_AMM_BASE (size,
- alloc)
-{
-}
-
-template <class T> ACE_INLINE
-ACE_Active_Map_Manager<T>::~ACE_Active_Map_Manager (void)
-{
-}
-
-template <class T> ACE_INLINE int
-ACE_Active_Map_Manager<T>::open (size_t length,
- ACE_Allocator *alloc)
-{
- return ACE_AMM_BASE::open (length, alloc);
-}
-
-template <class T> ACE_INLINE int
-ACE_Active_Map_Manager<T>::close (void)
-{
- return ACE_AMM_BASE::close ();
-}
-
-template <class T> ACE_INLINE size_t
-ACE_Active_Map_Manager<T>::current_size (void) const
-{
- return ACE_AMM_BASE::current_size ();
-}
-
-template <class T> ACE_INLINE size_t
-ACE_Active_Map_Manager<T>::total_size (void) const
-{
- return ACE_AMM_BASE::total_size ();
-}
-
-/* static */
-template <class T> ACE_INLINE const ACE_Active_Map_Manager_Key
-ACE_Active_Map_Manager<T>::npos (void)
-{
- return ACE_Active_Map_Manager_Key (~0, ~0);
-}
-
-template <class T> ACE_INLINE void
-ACE_Active_Map_Manager<T>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_AMM_BASE::dump ();
-#endif /* ACE_HAS_DUMP */
-}
-
-template <class T> ACE_Map_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex>
-ACE_Active_Map_Manager<T>::begin (void)
-{
- return ACE_AMM_BASE::begin ();
-}
-
-template <class T> ACE_INLINE ACE_Map_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex>
-ACE_Active_Map_Manager<T>::end (void)
-{
- return ACE_AMM_BASE::end ();
-}
-
-template <class T> ACE_INLINE ACE_Map_Reverse_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex>
-ACE_Active_Map_Manager<T>::rbegin (void)
-{
- return ACE_AMM_BASE::rbegin ();
-}
-
-template <class T> ACE_INLINE ACE_Map_Reverse_Iterator<ACE_Active_Map_Manager_Key, T, ACE_Null_Mutex>
-ACE_Active_Map_Manager<T>::rend (void)
-{
- return ACE_AMM_BASE::rend ();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Addr.h b/dep/include/ace/Addr.h
deleted file mode 100644
index fa9b5d757b6..00000000000
--- a/dep/include/ace/Addr.h
+++ /dev/null
@@ -1,104 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Addr.h
- *
- * $Id: Addr.h 81030 2008-03-20 12:43:29Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_ADDR_H
-#define ACE_ADDR_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Addr
- *
- * @brief Defines the base class for the "address family independent"
- * address format.
- */
-class ACE_Export ACE_Addr
-{
-public:
- // = Initialization and termination methods.
- /// Initializes instance variables.
- ACE_Addr (int type = -1, int size = -1);
-
- /// Destructor.
- virtual ~ACE_Addr (void);
-
- // = Get/set the size of the address.
-
- /// Return the size of the address.
- int get_size (void) const;
-
- /// Sets the size of the address.
- void set_size (int size);
-
- // = Get/set the type of the address.
-
- /// Get the type of the address.
- int get_type (void) const;
-
- /// Set the type of the address.
- void set_type (int type);
-
- /// Return a pointer to the address.
- virtual void *get_addr (void) const;
-
- /// Set a pointer to the address.
- virtual void set_addr (void *, int len);
-
- // = Equality/inequality tests
- /// Check for address equality.
- bool operator == (const ACE_Addr &sap) const;
-
- /// Check for address inequality.
- bool operator != (const ACE_Addr &sap) const;
-
- /// Initializes instance variables.
- void base_set (int type, int size);
-
- /// Wild-card address.
- static const ACE_Addr sap_any;
-
- /// Returns a hash value. This should be overwritten by a subclass
- /// that can produce a better hash value.
- virtual unsigned long hash (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// e.g., AF_UNIX, AF_INET, AF_SPIPE, etc.
- int addr_type_;
-
- /// Number of bytes in the address.
- int addr_size_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Addr.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_ADDR_H */
-
diff --git a/dep/include/ace/Addr.inl b/dep/include/ace/Addr.inl
deleted file mode 100644
index 44fd495a6e9..00000000000
--- a/dep/include/ace/Addr.inl
+++ /dev/null
@@ -1,61 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Addr.inl 80826 2008-03-04 14:51:23Z wotte $
-
-// Return the address of the address.
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE bool
-ACE_Addr::operator == (const ACE_Addr &sap) const
-{
- return (sap.addr_type_ == this->addr_type_ &&
- sap.addr_size_ == this->addr_size_ );
-}
-
-ACE_INLINE bool
-ACE_Addr::operator != (const ACE_Addr &sap) const
-{
- return (sap.addr_type_ != this->addr_type_ ||
- sap.addr_size_ != this->addr_size_ );
-}
-
-// Return the size of the address.
-
-ACE_INLINE int
-ACE_Addr::get_size (void) const
-{
- return this->addr_size_;
-}
-
-// Sets the size of the address.
-
-ACE_INLINE void
-ACE_Addr::set_size (int size)
-{
- this->addr_size_ = size;
-}
-
-// Return the type of the address.
-
-ACE_INLINE int
-ACE_Addr::get_type (void) const
-{
- return this->addr_type_;
-}
-
-// Set the type of the address.
-
-ACE_INLINE void
-ACE_Addr::set_type (int type)
-{
- this->addr_type_ = type;
-}
-
-ACE_INLINE unsigned long
-ACE_Addr::hash (void) const
-{
- return 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Arg_Shifter.h b/dep/include/ace/Arg_Shifter.h
deleted file mode 100644
index b5700c9f98f..00000000000
--- a/dep/include/ace/Arg_Shifter.h
+++ /dev/null
@@ -1,222 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Arg_Shifter.h
- *
- * $Id: Arg_Shifter.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Seth Widoff
- */
-//=============================================================================
-
-#ifndef ACE_ARG_SHIFTER_H
-#define ACE_ARG_SHIFTER_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Global_Macros.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Arg_Shifter_T
- *
- * @brief This ADT operates on a specified set of arguments (@a argv).
- * As known arguments are scanned, they are shifted to the back of the
- * @a argv vector, so deeper levels of argument parsing can locate the yet
- * unprocessed arguments at the beginning of the vector.
- *
- * The @c ACE_Arg_Shifter copies the pointers of the @a argv vector
- * into a temporary array. As the @c ACE_Arg_Shifter iterates over
- * the copied vector, it places known arguments in the rear of the
- * vector, leaving the unknown ones in the beginning. So, after having
- * visited all the arguments in the temporary vector, @c ACE_Arg_Shifter
- * has placed all the unknown arguments in their original order at
- * the front of original @a argv.
- */
-template <typename CHAR_TYPE>
-class ACE_Arg_Shifter_T
-{
-public:
- // = Initialization and termination methods.
- /**
- * Initialize the ACE_Arg_Shifter to the vector over which to
- * iterate. Optionally, also provide the temporary array for
- * use in shifting the arguments. If ACE_Arg_Shifter must allocate
- * the temporary vector internally and dynamic allocation fails, the
- * ACE_Arg_Shifter will set all indicators to end of the vector,
- * forbidding iteration. Following iteration over @a argv, the
- * @a argc value will be updated to contain the number of
- * unconsumed arguments.
- * @param argc The number of strings in @a argv. @a argc will be
- * updated to reflect the number of unconsumed arguments.
- * @param argv The argument vector to shift. The string pointers in
- * the vector will be reordered to place the @a argc unconsumed
- * arguments at the front of the vector.
- * @param temp A vector of @c CHAR_TYPE pointers at least @a argc
- * elements long. The vector will be used for argument shifting as
- * the specified @a argv vector is consumed. The vector must not
- * be modified while this object exists. If this argument is 0
- * (the default) the object will allocate and free the temporary
- * vector transparently.
- */
- ACE_Arg_Shifter_T (int& argc,
- const CHAR_TYPE **argv,
- const CHAR_TYPE **temp = 0);
-
- /// Same behavior as the preceding constructor, but without the
- /// "const" qualifier.
- ACE_Arg_Shifter_T (int& argc,
- CHAR_TYPE **argv,
- CHAR_TYPE **temp = 0);
-
- /// Destructor.
- ~ACE_Arg_Shifter_T (void);
-
- /// Get the current head of the vector.
- const CHAR_TYPE *get_current (void) const;
-
- /**
- * If the @a flag matches the current_arg of arg shifter
- * this method will attempt to return the associated
- * parameter value
- *
- * Safe to call without checking that a current arg exists
- *
- * In the following examples, a pointer to the char* "value" is ret
- *
- * eg: main -foobar value, main -FooBar value
- * main -FOOBARvalue
- *
- * all of the above will all match the @a flag == -FooBar
- * and will return a char* to "value"
- *
- * main -foobar 4 would succeed and return a char* to "4"
- * main -foobar -4 does not succeed (-4 is not a parameter)
- * but instead, would return 0
- *
- * 0 is returned:
- * If the current argument does not match flag
- * If there is no parameter found after a 'matched' flag
- *
- * If the flag is matched and the flag and paramter DO NOT RUN
- * together, the flag is consumed, the parameter is returned,
- * and the new current argument is the parameter value.
- * ie '-foobarflag VALUE' leaves the new cur arg == "VALUE"
- *
- * If the flag is matched and the flag and parameter RUN
- * together '-foobarflagVALUE', the flag is NOT consumed
- * and the cur arg is left pointing to the entire flag/value pair
- */
- const CHAR_TYPE *get_the_parameter (const CHAR_TYPE* flag);
-
- /**
- * Check if the current argument matches (case insensitive) <flag>
- *
- * ------------------------------------------------------------
- *
- * Case A: Perfect Match (case insensitive)
- * 0 is returned.
- *
- * ie: when current_arg = "-foobar" or "-FOOBAR" or "-fooBAR"
- * this->cur_arg_strncasecmp ("-FooBar);
- * will return 0
- *
- * ------------------------------------------------------------
- *
- * Case B: Perfect Match (case insensitive) but the current_arg
- * is longer than the flag. Returns a number equal to the index
- * in the char* indicating the start of the extra characters
- *
- * ie: when current_arg = "-foobar98023"
- * this->cur_arg_strncasecmp ("-FooBar);
- * will return 7
- *
- * Notice: this number will always be > 0
- *
- * ------------------------------------------------------------
- *
- * Case C: If neither of Case A or B is met (no match)
- * then -1 is returned
- */
- int cur_arg_strncasecmp (const CHAR_TYPE *flag);
-
- /// Consume @a number argument(s) by sticking them/it on the end of
- /// the vector.
- int consume_arg (int number = 1);
-
- /// Place @a number arguments in the same relative order ahead of the
- /// known arguments in the vector.
- int ignore_arg (int number = 1);
-
- /// Returns the number of args left to see in the vector.
- int is_anything_left (void) const;
-
- /// Returns 1 if there's a next item in the vector and it begins with
- /// '-'.
- int is_option_next (void) const;
-
- /// Returns 1 if there's a next item in the vector and it doesn't
- /// begin with '-'.
- int is_parameter_next (void) const;
-
- /// Returns the number of irrelevant args seen.
- int num_ignored_args (void) const;
-
-private:
- /// Copy Constructor should not be used.
- ACE_UNIMPLEMENTED_FUNC (ACE_Arg_Shifter_T (const ACE_Arg_Shifter_T<CHAR_TYPE>&))
-
- /// Assignment '=' operator should not be used.
- ACE_UNIMPLEMENTED_FUNC (ACE_Arg_Shifter_T operator= (const ACE_Arg_Shifter_T<CHAR_TYPE>&))
-
- /// Refactor the constructor logic.
- void init (void);
-
- /// The size of the argument vector.
- int& argc_;
-
- /// The size of argv_.
- int total_size_;
-
- /// The temporary array over which we traverse.
- const CHAR_TYPE **temp_;
-
- /// The array in which the arguments are reordered.
- const CHAR_TYPE **argv_;
-
- /// The element in <temp_> we're currently examining.
- int current_index_;
-
- /// The index of <argv_> in which we'll stick the next unknown
- /// argument.
- int back_;
-
- /// The index of <argv_> in which we'll stick the next known
- /// argument.
- int front_;
-};
-
-typedef ACE_Arg_Shifter_T<ACE_TCHAR> ACE_Arg_Shifter;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Arg_Shifter.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Arg_Shifter.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_ARG_SHIFTER_H */
-
diff --git a/dep/include/ace/Argv_Type_Converter.h b/dep/include/ace/Argv_Type_Converter.h
deleted file mode 100644
index 957a431a6c3..00000000000
--- a/dep/include/ace/Argv_Type_Converter.h
+++ /dev/null
@@ -1,120 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Argv_Type_Converter.h
- *
- * $Id: Argv_Type_Converter.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Si Mong Park <spark@ociweb.com>
- */
-//=============================================================================
-
-#ifndef ACE_ARGV_TYPE_CONVERTER_H
-#define ACE_ARGV_TYPE_CONVERTER_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-#include "ace/OS_Memory.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Argv_Type_Converter
- *
- * @brief To convert 'char' input/command line parameter to 'wchar_t'.
- *
- * This class is to convert 'char' type command line paramter to
- * wide-character (wchar_t) format and stores the copy of it.
- * This is useful for all classes that use 'char**' argv but cannot
- * be converted into 'ACE_TCHAR**' version.
- * Note that the converted data will be lost upon destruction, so
- * classes should use this class as their data member.
- */
-class ACE_Export ACE_Argv_Type_Converter
-{
-public:
-
- ACE_Argv_Type_Converter (int &argc, char** argv);
-
-#if defined (ACE_USES_WCHAR)
- ACE_Argv_Type_Converter (int &argc, wchar_t** argv);
-#endif // ACE_USES_WCHAR
-
- ~ACE_Argv_Type_Converter (void);
-
- /// Returns the pointer of converted command line.
- ACE_TCHAR** get_TCHAR_argv (void);
-
- /// Returns the pointer of ASCII (char) command line.
- char** get_ASCII_argv (void);
-
- /// Returns the number of sub paramters (argc).
- int& get_argc (void);
-
-private:
-
- /// Copy Constructor should not be used.
- ACE_Argv_Type_Converter (const ACE_Argv_Type_Converter&);
-
- /// Assignment '=' operator should not be used.
- ACE_Argv_Type_Converter operator= (const ACE_Argv_Type_Converter&);
-
-#if defined (ACE_USES_WCHAR)
-
- /// Perform common initialization for two Ctor's.
- void initialize (void);
-
- /// Align all entries in the char type argv list with wchar_t type
- /// argv list.
- void align_char_with_wchar (void);
-
- /// Align all entries in the wchar_t type argv list with char type
- /// argv list.
- void align_wchar_with_char (void);
-
- /// Clean up removed (comsumed) argv entries and reset the pass flags.
- void cleanup (void);
-#endif // ACE_USES_WCHAR
-
-private:
- /// Original number of input paramter, same as 'argc'.
- int &saved_argc_;
-
- /// Data member pointer that contains converted argv in ACE_ANTI_TCHAR.
- char** char_argv_;
-
-#if defined (ACE_USES_WCHAR)
- /// Data member pointer that contains converted argv in ACE_TCHAR.
- wchar_t** wchar_argv_;
-
- /// argc value before any argv has been passed.
- int before_pass_argc_;
-
- /// false represents original argv passed in is char, and true
- /// represents wchar_t.
- bool const original_type_;
-
- /// true indicates wchar_t type argv has been passed.
- bool wchar_passed_;
-
- /// true indicates char type argv has been passed.
- bool char_passed_;
-#endif /* ACE_USES_WCHAR */
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Argv_Type_Converter.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_ARGV_TYPE_CONVERTER_H */
-
diff --git a/dep/include/ace/Argv_Type_Converter.inl b/dep/include/ace/Argv_Type_Converter.inl
deleted file mode 100644
index e4b0ed5a059..00000000000
--- a/dep/include/ace/Argv_Type_Converter.inl
+++ /dev/null
@@ -1,44 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Argv_Type_Converter.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ACE_TCHAR**
-ACE_Argv_Type_Converter::get_TCHAR_argv (void)
-{
-#if defined (ACE_USES_WCHAR)
- if (this->char_passed_)
- {
- this->align_wchar_with_char ();
- }
-
- this->wchar_passed_ = true;
- return this->wchar_argv_;
-#else
- return this->char_argv_;
-#endif // ACE_USES_WCHAR
-}
-
-ACE_INLINE char**
-ACE_Argv_Type_Converter::get_ASCII_argv (void)
-{
-#if defined (ACE_USES_WCHAR)
- if (this->wchar_passed_)
- {
- this->align_char_with_wchar ();
- }
-
- this->char_passed_ = true;
-#endif // ACE_USES_WCHAR
-
- return this->char_argv_;
-}
-
-ACE_INLINE int&
-ACE_Argv_Type_Converter::get_argc (void)
-{
- return this->saved_argc_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Array.h b/dep/include/ace/Array.h
deleted file mode 100644
index 8ef7f094ac8..00000000000
--- a/dep/include/ace/Array.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Array.h
- *
- * $Id: Array.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @deprecated
- *
- * @note This file has been deprecated and will soon go away. You
- * should directly include "Containers_T.h" instead.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_ARRAY_H
-#define ACE_ARRAY_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Containers_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_ARRAY_H */
-
diff --git a/dep/include/ace/Array_Base.h b/dep/include/ace/Array_Base.h
deleted file mode 100644
index feef89eda01..00000000000
--- a/dep/include/ace/Array_Base.h
+++ /dev/null
@@ -1,257 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Array_Base.h
- *
- * $Id: Array_Base.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_ARRAY_BASE_H
-#define ACE_ARRAY_BASE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Global_Macros.h"
-#include "ace/Malloc_Base.h"
-#include <iterator> /* For reverse_iterator adapters */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declaration.
-template <class T> class ACE_Array_Iterator;
-
-/**
- * @class ACE_Array_Base
- *
- * @brief Implement a simple dynamic array
- *
- * This parametric class implements a simple dynamic array;
- * resizing must be controlled by the user. No comparison or find
- * operations are implemented.
- */
-template<class T>
-class ACE_Array_Base
-{
-public:
-
- // Old/ACE-style traits.
- typedef T TYPE;
- typedef ACE_Array_Iterator<T> ITERATOR;
-
- // STL-style typedefs/traits.
- typedef T value_type;
- typedef value_type * iterator;
- typedef value_type const * const_iterator;
- typedef value_type & reference;
- typedef value_type const & const_reference;
- typedef value_type * pointer;
- typedef value_type const * const_pointer;
- typedef ptrdiff_t difference_type;
- typedef ACE_Allocator::size_type size_type;
-
- ACE_DECLARE_STL_REVERSE_ITERATORS
-
- // = Initialization and termination methods.
-
- /// Dynamically create an uninitialized array.
- ACE_Array_Base (size_type size = 0,
- ACE_Allocator * the_allocator = 0);
-
- /// Dynamically initialize the entire array to the <default_value>.
- ACE_Array_Base (size_type size,
- T const & default_value,
- ACE_Allocator * the_allocator = 0);
-
- /**
- * The copy constructor performs initialization by making an exact
- * copy of the contents of parameter <s>, i.e., *this == s will
- * return true.
- */
- ACE_Array_Base (ACE_Array_Base<T> const & s);
-
- /**
- * Assignment operator performs an assignment by making an exact
- * copy of the contents of parameter <s>, i.e., *this == s will
- * return true. Note that if the <max_size_> of <array_> is >= than
- * <s.max_size_> we can copy it without reallocating. However, if
- * <max_size_> is < <s.max_size_> we must delete the <array_>,
- * reallocate a new <array_>, and then copy the contents of <s>.
- */
- void operator= (ACE_Array_Base<T> const & s);
-
- /// Clean up the array (e.g., delete dynamically allocated memory).
- ~ACE_Array_Base (void);
-
- // = Set/get methods.
-
- /// Set item in the array at location @a slot. Doesn't
- /// perform range checking.
- T & operator[] (size_type slot);
-
- /// Get item in the array at location @a slot. Doesn't
- /// perform range checking.
- T const & operator[] (size_type slot) const;
-
- /// Set an item in the array at location @a slot. Returns
- /// -1 if @a slot is not in range, else returns 0.
- int set (T const & new_item, size_type slot);
-
- /**
- * Get an item in the array at location @a slot. Returns -1 if
- * @a slot is not in range, else returns 0. Note that this function
- * copies the item. If you want to avoid the copy, you can use
- * the const operator [], but then you'll be responsible for range checking.
- */
- int get (T & item, size_type slot) const;
-
- /// Returns the <cur_size_> of the array.
- size_type size (void) const;
-
- /**
- * Changes the size of the array to match <new_size>.
- * It copies the old contents into the new array.
- * Return -1 on failure.
- */
- int size (size_type new_size);
-
- /// Returns the <max_size_> of the array.
- size_type max_size (void) const;
-
- /**
- * Changes the size of the array to match <new_size>.
- * It copies the old contents into the new array.
- * Return -1 on failure.
- * It does not affect new_size
- */
- int max_size (size_type new_size);
-
- /**
- * @name Forward Iterator Accessors
- *
- * Forward iterator accessors.
- */
- //@{
- iterator begin (void);
- iterator end (void);
- const_iterator begin (void) const;
- const_iterator end (void) const;
- //@}
-
- /**
- * @name Reverse Iterator Accessors
- *
- * Reverse iterator accessors.
- */
- //@{
- reverse_iterator rbegin (void);
- reverse_iterator rend (void);
- const_reverse_iterator rbegin (void) const;
- const_reverse_iterator rend (void) const;
- //@}
-
- /// Swap the contents of this array with the given @a array in
- /// an exception-safe manner.
- void swap (ACE_Array_Base<T> & array);
-
-protected:
-
- /// Returns 1 if @a slot is within range, i.e., 0 >= @a slot <
- /// <cur_size_>, else returns 0.
- bool in_range (size_type slot) const;
-
- /// Maximum size of the array, i.e., the total number of <T> elements
- /// in <array_>.
- size_type max_size_;
-
- /**
- * Current size of the array. This starts out being == to
- * <max_size_>. However, if we are assigned a smaller array, then
- * <cur_size_> will become less than <max_size_>. The purpose of
- * keeping track of both sizes is to avoid reallocating memory if we
- * don't have to.
- */
- size_type cur_size_;
-
- /// Pointer to the array's storage buffer.
- value_type * array_;
-
- /// Allocation strategy of the ACE_Array_Base.
- ACE_Allocator * allocator_;
-
- friend class ACE_Array_Iterator<T>;
-};
-
-// ****************************************************************
-
-/**
- * @class ACE_Array_Iterator
- *
- * @brief Implement an iterator over an ACE_Array.
- *
- * This iterator is safe in the face of array element deletions.
- * But it is NOT safe if the array is resized (via the ACE_Array
- * assignment operator) during iteration. That would be very
- * odd, and dangerous.
- */
-template <class T>
-class ACE_Array_Iterator
-{
-public:
- // = Initialization method.
- ACE_Array_Iterator (ACE_Array_Base<T> &);
-
- // = Iteration methods.
-
- /// Pass back the <next_item> that hasn't been seen in the Array.
- /// Returns 0 when all items have been seen, else 1.
- int next (T *&next_item);
-
- /// Move forward by one element in the Array. Returns 0 when all the
- /// items in the Array have been seen, else 1.
- int advance (void);
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Pointer to the current item in the iteration.
- size_t current_;
-
- /// Pointer to the Array we're iterating over.
- ACE_Array_Base<T> &array_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Array_Base.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Array_Base.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Array_Base.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_ARRAY_BASE_H */
-
diff --git a/dep/include/ace/Array_Base.inl b/dep/include/ace/Array_Base.inl
deleted file mode 100644
index 046c1bffc89..00000000000
--- a/dep/include/ace/Array_Base.inl
+++ /dev/null
@@ -1,146 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Array_Base.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Clean up the array (e.g., delete dynamically allocated memory).
-template <class T> ACE_INLINE
-ACE_Array_Base<T>::~ACE_Array_Base (void)
-{
- ACE_DES_ARRAY_FREE (this->array_,
- this->max_size_,
- this->allocator_->free,
- T);
-}
-
-template <class T>
-ACE_INLINE typename ACE_Array_Base<T>::iterator
-ACE_Array_Base<T>::begin (void)
-{
- return this->array_;
-}
-
-template <class T>
-ACE_INLINE typename ACE_Array_Base<T>::iterator
-ACE_Array_Base<T>::end (void)
-{
- return this->array_ + this->cur_size_;
-}
-
-template <class T>
-ACE_INLINE typename ACE_Array_Base<T>::const_iterator
-ACE_Array_Base<T>::begin (void) const
-{
- return this->array_;
-}
-
-template <class T>
-ACE_INLINE typename ACE_Array_Base<T>::const_iterator
-ACE_Array_Base<T>::end (void) const
-{
- return this->array_ + this->cur_size_;
-}
-
-template <class T>
-ACE_INLINE typename ACE_Array_Base<T>::reverse_iterator
-ACE_Array_Base<T>::rbegin (void)
-{
- return reverse_iterator (this->end ());
-}
-
-template <class T>
-ACE_INLINE typename ACE_Array_Base<T>::reverse_iterator
-ACE_Array_Base<T>::rend (void)
-{
- return reverse_iterator (this->begin ());
-}
-
-template <class T>
-ACE_INLINE typename ACE_Array_Base<T>::const_reverse_iterator
-ACE_Array_Base<T>::rbegin (void) const
-{
- return const_reverse_iterator (this->end ());
-}
-
-template <class T>
-ACE_INLINE typename ACE_Array_Base<T>::const_reverse_iterator
-ACE_Array_Base<T>::rend (void) const
-{
- return const_reverse_iterator (this->begin ());
-}
-
-template <class T> ACE_INLINE typename ACE_Array_Base<T>::size_type
-ACE_Array_Base<T>::size (void) const
-{
- return this->cur_size_;
-}
-
-template <class T> ACE_INLINE typename ACE_Array_Base<T>::size_type
-ACE_Array_Base<T>::max_size (void) const
-{
- return this->max_size_;
-}
-
-template <class T> ACE_INLINE bool
-ACE_Array_Base<T>::in_range (typename ACE_Array_Base<T>::size_type index) const
-{
- return index < this->cur_size_;
-}
-
-template <class T> ACE_INLINE T &
-ACE_Array_Base<T>::operator[] (typename ACE_Array_Base<T>::size_type index)
-{
- return this->array_[index];
-}
-
-template <class T> ACE_INLINE const T &
-ACE_Array_Base<T>::operator[] (typename ACE_Array_Base<T>::size_type index) const
-{
- return this->array_[index];
-}
-
-// ****************************************************************
-
-template <class T> ACE_INLINE void
-ACE_Array_Iterator<T>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- // ACE_TRACE ("ACE_Array_Iterator<T>::dump");
-#endif /* ACE_HAS_DUMP */
-}
-
-template <class T> ACE_INLINE
-ACE_Array_Iterator<T>::ACE_Array_Iterator (ACE_Array_Base<T> &a)
- : current_ (0),
- array_ (a)
-{
- // ACE_TRACE ("ACE_Array_Iterator<T>::ACE_Array_Iterator");
-}
-
-template <class T> ACE_INLINE int
-ACE_Array_Iterator<T>::advance (void)
-{
- // ACE_TRACE ("ACE_Array_Iterator<T>::advance");
-
- if (this->current_ < array_.size ())
- {
- ++this->current_;
- return 1;
- }
- else
- {
- // Already finished iterating.
- return 0;
- }
-}
-
-template <class T> ACE_INLINE int
-ACE_Array_Iterator<T>::done (void) const
-{
- ACE_TRACE ("ACE_Array_Iterator<T>::done");
-
- return this->current_ >= array_.size ();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Array_Map.h b/dep/include/ace/Array_Map.h
deleted file mode 100644
index f7b79a4be39..00000000000
--- a/dep/include/ace/Array_Map.h
+++ /dev/null
@@ -1,300 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Array_Map.h
- *
- * $Id: Array_Map.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Light weight array-based map with fast iteration but linear
- * (i.e. O(n)) search times. STL-style interface is exposed.
- *
- * @note This class requires the STL generic algorithms and
- * reverse_iterator adapter.
- *
- * @author Ossama Othman
- */
-//=============================================================================
-
-#ifndef ACE_ARRAY_MAP_H
-#define ACE_ARRAY_MAP_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include <utility>
-#include <iterator>
-#include <functional>
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Array_Map
- *
- * @brief Light weight array-based map with fast iteration, but linear
- * (i.e. O(n)) search times.
- *
- * Map implementation that focuses on small footprint and fast
- * iteration. Search times are, however, linear (O(n)) meaning that
- * this map isn't suitable for large data sets that will be searched
- * in performance critical areas of code. Iteration over large data
- * sets, however, is faster than linked list-based maps, for example,
- * since spatial locality is maximized through the use of contiguous
- * arrays as the underlying storage.
- * @par
- * An @c ACE_Array_Map is a unique associative container, meaning that
- * duplicate values may not be added to the map. It is also pair
- * associative (value_type is a std::pair<>). It is not a sorted
- * container.
- * @par
- * An STL @c std::map -like interface is exposed by this class
- * portability. Furthermore, this map's iterators are compatible with
- * STL algorithms.
- * @par
- * <b> Requirements and Performance Characteristics</b>
- * - Internal Structure
- * Array
- * - Duplicates allowed?
- * No
- * - Random access allowed?
- * Yes
- * - Search speed
- * O(n)
- * - Insert/replace speed
- * O(n), can be longer if the map has to resize
- * - Iterator still valid after change to container?
- * No
- * - Frees memory for removed elements?
- * Yes
- * - Items inserted by
- * Value
- * - Requirements for key type
- * -# Default constructor
- * -# Copy constructor
- * -# operator=
- * -# operator==
- * - Requirements for object type
- * -# Default constructor
- * -# Copy constructor
- * -# operator=
- */
-template<typename Key, typename Value, class EqualTo = std::equal_to<Key> >
-class ACE_Array_Map
-{
-public:
-
- // STL-style typedefs/traits.
- typedef Key key_type;
- typedef Value data_type;
- typedef std::pair<key_type, data_type> value_type;
- typedef value_type * iterator;
- typedef value_type const * const_iterator;
- typedef value_type & reference;
- typedef value_type const & const_reference;
- typedef value_type * pointer;
- typedef value_type const * const_pointer;
- typedef ptrdiff_t difference_type;
- typedef size_t size_type;
-
- ACE_DECLARE_STL_REVERSE_ITERATORS
-
- /// Default Constructor.
- /**
- * Create an empty map with a preallocated buffer of size @a s.
- */
- ACE_Array_Map (size_type s = 0);
-
-#ifndef ACE_LACKS_MEMBER_TEMPLATES
- template<typename InputIterator>
- ACE_Array_Map (InputIterator f, InputIterator l);
-#else
- ACE_Array_Map (const_iterator f, const_iterator l);
-#endif /* !ACE_LACKS_MEMBER_TEMPLATES */
-
- ACE_Array_Map (ACE_Array_Map const & map);
- ACE_Array_Map & operator= (ACE_Array_Map const & map);
-
- /// Destructor.
- ~ACE_Array_Map (void);
-
- /**
- * @name Forward Iterator Accessors
- *
- * Forward iterator accessors.
- */
- //@{
- iterator begin (void);
- iterator end (void);
- const_iterator begin (void) const;
- const_iterator end (void) const;
- //@}
-
- /**
- * @name Reverse Iterator Accessors
- *
- * Reverse iterator accessors.
- */
- //@{
- reverse_iterator rbegin (void);
- reverse_iterator rend (void);
- const_reverse_iterator rbegin (void) const;
- const_reverse_iterator rend (void) const;
- //@}
-
- /// Return current size of map.
- /**
- * @return The number of elements in the map.
- */
- size_type size (void) const;
-
- /// Maximum number of elements the map can hold.
- size_type max_size (void) const;
-
- /// Return @c true if the map is empty, else @c false.
- bool is_empty (void) const; // ACE style
-
- /**
- * Return @c true if the map is empty, else @c false. We recommend
- * using @c is_empty() instead since it's more consistent with the
- * ACE container naming conventions.
- */
- bool empty (void) const; // STL style
-
- /// Swap the contents of this map with the given @a map in an
- /// exception-safe manner.
- void swap (ACE_Array_Map & map);
-
- /// Insert the value @a x into the map.
- /**
- * STL-style map insertion method.
- *
- * @param x @c std::pair containing key and datum.
- *
- * @return @c std::pair::second will be @c false if the map already
- * contains a value with the same key as @a x.
- */
- std::pair<iterator, bool> insert (value_type const & x);
-
-#ifndef ACE_LACKS_MEMBER_TEMPLATES
- /// Insert range of elements into map.
- template<typename InputIterator>
- void insert (InputIterator f, InputIterator l);
-#else
- /// Insert range of elements into map.
- void insert (const_iterator f, const_iterator l);
-#endif /* ACE_LACKS_MEMBER_TEMPLATES */
-
- /// Remove element at position @a pos from the map.
- void erase (iterator pos);
-
- /// Remove element corresponding to key @a k from the map.
- /**
- * @return Number of elements that were erased.
- */
- size_type erase (key_type const & k);
-
- /// Remove range of elements [@a first, @a last) from the map.
- /**
- * @note [@a first, @a last) must be valid range within the map.
- */
- void erase (iterator first, iterator last);
-
- /// Clear contents of map.
- /**
- * @note This a constant time (O(1)) operation.
- */
- void clear (void);
-
- /**
- * @name Search Operations
- *
- * Search the map for data corresponding to key @a k.
- */
- //@{
- /**
- * @return @c end() if data corresponding to key @a k is not in the
- * map.
- */
- iterator find (key_type const & k);
-
- /**
- * @return @c end() if data corresponding to key @a k is not in the
- * map.
- */
- const_iterator find (key_type const & k) const;
- //@}
-
- /// Count the number of elements corresponding to key @a k.
- /**
- * @return In the case of this map, the count will always be one if
- * such exists in the map.
- */
- size_type count (key_type const & k);
-
- /// Convenience array index operator.
- /**
- * Array index operator that allows insertion and retrieval of
- * elements using an array index syntax, such as:
- * @par
- * map["Foo"] = 12;
- */
- data_type & operator[] (key_type const & k);
-
-private:
-
- /// Increase size of underlying buffer by @a s.
- void grow (size_type s);
-
-private:
-
- /// Number of elements in the map.
- size_type size_;
-
- /// Current size of underlying array.
- /**
- * @note @c capacity_ is always greater than or equal to @c size_;
- */
- size_type capacity_;
-
- /// Underlying array containing keys and data.
- value_type * nodes_;
-
-};
-
-// --------------------------------------------------------------
-
-/// @c ACE_Array_Map equality operator.
-template <typename Key, typename Value, class EqualTo>
-bool operator== (ACE_Array_Map<Key, Value, EqualTo> const & lhs,
- ACE_Array_Map<Key, Value, EqualTo> const & rhs);
-
-/// @c ACE_Array_Map lexicographical comparison operator.
-template <typename Key, typename Value, class EqualTo>
-bool operator< (ACE_Array_Map<Key, Value, EqualTo> const & lhs,
- ACE_Array_Map<Key, Value, EqualTo> const & rhs);
-
-// --------------------------------------------------------------
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#ifdef __ACE_INLINE__
-# include "ace/Array_Map.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-# include "ace/Array_Map.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Array_Map.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_ARRAY_MAP_H */
-
diff --git a/dep/include/ace/Array_Map.inl b/dep/include/ace/Array_Map.inl
deleted file mode 100644
index b053dc0a441..00000000000
--- a/dep/include/ace/Array_Map.inl
+++ /dev/null
@@ -1,133 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Array_Map.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template<typename Key, typename Value, class EqualTo>
-ACE_INLINE
-ACE_Array_Map<Key, Value, EqualTo>::ACE_Array_Map (
- typename ACE_Array_Map<Key, Value, EqualTo>::size_type s)
- : size_ (0)
- , capacity_ (s)
- , nodes_ (s == 0 ? 0 : new value_type[s])
-{
-}
-
-template<typename Key, typename Value, class EqualTo>
-ACE_INLINE ACE_Array_Map<Key, Value, EqualTo> &
-ACE_Array_Map<Key, Value, EqualTo>::operator= (
- ACE_Array_Map<Key, Value, EqualTo> const & map)
-{
- // Strongly exception-safe assignment.
-
- ACE_Array_Map<Key, Value, EqualTo> temp (map);
- this->swap (temp);
- return *this;
-}
-
-template<typename Key, typename Value, class EqualTo>
-ACE_INLINE typename ACE_Array_Map<Key, Value, EqualTo>::iterator
-ACE_Array_Map<Key, Value, EqualTo>::begin (void)
-{
- return this->nodes_;
-}
-
-template<typename Key, typename Value, class EqualTo>
-ACE_INLINE typename ACE_Array_Map<Key, Value, EqualTo>::iterator
-ACE_Array_Map<Key, Value, EqualTo>::end (void)
-{
- return this->nodes_ + this->size_;
-}
-
-template<typename Key, typename Value, class EqualTo>
-ACE_INLINE typename ACE_Array_Map<Key, Value, EqualTo>::const_iterator
-ACE_Array_Map<Key, Value, EqualTo>::begin (void) const
-{
- return this->nodes_;
-}
-
-template<typename Key, typename Value, class EqualTo>
-ACE_INLINE typename ACE_Array_Map<Key, Value, EqualTo>::const_iterator
-ACE_Array_Map<Key, Value, EqualTo>::end (void) const
-{
- return this->nodes_ + this->size_;
-}
-
-template<typename Key, typename Value, class EqualTo>
-ACE_INLINE typename ACE_Array_Map<Key, Value, EqualTo>::reverse_iterator
-ACE_Array_Map<Key, Value, EqualTo>::rbegin (void)
-{
- return reverse_iterator (this->end ());
-}
-
-template<typename Key, typename Value, class EqualTo>
-ACE_INLINE typename ACE_Array_Map<Key, Value, EqualTo>::reverse_iterator
-ACE_Array_Map<Key, Value, EqualTo>::rend (void)
-{
- return reverse_iterator (this->begin ());
-}
-
-template<typename Key, typename Value, class EqualTo>
-ACE_INLINE typename ACE_Array_Map<Key, Value, EqualTo>::const_reverse_iterator
-ACE_Array_Map<Key, Value, EqualTo>::rbegin (void) const
-{
- return const_reverse_iterator (this->end ());
-}
-
-template<typename Key, typename Value, class EqualTo>
-ACE_INLINE typename ACE_Array_Map<Key, Value, EqualTo>::const_reverse_iterator
-ACE_Array_Map<Key, Value, EqualTo>::rend (void) const
-{
- return const_reverse_iterator (this->begin ());
-}
-
-template<typename Key, typename Value, class EqualTo>
-ACE_INLINE typename ACE_Array_Map<Key, Value, EqualTo>::size_type
-ACE_Array_Map<Key, Value, EqualTo>::size (void) const
-{
- return this->size_;
-}
-
-template<typename Key, typename Value, class EqualTo>
-ACE_INLINE typename ACE_Array_Map<Key, Value, EqualTo>::size_type
-ACE_Array_Map<Key, Value, EqualTo>::max_size (void) const
-{
- return size_type (-1) / sizeof (value_type);
-}
-
-template<typename Key, typename Value, class EqualTo>
-ACE_INLINE bool
-ACE_Array_Map<Key, Value, EqualTo>::is_empty (void) const
-{
- return this->size_ == 0;
-}
-
-// The following method is deprecated.
-
-template<typename Key, typename Value, class EqualTo>
-ACE_INLINE bool
-ACE_Array_Map<Key, Value, EqualTo>::empty (void) const
-{
- return this->is_empty ();
-}
-
-template<typename Key, typename Value, class EqualTo>
-ACE_INLINE typename ACE_Array_Map<Key, Value, EqualTo>::size_type
-ACE_Array_Map<Key, Value, EqualTo>::count (
- typename ACE_Array_Map<Key, Value, EqualTo>::key_type const & k)
-{
- return
- (this->find (k) == this->end () ? 0 : 1); // Only one datum per key.
-}
-
-template<typename Key, typename Value, class EqualTo>
-ACE_INLINE typename ACE_Array_Map<Key, Value, EqualTo>::data_type &
-ACE_Array_Map<Key, Value, EqualTo>::operator[] (
- typename ACE_Array_Map<Key, Value, EqualTo>::key_type const & k)
-{
- iterator i = (this->insert (value_type (k, data_type ()))).first;
- return (*i).second;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Assert.h b/dep/include/ace/Assert.h
deleted file mode 100644
index 5bdf56f0531..00000000000
--- a/dep/include/ace/Assert.h
+++ /dev/null
@@ -1,39 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Assert.h
- *
- * $Id: Assert.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_ASSERT_H
-#define ACE_ASSERT_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#include /**/ "ace/config-all.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-ACE_Export void __ace_assert(const char *file, int line, const ACE_TCHAR *expression);
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_NDEBUG)
-#define ACE_ASSERT(x) \
- (static_cast<void>(0))
-#else
-#define ACE_ASSERT(X) \
- ((X) \
- ? static_cast<void>(0) \
- : ACE_VERSIONED_NAMESPACE_NAME::__ace_assert(__FILE__, __LINE__, ACE_TEXT_CHAR_TO_TCHAR (#X)))
-#endif /* ACE_NDEBUG */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_ASSERT */
-
diff --git a/dep/include/ace/Asynch_Acceptor.h b/dep/include/ace/Asynch_Acceptor.h
deleted file mode 100644
index e14126d3f1f..00000000000
--- a/dep/include/ace/Asynch_Acceptor.h
+++ /dev/null
@@ -1,282 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Asynch_Acceptor.h
- *
- * $Id: Asynch_Acceptor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Irfan Pyarali (irfan@cs.wustl.edu)
- */
-//=============================================================================
-
-#ifndef ACE_ASYNCH_ACCEPTOR_H
-#define ACE_ASYNCH_ACCEPTOR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_WIN32_OVERLAPPED_IO) || defined (ACE_HAS_AIO_CALLS)
-// This only works on platforms that support async i/o.
-
-#include "ace/Default_Constants.h"
-#include "ace/Asynch_IO.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declarations
-class ACE_Message_Block;
-class ACE_INET_Addr;
-
-/**
- * @class ACE_Asynch_Acceptor
- *
- * @brief This class is an example of the Acceptor Pattern. This class
- * will accept new connections and create new HANDLER to handle
- * the new connections.
- *
- * Unlike the ACE_Acceptor, however, this class is designed to
- * be used asynchronously.
- */
-template <class HANDLER>
-class ACE_Asynch_Acceptor : public ACE_Handler
-{
-public:
- /// A do nothing constructor.
- ACE_Asynch_Acceptor (void);
-
- /// Virtual destruction
- virtual ~ACE_Asynch_Acceptor (void);
-
- /**
- * @c open starts one or more asynchronous accept requests on a
- * @a address. Each accept operation may optionally read an
- * initial buffer from the new connection when accepted.
- *
- * @param address The address to listen/accept connections on.
- * If the address does not specify a port, a random
- * port is selected and bound.
- * @param bytes_to_read Optional, specifies the maximum number of bytes
- * to read with the accept. The buffer for the initial
- * data is allocated internally and passed to the
- * @c ACE_Service_Handler::open() hook method. It is
- * legitimate only during the @c open() method and must
- * be copied if required after @c open() returns.
- * This pre-read function works only on Windows.
- * @param pass_addresses Optional, a non-zero value indicates that
- * the local and peer addresses should be passed to the
- * associated @c ACE_Service_Handler::addresses() method
- * after any call to @c validate_new_connection() and prior
- * to the @c open() hook method call.
- * @param backlog Optional, defaulting to @c ACE_DEFAULT_ASYNCH_BACKLOG (which
- * can be adjusted in your platform's @c config.h file).
- * Specifies the listening backlog for the listening socket.
- * @param reuse_addr Optional, indicates whether the @c SO_REUSEADDR
- * option is set on the listening socket or not.
- * @param proactor Optional, pointer to the @c ACE_Proactor to use for
- * demultiplexing asynchronous accepts. If 0, the
- * process's singleton @c ACE_Proactor is used.
- * @param validate_new_connection Optional, if true, this object's
- * @c validate_connection() method is called after
- * the accept completes, but before the service handler's
- * @c open() hook method is called. If @c
- * validate_connection() returns -1, the newly-accepted
- * socket is immediately closed, and the @c addresses()
- * method is not called.
- * @param reissue_accept Optional, if non-zero (the default), a new
- * asynchronous accept operation is started after each
- * completion, whether the completion is for success or
- * failure, and whether or not a successfully-accepted
- * connection is subsequently refused.
- * @param number_of_initial_accepts Optional, the number of asynchronous
- * accepts that are started immediately. If -1 (the
- * default), the value of @a backlog is used.
- *
- * @note On Windows, the peer address is only available at the time
- * the connection is accepted. Therefore, if you require the peer
- * address on Windows, do not rely on the
- * @c ACE_SOCK::get_remote_addr() method - it won't work. You must
- * supply a non-zero value for @a pass_addresses and obtain the
- * peer address in the @c ACE_Service_Handler::addresses() method.
- *
- * @see ACE_INET_Addr
- * @see ACE_Service_Handler
- */
- virtual int open (const ACE_INET_Addr &address,
- size_t bytes_to_read = 0,
- bool pass_addresses = false,
- int backlog = ACE_DEFAULT_ASYNCH_BACKLOG,
- int reuse_addr = 1,
- ACE_Proactor *proactor = 0,
- bool validate_new_connection = false,
- int reissue_accept = 1,
- int number_of_initial_accepts = -1);
-
- /// Get the underlying handle.
- virtual ACE_HANDLE get_handle (void) const;
-
- /**
- * Set the underlying listen handle. It is the user's responsibility
- * to make sure that the old listen handle has been appropriately
- * closed and the all outstanding asynchronous operations have
- * either completed or have been canceled on the old listen handle.
- */
- virtual int set_handle (ACE_HANDLE handle);
-
- /// This initiates a new asynchronous accept operation.
- /**
- * You need only call this method if the @a reissue_accept argument
- * passed to @c open() was 0.
- */
- virtual int accept (size_t bytes_to_read = 0, const void *act = 0);
-
- /**
- * Cancels all pending accepts operations issued by this object.
- *
- * @note On Windows, only accept operations initiated by the calling thread
- * are canceled.
- */
- virtual int cancel (void);
-
- /**
- * Template method to validate peer before service is opened.
- * This method is called after a new connection is accepted if the
- * @a validate_connection argument to @c open() was non-zero or
- * the @c validate_new_connection() method is called to turn this
- * feature on. The default implementation returns 0. Users can
- * reimplement this method to perform validation of the peer
- * using it's address, running an authentication procedure (such as
- * SSL) or anything else necessary or desireable. The return value
- * from this method determines whether or not ACE will continue
- * opening the service or abort the connection.
- *
- * @param result Result of the connection acceptance.
- * @param remote Peer's address.
- * @param local Local address connection was accepted at.
- *
- * @retval -1 ACE_Asynch_Acceptor will close the connection, and
- * the service will not be opened.
- * @retval 0 Service opening will proceeed.
- */
- virtual int validate_connection (const ACE_Asynch_Accept::Result& result,
- const ACE_INET_Addr &remote,
- const ACE_INET_Addr& local);
-
- /**
- * Template method for deciding whether to reissue accept.
- *
- * This hook method is called after each accept completes to decide if
- * another accept should be initiated. If the method returns a non-zero
- * value, another accept is initiated.
- *
- * The default implemenation always returns the value passed as the
- * @c open() method's @a reissue_accept argument. That value can also
- * be changed using the @c reissue_accept() method.
- */
- virtual int should_reissue_accept (void);
-
- //
- // These are low level tweaking methods
- //
-
- /// Get flag that indicates if parsing and passing of addresses to
- /// the service_handler is necessary.
- virtual bool pass_addresses (void) const;
-
- /// Set flag that indicates if parsing and passing of addresses to
- /// the service_handler is necessary.
- virtual void pass_addresses (bool new_value);
-
- /// Get flag that indicates if address validation is required.
- virtual bool validate_new_connection (void) const;
-
- /// Set flag that indicates if address validation is required.
- virtual void validate_new_connection (bool new_value);
-
- /// Get flag that indicates if a new accept should be reissued when a accept
- /// completes.
- virtual int reissue_accept (void) const;
-
- /// Set flag that indicates if a new accept should be reissued when a accept
- /// completes.
- virtual void reissue_accept (int new_value);
-
- /// Get bytes to be read with the <accept> call.
- virtual size_t bytes_to_read (void) const;
-
- /// Set bytes to be read with the <accept> call.
- virtual void bytes_to_read (size_t new_value);
-
- /// @deprecated address_size() assumes IPv4 use, so is not always valid.
- /// This method will be removed after ACE 5.5. Internal uses have been
- /// changes to base needed sizes on the addr_family_ member.
- static size_t address_size (void);
-
-protected:
-
- /// This is called when an outstanding accept completes.
- virtual void handle_accept (const ACE_Asynch_Accept::Result &result);
-
- /// Return the listen handle.
- ACE_HANDLE handle (void) const;
- /// Set the listen handle.
- void handle (ACE_HANDLE h);
-
- /// This parses the address from read buffer.
- void parse_address (const ACE_Asynch_Accept::Result &result,
- ACE_INET_Addr &remote_address,
- ACE_INET_Addr &local_address);
-
- /// Return the asynch accept object.
- ACE_Asynch_Accept &asynch_accept (void);
-
- /**
- * This is the template method used to create new handler.
- * Subclasses must overwrite this method if a new handler creation
- * strategy is required.
- */
- virtual HANDLER *make_handler (void);
-
-private:
- /// Handle used to listen for new connections.
- ACE_HANDLE listen_handle_;
-
- /// Asynch_Accept used to make life easier :-)
- ACE_Asynch_Accept asynch_accept_;
-
- /// Flag that indicates if parsing of addresses is necessary.
- bool pass_addresses_;
-
- /// Flag that indicates if address validation is required.
- bool validate_new_connection_;
-
- /// Flag that indicates if a new accept should be reissued when a
- /// accept completes.
- int reissue_accept_;
-
- /// Bytes to be read with the <accept> call.
- size_t bytes_to_read_;
-
- /// Address family used to open this object. Obtained from @a address passed
- /// to @c open().
- int addr_family_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Asynch_Acceptor.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Asynch_Acceptor.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#endif /* ACE_HAS_WIN32_OVERLAPPED_IO || ACE_HAS_AIO_CALLS */
-#include /**/ "ace/post.h"
-#endif /* ACE_ASYNCH_ACCEPTOR_H */
-
diff --git a/dep/include/ace/Asynch_Connector.h b/dep/include/ace/Asynch_Connector.h
deleted file mode 100644
index 569242cba22..00000000000
--- a/dep/include/ace/Asynch_Connector.h
+++ /dev/null
@@ -1,170 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Asynch_Connector.h
- *
- * $Id: Asynch_Connector.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Alexander Libman <alibman@ihug.com.au>
- */
-//=============================================================================
-
-#ifndef ACE_ASYNCH_CONNECTOR_H
-#define ACE_ASYNCH_CONNECTOR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if (defined (ACE_WIN32) || defined (ACE_HAS_AIO_CALLS)) && !defined(ACE_HAS_WINCE)
-// This only works on platforms that support async i/o.
-
-#include "ace/Asynch_IO.h"
-#include "ace/INET_Addr.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declarations
-class ACE_Message_Block;
-
-/**
- * @class ACE_Asynch_Connector
- *
- * @brief This class is an example of the Connector pattern. This class
- * will establish new connections and create new HANDLER objects to handle
- * the new connections.
- *
- * Unlike the ACE_Connector, however, this class is designed to
- * be used asynchronously with the ACE Proactor framework.
- */
-
-template <class HANDLER>
-class ACE_Asynch_Connector : public ACE_Handler
-{
-public:
- /// A do nothing constructor.
- ACE_Asynch_Connector (void);
-
- /// Virtual destruction
- virtual ~ACE_Asynch_Connector (void);
-
- /**
- * This opens asynch connector
- */
- virtual int open (bool pass_addresses = false,
- ACE_Proactor *proactor = 0,
- bool validate_new_connection = true);
-
- /// This initiates a new asynchronous connect
- virtual int connect (const ACE_INET_Addr &remote_sap,
- const ACE_INET_Addr &local_sap =
- (const ACE_INET_Addr &)ACE_Addr::sap_any,
- int reuse_addr = 1,
- const void *act = 0);
-
- /**
- * This cancels all pending accepts operations that were issued by
- * the calling thread.
- *
- * @note On Windows, this method does not cancel connect operations
- * issued by other threads.
- *
- * @note On POSIX, delegates cancelation to ACE_POSIX_Asynch_Connect.
- */
- virtual int cancel (void);
-
- /**
- * Template method to validate peer before service is opened.
- * This method is called when the connection attempt completes,
- * whether it succeeded or failed, if the @a validate_connection
- * argument to @c open() was non-zero or the @c validate_new_connection()
- * method is called to turn this feature on. The default implementation
- * returns 0. Users can (and probably should) reimplement this method
- * to learn about the success or failure of the connection attempt.
- * If the connection completed successfully, this method can be used to
- * perform validation of the peer using it's address, running an
- * authentication procedure (such as SSL) or anything else necessary or
- * desireable. The return value from this method determines whether or
- * not ACE will continue opening the service or abort the connection.
- *
- * @param result Result of the connection acceptance. Use
- * result.success() to determine success or failure of
- * the connection attempt.
- * @param remote Peer's address. If the connection failed, this object
- * is undefined.
- * @param local Local address connection was completed from. If the
- * connection failed, this object is undefined.
- *
- * @retval -1 ACE_Asynch_Connector will close the connection, and
- * the service will not be opened.
- * @retval 0 Service opening will proceeed.
- * @return Return value is ignored if the connection attempt failed.
- */
- virtual int validate_connection (const ACE_Asynch_Connect::Result& result,
- const ACE_INET_Addr &remote,
- const ACE_INET_Addr& local);
-
- //
- // These are low level tweaking methods
- //
-
- /// Set and get flag that indicates if parsing and passing of
- /// addresses to the service_handler is necessary.
- virtual bool pass_addresses (void) const;
- virtual void pass_addresses (bool new_value);
-
- /// Set and get flag that indicates if address validation is
- /// required.
- virtual bool validate_new_connection (void) const;
- virtual void validate_new_connection (bool new_value);
-
-protected:
-
- /// This is called when an outstanding accept completes.
- virtual void handle_connect (const ACE_Asynch_Connect::Result &result);
-
- /// This parses the address from read buffer.
- void parse_address (const ACE_Asynch_Connect::Result &result,
- ACE_INET_Addr &remote_address,
- ACE_INET_Addr &local_address);
-
- /// Return the asynch Connect object.
- ACE_Asynch_Connect & asynch_connect (void);
-
- /**
- * This is the template method used to create new handler.
- * Subclasses must overwrite this method if a new handler creation
- * strategy is required.
- */
- virtual HANDLER *make_handler (void);
-
-private:
-
- /// Asynch_Connect used to make life easier :-)
- ACE_Asynch_Connect asynch_connect_;
-
- /// Flag that indicates if parsing of addresses is necessary.
- bool pass_addresses_;
-
- /// Flag that indicates if address validation is required.
- bool validate_new_connection_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Asynch_Connector.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Asynch_Connector.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#endif /* ACE_WIN32 || ACE_HAS_AIO_CALLS */
-#include /**/ "ace/post.h"
-#endif /* ACE_ASYNCH_CONNECTOR_H */
-
diff --git a/dep/include/ace/Asynch_IO.h b/dep/include/ace/Asynch_IO.h
deleted file mode 100644
index 00b24b82e74..00000000000
--- a/dep/include/ace/Asynch_IO.h
+++ /dev/null
@@ -1,1731 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Asynch_IO.h
- *
- * $Id: Asynch_IO.h 81870 2008-06-09 20:53:53Z shuston $
- *
- * This works on Win32 (defined (ACE_WIN32) && !defined
- * (ACE_HAS_WINCE)) platforms and on POSIX4 platforms with {aio_*}
- * routines (defined (ACE_HAS_AIO_CALLS))
- *
- * On Win32 platforms, the implementation of
- * {ACE_Asynch_Transmit_File} and {ACE_Asynch_Accept} are only
- * supported if ACE_HAS_WINSOCK2 is defined or you are on WinNT 4.0
- * or higher.
- *
- * @author Irfan Pyarali <irfan@cs.wustl.edu>
- * @author Tim Harrison <harrison@cs.wustl.edu>
- * @author Alexander Babu Arulanthu <alex@cs.wustl.edu>
- * @author Roger Tragin <r.tragin@computer.org>
- * @author Alexander Libman <alibman@ihug.com.au>
- */
-//=============================================================================
-
-#ifndef ACE_ASYNCH_IO_H
-#define ACE_ASYNCH_IO_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_WIN32_OVERLAPPED_IO) || defined (ACE_HAS_AIO_CALLS)
-
-#include "ace/Synch_Traits.h"
-#if defined (ACE_HAS_THREADS)
-# include "ace/Thread_Mutex.h"
-#else
-# include "ace/Null_Mutex.h"
-#endif /* ACE_HAS_THREADS */
-#include "ace/Refcounted_Auto_Ptr.h"
-
-#include "ace/os_include/os_signal.h"
-#include "ace/os_include/sys/os_socket.h"
-#include "ace/os_include/sys/os_types.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_WIN32_OVERLAPPED_IO)
-typedef TRANSMIT_FILE_BUFFERS ACE_TRANSMIT_FILE_BUFFERS;
-typedef LPTRANSMIT_FILE_BUFFERS ACE_LPTRANSMIT_FILE_BUFFERS;
-typedef PTRANSMIT_FILE_BUFFERS ACE_PTRANSMIT_FILE_BUFFERS;
-
-# define ACE_INFINITE INFINITE
-# define ACE_STATUS_TIMEOUT STATUS_TIMEOUT
-# define ACE_WAIT_FAILED WAIT_FAILED
-# define ACE_WAIT_TIMEOUT WAIT_TIMEOUT
-# else /* ACE_HAS_WIN32_OVERLAPPED_IO */
-struct ACE_TRANSMIT_FILE_BUFFERS
-{
- void *Head;
- size_t HeadLength;
- void *Tail;
- size_t TailLength;
-};
-typedef ACE_TRANSMIT_FILE_BUFFERS* ACE_PTRANSMIT_FILE_BUFFERS;
-typedef ACE_TRANSMIT_FILE_BUFFERS* ACE_LPTRANSMIT_FILE_BUFFERS;
-
-# if !defined (ACE_INFINITE)
-# define ACE_INFINITE LONG_MAX
-# endif /* ACE_INFINITE */
-# define ACE_STATUS_TIMEOUT LONG_MAX
-# define ACE_WAIT_FAILED LONG_MAX
-# define ACE_WAIT_TIMEOUT LONG_MAX
-# endif /* ACE_HAS_WIN32_OVERLAPPED_IO */
-
-// Forward declarations
-class ACE_Proactor;
-class ACE_Handler;
-class ACE_Message_Block;
-class ACE_INET_Addr;
-class ACE_Addr;
-
-// Forward declarations
-class ACE_Asynch_Result_Impl;
-class ACE_Time_Value;
-
-/**
- * @class ACE_Asynch_Result
- *
- * @brief An interface base class which allows users access to common
- * information related to an asynchronous operation.
- *
- * An interface base class from which you can obtain some basic
- * information like the number of bytes transferred, the ACT
- * associated with the asynchronous operation, indication of
- * success or failure, etc. Subclasses may want to store more
- * information that is particular to the asynchronous operation
- * it represents.
- */
-class ACE_Export ACE_Asynch_Result
-{
-
-public:
- /// Number of bytes transferred by the operation.
- size_t bytes_transferred (void) const;
-
- /// ACT associated with the operation.
- const void *act (void) const;
-
- /// Did the operation succeed?
- int success (void) const;
-
- /**
- * This is the ACT associated with the handle on which the
- * Asynch_Operation takes place.
- *
- * On WIN32, this returns the ACT associated with the handle when it
- * was registered with the I/O completion port.
- *
- * @@ This is not implemented for POSIX4 platforms. Returns 0.
- */
- const void *completion_key (void) const;
-
- /// Error value if the operation fails.
- unsigned long error (void) const;
-
- /**
- * On WIN32, this returns the event associated with the OVERLAPPED
- * structure.
- *
- * This returns ACE_INVALID_HANDLE on POSIX4-Unix platforms.
- */
- ACE_HANDLE event (void) const;
-
- /**
- * This really makes sense only when doing file I/O.
- *
- * On WIN32, these are represented in the OVERLAPPED datastructure.
- *
- * @@ On POSIX4-Unix, offset_high should be supported using
- * aiocb64.
- */
- unsigned long offset (void) const;
- unsigned long offset_high (void) const;
-
- /**
- * Priority of the operation.
- *
- * On POSIX4-Unix, this is supported. Priority works like {nice} in
- * Unix. Negative values are not allowed. 0 means priority of the
- * operation same as the process priority. 1 means priority of the
- * operation is one less than process. And so forth.
- *
- * On Win32, this is a no-op.
- */
- int priority (void) const;
-
- /**
- * POSIX4 real-time signal number to be used for the
- * operation. {signal_number} ranges from ACE_SIGRTMIN to ACE_SIGRTMAX. By
- * default, ACE_SIGRTMIN is used to issue {aio_} calls. This is a no-op
- * on non-POSIX4 systems and returns 0.
- */
- int signal_number (void) const;
-
- /// Destructor.
- virtual ~ACE_Asynch_Result (void);
-
-protected:
- /// Constructor. This implementation will not be deleted. The
- /// implementation will be deleted by the Proactor.
- ACE_Asynch_Result (ACE_Asynch_Result_Impl *implementation);
-
- /// Get the implementation class.
- ACE_Asynch_Result_Impl *implementation (void) const;
-
- /// Implementation class.
- ACE_Asynch_Result_Impl *implementation_;
-};
-
-// Forward declarations
-class ACE_Asynch_Operation_Impl;
-
-/**
- * @class ACE_Asynch_Operation
- *
- * @brief This is an interface base class for all asynch
- * operations. The resposiblility of this class is to forward
- * all methods to its delegation/implementation class, e.g.,
- * ACE_WIN32_Asynch_Operation or ACE_POSIX_Asynch_Operation.
- *
- * There are some attributes and functionality which is common
- * to all asychronous operations. The delegation classes of this
- * class will factor out this code.
- */
-class ACE_Export ACE_Asynch_Operation
-{
-
-public:
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call. If ({handle} == ACE_INVALID_HANDLE),
- * {ACE_Handler::handle} will be called on the {handler} to get the
- * correct handle.
- */
- int open (ACE_Handler &handler,
- ACE_HANDLE handle,
- const void *completion_key,
- ACE_Proactor *proactor);
-
- /**
- * (Attempts to) cancel the asynchronous operation pending against
- * the {handle} registered with this Operation.
- *
- * All completion notifications for the I/O operations will occur
- * normally.
- *
- * = Return Values:
- *
- * -1 : Operation failed. (can get only in POSIX).
- * 0 : All the operations were cancelled.
- * 1 : All the operations were already finished in this
- * handle. Unable to cancel them.
- * 2 : Atleast one of the requested operations cannot be
- * cancelled.
- *
- * There is slight difference in the semantics between NT and POSIX
- * platforms which is given below.
- *
- * = Win32 :
- *
- * cancels all pending accepts operations that were issued by the
- * calling thread. The function does not cancel asynchronous
- * operations issued by other threads.
- * All I/O operations that are canceled will complete with the
- * error ERROR_OPERATION_ABORTED.
- *
- * = POSIX:
- *
- * Attempts to cancel one or more asynchronous I/O requests
- * currently outstanding against the {handle} registered in this
- * operation.
- * For requested operations that are successfully canceled, the
- * associated error status is set to ECANCELED.
- */
- int cancel (void);
-
- // = Access methods.
-
- /// Return the underlying proactor.
- ACE_Proactor* proactor (void) const;
-
- /// Destructor.
- virtual ~ACE_Asynch_Operation (void);
-
-protected:
- /// Constructor.
- ACE_Asynch_Operation (void);
-
- /// Return the underlying implementation class.
- virtual ACE_Asynch_Operation_Impl *implementation (void) const = 0;
-
- /// Get a proactor for/from the user
- ACE_Proactor *get_proactor (ACE_Proactor *user_proactor,
- ACE_Handler &handler) const;
-};
-
-// Forward declarations
-class ACE_Asynch_Read_Stream_Result_Impl;
-class ACE_Asynch_Read_Stream_Impl;
-
-/**
- * @class ACE_Asynch_Read_Stream
- *
- * @brief This class is a factory for starting off asynchronous reads
- * on a stream. This class forwards all methods to its
- * implementation class.
- *
- * Once {open} is called, multiple asynchronous {read}s can
- * started using this class. An ACE_Asynch_Read_Stream::Result
- * will be passed back to the {handler} when the asynchronous
- * reads completes through the {ACE_Handler::handle_read_stream}
- * callback.
- */
-class ACE_Export ACE_Asynch_Read_Stream : public ACE_Asynch_Operation
-{
-
-public:
- /// A do nothing constructor.
- ACE_Asynch_Read_Stream (void);
-
- /// Destructor
- virtual ~ACE_Asynch_Read_Stream (void);
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call.
- *
- * @param handler The ACE_Handler that will be called to handle completions
- * for operations initiated using this factory.
- * @param handle The handle that future read operations will use.
- * If handle == @c ACE_INVALID_HANDLE,
- * ACE_Handler::handle() will be called on @ handler
- * to get the correct handle.
- *
- * @retval 0 for success.
- * @retval -1 for failure; consult @c errno for further information.
- */
- int open (ACE_Handler &handler,
- ACE_HANDLE handle = ACE_INVALID_HANDLE,
- const void *completion_key = 0,
- ACE_Proactor *proactor = 0);
-
- /**
- * Initiate an asynchronous read operation.
- *
- * @param message_block The ACE_Message_Block to receive the data.
- * Received bytes will be placed in the block
- * beginning at its current write pointer.
- * If data is read, the message block's write
- * pointer will be advanced by the number of
- * bytes read.
- * @param num_bytes_to_read The maximum number of bytes to read.
- * @param act Asynchronous Completion Token; passed through to
- * the completion handler in the Result object.
- * @param priority Priority of the operation. On POSIX4-Unix,
- * this is supported. Works like @c nice in Unix.
- * Negative values are not allowed. 0 means
- * priority of the operation same as the process
- * priority. 1 means priority of the operation is
- * one less than process priority, etc.
- * Ignored on Windows.
- * @param signal_number The POSIX4 real-time signal number to be used
- * to signal completion of the operation. Values
- * range from ACE_SIGRTMIN to ACE_SIGRTMAX.
- * This argument is ignored on non-POSIX4 systems.
- */
- int read (ACE_Message_Block &message_block,
- size_t num_bytes_to_read,
- const void *act = 0,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
-#if defined (ACE_HAS_WIN32_OVERLAPPED_IO)
- /**
- * Same as above but with scatter support, through chaining of composite
- * message blocks using the continuation field.
- */
- int readv (ACE_Message_Block &message_block,
- size_t num_bytes_to_read,
- const void *act = 0,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-#endif /* defined (ACE_HAS_WIN32_OVERLAPPED_IO) */
-
- /// Return the underlying implementation class.
- // (this should be protected...)
- virtual ACE_Asynch_Operation_Impl *implementation (void) const;
-
-protected:
- /// Implementation class that all methods will be forwarded to.
- ACE_Asynch_Read_Stream_Impl *implementation_;
-
-public:
-/**
- * @class Result
- *
- * @brief This is the class which will be passed back to the
- * ACE_Handler::handle_read_stream when the asynchronous read completes.
- * This class forwards all the methods to the implementation classes.
- *
- * This class has all the information necessary for the
- * handler to uniquiely identify the completion of the
- * asynchronous read.
- */
- class ACE_Export Result : public ACE_Asynch_Result
- {
-
- /// The concrete implementation result classes only construct this
- /// class.
- friend class ACE_POSIX_Asynch_Read_Stream_Result;
- friend class ACE_WIN32_Asynch_Read_Stream_Result;
-
- public:
- /// The number of bytes which were requested at the start of the
- /// asynchronous read.
- size_t bytes_to_read (void) const;
-
- /// Message block which contains the read data.
- ACE_Message_Block &message_block (void) const;
-
- /// I/O handle used for reading.
- ACE_HANDLE handle (void) const;
-
- /// Get the implementation class.
- ACE_Asynch_Read_Stream_Result_Impl *implementation (void) const;
-
- protected:
- /// Constructor.
- Result (ACE_Asynch_Read_Stream_Result_Impl *implementation);
-
- /// Destructor.
- virtual ~Result (void);
-
- /// The implementation class.
- ACE_Asynch_Read_Stream_Result_Impl *implementation_;
- };
-};
-
-// Forward declarations
-class ACE_Asynch_Write_Stream_Impl;
-class ACE_Asynch_Write_Stream_Result_Impl;
-
-/**
- * @class ACE_Asynch_Write_Stream
- *
- * @brief This class is a factory for initiating asynchronous writes
- * on a connected TCP/IP stream. This class forwards all methods to its
- * implementation class.
- *
- * Once open() is called, multiple asynchronous writes can be
- * started using this class. An ACE_Asynch_Write_Stream::Result
- * will be passed to the ACE_Handler::handle_write_stream() method on the
- * opened ACE_Handler object when the asynchronous write completes.
- */
-class ACE_Export ACE_Asynch_Write_Stream : public ACE_Asynch_Operation
-{
-
-public:
- /// A do nothing constructor.
- ACE_Asynch_Write_Stream (void);
-
- /// Destructor.
- virtual ~ACE_Asynch_Write_Stream (void);
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous operation.
- *
- * @param handler ACE_Handler to be notified when operations initiated
- * via this factory complete. The handle_write_stream()
- * method will be called on this object.
- * @param handle The socket handle to initiate write operations on.
- * If handle is @c ACE_INVALID_HANDLE,
- * ACE_Handler::handle() will be called on handler to
- * get the handle value.
- * @param completion_key A token that is passed to the completion handler.
- * @param proactor The ACE_Proactor object which will control operation
- * completion and dispatching the results to handler.
- * If this is 0, the process's singleton ACE_Proactor
- * will be used.
- *
- * @retval 0 for success.
- * @retval -1 for failure; consult @c errno for further information.
- */
- int open (ACE_Handler &handler,
- ACE_HANDLE handle = ACE_INVALID_HANDLE,
- const void *completion_key = 0,
- ACE_Proactor *proactor = 0);
-
- /**
- * Initiates an asynchronous write on a socket. If the operation completes
- * the ACE_Handler object registered in open() will receive a completion
- * callback via its handle_write_stream() method.
- *
- * @param bytes_to_write The number of bytes to write.
- * @param message_block The ACE_Message_Block containing data to write.
- * Data is written to the socket beginning at the
- * block's rd_ptr. Upon successful completion
- * of the write operation, the message_block rd_ptr
- * is updated to reflect the data that was written.
- * @param act Token that is passed through to the completion
- * handler.
- * @param priority Priority of the operation. This argument only has
- * an affect on POSIX4-Unix. Works like @c nice in
- * Unix; negative values are not allowed. 0 means
- * priority of the operation same as the process
- * priority. 1 means priority of the operation is one
- * less than the process, and so forth.
- * @param signal_number The POSIX4 real-time signal number to be used
- * for the operation. signal_number ranges from
- * ACE_SIGRTMIN to ACE_SIGRTMAX. This argument is
- * not used on other platforms.
- *
- * @retval 0 for success, and the handle_write_stream associated
- * with the opened ACE_Handler will be called. An
- * instance of ACE_Asynch_Write_Stream::Result will be
- * passed to the completion handler.
- * @retval -1 for failure; consult @c errno for further information.
- */
- int write (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void *act = 0,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
-#if defined (ACE_HAS_WIN32_OVERLAPPED_IO)
- /**
- * Same as above but with gather support, through chaining of composite
- * message blocks using the continuation field.
- */
- int writev (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void *act = 0,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-#endif /* defined (ACE_HAS_WIN32_OVERLAPPED_IO) */
-
- /// Return the underlying implementation class.
- /// @todo (this should be protected...)
- virtual ACE_Asynch_Operation_Impl *implementation (void) const;
-
-protected:
- /// Implementation class that all methods will be forwarded to.
- ACE_Asynch_Write_Stream_Impl *implementation_;
-
-public:
-/**
- * @class Result
- *
- * @brief This is that class which will be passed back to the
- * ACE_Handler when the asynchronous write completes. This class
- * forwards all the methods to the implementation class.
- *
- * This class has all the information necessary for the
- * handler to uniquiely identify the completion of the
- * asynchronous write.
- */
- class ACE_Export Result : public ACE_Asynch_Result
- {
-
- /// The concrete implementation result classes only construct this
- /// class.
- friend class ACE_POSIX_Asynch_Write_Stream_Result;
- friend class ACE_WIN32_Asynch_Write_Stream_Result;
-
- public:
- /// The number of bytes which were requested at the start of the
- /// asynchronous write.
- size_t bytes_to_write (void) const;
-
- /// Message block that contains the data to be written.
- ACE_Message_Block &message_block (void) const;
-
- /// I/O handle used for writing.
- ACE_HANDLE handle (void) const;
-
- /// Get the implementation class.
- ACE_Asynch_Write_Stream_Result_Impl *implementation (void) const;
-
- protected:
- /// Constructor.
- Result (ACE_Asynch_Write_Stream_Result_Impl *implementation);
-
- /// Destructor.
- virtual ~Result (void);
-
- /// Implementation class.
- ACE_Asynch_Write_Stream_Result_Impl *implementation_;
- };
-};
-
-// Forward declarations
-class ACE_Asynch_Read_File_Impl;
-class ACE_Asynch_Read_File_Result_Impl;
-
-/**
- * @class ACE_Asynch_Read_File
- *
- * @brief This class is a factory for starting off asynchronous reads
- * on a file. This class forwards all methods to its
- * implementation class.
- *
- * Once open() is called, multiple asynchronous reads can
- * started using this class. An ACE_Asynch_Read_File::Result
- * will be passed back to the completion handler's
- * ACE_Handler::handle_read_file() method when each asynchronous
- * read completes.
- * This class differs slightly from ACE_Asynch_Read_Stream as it
- * allows the user to specify an offset for the read.
- */
-class ACE_Export ACE_Asynch_Read_File : public ACE_Asynch_Read_Stream
-{
-
-public:
- /// A do nothing constructor.
- ACE_Asynch_Read_File (void);
-
- /// Destructor.
- virtual ~ACE_Asynch_Read_File (void);
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous operation.
- *
- * @param handler ACE_Handler to be notified when operations initiated
- * via this factory complete. The
- * ACE_Handler::handle_read_file() method will be
- * called on this object.
- * @param handle The file handle to initiate read operations on.
- * If handle is @c ACE_INVALID_HANDLE,
- * ACE_Handler::handle() will be called on handler to
- * get the handle value.
- * @param completion_key A token that is passed to the completion handler.
- * @param proactor The ACE_Proactor object which will control operation
- * completion and dispatching the results to handler.
- * If this is 0, the process's singleton ACE_Proactor
- * will be used.
- *
- * @retval 0 for success.
- * @retval -1 for failure; consult @c errno for further information.
- */
- int open (ACE_Handler &handler,
- ACE_HANDLE handle = ACE_INVALID_HANDLE,
- const void *completion_key = 0,
- ACE_Proactor *proactor = 0);
-
- /**
- * This starts off an asynchronous read. Upto {bytes_to_read} will
- * be read and stored in the {message_block}. The read will start
- * at {offset} from the beginning of the file. Priority of the
- * operation is specified by {priority}. On POSIX4-Unix, this is
- * supported. Works like {nice} in Unix. Negative values are not
- * allowed. 0 means priority of the operation same as the process
- * priority. 1 means priority of the operation is one less than
- * process. And so forth. On Win32, this argument is a no-op.
- * {signal_number} is the POSIX4 real-time signal number to be used
- * for the operation. {signal_number} ranges from ACE_SIGRTMIN to
- * ACE_SIGRTMAX. This argument is a no-op on non-POSIX4 systems.
- */
- int read (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- unsigned long offset = 0,
- unsigned long offset_high = 0,
- const void *act = 0,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
-#if (defined (ACE_WIN32) && !defined (ACE_HAS_WINCE))
- /**
- * Same as above but with scatter support, through chaining of composite
- * message blocks using the continuation field.
- * @note In win32 Each data block payload must be at least the size of a system
- * memory page and must be aligned on a system memory page size boundary
- */
- int readv (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- unsigned long offset = 0,
- unsigned long offset_high = 0,
- const void *act = 0,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-#endif /* (defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)) */
-
- /// Return the underlying implementation class.
- // (this should be protected...)
- virtual ACE_Asynch_Operation_Impl *implementation (void) const;
-
-protected:
- /// Delegation/implementation class that all methods will be
- /// forwarded to.
- ACE_Asynch_Read_File_Impl *implementation_;
-
-public:
-/**
- * @class Result
- *
- * @brief This is that class which will be passed back to the
- * {handler} when the asynchronous read completes. This class
- * forwards all the methods to the implementation class.
- *
- * This class has all the information necessary for the
- * {handler} to uniquiely identify the completion of the
- * asynchronous read.
- * This class differs slightly from
- * ACE_Asynch_Read_Stream::Result as it calls back
- * {ACE_Handler::handle_read_file} on the {handler} instead of
- * {ACE_Handler::handle_read_stream}. No additional state is
- * required by this class as ACE_Asynch_Result can store the
- * {offset}.
- */
- class ACE_Export Result : public ACE_Asynch_Read_Stream::Result
- {
-
- /// The concrete implementation result classes only construct this
- /// class.
- friend class ACE_POSIX_Asynch_Read_File_Result;
- friend class ACE_WIN32_Asynch_Read_File_Result;
-
- public:
- /// Get the implementation class.
- ACE_Asynch_Read_File_Result_Impl *implementation (void) const;
-
- protected:
- /// Constructor. This implementation will not be deleted.
- Result (ACE_Asynch_Read_File_Result_Impl *implementation);
-
- /// Destructor.
- virtual ~Result (void);
-
- /// The implementation class.
- ACE_Asynch_Read_File_Result_Impl *implementation_;
-
- private:
- /// Here just to provide an dummpy implementation, since the
- /// one auto generated by MSVC is flagged as infinitely recursive
- void operator= (Result &) {}
- };
-};
-
-// Forward declarations
-class ACE_Asynch_Write_File_Impl;
-class ACE_Asynch_Write_File_Result_Impl;
-
-/**
- * @class ACE_Asynch_Write_File
- *
- * @brief This class is a factory for starting off asynchronous writes
- * on a file. This class forwards all methods to its
- * implementation class.
- *
- * Once {open} is called, multiple asynchronous {write}s can be
- * started using this class. A ACE_Asynch_Write_File::Result
- * will be passed back to the {handler} when the asynchronous
- * writes completes through the {ACE_Handler::handle_write_file}
- * callback.
- * This class differs slightly from ACE_Asynch_Write_Stream as
- * it allows the user to specify an offset for the write.
- */
-class ACE_Export ACE_Asynch_Write_File : public ACE_Asynch_Write_Stream
-{
-
-public:
- /// A do nothing constructor.
- ACE_Asynch_Write_File (void);
-
- /// Destructor.
- virtual ~ACE_Asynch_Write_File (void);
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call. If ({handle} == ACE_INVALID_HANDLE),
- * {ACE_Handler::handle} will be called on the {handler} to get the
- * correct handle.
- */
- int open (ACE_Handler &handler,
- ACE_HANDLE handle = ACE_INVALID_HANDLE,
- const void *completion_key = 0,
- ACE_Proactor *proactor = 0);
-
- /**
- * This starts off an asynchronous write. Upto {bytes_to_write}
- * will be written from the {message_block}, starting at the
- * block's {rd_ptr}. The write will go to the file, starting
- * {offset} bytes from the beginning of the file. Priority of the
- * operation is specified by {priority}. On POSIX4-Unix, this is
- * supported. Works like {nice} in Unix. Negative values are not
- * allowed. 0 means priority of the operation same as the process
- * priority. 1 means priority of the operation is one less than
- * process. And so forth. On Win32, this is a no-op.
- * {signal_number} is the POSIX4 real-time signal number to be used
- * for the operation. {signal_number} ranges from ACE_SIGRTMIN to
- * ACE_SIGRTMAX. This argument is a no-op on non-POSIX4 systems.
- */
- int write (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- unsigned long offset = 0,
- unsigned long offset_high = 0,
- const void *act = 0,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
-#if (defined (ACE_WIN32) && !defined (ACE_HAS_WINCE))
- /**
- * Same as above but with gather support, through chaining of composite
- * message blocks using the continuation field.
- * @note In win32 Each data block payload must be at least the size of a system
- * memory page and must be aligned on a system memory page size boundary
- */
- int writev (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- unsigned long offset = 0,
- unsigned long offset_high = 0,
- const void *act = 0,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-#endif /* (defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)) */
-
- /// Return the underlying implementation class.
- // (this should be protected...)
- virtual ACE_Asynch_Operation_Impl *implementation (void) const;
-
-protected:
- /// Implementation object.
- ACE_Asynch_Write_File_Impl *implementation_;
-
-public:
-/**
- * @class Result
- *
- * @brief This is that class which will be passed back to the
- * {handler} when the asynchronous write completes. This class
- * forwards all the methods to the implementation class.
- *
- * This class has all the information necessary for the
- * {handler} to uniquiely identify the completion of the
- * asynchronous write.
- * This class differs slightly from
- * ACE_Asynch_Write_Stream::Result as it calls back
- * {ACE_Handler::handle_write_file} on the {handler} instead
- * of {ACE_Handler::handle_write_stream}. No additional state
- * is required by this class as ACE_Asynch_Result can store
- * the {offset}.
- */
- class ACE_Export Result : public ACE_Asynch_Write_Stream::Result
- {
-
- /// The concrete implementation result classes only construct this
- /// class.
- friend class ACE_POSIX_Asynch_Write_File_Result;
- friend class ACE_WIN32_Asynch_Write_File_Result;
-
- public:
- /// Get the implementation class.
- ACE_Asynch_Write_File_Result_Impl *implementation (void) const;
-
- protected:
- /// Constructor. This implementation will not be deleted.
- Result (ACE_Asynch_Write_File_Result_Impl *implementation);
-
- /// Destructor.
- virtual ~Result (void);
-
- /// The implementation class.
- ACE_Asynch_Write_File_Result_Impl *implementation_;
-
- private:
- /// Here just to provide an dummpy implementation, since the
- /// one auto generated by MSVC is flagged as infinitely recursive
- void operator= (Result &) {};
- };
-};
-
-// Forward declarations
-class ACE_Asynch_Accept_Result_Impl;
-class ACE_Asynch_Accept_Impl;
-
-/**
- * @class ACE_Asynch_Accept
- *
- * @brief This class is a factory for starting off asynchronous accepts
- * on a listen handle. This class forwards all methods to its
- * implementation class.
- *
- * Once {open} is called, multiple asynchronous {accept}s can
- * started using this class. A ACE_Asynch_Accept::Result will
- * be passed back to the {handler} when the asynchronous accept
- * completes through the {ACE_Handler::handle_accept}
- * callback.
- */
-class ACE_Export ACE_Asynch_Accept : public ACE_Asynch_Operation
-{
-
-public:
- /// A do nothing constructor.
- ACE_Asynch_Accept (void);
-
- /// Destructor.
- virtual ~ACE_Asynch_Accept (void);
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call. If ({handle} == ACE_INVALID_HANDLE),
- * {ACE_Handler::handle} will be called on the {handler} to get the
- * correct handle.
- */
- int open (ACE_Handler &handler,
- ACE_HANDLE handle = ACE_INVALID_HANDLE,
- const void *completion_key = 0,
- ACE_Proactor *proactor = 0);
-
- /**
- * This starts off an asynchronous accept. The asynchronous accept
- * call also allows any initial data to be returned to the
- * handler specified to @c open().
- * @param message_block A message block to receive initial data, as well
- * as the local and remote addresses when the
- * connection is made. Since the block receives
- * the addresses regardless of whether or not
- * initial data is available or requested, the
- * message block size must be at least
- * @a bytes_to_read plus two times the size of
- * the addresses used (IPv4 or IPv6).
- * @param bytes_to_read The maximum number of bytes of initial data
- * to read into @a message_block.
- * @param accept_handle The handle that the new connection will be
- * accepted on. If @c INVALID_HANDLE, a new
- * handle will be created using @a addr_family.
- * @param act Value to be passed in result when operation
- * completes.
- * @param priority Priority of the operation. On POSIX4-Unix, this
- * is supported. Works like @c nice in Unix.
- * Negative values are not allowed. 0 means
- * priority of the operation same as the process
- * priority. 1 means priority of the operation is
- * one less than process. And so forth.
- * On Win32, this argument is ignored.
- * @param signal_number The POSIX4 real-time signal number to be used
- * for the operation. Value range is from
- * @c ACE_SIGRTMIN to @c ACE_SIGRTMAX.
- * This argument is ignored on non-POSIX4 systems.
- * @param addr_family The address family to use if @a accept_handle
- * is @c ACE_INVALID_HANDLE and a new handle must
- * be opened. Values are @c AF_INET and @c PF_INET6.
- */
- int accept (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- ACE_HANDLE accept_handle = ACE_INVALID_HANDLE,
- const void *act = 0,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN,
- int addr_family = AF_INET);
-
- /// Return the underlying implementation class.
- // (this should be protected...)
- virtual ACE_Asynch_Operation_Impl *implementation (void) const;
-
-protected:
- /// Delegation/implementation class that all methods will be
- /// forwarded to.
- ACE_Asynch_Accept_Impl *implementation_;
-
-public:
-/**
- * @class Result
- *
- * @brief This is that class which will be passed back to the
- * {handler} when the asynchronous accept completes.
- *
- * This class has all the information necessary for the
- * {handler} to uniquiely identify the completion of the
- * asynchronous accept.
- */
- class ACE_Export Result : public ACE_Asynch_Result
- {
-
- /// The concrete implementation result classes only construct this
- /// class.
- friend class ACE_POSIX_Asynch_Accept_Result;
- friend class ACE_WIN32_Asynch_Accept_Result;
-
- public:
- /// The number of bytes which were requested at the start of the
- /// asynchronous accept.
- size_t bytes_to_read (void) const;
-
- /// Message block which contains the read data.
- ACE_Message_Block &message_block (void) const;
-
- /// I/O handle used for accepting new connections.
- ACE_HANDLE listen_handle (void) const;
-
- /// I/O handle for the new connection.
- ACE_HANDLE accept_handle (void) const;
-
- /// Get the implementation.
- ACE_Asynch_Accept_Result_Impl *implementation (void) const;
-
- protected:
- /// Contructor. Implementation will not be deleted.
- Result (ACE_Asynch_Accept_Result_Impl *implementation);
-
- /// Destructor.
- virtual ~Result (void);
-
- /// Impelmentation class.
- ACE_Asynch_Accept_Result_Impl *implementation_;
- };
-};
-// Forward declarations
-class ACE_Asynch_Connect_Result_Impl;
-class ACE_Asynch_Connect_Impl;
-
-/**
- * @class ACE_Asynch_Connect
- *
- * @brief This class is a factory for starting off asynchronous connects
- * This class forwards all methods to its implementation class.
- *
- * Once @c open is called, multiple asynchronous connect operationss can
- * started using this class. A ACE_Asynch_Connect::Result will
- * be passed back to the associated ACE_Handler when the asynchronous connect
- * completes through the ACE_Handler::handle_connect() callback.
- */
-class ACE_Export ACE_Asynch_Connect : public ACE_Asynch_Operation
-{
-
-public:
- /// A do nothing constructor.
- ACE_Asynch_Connect (void);
-
- /// Destructor.
- virtual ~ACE_Asynch_Connect (void);
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call.
- *
- * @note @arg handle is ignored and should be @c ACE_INVALID_HANDLE.
- */
- int open (ACE_Handler &handler,
- ACE_HANDLE handle = ACE_INVALID_HANDLE,
- const void *completion_key = 0,
- ACE_Proactor *proactor = 0);
-
- /**
- * This starts off an asynchronous Connect.
- */
- int connect (ACE_HANDLE connect_handle,
- const ACE_Addr & remote_sap,
- const ACE_Addr & local_sap,
- int reuse_addr,
- const void *act=0,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- /// Return the underlying implementation class.
- // (this should be protected...)
- virtual ACE_Asynch_Operation_Impl *implementation (void) const;
-
-protected:
- /// Delegation/implementation class that all methods will be
- /// forwarded to.
- ACE_Asynch_Connect_Impl *implementation_;
-
-public:
-/**
- * @class Result
- *
- * @brief This is that class which will be passed back to the
- * handler when the asynchronous connect completes.
- *
- * This class has all the information necessary for the
- * handler to uniquely identify the completion of the
- * asynchronous connect.
- */
- class ACE_Export Result : public ACE_Asynch_Result
- {
-
- /// The concrete implementation result classes only construct this
- /// class.
- friend class ACE_POSIX_Asynch_Connect_Result;
- friend class ACE_WIN32_Asynch_Connect_Result;
-
- public:
-
- /// I/O handle for the connection.
- ACE_HANDLE connect_handle (void) const;
-
- /// Get the implementation.
- ACE_Asynch_Connect_Result_Impl *implementation (void) const;
-
- protected:
- /// Contructor. Implementation will not be deleted.
- Result (ACE_Asynch_Connect_Result_Impl *implementation);
-
- /// Destructor.
- virtual ~Result (void);
-
- /// Impelmentation class.
- ACE_Asynch_Connect_Result_Impl *implementation_;
- };
-};
-
-// Forward declarations
-class ACE_Asynch_Transmit_File_Result_Impl;
-class ACE_Asynch_Transmit_File_Impl;
-
-/**
- * @class ACE_Asynch_Transmit_File
- *
- * @brief This class is a factory for starting off asynchronous
- * transmit files on a stream.
- *
- * Once {open} is called, multiple asynchronous {transmit_file}s
- * can started using this class. A
- * ACE_Asynch_Transmit_File::Result will be passed back to the
- * {handler} when the asynchronous transmit file completes
- * through the {ACE_Handler::handle_transmit_file} callback.
- * The transmit_file function transmits file data over a
- * connected network connection. The function uses the operating
- * system's cache manager to retrieve the file data. This
- * function provides high-performance file data transfer over
- * network connections. This function would be of great use in
- * a Web Server, Image Server, etc.
- */
-class ACE_Export ACE_Asynch_Transmit_File : public ACE_Asynch_Operation
-{
-
-public:
- // Forward declarations
- class Header_And_Trailer;
-
- /// A do nothing constructor.
- ACE_Asynch_Transmit_File (void);
-
- /// Destructor.
- virtual ~ACE_Asynch_Transmit_File (void);
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call. If ({handle} == ACE_INVALID_HANDLE),
- * {ACE_Handler::handle} will be called on the {handler} to get the
- * correct handle.
- */
- int open (ACE_Handler &handler,
- ACE_HANDLE handle = ACE_INVALID_HANDLE,
- const void *completion_key = 0,
- ACE_Proactor *proactor = 0);
-
- /**
- * This starts off an asynchronous transmit file. The {file} is a
- * handle to an open file. {header_and_trailer} is a pointer to a
- * data structure that contains pointers to data to send before and
- * after the file data is sent. Set this parameter to 0 if you only
- * want to transmit the file data. Upto {bytes_to_write} will be
- * written to the {socket}. If you want to send the entire file,
- * let {bytes_to_write} = 0. {bytes_per_send} is the size of each
- * block of data sent per send operation. Please read the Win32
- * documentation on what the flags should be. Priority of the
- * operation is specified by {priority}. On POSIX4-Unix, this is
- * supported. Works like {nice} in Unix. Negative values are not
- * allowed. 0 means priority of the operation same as the process
- * priority. 1 means priority of the operation is one less than
- * process. And so forth. On Win32, this is a no-op.
- * {signal_number} is the POSIX4 real-time signal number to be used
- * for the operation. {signal_number} ranges from ACE_SIGRTMIN to
- * ACE_SIGRTMAX. This argument is a no-op on non-POSIX4 systems.
- */
- int transmit_file (ACE_HANDLE file,
- Header_And_Trailer *header_and_trailer = 0,
- size_t bytes_to_write = 0,
- unsigned long offset = 0,
- unsigned long offset_high = 0,
- size_t bytes_per_send = 0,
- unsigned long flags = 0,
- const void *act = 0,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- /// Return the underlying implementation class.
- // (this should be protected...)
- virtual ACE_Asynch_Operation_Impl *implementation (void) const;
-
-protected:
- /// The implementation class.
- ACE_Asynch_Transmit_File_Impl *implementation_;
-
-public:
-/**
- * @class Result
- *
- * @brief This is that class which will be passed back to the
- * {handler} when the asynchronous transmit file completes.
- *
- * This class has all the information necessary for the
- * {handler} to uniquiely identify the completion of the
- * asynchronous transmit file.
- */
- class ACE_Export Result : public ACE_Asynch_Result
- {
-
- /// The concrete implementation result classes only construct this
- /// class.
- friend class ACE_POSIX_Asynch_Transmit_File_Result;
- friend class ACE_WIN32_Asynch_Transmit_File_Result;
-
- public:
- /// Socket used for transmitting the file.
- ACE_HANDLE socket (void) const;
-
- /// File from which the data is read.
- ACE_HANDLE file (void) const;
-
- /// Header and trailer data associated with this transmit file.
- Header_And_Trailer *header_and_trailer (void) const;
-
- /// The number of bytes which were requested at the start of the
- /// asynchronous transmit file.
- size_t bytes_to_write (void) const;
-
- /// Number of bytes per send requested at the start of the transmit
- /// file.
- size_t bytes_per_send (void) const;
-
- /// Flags which were passed into transmit file.
- unsigned long flags (void) const;
-
- /// Get the implementation class.
- ACE_Asynch_Transmit_File_Result_Impl *implementation (void) const;
-
- protected:
- /// Constructor.
- Result (ACE_Asynch_Transmit_File_Result_Impl *implementation);
-
- /// Destructor.
- virtual ~Result (void);
-
- /// The implementation class.
- ACE_Asynch_Transmit_File_Result_Impl *implementation_;
- };
-
-/**
- * @class Header_And_Trailer
- *
- * @brief The class defines a data structure that contains pointers
- * to data to send before and after the file data is sent.
- *
- * This class provides a wrapper over TRANSMIT_FILE_BUFFERS
- * and provided a consistent use of ACE_Message_Blocks.
- */
- class ACE_Export Header_And_Trailer
- {
-
- public:
- /// Constructor.
- Header_And_Trailer (ACE_Message_Block *header = 0,
- size_t header_bytes = 0,
- ACE_Message_Block *trailer = 0,
- size_t trailer_bytes = 0);
-
- /// Destructor
- virtual ~Header_And_Trailer (void);
-
- /// This method allows all the member to be set in one fell swoop.
- void header_and_trailer (ACE_Message_Block *header = 0,
- size_t header_bytes = 0,
- ACE_Message_Block *trailer = 0,
- size_t trailer_bytes = 0);
-
- /// Get header which goes before the file data.
- ACE_Message_Block *header (void) const;
-
- /// Set header which goes before the file data.
- void header (ACE_Message_Block *message_block);
-
- /// Get size of the header data.
- size_t header_bytes (void) const;
-
- /// Set size of the header data.
- void header_bytes (size_t bytes);
-
- /// Get trailer which goes after the file data.
- ACE_Message_Block *trailer (void) const;
-
- /// Set trailer which goes after the file data.
- void trailer (ACE_Message_Block *message_block);
-
- /// Get size of the trailer data.
- size_t trailer_bytes (void) const;
-
- /// Set size of the trailer data.
- void trailer_bytes (size_t bytes);
-
- /// Conversion routine.
- ACE_LPTRANSMIT_FILE_BUFFERS transmit_buffers (void);
-
- protected:
- /// Header data.
- ACE_Message_Block *header_;
-
- /// Size of header data.
- size_t header_bytes_;
-
- /// Trailer data.
- ACE_Message_Block *trailer_;
-
- /// Size of trailer data.
- size_t trailer_bytes_;
-
- /// Target data structure.
- ACE_TRANSMIT_FILE_BUFFERS transmit_buffers_;
- };
-};
-
-// Forward declarations
-class ACE_Asynch_Read_Dgram_Result_Impl;
-class ACE_Asynch_Read_Dgram_Impl;
-class ACE_Addr;
-
-/**
- * @class ACE_Asynch_Read_Dgram
- *
- * @brief This class is a factory for starting off asynchronous reads
- * on a UDP socket. This class forwards all methods to its
- * implementation class.
- *
- * Once {open} is called, multiple asynchronous {read}s can be
- * started using this class. An ACE_Asynch_Read_Dgram::Result
- * will be passed back to the {handler} when the asynchronous
- * reads completes through the {ACE_Handler::handle_read_dgram}
- * callback.
- */
-class ACE_Export ACE_Asynch_Read_Dgram : public ACE_Asynch_Operation
-{
-
-public:
- /// A do nothing constructor.
- ACE_Asynch_Read_Dgram (void);
-
- /// Destructor
- virtual ~ACE_Asynch_Read_Dgram (void);
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call. If ({handle} == ACE_INVALID_HANDLE),
- * {ACE_Handler::handle} will be called on the {handler} to get the
- * correct handle.
- */
- int open (ACE_Handler &handler,
- ACE_HANDLE handle = ACE_INVALID_HANDLE,
- const void *completion_key = 0,
- ACE_Proactor *proactor = 0);
-
- /** This starts off an asynchronous read. Upto
- * {message_block->total_size()} will be read and stored in the
- * {message_block}. {message_block}'s {wr_ptr} will be updated to reflect
- * the added bytes if the read operation is successfully completed.
- * Return code of 1 means immediate success and {number_of_bytes_recvd}
- * will contain number of bytes read. The {ACE_Handler::handle_read_dgram}
- * method will still be called. Return code of 0 means the IO will
- * complete proactively. Return code of -1 means there was an error, use
- * errno to get the error code.
- *
- * Scatter/gather is supported on WIN32 by using the {message_block->cont()}
- * method. Up to ACE_IOV_MAX {message_block}'s are supported. Upto
- * {message_block->size()} bytes will be read into each {message block} for
- * a total of {message_block->total_size()} bytes. All {message_block}'s
- * {wr_ptr}'s will be updated to reflect the added bytes for each
- * {message_block}
- *
- * Priority of the operation is specified by {priority}. On POSIX4-Unix,
- * this is supported. Works like {nice} in Unix. Negative values are not
- * allowed. 0 means priority of the operation same as the process
- * priority. 1 means priority of the operation is one less than
- * process. And so forth. On Win32, {priority} is a no-op.
- * {signal_number} is the POSIX4 real-time signal number to be used
- * for the operation. {signal_number} ranges from ACE_SIGRTMIN to
- * ACE_SIGRTMAX. This argument is a no-op on non-POSIX4 systems.
- */
- ssize_t recv (ACE_Message_Block *message_block,
- size_t &number_of_bytes_recvd,
- int flags,
- int protocol_family = PF_INET,
- const void *act = 0,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- /// Return the underlying implementation class.
- // (this should be protected...)
- virtual ACE_Asynch_Operation_Impl *implementation (void) const;
-
-protected:
- /// Implementation class that all methods will be forwarded to.
- ACE_Asynch_Read_Dgram_Impl *implementation_;
-
-public:
-/**
- * @class Result
- *
- * @brief This is the class which will be passed back to the
- * {handler} when the asynchronous read completes. This class
- * forwards all the methods to the implementation classes.
- *
- * This class has all the information necessary for the
- * {handler} to uniquiely identify the completion of the
- * asynchronous read.
- */
- class ACE_Export Result : public ACE_Asynch_Result
- {
-
- /// The concrete implementation result classes only construct this
- /// class.
- friend class ACE_POSIX_Asynch_Read_Dgram_Result;
- friend class ACE_WIN32_Asynch_Read_Dgram_Result;
-
- public:
-
- /// The number of bytes which were requested at the start of the
- /// asynchronous read.
- size_t bytes_to_read (void) const;
-
- /// Message block which contains the read data
- ACE_Message_Block *message_block (void) const;
-
- /// The flags used in the read
- int flags (void) const;
-
- /// The address of where the packet came from
- int remote_address (ACE_Addr& addr) const;
-
- /// I/O handle used for reading.
- ACE_HANDLE handle (void) const;
-
- /// Get the implementation class.
- ACE_Asynch_Read_Dgram_Result_Impl *implementation (void) const;
-
- protected:
- /// Constructor.
- Result (ACE_Asynch_Read_Dgram_Result_Impl *implementation);
-
- /// Destructor.
- virtual ~Result (void);
-
- /// The implementation class.
- ACE_Asynch_Read_Dgram_Result_Impl *implementation_;
- };
-};
-
-// Forward declarations
-class ACE_Asynch_Write_Dgram_Impl;
-class ACE_Asynch_Write_Dgram_Result_Impl;
-
-/**
- * @class ACE_Asynch_Write_Dgram
- *
- * @brief This class is a factory for starting off asynchronous writes
- * on a UDP socket. This class forwards all methods to its
- * implementation class.
- *
- * Once {open} is called, multiple asynchronous {writes}s can
- * started using this class. An ACE_Asynch_Write_Dgram::Result
- * will be passed back to the {handler} when the asynchronous
- * write completes through the
- * {ACE_Handler::handle_write_dgram} callback.
- */
-class ACE_Export ACE_Asynch_Write_Dgram : public ACE_Asynch_Operation
-{
-
-public:
- /// A do nothing constructor.
- ACE_Asynch_Write_Dgram (void);
-
- /// Destructor.
- virtual ~ACE_Asynch_Write_Dgram (void);
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call. If ({handle} == ACE_INVALID_HANDLE),
- * {ACE_Handler::handle} will be called on the {handler} to get the
- * correct handle.
- */
- int open (ACE_Handler &handler,
- ACE_HANDLE handle = ACE_INVALID_HANDLE,
- const void *completion_key = 0,
- ACE_Proactor *proactor = 0);
-
- /** This starts off an asynchronous send. Upto
- * {message_block->total_length()} will be sent. {message_block}'s
- * {rd_ptr} will be updated to reflect the sent bytes if the send operation
- * is successfully completed.
- * Return code of 1 means immediate success and {number_of_bytes_sent}
- * is updated to number of bytes sent. The {ACE_Handler::handle_write_dgram}
- * method will still be called. Return code of 0 means the IO will
- * complete proactively. Return code of -1 means there was an error, use
- * errno to get the error code.
- *
- * Scatter/gather is supported on WIN32 by using the {message_block->cont()}
- * method. Up to ACE_IOV_MAX {message_block}'s are supported. Upto
- * {message_block->length()} bytes will be sent from each {message block}
- * for a total of {message_block->total_length()} bytes. All
- * {message_block}'s {rd_ptr}'s will be updated to reflect the bytes sent
- * from each {message_block}.
- *
- * Priority of the operation is specified by {priority}. On POSIX4-Unix,
- * this is supported. Works like {nice} in Unix. Negative values are not
- * allowed. 0 means priority of the operation same as the process
- * priority. 1 means priority of the operation is one less than
- * process. And so forth. On Win32, this argument is a no-op.
- * {signal_number} is the POSIX4 real-time signal number to be used
- * for the operation. {signal_number} ranges from ACE_SIGRTMIN to
- * ACE_SIGRTMAX. This argument is a no-op on non-POSIX4 systems.
- */
- ssize_t send (ACE_Message_Block *message_block,
- size_t &number_of_bytes_sent,
- int flags,
- const ACE_Addr& remote_addr,
- const void *act = 0,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- /// Return the underlying implementation class.
- // (this should be protected...)
- virtual ACE_Asynch_Operation_Impl *implementation (void) const;
-
-protected:
- /// Implementation class that all methods will be forwarded to.
- ACE_Asynch_Write_Dgram_Impl *implementation_;
-
-public:
-/**
- * @class Result
- *
- * @brief This is that class which will be passed back to the
- * {handler} when the asynchronous write completes. This class
- * forwards all the methods to the implementation class.
- *
- * This class has all the information necessary for the
- * {handler} to uniquiely identify the completion of the
- * asynchronous write.
- */
- class ACE_Export Result : public ACE_Asynch_Result
- {
-
- /// The concrete implementation result classes only construct this
- /// class.
- friend class ACE_POSIX_Asynch_Write_Dgram_Result;
- friend class ACE_WIN32_Asynch_Write_Dgram_Result;
-
- public:
-
- /// The number of bytes which were requested at the start of the
- /// asynchronous write.
- size_t bytes_to_write (void) const;
-
- /// Message block which contains the sent data
- ACE_Message_Block *message_block (void) const;
-
- /// The flags using in the write
- int flags (void) const;
-
- /// I/O handle used for writing.
- ACE_HANDLE handle (void) const;
-
- /// Get the implementation class.
- ACE_Asynch_Write_Dgram_Result_Impl *implementation (void) const;
-
- protected:
- /// Constructor.
- Result (ACE_Asynch_Write_Dgram_Result_Impl *implementation);
-
- /// Destructor.
- virtual ~Result (void);
-
- /// Implementation class.
- ACE_Asynch_Write_Dgram_Result_Impl *implementation_;
- };
-};
-
-/**
- * @class ACE_Handler
- *
- * @brief This base class defines the interface for receiving the
- * results of asynchronous operations.
- *
- * Subclasses of this class will fill in appropriate methods.
- */
-class ACE_Export ACE_Handler
-{
-public:
- /// A do nothing constructor.
- ACE_Handler (void);
-
- /// A do nothing constructor which allows proactor to be set to \<p\>.
- ACE_Handler (ACE_Proactor *p);
-
- /// Virtual destruction.
- virtual ~ACE_Handler (void);
-
- /// This method will be called when an asynchronous read completes on
- /// a stream.
- virtual void handle_read_stream (const ACE_Asynch_Read_Stream::Result &result);
-
- /// This method will be called when an asynchronous write completes
- /// on a UDP socket.
- virtual void handle_write_dgram (const ACE_Asynch_Write_Dgram::Result &result);
-
- /// This method will be called when an asynchronous read completes on
- /// a UDP socket.
- virtual void handle_read_dgram (const ACE_Asynch_Read_Dgram::Result &result);
-
- /// This method will be called when an asynchronous write completes
- /// on a stream.
- virtual void handle_write_stream (const ACE_Asynch_Write_Stream::Result &result);
-
- /// This method will be called when an asynchronous read completes on
- /// a file.
- virtual void handle_read_file (const ACE_Asynch_Read_File::Result &result);
-
- /// This method will be called when an asynchronous write completes
- /// on a file.
- virtual void handle_write_file (const ACE_Asynch_Write_File::Result &result);
-
- /// This method will be called when an asynchronous accept completes.
- virtual void handle_accept (const ACE_Asynch_Accept::Result &result);
-
- /// This method will be called when an asynchronous connect completes.
- virtual void handle_connect (const ACE_Asynch_Connect::Result &result);
-
- /// This method will be called when an asynchronous transmit file
- /// completes.
- virtual void handle_transmit_file (const ACE_Asynch_Transmit_File::Result &result);
-
- /// Called when timer expires. {tv} was the requested time value and
- /// {act} is the ACT passed when scheduling the timer.
- virtual void handle_time_out (const ACE_Time_Value &tv,
- const void *act = 0);
-
- /**
- * This is method works with the {run_event_loop} of the
- * ACE_Proactor. A special {Wake_Up_Completion} is used to wake up
- * all the threads that are blocking for completions.
- */
- virtual void handle_wakeup (void);
-
- /// Get the proactor associated with this handler.
- ACE_Proactor *proactor (void);
-
- /// Set the proactor.
- void proactor (ACE_Proactor *p);
-
- /**
- * Get the I/O handle used by this {handler}. This method will be
- * called by the ACE_Asynch_* classes when an ACE_INVALID_HANDLE is
- * passed to {open}.
- */
- virtual ACE_HANDLE handle (void) const;
-
- /// Set the ACE_HANDLE value for this Handler.
- virtual void handle (ACE_HANDLE);
-
- /**
- * @class Proxy
- *
- * @brief The Proxy class acts as a proxy for dispatch of completions
- * to operations issued for the associated handler. It allows the handler
- * to be deleted while operations are outstanding. The proxy must be used
- * to get the ACE_Handler pointer for dispatching, and if it's 0, the
- * handler is no longer valid and the result should not be dispatched.
- */
- class ACE_Export Proxy
- {
- public:
- Proxy (ACE_Handler *handler) : handler_ (handler) {};
- void reset (void) { this->handler_ = 0; };
- ACE_Handler *handler (void) { return this->handler_; };
- private:
- ACE_Handler *handler_;
- };
- typedef ACE_Refcounted_Auto_Ptr<Proxy, ACE_SYNCH_MUTEX>
- Proxy_Ptr;
-
- Proxy_Ptr &proxy (void);
-
-protected:
- /// The proactor associated with this handler.
- ACE_Proactor *proactor_;
-
- /// The ACE_HANDLE in use with this handler.
- ACE_HANDLE handle_;
-
- /// Refers to proxy for this handler.
- ACE_Refcounted_Auto_Ptr<Proxy, ACE_SYNCH_MUTEX> proxy_;
-
- ACE_UNIMPLEMENTED_FUNC (ACE_Handler (const ACE_Handler &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Handler operator= (const ACE_Handler &))
-};
-
-// Forward declarations
-class ACE_INET_Addr;
-
-// Forward declarations
-template <class HANDLER>
-class ACE_Asynch_Acceptor;
-
-/**
- * @class ACE_Service_Handler
- *
- * @brief This base class defines the interface for the
- * ACE_Asynch_Acceptor to call into when new connection are
- * accepted.
- *
- * Subclasses of this class will fill in appropriate methods to
- * define application specific behavior.
- */
-class ACE_Export ACE_Service_Handler : public ACE_Handler
-{
-
- /// The Acceptor is the factory and therefore should have special
- /// privileges.
- friend class ACE_Asynch_Acceptor<ACE_Service_Handler>;
-
-public:
- /// A do nothing constructor.
- ACE_Service_Handler (void);
-
- /// Virtual destruction.
- virtual ~ACE_Service_Handler (void);
-
- /**
- * {open} is called by ACE_Asynch_Acceptor to initialize a new
- * instance of ACE_Service_Handler that has been created after the
- * new connection is accepted. The handle for the new connection is
- * passed along with the initial data that may have shown up.
- */
- virtual void open (ACE_HANDLE new_handle,
- ACE_Message_Block &message_block);
-
- // protected:
- // This should be corrected after the correct semantics of the
- // friend has been figured out.
-
- /// Called by ACE_Asynch_Acceptor to pass the addresses of the new
- /// connections.
- virtual void addresses (const ACE_INET_Addr &remote_address,
- const ACE_INET_Addr &local_address);
-
- /// Called by ACE_Asynch_Acceptor to pass the act.
- virtual void act (const void *);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_WIN32 || ACE_HAS_AIO_CALLS*/
-#include /**/ "ace/post.h"
-#endif /* ACE_ASYNCH_IO_H */
-
diff --git a/dep/include/ace/Asynch_IO_Impl.h b/dep/include/ace/Asynch_IO_Impl.h
deleted file mode 100644
index 087a292f813..00000000000
--- a/dep/include/ace/Asynch_IO_Impl.h
+++ /dev/null
@@ -1,814 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Asynch_IO_Impl.h
- *
- * $Id: Asynch_IO_Impl.h 80826 2008-03-04 14:51:23Z wotte $
- *
- *
- * This class contains asbtract base classes for all the concrete
- * implementation classes for the various asynchronous operations
- * that are used with the Praoctor.
- *
- *
- * @author Irfan Pyarali (irfan@cs.wustl.edu)
- * @author Tim Harrison (harrison@cs.wustl.edu)
- * @author Alexander Babu Arulanthu <alex@cs.wustl.edu>
- * @author Roger Tragin <r.tragin@computer.org>
- * @author Alexander Libman <alibman@ihug.com.au>
- */
-//=============================================================================
-
-#ifndef ACE_ASYNCH_IO_IMPL_H
-#define ACE_ASYNCH_IO_IMPL_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_WIN32_OVERLAPPED_IO) || defined (ACE_HAS_AIO_CALLS)
-// This only works on Win32 platforms and on Unix platforms supporting
-// aio calls.
-
-#include "ace/Asynch_IO.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declaration.
-class ACE_Proactor_Impl;
-
-/**
- * @class ACE_Asynch_Result_Impl
- *
- * @brief Abstract base class for the all the classes that provide
- * concrete implementations for ACE_Asynch_Result.
- *
- */
-class ACE_Export ACE_Asynch_Result_Impl
-{
-public:
- virtual ~ACE_Asynch_Result_Impl (void);
-
- /// Number of bytes transferred by the operation.
- virtual size_t bytes_transferred (void) const = 0;
-
- /// ACT associated with the operation.
- virtual const void *act (void) const = 0;
-
- /// Did the operation succeed?
- virtual int success (void) const = 0;
-
- /// This ACT is not the same as the ACT associated with the
- /// asynchronous operation.
- virtual const void *completion_key (void) const = 0;
-
- /// Error value if the operation fail.
- virtual u_long error (void) const = 0;
-
- /// Event associated with the OVERLAPPED structure.
- virtual ACE_HANDLE event (void) const = 0;
-
- /// This really make sense only when doing file I/O.
- virtual u_long offset (void) const = 0;
- virtual u_long offset_high (void) const = 0;
-
- /// Priority of the operation.
- virtual int priority (void) const = 0;
-
- /**
- * POSIX4 real-time signal number to be used for the
- * operation. <signal_number> ranges from SIGRTMIN to SIGRTMAX. By
- * default, SIGRTMIN is used to issue <aio_> calls. This is a no-op
- * on non-POSIX4 systems and returns 0.
- */
- virtual int signal_number (void) const = 0;
-
- // protected:
- //
- // These two should really be protected. But sometimes it
- // simplifies code to be able to "fake" a result. Use carefully.
- /// This is called when the asynchronous operation completes.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error = 0) = 0;
-
- /// Post @c this to the Proactor's completion port.
- virtual int post_completion (ACE_Proactor_Impl *proactor) = 0;
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Result_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Operation_Impl
- *
- * @brief Abstract base class for all the concrete implementation
- * classes that provide different implementations for the
- * ACE_Asynch_Operation.
- */
-class ACE_Export ACE_Asynch_Operation_Impl
-{
-public:
- virtual ~ACE_Asynch_Operation_Impl (void);
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call. If @a handle == ACE_INVALID_HANDLE,
- * ACE_Handler::handle() will be called on the proxied handler to get the
- * correct handle.
- */
- virtual int open (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- const void *completion_key,
- ACE_Proactor *proactor) = 0;
-
- /**
- * This cancels all pending accepts operations that were issued by
- * the calling thread. The function does not cancel asynchronous
- * operations issued by other threads.
- */
- virtual int cancel (void) = 0;
-
- // = Access methods.
-
- /// Return the underlying proactor.
- virtual ACE_Proactor* proactor (void) const = 0;
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Operation_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Read_Stream_Impl
- *
- * @brief Abstract base class for all the concrete implementation
- * classes that provide different implementations for the
- * ACE_Asynch_Read_Stream
- *
- */
-class ACE_Export ACE_Asynch_Read_Stream_Impl : public virtual ACE_Asynch_Operation_Impl
-{
-public:
- virtual ~ACE_Asynch_Read_Stream_Impl (void);
-
- /// This starts off an asynchronous read. Upto @a bytes_to_read will
- /// be read and stored in the @a message_block.
- virtual int read (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void *act,
- int priority,
- int signal_number) = 0;
-
-#if (defined (ACE_WIN32) && !defined (ACE_HAS_WINCE))
- /**
- * Same as above but with scatter support, through chaining of composite
- * message blocks using the continuation field.
- */
- virtual int readv (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void *act,
- int priority,
- int signal_number) = 0;
-#endif /* (defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)) */
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Read_Stream_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Read_Stream_Result_Impl
- *
- * @brief Abstract base class for all the concrete implementation
- * classes that provide different implementations for the
- * ACE_Asynch_Read_Stream::Result class.
- *
- */
-class ACE_Export ACE_Asynch_Read_Stream_Result_Impl : public virtual ACE_Asynch_Result_Impl
-{
-public:
- virtual ~ACE_Asynch_Read_Stream_Result_Impl (void);
-
- /// The number of bytes which were requested at the start of the
- /// asynchronous read.
- virtual size_t bytes_to_read (void) const = 0;
-
- /// Message block which contains the read data.
- virtual ACE_Message_Block &message_block (void) const = 0;
-
- /// I/O handle used for reading.
- virtual ACE_HANDLE handle (void) const = 0;
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Read_Stream_Result_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Write_Stream_Impl
- *
- * @brief Abstract base class for all the concrete implementation
- * classes that provide different implementations for the
- * ACE_Asynch_Write_Stream class.
- *
- */
-class ACE_Export ACE_Asynch_Write_Stream_Impl : public virtual ACE_Asynch_Operation_Impl
-{
-public:
- virtual ~ACE_Asynch_Write_Stream_Impl (void);
-
- /// This starts off an asynchronous write. Upto @a bytes_to_write
- /// will be written from the @a message_block.
- virtual int write (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void *act,
- int priority,
- int signal_number) = 0;
-
-#if (defined (ACE_WIN32) && !defined (ACE_HAS_WINCE))
- /**
- * Same as above but with gather support, through chaining of composite
- * message blocks using the continuation field.
- */
- virtual int writev (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void *act,
- int priority,
- int signal_number) = 0;
-#endif /* (defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)) */
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Write_Stream_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Write_Stream_Result_Impl
- *
- * @brief Abstract base class for all the concrete implementation
- * classes that provide different implementations for the
- * ACE_Asynch_Write_Stream::Result.
- *
- */
-class ACE_Export ACE_Asynch_Write_Stream_Result_Impl : public virtual ACE_Asynch_Result_Impl
-{
-public:
- virtual ~ACE_Asynch_Write_Stream_Result_Impl (void);
-
- /// The number of bytes which were requested at the start of the
- /// asynchronous write.
- virtual size_t bytes_to_write (void) const = 0;
-
- /// Message block that contains the data to be written.
- virtual ACE_Message_Block &message_block (void) const = 0;
-
- /// I/O handle used for writing.
- virtual ACE_HANDLE handle (void) const = 0;
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Write_Stream_Result_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Read_File_Impl
- *
- * @brief Abstract base class for all the concrete implementation
- * classes that provide different implementations for the
- * ACE_Asynch_Read_File::Result.
- *
- */
-class ACE_Export ACE_Asynch_Read_File_Impl : public virtual ACE_Asynch_Read_Stream_Impl
-{
-public:
- virtual ~ACE_Asynch_Read_File_Impl (void);
-
- /**
- * This starts off an asynchronous read. Upto @a bytes_to_read will
- * be read and stored in the @a message_block. The read will start
- * at @a offset from the beginning of the file.
- */
- virtual int read (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- u_long offset,
- u_long offset_high,
- const void *act,
- int priority,
- int signal_number) = 0;
-
-#if (defined (ACE_WIN32) && !defined (ACE_HAS_WINCE))
- /**
- * Same as above but with scatter support, through chaining of composite
- * message blocks using the continuation field.
- * @note In win32 Each data block payload must be at least the size of a system
- * memory page and must be aligned on a system memory page size boundary
- */
- virtual int readv (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- u_long offset,
- u_long offset_high,
- const void *act,
- int priority,
- int signal_number) = 0;
-#endif /* (defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)) */
-
- /// This starts off an asynchronous read. Upto @a bytes_to_read will
- /// be read and stored in the @a message_block.
- virtual int read (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void *act,
- int priority,
- int signal_number) = 0;
-
-#if (defined (ACE_WIN32) && !defined (ACE_HAS_WINCE))
- /**
- * Same as above but with scatter support, through chaining of composite
- * message blocks using the continuation field.
- */
- virtual int readv (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void *act,
- int priority,
- int signal_number) = 0;
-#endif /* (defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)) */
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Read_File_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Read_File_Result_Impl
- *
- * @brief This is the abstract base class for all the concrete
- * implementation classes for ACE_Asynch_Read_File::Result.
- *
- */
-class ACE_Export ACE_Asynch_Read_File_Result_Impl : public virtual ACE_Asynch_Read_Stream_Result_Impl
-{
-public:
- /// Destructor.
- virtual ~ACE_Asynch_Read_File_Result_Impl (void);
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Read_File_Result_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Write_File_Impl
- *
- * @brief Abstract base class for all the concrete implementation
- * classes that provide different implementations for the
- * ACE_Asynch_Write_File.
- *
- */
-class ACE_Export ACE_Asynch_Write_File_Impl : public virtual ACE_Asynch_Write_Stream_Impl
-{
-public:
- virtual ~ACE_Asynch_Write_File_Impl (void);
-
- /**
- * This starts off an asynchronous write. Upto @a bytes_to_write
- * will be write and stored in the @a message_block. The write will
- * start at @a offset from the beginning of the file.
- */
- virtual int write (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- u_long offset,
- u_long offset_high,
- const void *act,
- int priority,
- int signal_number) = 0;
-
-#if (defined (ACE_WIN32) && !defined (ACE_HAS_WINCE))
- /**
- * Same as above but with gather support, through chaining of composite
- * message blocks using the continuation field.
- * @note In win32 Each data block payload must be at least the size of a system
- * memory page and must be aligned on a system memory page size boundary
- */
- virtual int writev (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- u_long offset,
- u_long offset_high,
- const void *act,
- int priority,
- int signal_number) = 0;
-#endif /* (defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)) */
-
- /// This starts off an asynchronous write. Upto @a bytes_to_write
- /// will be written from the @a message_block.
- virtual int write (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void *act,
- int priority,
- int signal_number) = 0;
-
-#if (defined (ACE_WIN32) && !defined (ACE_HAS_WINCE))
- /**
- * Same as above but with gather support, through chaining of composite
- * message blocks using the continuation field.
- */
- virtual int writev (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void *act,
- int priority,
- int signal_number) = 0;
-#endif /* (defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)) */
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Write_File_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Write_File_Result_Impl
- *
- * @brief This is the abstract base class for all the concrete
- * implementation classes that provide different implementations
- * for the ACE_Asynch_Write_File::Result.
- *
- */
-class ACE_Export ACE_Asynch_Write_File_Result_Impl : public virtual ACE_Asynch_Write_Stream_Result_Impl
-{
-public:
- virtual ~ACE_Asynch_Write_File_Result_Impl (void);
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Write_File_Result_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Accept_Impl
- *
- * @brief Abstract base class for all the concrete implementation
- * classes that provide different implementations for the
- * ACE_Asynch_Accept.
- *
- */
-class ACE_Export ACE_Asynch_Accept_Impl : public virtual ACE_Asynch_Operation_Impl
-{
-public:
- virtual ~ACE_Asynch_Accept_Impl (void);
-
- /**
- * This starts off an asynchronous accept. The asynchronous accept
- * call also allows any initial data to be returned to the
- * <handler>. Upto @a bytes_to_read will be read and stored in the
- * @a message_block. The @a accept_handle will be used for the
- * <accept> call. If (@a accept_handle == INVALID_HANDLE), a new
- * handle will be created.
- *
- * @a message_block must be specified. This is because the address of
- * the new connection is placed at the end of this buffer.
- */
- virtual int accept (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- ACE_HANDLE accept_handle,
- const void *act,
- int priority,
- int signal_number,
- int addr_family) = 0;
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Accept_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Accept_Result_Impl
- *
- * @brief Abstract base class for all the concrete implementation
- * classes that provide different implementations for the
- * ACE_Asynch_Accept.
- *
- */
-class ACE_Export ACE_Asynch_Accept_Result_Impl : public virtual ACE_Asynch_Result_Impl
-{
-public:
- virtual ~ACE_Asynch_Accept_Result_Impl (void);
-
- /// The number of bytes which were requested at the start of the
- /// asynchronous accept.
- virtual size_t bytes_to_read (void) const = 0;
-
- /// Message block which contains the read data.
- virtual ACE_Message_Block &message_block (void) const = 0;
-
- /// I/O handle used for accepting new connections.
- virtual ACE_HANDLE listen_handle (void) const = 0;
-
- /// I/O handle for the new connection.
- virtual ACE_HANDLE accept_handle (void) const = 0;
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Accept_Result_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Connect_Impl
- *
- * @brief Abstract base class for all the concrete implementation
- * classes that provide different implementations for the
- * ACE_Asynch_Connect.
- *
- */
-class ACE_Export ACE_Asynch_Connect_Impl : public virtual ACE_Asynch_Operation_Impl
-{
-public:
- virtual ~ACE_Asynch_Connect_Impl (void);
-
- /**
- * This starts off an asynchronous connect
- */
- virtual int connect (ACE_HANDLE connect_handle,
- const ACE_Addr & remote_sap,
- const ACE_Addr & local_sap,
- int reuse_addr,
- const void *act,
- int priority,
- int signal_number) = 0;
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Connect_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Connect_Result_Impl
- *
- * @brief Abstract base class for all the concrete implementation
- * classes that provide different implementations for the
- * ACE_Asynch_Connect.
- *
- */
-class ACE_Export ACE_Asynch_Connect_Result_Impl : public virtual ACE_Asynch_Result_Impl
-{
-public:
- virtual ~ACE_Asynch_Connect_Result_Impl (void);
-
- /// I/O handle for the connection.
- virtual ACE_HANDLE connect_handle (void) const = 0;
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Connect_Result_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Transmit_File_Impl
- *
- * @brief Abstract base class for all the concrete implementation
- * classes that provide different implementations for the
- * ACE_Asynch_Transmit_File.
- *
- */
-class ACE_Asynch_Transmit_File_Impl : public virtual ACE_Asynch_Operation_Impl
-{
-public:
- virtual ~ACE_Asynch_Transmit_File_Impl (void);
-
- /// This starts off an asynchronous transmit file.
- virtual int transmit_file (ACE_HANDLE file,
- ACE_Asynch_Transmit_File::Header_And_Trailer *header_and_trailer,
- size_t bytes_to_write,
- u_long offset,
- u_long offset_high,
- size_t bytes_per_send,
- u_long flags,
- const void *act,
- int priority,
- int signal_number) = 0;
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Transmit_File_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Transmit_File_Result_Impl
- *
- * @brief Abstract base class for all the concrete implementation
- * classes that provide different implementations for the
- * ACE_Asynch_Transmit_File::Result.
- *
- */
-class ACE_Export ACE_Asynch_Transmit_File_Result_Impl : public virtual ACE_Asynch_Result_Impl
-{
-public:
- virtual ~ACE_Asynch_Transmit_File_Result_Impl (void);
-
- /// Socket used for transmitting the file.
- virtual ACE_HANDLE socket (void) const = 0;
-
- /// File from which the data is read.
- virtual ACE_HANDLE file (void) const = 0;
-
- /// Header and trailer data associated with this transmit file.
- virtual ACE_Asynch_Transmit_File::Header_And_Trailer *header_and_trailer (void) const = 0;
-
- /// The number of bytes which were requested at the start of the
- /// asynchronous transmit file.
- virtual size_t bytes_to_write (void) const = 0;
-
- /// Number of bytes per send requested at the start of the transmit
- /// file.
- virtual size_t bytes_per_send (void) const = 0;
-
- /// Flags which were passed into transmit file.
- virtual u_long flags (void) const = 0;
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Transmit_File_Result_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Read_Dgram_Impl
- *
- * @brief Abstract base class for all the concrete implementation
- * classes that provide different implementations for the
- * ACE_Asynch_Read_Dgram
- *
- */
-class ACE_Export ACE_Asynch_Read_Dgram_Impl : public virtual ACE_Asynch_Operation_Impl
-{
-public:
- virtual ~ACE_Asynch_Read_Dgram_Impl (void);
-
- /** This starts off an asynchronous read. Upto
- * <message_block->total_size()> will be read and stored in the
- * @a message_block. @a message_block's <wr_ptr> will be updated to reflect
- * the added bytes if the read operation is successful completed.
- * Return code of 1 means immediate success and <number_of_bytes_recvd>
- * will contain number of bytes read. The <ACE_Handler::handle_read_dgram>
- * method will still be called. Return code of 0 means the IO will
- * complete proactively. Return code of -1 means there was an error, use
- * errno to get the error code.
- *
- * Scatter/gather is supported on WIN32 by using the <message_block->cont()>
- * method. Up to ACE_IOV_MAX @a message_block's are supported. Upto
- * <message_block->size()> bytes will be read into each <message block> for
- * a total of <message_block->total_size()> bytes. All @a message_block's
- * <wr_ptr>'s will be updated to reflect the added bytes for each
- * @a message_block
- *
- * Priority of the operation is specified by @a priority. On POSIX4-Unix,
- * this is supported. Works like <nice> in Unix. Negative values are not
- * allowed. 0 means priority of the operation same as the process
- * priority. 1 means priority of the operation is one less than
- * process. And so forth. On Win32, @a priority is a no-op.
- * @a signal_number is the POSIX4 real-time signal number to be used
- * for the operation. @a signal_number ranges from ACE_SIGRTMIN to
- * ACE_SIGRTMAX. This argument is a no-op on non-POSIX4 systems.
- */
- virtual ssize_t recv (ACE_Message_Block *message_block,
- size_t &number_of_bytes_recvd,
- int flags,
- int protocol_family,
- const void *act,
- int priority,
- int signal_number) = 0;
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Read_Dgram_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Read_Dgram_Result_Impl
- *
- * @brief Abstract base class for all the concrete implementation
- * classes that provide different implementations for the
- * ACE_Asynch_Read_Dgram::Result class.
- *
- */
-class ACE_Export ACE_Asynch_Read_Dgram_Result_Impl : public virtual ACE_Asynch_Result_Impl
-{
-public:
- virtual ~ACE_Asynch_Read_Dgram_Result_Impl (void);
-
- /// Message block which contains the read data
- virtual ACE_Message_Block *message_block (void) const = 0;
-
- /// The number of bytes which were requested at the start of the
- /// asynchronous read.
- virtual size_t bytes_to_read (void) const = 0;
-
- /// The address of where the packet came from
- virtual int remote_address (ACE_Addr& addr) const = 0;
-
- /// The flags used in the read
- virtual int flags (void) const = 0;
-
- /// I/O handle used for reading.
- virtual ACE_HANDLE handle (void) const = 0;
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Read_Dgram_Result_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Write_Dgram_Impl
- *
- * @brief Abstract base class for all the concrete implementation
- * classes that provide different implementations for the
- * ACE_Asynch_Write_Dgram class.
- *
- */
-class ACE_Export ACE_Asynch_Write_Dgram_Impl : public virtual ACE_Asynch_Operation_Impl
-{
-public:
- virtual ~ACE_Asynch_Write_Dgram_Impl (void);
-
- /** This starts off an asynchronous send. Upto
- * <message_block->total_length()> will be sent. @a message_block's
- * <rd_ptr> will be updated to reflect the sent bytes if the send operation
- * is successful completed.
- * Return code of 1 means immediate success and <number_of_bytes_sent>
- * is updated to number of bytes sent. The <ACE_Handler::handle_write_dgram>
- * method will still be called. Return code of 0 means the IO will
- * complete proactively. Return code of -1 means there was an error, use
- * errno to get the error code.
- *
- * Scatter/gather is supported on WIN32 by using the <message_block->cont()>
- * method. Up to ACE_IOV_MAX @a message_block's are supported. Upto
- * <message_block->length()> bytes will be sent from each <message block>
- * for a total of <message_block->total_length()> bytes. All
- * @a message_block's <rd_ptr>'s will be updated to reflect the bytes sent
- * from each @a message_block.
- *
- * Priority of the operation is specified by @a priority. On POSIX4-Unix,
- * this is supported. Works like <nice> in Unix. Negative values are not
- * allowed. 0 means priority of the operation same as the process
- * priority. 1 means priority of the operation is one less than
- * process. And so forth. On Win32, this argument is a no-op.
- * @a signal_number is the POSIX4 real-time signal number to be used
- * for the operation. @a signal_number ranges from ACE_SIGRTMIN to
- * ACE_SIGRTMAX. This argument is a no-op on non-POSIX4 systems.
- */
- virtual ssize_t send (ACE_Message_Block *message_block,
- size_t &number_of_bytes_sent,
- int flags,
- const ACE_Addr &addr,
- const void *act,
- int priority,
- int signal_number) = 0;
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Write_Dgram_Impl (void);
-};
-
-/**
- * @class ACE_Asynch_Write_Dgram_Result_Impl
- *
- * @brief Abstract base class for all the concrete implementation
- * classes that provide different implementations for the
- * ACE_Asynch_Write_Dgram::Result class.
- *
- */
-class ACE_Export ACE_Asynch_Write_Dgram_Result_Impl : public virtual ACE_Asynch_Result_Impl
-{
-public:
- virtual ~ACE_Asynch_Write_Dgram_Result_Impl (void);
-
- /// The number of bytes which were requested at the start of the
- /// asynchronous write.
- virtual size_t bytes_to_write (void) const = 0;
-
- /// Message block which contains the sent data
- virtual ACE_Message_Block *message_block (void) const = 0;
-
- /// The flags using in the write
- virtual int flags (void) const = 0;
-
- /// I/O handle used for writing.
- virtual ACE_HANDLE handle (void) const = 0;
-
-protected:
- /// Do-nothing constructor.
- ACE_Asynch_Write_Dgram_Result_Impl (void);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Asynch_IO_Impl.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_WIN32_OVERLAPPED_IO || ACE_HAS_AIO_CALLS */
-#include /**/ "ace/post.h"
-#endif /* ACE_ASYNCH_IO_IMPL_H */
-
diff --git a/dep/include/ace/Asynch_IO_Impl.inl b/dep/include/ace/Asynch_IO_Impl.inl
deleted file mode 100644
index 8e37772f5c9..00000000000
--- a/dep/include/ace/Asynch_IO_Impl.inl
+++ /dev/null
@@ -1,105 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Asynch_IO_Impl.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Asynch_Result_Impl::ACE_Asynch_Result_Impl (void)
-{
-}
-
-ACE_INLINE
-ACE_Asynch_Operation_Impl::ACE_Asynch_Operation_Impl (void)
-{
-}
-
-ACE_INLINE
-ACE_Asynch_Read_Stream_Impl::ACE_Asynch_Read_Stream_Impl (void)
- : ACE_Asynch_Operation_Impl ()
-{
-}
-
-ACE_INLINE
-ACE_Asynch_Read_Stream_Result_Impl::ACE_Asynch_Read_Stream_Result_Impl (void)
- : ACE_Asynch_Result_Impl ()
-{
-}
-
-ACE_INLINE
-ACE_Asynch_Write_Stream_Impl::ACE_Asynch_Write_Stream_Impl (void)
- : ACE_Asynch_Operation_Impl ()
-{
-}
-
-ACE_INLINE
-ACE_Asynch_Write_Stream_Result_Impl::ACE_Asynch_Write_Stream_Result_Impl (void)
- : ACE_Asynch_Result_Impl ()
-{
-}
-
-ACE_INLINE
-ACE_Asynch_Read_File_Impl::ACE_Asynch_Read_File_Impl (void)
- : ACE_Asynch_Operation_Impl (),
- ACE_Asynch_Read_Stream_Impl ()
-{
-}
-
-ACE_INLINE
-ACE_Asynch_Read_File_Result_Impl::ACE_Asynch_Read_File_Result_Impl (void)
- : ACE_Asynch_Result_Impl (),
- ACE_Asynch_Read_Stream_Result_Impl ()
-{
-}
-
-ACE_INLINE
-ACE_Asynch_Write_File_Impl::ACE_Asynch_Write_File_Impl (void)
- : ACE_Asynch_Operation_Impl (),
- ACE_Asynch_Write_Stream_Impl ()
-{
-}
-
-ACE_INLINE
-ACE_Asynch_Write_File_Result_Impl::ACE_Asynch_Write_File_Result_Impl (void)
- : ACE_Asynch_Result_Impl (),
- ACE_Asynch_Write_Stream_Result_Impl ()
-{
-}
-
-ACE_INLINE
-ACE_Asynch_Accept_Impl::ACE_Asynch_Accept_Impl (void)
- : ACE_Asynch_Operation_Impl ()
-{
-}
-
-ACE_INLINE
-ACE_Asynch_Accept_Result_Impl::ACE_Asynch_Accept_Result_Impl (void)
- : ACE_Asynch_Result_Impl ()
-{
-}
-
-ACE_INLINE
-ACE_Asynch_Connect_Impl::ACE_Asynch_Connect_Impl (void)
- : ACE_Asynch_Operation_Impl ()
-{
-}
-
-ACE_INLINE
-ACE_Asynch_Connect_Result_Impl::ACE_Asynch_Connect_Result_Impl (void)
- : ACE_Asynch_Result_Impl ()
-{
-}
-
-ACE_INLINE
-ACE_Asynch_Transmit_File_Impl::ACE_Asynch_Transmit_File_Impl (void)
- : ACE_Asynch_Operation_Impl ()
-{
-}
-
-ACE_INLINE
-ACE_Asynch_Transmit_File_Result_Impl::ACE_Asynch_Transmit_File_Result_Impl (void)
- : ACE_Asynch_Result_Impl ()
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Asynch_Pseudo_Task.h b/dep/include/ace/Asynch_Pseudo_Task.h
deleted file mode 100644
index 4c5a94feca4..00000000000
--- a/dep/include/ace/Asynch_Pseudo_Task.h
+++ /dev/null
@@ -1,74 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Asynch_Pseudo_Task.h
- *
- * $Id: Asynch_Pseudo_Task.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Alexander Libman <alibman@ihug.com.au>
- */
-//=============================================================================
-
-#ifndef ACE_ASYNCH_PSEUDO_TASK_H
-#define ACE_ASYNCH_PSEUDO_TASK_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Reactor.h"
-#include "ace/Select_Reactor.h"
-#include "ace/Task.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/*
- * Specialization hook to replace the Reactor with the
- * concrete Reactor implementation, e.g., select_st,
- * select_mt etc.
- */
-//@@ REACTOR_SPL_INCLUDE_FORWARD_DECL_ADD_HOOK
-
-/**
- * @class ACE_Asynch_Pseudo_Task
- *
- */
-class ACE_Export ACE_Asynch_Pseudo_Task : public ACE_Task<ACE_NULL_SYNCH>
-{
-public:
- ACE_Asynch_Pseudo_Task();
- virtual ~ACE_Asynch_Pseudo_Task();
-
- int start (void);
- int stop (void);
-
- int register_io_handler (ACE_HANDLE handle,
- ACE_Event_Handler *handler,
- ACE_Reactor_Mask mask,
- int flg_suspend);
-
- int remove_io_handler (ACE_HANDLE handle);
- int remove_io_handler (ACE_Handle_Set &set);
- int resume_io_handler (ACE_HANDLE handle);
- int suspend_io_handler (ACE_HANDLE handle);
-
-protected:
- virtual int svc (void);
-
- /// Should be initialized before reactor_
- ACE_Select_Reactor select_reactor_;
-
- ACE_Reactor reactor_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_ASYNCH_PSEUDO_TASK_H */
-
diff --git a/dep/include/ace/Atomic_Op.h b/dep/include/ace/Atomic_Op.h
deleted file mode 100644
index c750999af4c..00000000000
--- a/dep/include/ace/Atomic_Op.h
+++ /dev/null
@@ -1,261 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Atomic_Op.h
- *
- * $Id: Atomic_Op.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_ATOMIC_OP_H
-#define ACE_ATOMIC_OP_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Thread_Mutex.h"
-
-// Include the templates here.
-#include "ace/Atomic_Op_T.h"
-
-// Determine whether builtin atomic op support is
-// available on this platform.
-#if defined (ACE_HAS_THREADS)
-# if defined (WIN32)
-# if defined (ACE_HAS_INTRINSIC_INTERLOCKED)
-# define ACE_HAS_BUILTIN_ATOMIC_OP
-# endif /* ACE_HAS_INTRINSIC_INTERLOCKED */
-# if defined (ACE_HAS_INTERLOCKED_EXCHANGEADD)
-# define ACE_HAS_BUILTIN_ATOMIC_OP
-# else /* ACE_HAS_INTERLOCKED_EXCHANGEADD */
- // Inline assembly emulation of InterlockedExchangeAdd
- // is currently only implemented for MSVC (x86 only) and Borland.
-# if (defined (_MSC_VER) && defined (_M_IX86)) || defined (__BORLANDC__)
-# define ACE_HAS_BUILTIN_ATOMIC_OP
-# endif /* _MSC_VER || __BORLANDC__ */
-# endif /* ACE_HAS_INTERLOCKED_EXCHANGEADD */
-# elif defined (ACE_HAS_INTEL_ASSEMBLY)
-# define ACE_HAS_BUILTIN_ATOMIC_OP
-# endif /* WIN32 */
-#endif /* ACE_HAS_THREADS */
-
-#if defined (ACE_HAS_BUILTIN_ATOMIC_OP)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Atomic_Op<ACE_Thread_Mutex, long>
- *
- * @brief Specialization of ACE_Atomic_Op for platforms that
- * support atomic integer operations.
- *
- * Specialization of ACE_Atomic_Op for platforms that support atomic
- * integer operations.
- */
-template<>
-class ACE_Export ACE_Atomic_Op<ACE_Thread_Mutex, long>
-{
-public:
- /// Initialize <value_> to 0.
- ACE_Atomic_Op (void);
-
- /// Initialize <value_> to c.
- ACE_Atomic_Op (long c);
-
- /// Manage copying...
- ACE_Atomic_Op (const ACE_Atomic_Op<ACE_Thread_Mutex, long> &c);
-
- /// Atomically pre-increment <value_>.
- long operator++ (void);
-
- /// Atomically post-increment <value_>.
- long operator++ (int);
-
- /// Atomically increment <value_> by rhs.
- long operator+= (long rhs);
-
- /// Atomically pre-decrement <value_>.
- long operator-- (void);
-
- /// Atomically post-decrement <value_>.
- long operator-- (int);
-
- /// Atomically decrement <value_> by rhs.
- long operator-= (long rhs);
-
- /// Atomically compare <value_> with rhs.
- bool operator== (long rhs) const;
-
- /// Atomically compare <value_> with rhs.
- bool operator!= (long rhs) const;
-
- /// Atomically check if <value_> greater than or equal to rhs.
- bool operator>= (long rhs) const;
-
- /// Atomically check if <value_> greater than rhs.
- bool operator> (long rhs) const;
-
- /// Atomically check if <value_> less than or equal to rhs.
- bool operator<= (long rhs) const;
-
- /// Atomically check if <value_> less than rhs.
- bool operator< (long rhs) const;
-
- /// Atomically assign rhs to <value_>.
- ACE_Atomic_Op<ACE_Thread_Mutex, long> &operator= (long rhs);
-
- /// Atomically assign <rhs> to <value_>.
- ACE_Atomic_Op<ACE_Thread_Mutex, long> &operator= (const ACE_Atomic_Op<ACE_Thread_Mutex, long> &rhs);
-
- /// Explicitly return <value_>.
- long value (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Explicitly return <value_> (by reference).
- volatile long &value_i (void);
-
- // ACE_ALLOC_HOOK_DECLARE;
- // Declare the dynamic allocation hooks.
-
- /// Used during ACE object manager initialization to optimize the fast
- /// atomic op implementation according to the number of CPUs.
- static void init_functions (void);
-
-private:
-
- // This function cannot be supported by this template specialization.
- // If you need access to an underlying lock, use the ACE_Atomic_Op_Ex
- // template instead.
- ACE_Thread_Mutex &mutex (void);
-
-private:
-
- /// Current object decorated by the atomic op.
- volatile long value_;
-
- // Pointers to selected atomic op implementations.
- static long (*increment_fn_) (volatile long *);
- static long (*decrement_fn_) (volatile long *);
- static long (*exchange_fn_) (volatile long *, long);
- static long (*exchange_add_fn_) (volatile long *, long);
-};
-
-/**
- * @class ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>
- *
- * @brief Specialization of ACE_Atomic_Op for platforms that
- * support atomic integer operations.
- *
- * Specialization of ACE_Atomic_Op for platforms that support atomic
- * integer operations.
- */
-template<>
-class ACE_Export ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>
-{
-public:
- /// Initialize <value_> to 0.
- ACE_Atomic_Op (void);
-
- /// Initialize <value_> to c.
- ACE_Atomic_Op (unsigned long c);
-
- /// Manage copying...
- ACE_Atomic_Op (const ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long> &c);
-
- /// Atomically pre-increment <value_>.
- unsigned long operator++ (void);
-
- /// Atomically post-increment <value_>.
- unsigned long operator++ (int);
-
- /// Atomically increment <value_> by rhs.
- unsigned long operator+= (unsigned long rhs);
-
- /// Atomically pre-decrement <value_>.
- unsigned long operator-- (void);
-
- /// Atomically post-decrement <value_>.
- unsigned long operator-- (int);
-
- /// Atomically decrement <value_> by rhs.
- unsigned long operator-= (unsigned long rhs);
-
- /// Atomically compare <value_> with rhs.
- bool operator== (unsigned long rhs) const;
-
- /// Atomically compare <value_> with rhs.
- bool operator!= (unsigned long rhs) const;
-
- /// Atomically check if <value_> greater than or equal to rhs.
- bool operator>= (unsigned long rhs) const;
-
- /// Atomically check if <value_> greater than rhs.
- bool operator> (unsigned long rhs) const;
-
- /// Atomically check if <value_> less than or equal to rhs.
- bool operator<= (unsigned long rhs) const;
-
- /// Atomically check if <value_> less than rhs.
- bool operator< (unsigned long rhs) const;
-
- /// Atomically assign rhs to <value_>.
- ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long> &operator= (unsigned long rhs);
-
- /// Atomically assign <rhs> to <value_>.
- ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long> &operator= (const ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long> &rhs);
-
- /// Explicitly return <value_>.
- unsigned long value (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Explicitly return <value_> (by reference).
- volatile unsigned long &value_i (void);
-
- // ACE_ALLOC_HOOK_DECLARE;
- // Declare the dynamic allocation hooks.
-
- /// Used during ACE object manager initialization to optimize the fast
- /// atomic op implementation according to the number of CPUs.
- static void init_functions (void);
-
-private:
-
- // This function cannot be supported by this template specialization.
- // If you need access to an underlying lock, use the ACE_Atomic_Op_Ex
- // template instead.
- ACE_Thread_Mutex &mutex (void);
-
-private:
-
- /// Current object decorated by the atomic op.
- volatile unsigned long value_;
-
- // Pointers to selected atomic op implementations.
- static long (*increment_fn_) (volatile long *);
- static long (*decrement_fn_) (volatile long *);
- static long (*exchange_fn_) (volatile long *, long);
- static long (*exchange_add_fn_) (volatile long *, long);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_BUILTIN_ATOMIC_OP */
-
-#if defined (__ACE_INLINE__)
-#include "ace/Atomic_Op.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /*ACE_ATOMIC_OP_H*/
-
diff --git a/dep/include/ace/Atomic_Op.inl b/dep/include/ace/Atomic_Op.inl
deleted file mode 100644
index 8735fa8d85a..00000000000
--- a/dep/include/ace/Atomic_Op.inl
+++ /dev/null
@@ -1,334 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Atomic_Op.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#if defined (ACE_HAS_BUILTIN_ATOMIC_OP)
-
-#if defined (ACE_HAS_INTRINSIC_INTERLOCKED)
-# include "ace/os_include/os_intrin.h"
-
-#pragma intrinsic (_InterlockedExchange, _InterlockedExchangeAdd, _InterlockedIncrement, _InterlockedDecrement)
-#endif /* ACE_HAS_INTRINSIC_INTERLOCKED */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::ACE_Atomic_Op (void)
- : value_ (0)
-{
-}
-
-ACE_INLINE
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::ACE_Atomic_Op (long c)
- : value_ (c)
-{
-}
-
-ACE_INLINE
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::ACE_Atomic_Op (
- const ACE_Atomic_Op<ACE_Thread_Mutex, long> &rhs)
- : value_ (rhs.value_)
-{
-}
-
-ACE_INLINE long
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::operator++ (void)
-{
-#if defined (ACE_HAS_INTRINSIC_INTERLOCKED)
- return ::_InterlockedIncrement (const_cast<long *> (&this->value_));
-#elif defined (WIN32)
- return ::InterlockedIncrement (const_cast<long *> (&this->value_));
-#else /* WIN32 */
- return (*increment_fn_) (&this->value_);
-#endif /* WIN32 */
-}
-
-ACE_INLINE long
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::operator++ (int)
-{
- return ++*this - 1;
-}
-
-ACE_INLINE long
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::operator-- (void)
-{
-#if defined (ACE_HAS_INTRINSIC_INTERLOCKED)
- return ::_InterlockedDecrement (const_cast<long *> (&this->value_));
-#elif defined (WIN32)
- return ::InterlockedDecrement (const_cast<long *> (&this->value_));
-#else /* WIN32 */
- return (*decrement_fn_) (&this->value_);
-#endif /* WIN32 */
-}
-
-ACE_INLINE long
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::operator-- (int)
-{
- return --*this + 1;
-}
-
-ACE_INLINE long
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::operator+= (long rhs)
-{
-#if defined (ACE_HAS_INTRINSIC_INTERLOCKED)
- return ::_InterlockedExchangeAdd (const_cast<long *> (&this->value_),
- rhs) + rhs;
-#elif defined (WIN32) && defined (ACE_HAS_INTERLOCKED_EXCHANGEADD)
- return ::InterlockedExchangeAdd (const_cast<long *> (&this->value_),
- rhs) + rhs;
-#else /* WIN32 && ACE_HAS_INTERLOCKED_EXCHANGEADD */
- return (*exchange_add_fn_) (&this->value_, rhs) + rhs;
-#endif /* WIN32 && ACE_HAS_INTERLOCKED_EXCHANGEADD */
-}
-
-ACE_INLINE long
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::operator-= (long rhs)
-{
-#if defined (ACE_HAS_INTRINSIC_INTERLOCKED)
- return ::_InterlockedExchangeAdd (const_cast<long *> (&this->value_),
- -rhs) - rhs;
-#elif defined (WIN32) && defined (ACE_HAS_INTERLOCKED_EXCHANGEADD)
- return ::InterlockedExchangeAdd (const_cast<long *> (&this->value_),
- -rhs) - rhs;
-#else /* WIN32 && ACE_HAS_INTERLOCKED_EXCHANGEADD */
- return (*exchange_add_fn_) (&this->value_, -rhs) - rhs;
-#endif /* WIN32 && ACE_HAS_INTERLOCKED_EXCHANGEADD */
-}
-
-ACE_INLINE bool
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::operator== (long rhs) const
-{
- return (this->value_ == rhs);
-}
-
-ACE_INLINE bool
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::operator!= (long rhs) const
-{
- return (this->value_ != rhs);
-}
-
-ACE_INLINE bool
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::operator>= (long rhs) const
-{
- return (this->value_ >= rhs);
-}
-
-ACE_INLINE bool
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::operator> (long rhs) const
-{
- return (this->value_ > rhs);
-}
-
-ACE_INLINE bool
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::operator<= (long rhs) const
-{
- return (this->value_ <= rhs);
-}
-
-ACE_INLINE bool
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::operator< (long rhs) const
-{
- return (this->value_ < rhs);
-}
-
-ACE_INLINE ACE_Atomic_Op<ACE_Thread_Mutex, long> &
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::operator= (long rhs)
-{
-#if defined (ACE_HAS_INTRINSIC_INTERLOCKED)
- ::_InterlockedExchange (const_cast<long *> (&this->value_), rhs);
-#elif defined (WIN32)
- ::InterlockedExchange (const_cast<long *> (&this->value_), rhs);
-#else /* WIN32 */
- (*exchange_fn_) (&this->value_, rhs);
-#endif /* WIN32 */
- return *this;
-}
-
-ACE_INLINE ACE_Atomic_Op<ACE_Thread_Mutex, long> &
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::operator= (
- const ACE_Atomic_Op<ACE_Thread_Mutex, long> &rhs)
-{
-#if defined (ACE_HAS_INTRINSIC_INTERLOCKED)
- ::_InterlockedExchange (const_cast<long *> (&this->value_), rhs.value_);
-#elif defined (WIN32)
- ::InterlockedExchange (const_cast<long *> (&this->value_), rhs.value_);
-#else /* WIN32 */
- (*exchange_fn_) (&this->value_, rhs.value_);
-#endif /* WIN32 */
- return *this;
-}
-
-ACE_INLINE long
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::value (void) const
-{
- return this->value_;
-}
-
-ACE_INLINE volatile long &
-ACE_Atomic_Op<ACE_Thread_Mutex, long>::value_i (void)
-{
- return this->value_;
-}
-
-ACE_INLINE
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::ACE_Atomic_Op (void)
- : value_ (0)
-{
-}
-
-ACE_INLINE
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::ACE_Atomic_Op (unsigned long c)
- : value_ (c)
-{
-}
-
-ACE_INLINE
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::ACE_Atomic_Op (
- const ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long> &rhs)
- : value_ (rhs.value_)
-{
-}
-
-ACE_INLINE unsigned long
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::operator++ (void)
-{
-#if defined (ACE_HAS_INTRINSIC_INTERLOCKED)
- return static_cast<unsigned long> (::_InterlockedIncrement (const_cast<long *> (reinterpret_cast<volatile long *>(&this->value_))));
-#elif defined (WIN32)
- return static_cast<unsigned long> (::InterlockedIncrement (const_cast<long *> (reinterpret_cast<volatile long *>(&this->value_))));
-#else /* WIN32 */
- return static_cast<unsigned long> ((*increment_fn_) (reinterpret_cast<volatile long *> (&this->value_)));
-#endif /* WIN32 */
-}
-
-ACE_INLINE unsigned long
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::operator++ (int)
-{
- return ++*this - 1;
-}
-
-ACE_INLINE unsigned long
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::operator-- (void)
-{
-#if defined (ACE_HAS_INTRINSIC_INTERLOCKED)
- return static_cast<unsigned long> (::_InterlockedDecrement (const_cast<long *> (reinterpret_cast<volatile long *>(&this->value_))));
-#elif defined (WIN32)
- return static_cast<unsigned long> (::InterlockedDecrement (const_cast<long *> (reinterpret_cast<volatile long *>(&this->value_))));
-#else /* WIN32 */
- return static_cast<unsigned long> ((*decrement_fn_) (reinterpret_cast<volatile long *> (&this->value_)));
-#endif /* WIN32 */
-}
-
-ACE_INLINE unsigned long
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::operator-- (int)
-{
- return --*this + 1;
-}
-
-ACE_INLINE unsigned long
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::operator+= (unsigned long rhs)
-{
-#if defined (ACE_HAS_INTRINSIC_INTERLOCKED)
- return static_cast<unsigned long> (::_InterlockedExchangeAdd (const_cast<long *> (reinterpret_cast <volatile long *>(&this->value_)),
- rhs)) + rhs;
-#elif defined (WIN32) && defined (ACE_HAS_INTERLOCKED_EXCHANGEADD)
- return static_cast<unsigned long> (::InterlockedExchangeAdd (const_cast<long *> (reinterpret_cast <volatile long *>(&this->value_)),
- rhs)) + rhs;
-#else /* WIN32 && ACE_HAS_INTERLOCKED_EXCHANGEADD */
- return static_cast<unsigned long> ((*exchange_add_fn_) (reinterpret_cast<volatile long *> (&this->value_), rhs)) + rhs;
-#endif /* WIN32 && ACE_HAS_INTERLOCKED_EXCHANGEADD */
-}
-
-ACE_INLINE unsigned long
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::operator-= (unsigned long rhs)
-{
-#if defined (ACE_HAS_INTRINSIC_INTERLOCKED)
- return static_cast<unsigned long> (::_InterlockedExchangeAdd (const_cast<long *> (reinterpret_cast<volatile long *>(&this->value_)),
- -static_cast<long>(rhs))) - rhs;
-#elif defined (WIN32) && defined (ACE_HAS_INTERLOCKED_EXCHANGEADD)
- return static_cast<unsigned long> (::InterlockedExchangeAdd (const_cast<long *> (reinterpret_cast<volatile long *>(&this->value_)),
- -static_cast<long>(rhs))) - rhs;
-#else /* WIN32 && ACE_HAS_INTERLOCKED_EXCHANGEADD */
- long l_rhs = static_cast<long> (rhs);
- return static_cast<unsigned long> ((*exchange_add_fn_) (reinterpret_cast<volatile long *> (&this->value_), -l_rhs)) - rhs;
-#endif /* WIN32 && ACE_HAS_INTERLOCKED_EXCHANGEADD */
-}
-
-ACE_INLINE bool
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::operator== (unsigned long rhs) const
-{
- return (this->value_ == rhs);
-}
-
-ACE_INLINE bool
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::operator!= (unsigned long rhs) const
-{
- return (this->value_ != rhs);
-}
-
-ACE_INLINE bool
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::operator>= (unsigned long rhs) const
-{
- return (this->value_ >= rhs);
-}
-
-ACE_INLINE bool
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::operator> (unsigned long rhs) const
-{
- return (this->value_ > rhs);
-}
-
-ACE_INLINE bool
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::operator<= (unsigned long rhs) const
-{
- return (this->value_ <= rhs);
-}
-
-ACE_INLINE bool
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::operator< (unsigned long rhs) const
-{
- return (this->value_ < rhs);
-}
-
-ACE_INLINE ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long> &
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::operator= (unsigned long rhs)
-{
-#if defined (ACE_HAS_INTRINSIC_INTERLOCKED)
- ::_InterlockedExchange (const_cast<long *> (reinterpret_cast<volatile long*> (&this->value_)), rhs);
-#elif defined (WIN32)
- ::InterlockedExchange (const_cast<long *> (reinterpret_cast<volatile long*> (&this->value_)), rhs);
-#else /* WIN32 */
- (*exchange_fn_) (reinterpret_cast<volatile long *> (&this->value_), rhs);
-#endif /* WIN32 */
- return *this;
-}
-
-ACE_INLINE ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long> &
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::operator= (
- const ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long> &rhs)
-{
-#if defined (ACE_HAS_INTRINSIC_INTERLOCKED)
- ::_InterlockedExchange (const_cast<long *> (reinterpret_cast<volatile long*> (&this->value_)), rhs.value_);
-#elif defined (WIN32)
- ::InterlockedExchange (const_cast<long *> (reinterpret_cast<volatile long*> (&this->value_)), rhs.value_);
-#else /* WIN32 */
- (*exchange_fn_) (reinterpret_cast<volatile long *> (&this->value_), rhs.value_);
-#endif /* WIN32 */
- return *this;
-}
-
-ACE_INLINE unsigned long
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::value (void) const
-{
- return this->value_;
-}
-
-ACE_INLINE volatile unsigned long &
-ACE_Atomic_Op<ACE_Thread_Mutex, unsigned long>::value_i (void)
-{
- return this->value_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_BUILTIN_ATOMIC_OP */
diff --git a/dep/include/ace/Atomic_Op_Sparc.h b/dep/include/ace/Atomic_Op_Sparc.h
deleted file mode 100644
index d521520c9ec..00000000000
--- a/dep/include/ace/Atomic_Op_Sparc.h
+++ /dev/null
@@ -1,15 +0,0 @@
-/* -*- C++ -*- */
-// $Id: Atomic_Op_Sparc.h 80826 2008-03-04 14:51:23Z wotte $
-
-#ifndef ACE_ATOMIC_OP_SPARC_H
-#define ACE_ATOMIC_OP_SPARC_H
-
-extern "C"
-{
- unsigned long ace_atomic_add_long (volatile unsigned long *dest, long rhs);
- unsigned long ace_atomic_swap_long (volatile unsigned long *dest, unsigned long rhs);
- unsigned long ace_atomic_swap_add_long (volatile unsigned long *dest, long rhs);
-}
-
-#endif /* ACE_ATOMIC_OP_SPARC_H */
-
diff --git a/dep/include/ace/Atomic_Op_T.h b/dep/include/ace/Atomic_Op_T.h
deleted file mode 100644
index afd163c58e9..00000000000
--- a/dep/include/ace/Atomic_Op_T.h
+++ /dev/null
@@ -1,370 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Atomic_Op_T.h
- *
- * $Id: Atomic_Op_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_ATOMIC_OP_T_H
-#define ACE_ATOMIC_OP_T_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template<typename TYPE>
-struct ACE_Type_Traits
-{
- typedef TYPE const & parameter_type;
-};
-
-template<>
-struct ACE_Type_Traits<bool>
-{
- typedef bool parameter_type;
-};
-
-template<>
-struct ACE_Type_Traits<char>
-{
- typedef char parameter_type;
-};
-
-template<>
-struct ACE_Type_Traits<signed char>
-{
- typedef signed char parameter_type;
-};
-
-template<>
-struct ACE_Type_Traits<unsigned char>
-{
- typedef unsigned char parameter_type;
-};
-
-template<>
-struct ACE_Type_Traits<short>
-{
- typedef short parameter_type;
-};
-
-template<>
-struct ACE_Type_Traits<unsigned short>
-{
- typedef unsigned short parameter_type;
-};
-
-template<>
-struct ACE_Type_Traits<int>
-{
- typedef int parameter_type;
-};
-
-template<>
-struct ACE_Type_Traits<unsigned int>
-{
- typedef unsigned int parameter_type;
-};
-
-template<>
-struct ACE_Type_Traits<long>
-{
- typedef long parameter_type;
-};
-
-template<>
-struct ACE_Type_Traits<unsigned long>
-{
- typedef unsigned long parameter_type;
-};
-
-#ifndef ACE_LACKS_LONGLONG_T
-template<>
-struct ACE_Type_Traits<long long>
-{
- typedef long long parameter_type;
-};
-#endif /* !ACE_LACKS_LONGLONG_T */
-
-#if !defined (ACE_LACKS_LONGLONG_T) \
- && !defined (ACE_LACKS_UNSIGNEDLONGLONG_T)
-template<>
-struct ACE_Type_Traits<unsigned long long>
-{
- typedef unsigned long long parameter_type;
-};
-#endif /* !ACE_LACKS_LONGLONG_T && !ACE_LACKS_UNSIGNEDLONGLONG_T */
-
-template<>
-struct ACE_Type_Traits<float>
-{
- typedef float parameter_type;
-};
-
-template<>
-struct ACE_Type_Traits<double>
-{
- typedef double parameter_type;
-};
-
-template<>
-struct ACE_Type_Traits<long double>
-{
- typedef long double parameter_type;
-};
-
-template<typename TYPE>
-struct ACE_Type_Traits<TYPE*>
-{
- typedef TYPE* parameter_type;
-};
-
-/**
- * @class ACE_Atomic_Op_Ex
- *
- * @brief Transparently parameterizes synchronization into basic
- * arithmetic operations.
- *
- * This class is described in an article in the July/August 1994
- * issue of the C++ Report magazine. It implements a
- * templatized version of the Decorator pattern from the GoF book.
- *
- * ACE_Atomic_Op_Ex objects must be constructed with a reference
- * to an existing lock. A single lock can be shared between
- * multiple ACE_Atomic_Op_Ex objects. If you do not require this
- * ability consider using the ACE_Atomic_Op class instead, which
- * may be able to take advantage of platform-specific
- * optimisations to provide atomic operations without requiring a
- * lock.
- */
-template <class ACE_LOCK, typename TYPE>
-class ACE_Atomic_Op_Ex
-{
-public:
-
- typedef typename ACE_Type_Traits<TYPE>::parameter_type arg_type;
-
- // = Initialization methods.
-
- /// Initialize @c value_ to 0.
- ACE_Atomic_Op_Ex (ACE_LOCK & mtx);
-
- /// Initialize @c value_ to c.
- ACE_Atomic_Op_Ex (ACE_LOCK & mtx, arg_type c);
-
- // = Accessors.
-
- /// Atomically pre-increment @c value_.
- TYPE operator++ (void);
-
- /// Atomically post-increment @c value_.
- TYPE operator++ (int);
-
- /// Atomically increment @c value_ by rhs.
- TYPE operator+= (arg_type rhs);
-
- /// Atomically pre-decrement @c value_.
- TYPE operator-- (void);
-
- /// Atomically post-decrement @c value_.
- TYPE operator-- (int);
-
- /// Atomically decrement @c value_ by rhs.
- TYPE operator-= (arg_type rhs);
-
- /// Atomically compare @c value_ with rhs.
- bool operator== (arg_type rhs) const;
-
- /// Atomically compare @c value_ with rhs.
- bool operator!= (arg_type rhs) const;
-
- /// Atomically check if @c value_ greater than or equal to rhs.
- bool operator>= (arg_type rhs) const;
-
- /// Atomically check if @c value_ greater than rhs.
- bool operator> (arg_type rhs) const;
-
- /// Atomically check if @c value_ less than or equal to rhs.
- bool operator<= (arg_type rhs) const;
-
- /// Atomically check if @c value_ less than rhs.
- bool operator< (arg_type rhs) const;
-
- /// Atomically assign rhs to @c value_.
- ACE_Atomic_Op_Ex<ACE_LOCK, TYPE> &operator= (arg_type rhs);
-
- /// Atomically assign <rhs> to @c value_.
- ACE_Atomic_Op_Ex<ACE_LOCK, TYPE> &operator= (
- ACE_Atomic_Op_Ex<ACE_LOCK, TYPE> const & rhs);
-
- /// Explicitly return @c value_.
- TYPE value (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // ACE_ALLOC_HOOK_DECLARE;
- // Declare the dynamic allocation hooks.
-
- /// Manage copying...
- ACE_Atomic_Op_Ex (ACE_Atomic_Op_Ex<ACE_LOCK, TYPE> const &);
-
- /**
- * Returns a reference to the underlying <ACE_LOCK>. This makes it
- * possible to acquire the lock explicitly, which can be useful in
- * some cases if you instantiate the <ACE_Atomic_Op_Ex> with an
- * ACE_Recursive_Mutex or ACE_Process_Mutex. @note the right
- * name would be lock_, but HP/C++ will choke on that!
- */
- ACE_LOCK & mutex (void);
-
- /**
- * Explicitly return @c value_ (by reference). This gives the user
- * full, unrestricted access to the underlying value. This method
- * will usually be used in conjunction with explicit access to the
- * lock. Use with care ;-)
- */
- TYPE & value_i (void);
-
-private:
- /// Type of synchronization mechanism.
- ACE_LOCK & mutex_;
-
- /// Current object decorated by the atomic op.
- TYPE value_;
-};
-
-/**
- * @class ACE_Atomic_Op
- *
- * @brief Transparently parameterizes synchronization into basic
- * arithmetic operations.
- *
- * This class is described in an article in the July/August 1994
- * issue of the C++ Report magazine. It implements a
- * templatized version of the Decorator pattern from the GoF book.
- *
- * Certain platforms may provide a template specialization for
- * ACE_Atomic_Op <ACE_Thread_Mutex, long> that provides optimized
- * atomic integer operations without actually requiring a mutex.
- */
-template <class ACE_LOCK, typename TYPE>
-class ACE_Atomic_Op
-{
-public:
-
- typedef typename ACE_Type_Traits<TYPE>::parameter_type arg_type;
-
- /// Initialize @c value_ to 0.
- ACE_Atomic_Op (void);
-
- /// Initialize @c value_ to c.
- ACE_Atomic_Op (arg_type c);
-
- /// Manage copying...
- ACE_Atomic_Op (ACE_Atomic_Op<ACE_LOCK, TYPE> const & c);
-
- /// Atomically assign rhs to @c value_.
- ACE_Atomic_Op<ACE_LOCK, TYPE> & operator= (arg_type rhs);
-
- /// Atomically assign <rhs> to @c value_.
- ACE_Atomic_Op<ACE_LOCK, TYPE> & operator= (
- ACE_Atomic_Op<ACE_LOCK, TYPE> const & rhs);
-
- /// Atomically pre-increment @c value_.
- TYPE operator++ (void);
-
- /// Atomically post-increment @c value_.
- TYPE operator++ (int);
-
- /// Atomically increment @c value_ by rhs.
- TYPE operator+= (arg_type rhs);
-
- /// Atomically pre-decrement @c value_.
- TYPE operator-- (void);
-
- /// Atomically post-decrement @c value_.
- TYPE operator-- (int);
-
- /// Atomically decrement @c value_ by rhs.
- TYPE operator-= (arg_type rhs);
-
- /// Atomically compare @c value_ with rhs.
- bool operator== (arg_type rhs) const;
-
- /// Atomically compare @c value_ with rhs.
- bool operator!= (arg_type rhs) const;
-
- /// Atomically check if @c value_ greater than or equal to rhs.
- bool operator>= (arg_type rhs) const;
-
- /// Atomically check if @c value_ greater than rhs.
- bool operator> (arg_type rhs) const;
-
- /// Atomically check if @c value_ less than or equal to rhs.
- bool operator<= (arg_type rhs) const;
-
- /// Atomically check if @c value_ less than rhs.
- bool operator< (arg_type rhs) const;
-
- /// Explicitly return @c value_.
- TYPE value (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /**
- * Returns a reference to the underlying <ACE_LOCK>. This makes it
- * possible to acquire the lock explicitly, which can be useful in
- * some cases if you instantiate the ACE_Atomic_Op with an
- * ACE_Recursive_Mutex or ACE_Process_Mutex.
- *
- * @deprecated This member function is deprecated and so may go away in
- * the future. If you need access to the underlying mutex, consider
- * using the ACE_Atomic_Op_Ex template instead.
- */
- ACE_LOCK & mutex (void);
-
- /**
- * Explicitly return @c value_ (by reference). This gives the user
- * full, unrestricted access to the underlying value. This method
- * will usually be used in conjunction with explicit access to the
- * lock. Use with care ;-)
- */
- TYPE & value_i (void);
-
-private:
- /// Type of synchronization mechanism.
- ACE_LOCK own_mutex_;
-
- /// Underlying atomic op implementation.
- ACE_Atomic_Op_Ex <ACE_LOCK, TYPE> impl_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Atomic_Op_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Atomic_Op_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Atomic_Op_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /*ACE_ATOMIC_OP_T_H*/
-
diff --git a/dep/include/ace/Atomic_Op_T.inl b/dep/include/ace/Atomic_Op_T.inl
deleted file mode 100644
index 2ac73d9fd39..00000000000
--- a/dep/include/ace/Atomic_Op_T.inl
+++ /dev/null
@@ -1,339 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Atomic_Op_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Guard_T.h"
-
-#include <algorithm>
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-//
-// ACE_Atomic_Op_Ex inline functions
-//
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE TYPE
-ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator++ (void)
-{
- // ACE_TRACE ("ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator++");
- ACE_GUARD_RETURN (ACE_LOCK, ace_mon, this->mutex_, this->value_);
- return ++this->value_;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE TYPE
-ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator+= (
- typename ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::arg_type rhs)
-{
- // ACE_TRACE ("ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator+=");
- ACE_GUARD_RETURN (ACE_LOCK, ace_mon, this->mutex_, this->value_);
- return this->value_ += rhs;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE TYPE
-ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator-- (void)
-{
- // ACE_TRACE ("ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator--");
- ACE_GUARD_RETURN (ACE_LOCK, ace_mon, this->mutex_, this->value_);
- return --this->value_;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE TYPE
-ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator-= (
- typename ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::arg_type rhs)
-{
- // ACE_TRACE ("ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator-=");
- ACE_GUARD_RETURN (ACE_LOCK, ace_mon, this->mutex_, this->value_);
- return this->value_ -= rhs;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE
-ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::ACE_Atomic_Op_Ex (
- ACE_Atomic_Op_Ex<ACE_LOCK, TYPE> const & rhs)
- : mutex_ (rhs.mutex_)
- , value_ (rhs.value ()) // rhs.value() returns atomically
-{
- // ACE_TRACE ("ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::ACE_Atomic_Op_Ex");
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE TYPE
-ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator++ (int)
-{
- // ACE_TRACE ("ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator++");
- ACE_GUARD_RETURN (ACE_LOCK, ace_mon, this->mutex_, this->value_);
- return this->value_++;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE TYPE
-ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator-- (int)
-{
- // ACE_TRACE ("ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator--");
- ACE_GUARD_RETURN (ACE_LOCK, ace_mon, this->mutex_, this->value_);
- return this->value_--;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE bool
-ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator== (
- typename ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::arg_type rhs) const
-{
- // ACE_TRACE ("ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator==");
- ACE_GUARD_RETURN (ACE_LOCK, ace_mon, this->mutex_, false);
- return this->value_ == rhs;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE bool
-ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator!= (
- typename ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::arg_type rhs) const
-{
- // ACE_TRACE ("ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator!=");
- return !(*this == rhs);
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE bool
-ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator>= (
- typename ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::arg_type rhs) const
-{
- // ACE_TRACE ("ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator>=");
- ACE_GUARD_RETURN (ACE_LOCK, ace_mon, this->mutex_, false);
- return this->value_ >= rhs;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE bool
-ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator> (
- typename ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::arg_type rhs) const
-{
- // ACE_TRACE ("ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator>");
- ACE_GUARD_RETURN (ACE_LOCK, ace_mon, this->mutex_, false);
- return this->value_ > rhs;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE bool
-ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator<= (
- typename ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::arg_type rhs) const
-{
- // ACE_TRACE ("ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator<=");
- ACE_GUARD_RETURN (ACE_LOCK, ace_mon, this->mutex_, false);
- return this->value_ <= rhs;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE bool
-ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator< (
- typename ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::arg_type rhs) const
-{
- // ACE_TRACE ("ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator<");
- ACE_GUARD_RETURN (ACE_LOCK, ace_mon, this->mutex_, false);
- return this->value_ < rhs;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE ACE_Atomic_Op_Ex<ACE_LOCK, TYPE> &
-ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator= (
- ACE_Atomic_Op_Ex<ACE_LOCK, TYPE> const & rhs)
-{
- // ACE_TRACE ("ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator=");
-
- ACE_Atomic_Op_Ex<ACE_LOCK, TYPE> tmp (rhs);
-
- ACE_GUARD_RETURN (ACE_LOCK, ace_mon, this->mutex_, *this);
- std::swap (this->value_, tmp.value_);
-
- return *this;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE TYPE
-ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::value (void) const
-{
- // ACE_TRACE ("ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::value");
- ACE_GUARD_RETURN (ACE_LOCK, ace_mon, this->mutex_, this->value_);
- return this->value_;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE TYPE &
-ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::value_i (void)
-{
- // Explicitly return <value_> (by reference). This gives the user
- // full, unrestricted access to the underlying value. This method
- // will usually be used in conjunction with explicit access to the
- // lock. Use with care ;-)
- return this->value_;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE ACE_Atomic_Op_Ex<ACE_LOCK, TYPE> &
-ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator= (
- typename ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::arg_type rhs)
-{
- // ACE_TRACE ("ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::operator=");
- ACE_GUARD_RETURN (ACE_LOCK, ace_mon, this->mutex_, *this);
- this->value_ = rhs;
- return *this;
-}
-
-//
-// ACE_Atomic_Op inline functions
-//
-
-template <class ACE_LOCK, class TYPE> ACE_INLINE
-ACE_Atomic_Op<ACE_LOCK, TYPE>::ACE_Atomic_Op (
- ACE_Atomic_Op<ACE_LOCK, TYPE> const & rhs)
- : impl_ (own_mutex_, rhs.value ())
-{
- // ACE_TRACE ("ACE_Atomic_Op<ACE_LOCK, TYPE>::ACE_Atomic_Op");
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE ACE_Atomic_Op<ACE_LOCK, TYPE> &
-ACE_Atomic_Op<ACE_LOCK, TYPE>::operator= (
- typename ACE_Atomic_Op<ACE_LOCK, TYPE>::arg_type i)
-{
- this->impl_ = i;
- return *this;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE ACE_Atomic_Op<ACE_LOCK, TYPE> &
-ACE_Atomic_Op<ACE_LOCK, TYPE>::operator= (
- ACE_Atomic_Op<ACE_LOCK, TYPE> const & rhs)
-{
- this->impl_ = rhs.impl_;
- return *this;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE TYPE
-ACE_Atomic_Op<ACE_LOCK, TYPE>::operator++ (void)
-{
- return ++this->impl_;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE TYPE
-ACE_Atomic_Op<ACE_LOCK, TYPE>::operator++ (int)
-{
- return this->impl_++;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE TYPE
-ACE_Atomic_Op<ACE_LOCK, TYPE>::operator+= (
- typename ACE_Atomic_Op<ACE_LOCK, TYPE>::arg_type rhs)
-{
- return this->impl_ += rhs;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE TYPE
-ACE_Atomic_Op<ACE_LOCK, TYPE>::operator-- (void)
-{
- return --this->impl_;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE TYPE
-ACE_Atomic_Op<ACE_LOCK, TYPE>::operator-- (int)
-{
- return this->impl_--;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE TYPE
-ACE_Atomic_Op<ACE_LOCK, TYPE>::operator-= (
- typename ACE_Atomic_Op<ACE_LOCK, TYPE>::arg_type rhs)
-{
- return this->impl_ -= rhs;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE bool
-ACE_Atomic_Op<ACE_LOCK, TYPE>::operator== (
- typename ACE_Atomic_Op<ACE_LOCK, TYPE>::arg_type rhs) const
-{
- return this->impl_ == rhs;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE bool
-ACE_Atomic_Op<ACE_LOCK, TYPE>::operator!= (
- typename ACE_Atomic_Op<ACE_LOCK, TYPE>::arg_type rhs) const
-{
- return this->impl_ != rhs;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE bool
-ACE_Atomic_Op<ACE_LOCK, TYPE>::operator>= (
- typename ACE_Atomic_Op<ACE_LOCK, TYPE>::arg_type rhs) const
-{
- return this->impl_ >= rhs;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE bool
-ACE_Atomic_Op<ACE_LOCK, TYPE>::operator> (
- typename ACE_Atomic_Op<ACE_LOCK, TYPE>::arg_type rhs) const
-{
- return this->impl_ > rhs;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE bool
-ACE_Atomic_Op<ACE_LOCK, TYPE>::operator<= (
- typename ACE_Atomic_Op<ACE_LOCK, TYPE>::arg_type rhs) const
-{
- return this->impl_ <= rhs;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE bool
-ACE_Atomic_Op<ACE_LOCK, TYPE>::operator< (
- typename ACE_Atomic_Op<ACE_LOCK, TYPE>::arg_type rhs) const
-{
- return this->impl_ < rhs;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE TYPE
-ACE_Atomic_Op<ACE_LOCK, TYPE>::value (void) const
-{
- return this->impl_.value ();
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE void
-ACE_Atomic_Op<ACE_LOCK, TYPE>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- this->impl_.dump ();
-#endif /* ACE_HAS_DUMP */
- return;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE ACE_LOCK &
-ACE_Atomic_Op<ACE_LOCK, TYPE>::mutex (void)
-{
- return this->own_mutex_;
-}
-
-template <class ACE_LOCK, class TYPE>
-ACE_INLINE TYPE &
-ACE_Atomic_Op<ACE_LOCK, TYPE>::value_i (void)
-{
- return this->impl_.value_i ();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Auto_Event.h b/dep/include/ace/Auto_Event.h
deleted file mode 100644
index 307c89cddae..00000000000
--- a/dep/include/ace/Auto_Event.h
+++ /dev/null
@@ -1,74 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Auto_Event.h
- *
- * $Id: Auto_Event.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_AUTO_EVENT_H
-#define ACE_AUTO_EVENT_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Event.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Auto_Event
- *
- * @brief Auto Events.
- *
- * Specialization of Event mechanism which wakes up one waiting
- * thread on <signal>. All platforms support process-scope locking
- * support. However, only Win32 platforms support global naming and
- * system-scope locking support.
- */
-class ACE_Export ACE_Auto_Event : public ACE_Event
-{
-public:
- /// Constructor which will create auto event
- ACE_Auto_Event (int initial_state = 0,
- int type = USYNC_THREAD,
- const char *name = 0,
- void *arg = 0);
-
-#if defined (ACE_HAS_WCHAR)
- /// Constructor which will create auto event (wchar_t version)
- ACE_Auto_Event (int initial_state,
- int type,
- const wchar_t *name,
- void *arg = 0);
-#endif /* ACE_HAS_WCHAR */
-
- /// Default dtor.
- ~ACE_Auto_Event (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Auto_Event.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_AUTO_EVENT_H */
-
diff --git a/dep/include/ace/Auto_Event.inl b/dep/include/ace/Auto_Event.inl
deleted file mode 100644
index b614e0b0d77..00000000000
--- a/dep/include/ace/Auto_Event.inl
+++ /dev/null
@@ -1,12 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Auto_Event.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Auto_Event::~ACE_Auto_Event (void)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Auto_Functor.h b/dep/include/ace/Auto_Functor.h
deleted file mode 100644
index 339054506be..00000000000
--- a/dep/include/ace/Auto_Functor.h
+++ /dev/null
@@ -1,128 +0,0 @@
-// -*- C++ -*-
-//=============================================================================
-/**
- * @file Auto_Functor.h
- *
- * $Id: Auto_Functor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Carlos O'Ryan <coryan@atdesk.com>
- */
-//=============================================================================
-#ifndef ACE_AUTO_FUNCTOR_H
-#define ACE_AUTO_FUNCTOR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Global_Macros.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_Utils
-{
-/**
- * @class Auto_Functor_Ref
- *
- * @brief Helper class to implement assignment and copy-construction
- * as expected
- */
-template<typename X, typename Functor>
-struct Auto_Functor_Ref
-{
- X * p_;
- Functor f_;
-
- Auto_Functor_Ref(X * p, Functor f);
-};
-
-/**
- * @class Auto_Functor
- *
- * @brief Helper template to implement auto_ptr<>-like classes, but
- * executing a functor in the destructor, instead of always
- * deleting things.
- *
- * The functor is called in the destructor, and it must implement:
- *
- * Functor() throw();<BR>
- * Functor(Functor const &) throw();<BR>
- * Functor & operator=(Functor const &) throw();<BR>
- * void operator()(X * p) throw();<BR>
- *
- */
-template<typename X, typename Functor>
-class Auto_Functor
-{
-public:
- typedef X element_type;
- typedef Functor functor_type;
-
- /// Constructor
- explicit Auto_Functor (X * p = 0,
- Functor functor = Functor()); // throw()
-
- Auto_Functor (Auto_Functor & rhs); // throw()
-
- Auto_Functor<X,Functor>& operator= (Auto_Functor & rhs); // throw()
-
-#if !defined(ACE_LACKS_MEMBER_TEMPLATES)
- template<typename Y>
- Auto_Functor(Auto_Functor<Y,Functor>& rhs); // throw()
-
- template<typename Y>
- Auto_Functor<X,Functor>& operator= (Auto_Functor<Y,Functor>& rhs); // throw()
-#endif /* ACE_LACKS_MEMBER_TEMPLATES */
-
- ~Auto_Functor(); // throw()
-
- X & operator*() const; // throw()
-
- X * operator->() const; // throw()
-
- X * get(); // throw()
-
- X * release(); // throw()
-
- void reset (X * p = 0); // throw()
-
- void reset (X * p, Functor f); // throw()
-
- Functor const & functor() const; // throw()
-
- Auto_Functor(Auto_Functor_Ref<X,Functor> rhs); // throw()
-
- Auto_Functor<X,Functor> & operator=(Auto_Functor_Ref<X,Functor> rhs); // throw()
-
-#if !defined(ACE_LACKS_MEMBER_TEMPLATES)
- template<typename Y> operator Auto_Functor_Ref<Y,Functor>(); // throw()
-
- template<typename Y> operator Auto_Functor<Y,Functor>(); // throw()
-#else
- operator Auto_Functor_Ref<X,Functor>(); // throw()
-#endif /* ACE_LACKS_MEMBER_TEMPLATES */
-
-private:
- X * p_;
-
- Functor f_;
-};
-
-} // namespace ACE_Utils
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined(__ACE_INLINE__)
-# include "ace/Auto_Functor.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined(ACE_TEMPLATES_REQUIRE_SOURCE)
-# include "ace/Auto_Functor.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_AUTO_FUNCTOR_H*/
-
diff --git a/dep/include/ace/Auto_Functor.inl b/dep/include/ace/Auto_Functor.inl
deleted file mode 100644
index d4cb2cc0473..00000000000
--- a/dep/include/ace/Auto_Functor.inl
+++ /dev/null
@@ -1,134 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Auto_Functor.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template<typename X, typename Functor> ACE_INLINE
-ACE_Utils::Auto_Functor_Ref<X,Functor>::
-Auto_Functor_Ref(X * p, Functor f)
- : p_(p)
- , f_(f)
-{
-}
-
-template<typename X, typename Functor> ACE_INLINE
-ACE_Utils::Auto_Functor<X,Functor>::Auto_Functor(X * p, Functor f)
- : p_(p)
- , f_(f)
-{
-}
-
-template<typename X, typename Functor> ACE_INLINE
-ACE_Utils::Auto_Functor<X,Functor>::Auto_Functor(Auto_Functor & rhs)
- : p_(rhs.release())
- , f_(rhs.f_)
-{
-}
-
-template<typename X, typename Functor>
-ACE_INLINE ACE_Utils::Auto_Functor<X,Functor>&
-ACE_Utils::Auto_Functor<X,Functor>:: operator=(Auto_Functor & rhs)
-{
- reset(rhs.release());
- f_ = rhs.f_;
- return *this;
-}
-
-#if !defined(ACE_LACKS_MEMBER_TEMPLATES)
-template<typename X, typename Functor> template<typename Y> ACE_INLINE
-ACE_Utils::Auto_Functor<X,Functor>::Auto_Functor(Auto_Functor<Y,Functor>& rhs)
- : p_(rhs.release())
- , f_(rhs.f_)
-{
-}
-
-template<typename X, typename Functor> template<typename Y>
-ACE_INLINE ACE_Utils::Auto_Functor<X,Functor>&
-ACE_Utils::Auto_Functor<X,Functor>::operator=(Auto_Functor<Y,Functor>& rhs)
-{
- reset(rhs.release());
- return *this;
-}
-#endif /* ACE_LACKS_MEMBER_TEMPLATES */
-
-template<typename X, typename Functor> ACE_INLINE X &
-ACE_Utils::Auto_Functor<X,Functor>::operator*() const
-{
- return *p_;
-}
-
-template<typename X, typename Functor>
-ACE_INLINE X *
-ACE_Utils::Auto_Functor<X,Functor>::operator->() const
-{
- return p_;
-}
-
-template<typename X, typename Functor>
-ACE_INLINE X *
-ACE_Utils::Auto_Functor<X,Functor>::get()
-{
- return p_;
-}
-
-template<typename X, typename Functor>
-ACE_INLINE X *
-ACE_Utils::Auto_Functor<X,Functor>::release()
-{
- X * tmp = p_;
- p_ = 0;
- return tmp;
-}
-
-template<typename X, typename Functor>
-ACE_INLINE Functor const &
-ACE_Utils::Auto_Functor<X,Functor>::functor() const
-{
- return f_;
-}
-
-template<typename X, typename Functor> ACE_INLINE
-ACE_Utils::Auto_Functor<X,Functor>::Auto_Functor(Auto_Functor_Ref<X,Functor> rhs)
- : p_(rhs.p_)
- , f_(rhs.f_)
-{
-}
-
-template<typename X, typename Functor>
-ACE_INLINE ACE_Utils::Auto_Functor<X,Functor> &
-ACE_Utils::Auto_Functor<X,Functor>::operator=(Auto_Functor_Ref<X,Functor> rhs)
-{
- if(rhs.p_ != p_)
- {
- reset(rhs.p_);
- f_ = rhs.f_;
- }
- return *this;
-}
-
-#if !defined(ACE_LACKS_MEMBER_TEMPLATES)
-
-template<typename X, typename Functor> template<typename Y> ACE_INLINE
-ACE_Utils::Auto_Functor<X,Functor>::operator ACE_Utils::Auto_Functor_Ref<Y,Functor>()
-{
- return ACE_Utils::Auto_Functor_Ref<Y,Functor>(release(), f_);
-}
-
-template<typename X, typename Functor> template<typename Y> ACE_INLINE
-ACE_Utils::Auto_Functor<X,Functor>::operator ACE_Utils::Auto_Functor<Y,Functor>()
-{
- return ACE_Utils::Auto_Functor<Y,Functor>(release(), f_);
-}
-
-#else
-
-template<typename X, typename Functor>ACE_INLINE
-ACE_Utils::Auto_Functor<X,Functor>::operator ACE_Utils::Auto_Functor_Ref<X,Functor>()
-{
- return ACE_Utils::Auto_Functor_Ref<X,Functor>(release(), f_);
-}
-
-#endif /* ACE_LACKS_MEMBER_TEMPLATES */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Auto_IncDec_T.h b/dep/include/ace/Auto_IncDec_T.h
deleted file mode 100644
index 8a8840e84b2..00000000000
--- a/dep/include/ace/Auto_IncDec_T.h
+++ /dev/null
@@ -1,91 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Auto_IncDec_T.h
- *
- * $Id: Auto_IncDec_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Edan Ayal <EdanA@cti2.com>
- */
-//=============================================================================
-
-#ifndef ACE_AUTO_INCDEC_T_H
-#define ACE_AUTO_INCDEC_T_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Global_Macros.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Auto_IncDec
- *
- * @brief This class automatically increments and decrements a
- * parameterized counter.
- *
- * This data structure is meant to be used within a method,
- * function, or scope. The actual parameter given for the
- * <ACE_SAFELY_INCREMENTABLE_DECREMENTABLE> template parameter
- * must provide at least operators ++ and --.
- */
-template <class ACE_SAFELY_INCREMENTABLE_DECREMENTABLE>
-class ACE_Auto_IncDec
-{
-public:
-
- /// Implicitly increment the counter.
- ACE_Auto_IncDec (ACE_SAFELY_INCREMENTABLE_DECREMENTABLE &counter);
-
- /// Implicitly decrement the counter.
- ~ACE_Auto_IncDec (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
-protected:
- /// Reference to the <ACE_SAFELY_INCREMENTABLE_DECREMENTABLE> counter
- /// we're incrementing/decrementing.
- ACE_SAFELY_INCREMENTABLE_DECREMENTABLE &counter_;
-
-private:
- // = Prevent assignment and initialization.
- ACE_UNIMPLEMENTED_FUNC (void operator= (const
- ACE_Auto_IncDec<ACE_SAFELY_INCREMENTABLE_DECREMENTABLE> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Auto_IncDec (const
- ACE_Auto_IncDec<ACE_SAFELY_INCREMENTABLE_DECREMENTABLE> &))
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Auto_IncDec_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Auto_IncDec_T.cpp"
-// On Win32 platforms, this code will be included as template source
-// code and will not be inlined. Therefore, we first turn off
-// ACE_INLINE, set it to be nothing, include the code, and then turn
-// ACE_INLINE back to its original setting. All this nonsense is
-// necessary, since the generic template code that needs to be
-// specialized cannot be inlined, else the compiler will ignore the
-// specialization code. Also, the specialization code *must* be
-// inlined or the compiler will ignore the specializations.
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Auto_IncDec_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_AUTO_INCDEC_T_H */
-
diff --git a/dep/include/ace/Auto_IncDec_T.inl b/dep/include/ace/Auto_IncDec_T.inl
deleted file mode 100644
index e61980e7192..00000000000
--- a/dep/include/ace/Auto_IncDec_T.inl
+++ /dev/null
@@ -1,25 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Auto_IncDec_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Implicitly and automatically increment the counter.
-
-template <class ACE_SAFELY_INCREMENTABLE_DECREMENTABLE> ACE_INLINE
-ACE_Auto_IncDec<ACE_SAFELY_INCREMENTABLE_DECREMENTABLE>::ACE_Auto_IncDec
- (ACE_SAFELY_INCREMENTABLE_DECREMENTABLE &counter)
- : counter_ (counter)
-{
- ++this->counter_;
-}
-
-// Implicitly and automatically decrement the counter.
-
-template <class ACE_SAFELY_INCREMENTABLE_DECREMENTABLE> ACE_INLINE
-ACE_Auto_IncDec<ACE_SAFELY_INCREMENTABLE_DECREMENTABLE>::~ACE_Auto_IncDec (void)
-{
- --this->counter_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Auto_Ptr.h b/dep/include/ace/Auto_Ptr.h
deleted file mode 100644
index ce52100609b..00000000000
--- a/dep/include/ace/Auto_Ptr.h
+++ /dev/null
@@ -1,241 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Auto_Ptr.h
- *
- * $Id: Auto_Ptr.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt <schmidt@uci.edu>
- * @author Irfan Pyarali <irfan@cs.wustl.edu>
- * @author Jack Reeves <jack@fx.com>
- * @author Dr. Harald M. Mueller <mueller@garwein.hai.siemens.co.at>
- */
-//=============================================================================
-
-#ifndef ACE_AUTO_PTR_H
-#define ACE_AUTO_PTR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (_MSC_VER)
-// Suppress warning e.g. "return type for
-// 'ACE_Auto_Array_Pointer<type>::operator ->' is 'type *' (i.e., not a UDT
-// or reference to a UDT. Will produce errors if applied using infix
-// notation)"
-# pragma warning(push)
-# pragma warning(disable: 4284)
-#endif /* _MSC_VER */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Auto_Basic_Ptr
- *
- * @brief Implements the draft C++ standard auto_ptr abstraction.
- * This class allows one to work on non-object (basic) types
- */
-template <typename X>
-class ACE_Auto_Basic_Ptr
-{
-public:
- typedef X element_type;
-
- // = Initialization and termination methods
- explicit ACE_Auto_Basic_Ptr (X * p = 0) : p_ (p) {}
-
- ACE_Auto_Basic_Ptr (ACE_Auto_Basic_Ptr<X> & ap);
- ACE_Auto_Basic_Ptr<X> &operator= (ACE_Auto_Basic_Ptr<X> & rhs);
- ~ACE_Auto_Basic_Ptr (void);
-
- // = Accessor methods.
- X &operator *() const;
- X *get (void) const;
- X *release (void);
- void reset (X * p = 0);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- X *p_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if !defined (ACE_LACKS_AUTO_PTR) && \
- defined (ACE_HAS_STANDARD_CPP_LIBRARY) && \
- (ACE_HAS_STANDARD_CPP_LIBRARY != 0)
-#include <memory>
-#if defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB) && \
- (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB != 0)
-using std::auto_ptr;
-#endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
-#else /* ACE_HAS_STANDARD_CPP_LIBRARY */
-
-/**
- * @class auto_ptr
- *
- * @brief Implements the draft C++ standard auto_ptr abstraction.
- */
-template <typename X>
-class auto_ptr : public ACE_Auto_Basic_Ptr<X>
-{
-public:
- typedef X element_type;
-
- // = Initialization and termination methods
- explicit auto_ptr (X * p = 0) : ACE_Auto_Basic_Ptr<X> (p) {}
- auto_ptr (auto_ptr<X> & ap) : ACE_Auto_Basic_Ptr<X> (ap.release ()) {}
-
- X *operator-> () const;
-};
-
-#endif /* ACE_HAS_STANDARD_CPP_LIBRARY */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @brief Implements the draft C++ standard auto_ptr abstraction.
- * This version can be used instead of auto_ptr<T>, and obviates
- * the need for the ACE_AUTO_PTR_RESET macro on platforms like
- * VC6 where the auto_ptr<T> is broken.
- */
-template <typename X>
-class ACE_Auto_Ptr : public ACE_Auto_Basic_Ptr <X>
-{
-public:
- typedef X element_type;
-
- // = Initialization and termination methods
- explicit ACE_Auto_Ptr (X * p = 0) : ACE_Auto_Basic_Ptr<X> (p) {}
-
- X *operator-> () const;
-};
-
-/**
- * @class ACE_Auto_Basic_Array_Ptr
- *
- * @brief Implements an extension to the draft C++ standard auto_ptr
- * abstraction. This class allows one to work on non-object
- * (basic) types that must be treated as an array, e.g.,
- * deallocated via "delete [] foo".
- */
-template<typename X>
-class ACE_Auto_Basic_Array_Ptr
-{
-public:
- typedef X element_type;
-
- // = Initialization and termination methods.
- explicit ACE_Auto_Basic_Array_Ptr (X * p = 0) : p_ (p) {}
-
- ACE_Auto_Basic_Array_Ptr (ACE_Auto_Basic_Array_Ptr<X> & ap);
- ACE_Auto_Basic_Array_Ptr<X> &operator= (ACE_Auto_Basic_Array_Ptr<X> & rhs);
- ~ACE_Auto_Basic_Array_Ptr (void);
-
- // = Accessor methods.
- X & operator* () const;
- X & operator[] (int i) const;
- X * get (void) const;
- X * release (void);
- void reset (X * p = 0);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- X * p_;
-};
-
-/**
- * @class ACE_Auto_Array_Ptr
- *
- * @brief Implements an extension to the draft C++ standard auto_ptr
- * abstraction.
- */
-template<typename X>
-class ACE_Auto_Array_Ptr : public ACE_Auto_Basic_Array_Ptr<X>
-{
-public:
- typedef X element_type;
-
- // = Initialization and termination methods.
- explicit ACE_Auto_Array_Ptr (X *p = 0)
- : ACE_Auto_Basic_Array_Ptr<X> (p) {}
-
- X *operator-> () const;
-};
-
-/**
- * @brief Reset given @c auto_ptr element to new element.
- *
- * Some platforms have an older version of auto_ptr support, which
- * lacks reset, and cannot be disabled easily. Portability to these
- * platforms requires use of this function template. This function
- * template also works for the @c ACE_Auto_{Basic_}Array_Ptr class
- * template, as well.
- */
-template<typename AUTO_PTR_TYPE, typename PTR_TYPE>
-inline void
-ACE_auto_ptr_reset (AUTO_PTR_TYPE & ap,
- PTR_TYPE * p)
-{
-#if defined (ACE_AUTO_PTR_LACKS_RESET)
- // Allow compiler to adjust pointer to potential base class pointer
- // of element type found in auto_ptr.
- typename AUTO_PTR_TYPE::element_type * const tp = p;
- if (tp != ap.get ())
- {
- ap = AUTO_PTR_TYPE (tp);
- }
-#else
- ap.reset (p);
-#endif /* ACE_AUTO_PTR_LACKS_RESET */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// Some platforms have an older version of auto_ptr
-// support, which lacks reset, and cannot be disabled
-// easily. Portability to these platforms requires
-// use of the following ACE_AUTO_PTR_RESET macro.
-//
-// The TYPE macro parameter is no longer necessary but we leave it
-// around for backward compatibility. This is also the reason why the
-// ACE_auto_ptr_reset function template is not called
-// ACE_AUTO_PTR_RESET.
-# define ACE_AUTO_PTR_RESET(AUTOPTR,NEWPTR,TYPE) \
- ACE_auto_ptr_reset (AUTOPTR, NEWPTR);
-
-#if defined (__ACE_INLINE__)
-#include "ace/Auto_Ptr.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Auto_Ptr.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Auto_Ptr.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#if defined (_MSC_VER)
-// Restore the warning state to what it was before entry.
-# pragma warning(pop)
-#endif /* _MSC_VER */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_AUTO_PTR_H */
-
diff --git a/dep/include/ace/Auto_Ptr.inl b/dep/include/ace/Auto_Ptr.inl
deleted file mode 100644
index 9ea47c3f208..00000000000
--- a/dep/include/ace/Auto_Ptr.inl
+++ /dev/null
@@ -1,171 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Auto_Ptr.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Global_Macros.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template<class X> ACE_INLINE void
-ACE_Auto_Basic_Ptr<X>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_Auto_Basic_Ptr<X>::dump");
-#endif /* ACE_HAS_DUMP */
-}
-
-template<class X> ACE_INLINE void
-ACE_Auto_Basic_Array_Ptr<X>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_Auto_Basic_Array_Ptr<X>::dump");
-#endif /* ACE_HAS_DUMP */
-}
-
-template<class X> ACE_INLINE
-ACE_Auto_Basic_Ptr<X>::ACE_Auto_Basic_Ptr (ACE_Auto_Basic_Ptr<X> &rhs)
- : p_ (rhs.release ())
-{
- ACE_TRACE ("ACE_Auto_Basic_Ptr<X>::ACE_Auto_Basic_Ptr");
-}
-
-template<class X> ACE_INLINE X *
-ACE_Auto_Basic_Ptr<X>::get (void) const
-{
- ACE_TRACE ("ACE_Auto_Basic_Ptr<X>::get");
- return this->p_;
-}
-
-template<class X> ACE_INLINE X *
-ACE_Auto_Basic_Ptr<X>::release (void)
-{
- ACE_TRACE ("ACE_Auto_Basic_Ptr<X>::release");
- X *old = this->p_;
- this->p_ = 0;
- return old;
-}
-
-template<class X> ACE_INLINE void
-ACE_Auto_Basic_Ptr<X>::reset (X *p)
-{
- ACE_TRACE ("ACE_Auto_Basic_Ptr<X>::reset");
- if (this->get () != p)
- delete this->get ();
- this->p_ = p;
-}
-
-template<class X> ACE_INLINE ACE_Auto_Basic_Ptr<X> &
-ACE_Auto_Basic_Ptr<X>::operator= (ACE_Auto_Basic_Ptr<X> &rhs)
-{
- ACE_TRACE ("ACE_Auto_Basic_Ptr<X>::operator=");
- if (this != &rhs)
- {
- this->reset (rhs.release ());
- }
- return *this;
-}
-
-template<class X> ACE_INLINE
-ACE_Auto_Basic_Ptr<X>::~ACE_Auto_Basic_Ptr (void)
-{
- ACE_TRACE ("ACE_Auto_Basic_Ptr<X>::~ACE_Auto_Basic_Ptr");
- delete this->get ();
-}
-
-template<class X> ACE_INLINE X &
-ACE_Auto_Basic_Ptr<X>::operator *() const
-{
- ACE_TRACE ("ACE_Auto_Basic_Ptr<X>::operator *()");
- return *this->get ();
-}
-
-#if defined (ACE_LACKS_AUTO_PTR) || \
- !defined (ACE_HAS_STANDARD_CPP_LIBRARY) || \
- (ACE_HAS_STANDARD_CPP_LIBRARY == 0)
-
-template<class X> ACE_INLINE X *
-auto_ptr<X>::operator-> () const
-{
- ACE_TRACE ("auto_ptr<X>::operator->");
- return this->get ();
-}
-
-#endif /* ACE_HAS_STANDARD_CPP_LIBRARY */
-
-template<class X> ACE_INLINE X *
-ACE_Auto_Ptr<X>::operator-> () const
-{
- ACE_TRACE ("ACE_Auto_Ptr<X>::operator->");
- return this->get ();
-}
-
-template<class X> ACE_INLINE X *
-ACE_Auto_Basic_Array_Ptr<X>::get (void) const
-{
- ACE_TRACE ("ACE_Auto_Basic_Array_Ptr<X>::get");
- return this->p_;
-}
-
-template<class X> ACE_INLINE X *
-ACE_Auto_Basic_Array_Ptr<X>::release (void)
-{
- ACE_TRACE ("ACE_Auto_Basic_Array_Ptr<X>::release");
- X *old = this->p_;
- this->p_ = 0;
- return old;
-}
-
-template<class X> ACE_INLINE void
-ACE_Auto_Basic_Array_Ptr<X>::reset (X *p)
-{
- ACE_TRACE ("ACE_Auto_Basic_Array_Ptr<X>::reset");
- if (this->get () != p)
- delete [] this->get ();
- this->p_ = p;
-}
-
-template<class X> ACE_INLINE
-ACE_Auto_Basic_Array_Ptr<X>::ACE_Auto_Basic_Array_Ptr (ACE_Auto_Basic_Array_Ptr<X> &rhs)
- : p_ (rhs.release ())
-{
- ACE_TRACE ("ACE_Auto_Basic_Array_Ptr<X>::ACE_Auto_Basic_Array_Ptr");
-}
-
-template<class X> ACE_INLINE ACE_Auto_Basic_Array_Ptr<X> &
-ACE_Auto_Basic_Array_Ptr<X>::operator= (ACE_Auto_Basic_Array_Ptr<X> &rhs)
-{
- ACE_TRACE ("ACE_Auto_Basic_Array_Ptr<X>::operator=");
- if (this != &rhs)
- {
- this->reset (rhs.release ());
- }
- return *this;
-}
-
-template<class X> ACE_INLINE
-ACE_Auto_Basic_Array_Ptr<X>::~ACE_Auto_Basic_Array_Ptr (void)
-{
- ACE_TRACE ("ACE_Auto_Basic_Array_Ptr<X>::~ACE_Auto_Basic_Array_Ptr");
- delete [] this->get ();
-}
-
-template<class X> ACE_INLINE X &
-ACE_Auto_Basic_Array_Ptr<X>::operator *() const
-{
- return *this->get ();
-}
-
-template<class X> ACE_INLINE X &
-ACE_Auto_Basic_Array_Ptr<X>::operator[](int i) const
-{
- X *array = this->get ();
- return array[i];
-}
-
-template<class X> ACE_INLINE X *
-ACE_Auto_Array_Ptr<X>::operator->() const
-{
- return this->get ();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Barrier.h b/dep/include/ace/Barrier.h
deleted file mode 100644
index 5fc9b9e8b7d..00000000000
--- a/dep/include/ace/Barrier.h
+++ /dev/null
@@ -1,216 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Barrier.h
- *
- * $Id: Barrier.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_BARRIER_H
-#define ACE_BARRIER_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include /**/ "ace/config-all.h"
-
-// ACE platform supports some form of threading.
-#if !defined (ACE_HAS_THREADS)
-
-#include "ace/OS_NS_errno.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Barrier
- *
- * @brief This is a no-op to make ACE "syntactically consistent."
- */
-class ACE_Export ACE_Barrier
-{
-public:
- ACE_Barrier (unsigned int, const ACE_TCHAR * = 0, void * = 0) {}
- ~ACE_Barrier (void) {}
- int wait (void) { ACE_NOTSUP_RETURN (-1); }
- void dump (void) const {}
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#else /* ACE_HAS_THREADS */
-
-#include "ace/Condition_Thread_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-struct ACE_Export ACE_Sub_Barrier
-{
- // = Initialization.
- ACE_Sub_Barrier (unsigned int count,
- ACE_Thread_Mutex &lock,
- const ACE_TCHAR *name = 0,
- void *arg = 0);
-
- ~ACE_Sub_Barrier (void);
-
- /// True if this generation of the barrier is done.
- ACE_Condition_Thread_Mutex barrier_finished_;
-
- /// Number of threads that are still running.
- int running_threads_;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-/**
- * @class ACE_Barrier
- *
- * @brief Implements "barrier synchronization".
- *
- * This class allows <count> number of threads to synchronize
- * their completion of (one round of) a task, which is known as
- * "barrier synchronization". After all the threads call <wait()>
- * on the barrier they are all atomically released and can begin a new
- * round.
- *
- * This implementation uses a "sub-barrier generation numbering"
- * scheme to avoid overhead and to ensure that all threads wait to
- * leave the barrier correct. This code is based on an article from
- * SunOpsis Vol. 4, No. 1 by Richard Marejka
- * (Richard.Marejka@canada.sun.com).
- */
-class ACE_Export ACE_Barrier
-{
-public:
- /// Initialize the barrier to synchronize @a count threads.
- ACE_Barrier (unsigned int count,
- const ACE_TCHAR *name = 0,
- void *arg = 0);
-
- /// Default dtor.
- ~ACE_Barrier (void);
-
- /// Block the caller until all @c count threads have called @c wait and
- /// then allow all the caller threads to continue in parallel.
- ///
- /// @retval 0 after successfully waiting for all threads to wait.
- /// @retval -1 if an error occurs or the barrier is shut
- /// down (@sa shutdown ()).
- int wait (void);
-
- /// Shut the barrier down, aborting the wait of all waiting threads.
- /// Any threads waiting on the barrier when it is shut down will return with
- /// value -1, errno ESHUTDOWN.
- ///
- /// @retval 0 for success, -1 if already shut down.
- ///
- /// @since ACE beta 5.4.9.
- int shutdown (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Serialize access to the barrier state.
- ACE_Thread_Mutex lock_;
-
- /// Either 0 or 1, depending on whether we are the first generation
- /// of waiters or the next generation of waiters.
- int current_generation_;
-
- /// Total number of threads that can be waiting at any one time.
- int count_;
-
- /**
- * We keep two @c sub_barriers, one for the first "generation" of
- * waiters, and one for the next "generation" of waiters. This
- * efficiently solves the problem of what to do if all the first
- * generation waiters don't leave the barrier before one of the
- * threads calls wait() again (i.e., starts up the next generation
- * barrier).
- */
- ACE_Sub_Barrier sub_barrier_1_;
- ACE_Sub_Barrier sub_barrier_2_;
- ACE_Sub_Barrier *sub_barrier_[2];
-
-private:
- // = Prevent assignment and initialization.
- void operator= (const ACE_Barrier &);
- ACE_Barrier (const ACE_Barrier &);
-};
-
-#if 0
-/**
- * @class ACE_Process_Barrier
- *
- * @brief Implements "barrier synchronization" using ACE_Process_Mutexes!
- *
- * This class is just a simple wrapper for ACE_Barrier that
- * selects the USYNC_PROCESS variant for the locks.
- */
-class ACE_Export ACE_Process_Barrier : public ACE_Barrier
-{
-public:
- /// Create a Process_Barrier, passing in the optional @a name.
- ACE_Process_Barrier (unsigned int count, const ACE_TCHAR *name = 0);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-#endif /* 0 */
-
-/**
- * @class ACE_Thread_Barrier
- *
- * @brief Implements "barrier synchronization" using ACE_Thread_Mutexes!
- *
- * This class is just a simple wrapper for ACE_Barrier that
- * selects the USYNC_THREAD variant for the locks.
- */
-class ACE_Export ACE_Thread_Barrier : public ACE_Barrier
-{
-public:
- /// Create a Thread_Barrier, passing in the optional @a name.
- ACE_Thread_Barrier (unsigned int count, const ACE_TCHAR *name = 0);
-
- /// Default dtor.
- ~ACE_Thread_Barrier (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Barrier.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* !ACE_HAS_THREADS */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_BARRIER_H */
-
diff --git a/dep/include/ace/Barrier.inl b/dep/include/ace/Barrier.inl
deleted file mode 100644
index 10430d917a3..00000000000
--- a/dep/include/ace/Barrier.inl
+++ /dev/null
@@ -1,22 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Barrier.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Sub_Barrier::~ACE_Sub_Barrier (void)
-{
-}
-
-ACE_INLINE
-ACE_Barrier::~ACE_Barrier (void)
-{
-}
-
-ACE_INLINE
-ACE_Thread_Barrier::~ACE_Thread_Barrier (void)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Base_Thread_Adapter.h b/dep/include/ace/Base_Thread_Adapter.h
deleted file mode 100644
index 968535917d2..00000000000
--- a/dep/include/ace/Base_Thread_Adapter.h
+++ /dev/null
@@ -1,193 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Base_Thread_Adapter.h
- *
- * $Id: Base_Thread_Adapter.h 81239 2008-04-04 22:28:48Z iliyan $
- *
- * @author Nanbor Wang <nanbor@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_BASE_THREAD_ADAPTER_H
-#define ACE_BASE_THREAD_ADAPTER_H
-#include /**/ "ace/pre.h"
-
-#include "ace/OS_Log_Msg_Attributes.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include /**/ "ace/ACE_export.h"
-#include "ace/OS_Log_Msg_Attributes.h"
-
-#ifdef ACE_USES_GPROF
-#include "os_include/sys/os_time.h"
-#endif // ACE_USES_GPROF
-
-#if (defined (ACE_HAS_VERSIONED_NAMESPACE) && ACE_HAS_VERSIONED_NAMESPACE == 1)
-# define ACE_THREAD_ADAPTER_NAME ACE_PREPROC_CONCATENATE(ACE_VERSIONED_NAMESPACE_NAME, _ace_thread_adapter)
-#else
-# define ACE_THREAD_ADAPTER_NAME ace_thread_adapter
-#endif /* ACE_HAS_VERSIONED_NAMESPACE == 1 */
-
-// Run the thread entry point for the ACE_Thread_Adapter. This must
-// be an extern "C" to make certain compilers happy...
-
-extern "C" ACE_Export ACE_THR_FUNC_RETURN ACE_THREAD_ADAPTER_NAME (void *args);
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_OS_Thread_Descriptor
- *
- * @brief Parent class of all ACE_Thread_Descriptor classes.
- * =
- * Container for ACE_Thread_Descriptor members that are
- * used in ACE_OS.
- */
-class ACE_Export ACE_OS_Thread_Descriptor
-{
-public:
- /// Get the thread creation flags.
- long flags (void) const;
-
-protected:
- /// For use by ACE_Thread_Descriptor.
- ACE_OS_Thread_Descriptor (long flags = 0);
-
- /**
- * Keeps track of whether this thread was created "detached" or not.
- * If a thread is *not* created detached then if someone calls
- * <ACE_Thread_Manager::wait>, we need to join with that thread (and
- * close down the handle).
- */
- long flags_;
-};
-
-class ACE_Service_Gestalt;
-
-/**
- * @class ACE_Base_Thread_Adapter
- *
- * @brief Base class for all the Thread_Adapters.
- *
- * Converts a C++ function into a function that can be
- * called from a thread creation routine
- * (e.g., pthread_create() or _beginthreadex()) that expects an
- * extern "C" entry point. This class also makes it possible to
- * transparently provide hooks to register a thread with an
- * ACE_Thread_Manager.
- * This class is used in ACE_OS::thr_create(). In general, the
- * thread that creates an object of this class is different from
- * the thread that calls @c invoke() on this object. Therefore,
- * the @c invoke() method is responsible for deleting itself.
- */
-class ACE_Export ACE_Base_Thread_Adapter
-{
-public:
-
- virtual ~ACE_Base_Thread_Adapter (void);
-
- /// Virtual method invoked by the thread entry point.
- virtual ACE_THR_FUNC_RETURN invoke (void) = 0;
-
- /// Accessor for the C entry point function to the OS thread creation
- /// routine.
- ACE_THR_C_FUNC entry_point (void);
-
-#ifdef ACE_USES_GPROF
- /// Accessor to the itimer_
- /// followed http://sam.zoy.org/writings/programming/gprof.html
- struct itimerval* timerval (void);
-#endif // ACE_USES_PROF
-
- /// Invoke the close_log_msg_hook, if it is present
- static void close_log_msg (void);
-
- /// Invoke the sync_log_msg_hook, if it is present
- static void sync_log_msg (const ACE_TCHAR *prog_name);
-
- /// Invoke the thr_desc_log_msg_hook, if it is present
- static ACE_OS_Thread_Descriptor *thr_desc_log_msg (void);
-
-protected:
- /// Constructor.
- ACE_Base_Thread_Adapter (ACE_THR_FUNC user_func,
- void *arg,
- ACE_THR_C_FUNC entry_point = (ACE_THR_C_FUNC) ACE_THREAD_ADAPTER_NAME,
- ACE_OS_Thread_Descriptor *td = 0
-# if defined (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS)
- , ACE_SEH_EXCEPT_HANDLER selector = 0
- , ACE_SEH_EXCEPT_HANDLER handler = 0
-# endif /* ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS */
- );
- /// Inherit the logging features if the parent thread has an
- /// ACE_Log_Msg.
- void inherit_log_msg (void);
-
-private:
- /// The hooks to inherit and cleanup the Log_Msg attributes
- static ACE_INIT_LOG_MSG_HOOK init_log_msg_hook_;
- static ACE_INHERIT_LOG_MSG_HOOK inherit_log_msg_hook_;
- static ACE_CLOSE_LOG_MSG_HOOK close_log_msg_hook_;
- static ACE_SYNC_LOG_MSG_HOOK sync_log_msg_hook_;
- static ACE_THR_DESC_LOG_MSG_HOOK thr_desc_log_msg_hook_;
-
- /// Set the Log_Msg hooks
- static void set_log_msg_hooks (ACE_INIT_LOG_MSG_HOOK init_hook,
- ACE_INHERIT_LOG_MSG_HOOK inherit_hook,
- ACE_CLOSE_LOG_MSG_HOOK close_hook,
- ACE_SYNC_LOG_MSG_HOOK sync_hook,
- ACE_THR_DESC_LOG_MSG_HOOK thr_desc);
-
- /// Allow the ACE_Log_Msg class to set its hooks.
- friend class ACE_Log_Msg;
-
-protected:
- /// Thread startup function passed in by the user (C++ linkage).
- ACE_THR_FUNC user_func_;
-
- /// Argument to thread startup function.
- void *arg_;
-
- /// Entry point to the underlying OS thread creation call (C
- /// linkage).
- ACE_THR_C_FUNC entry_point_;
-
- /**
- * Optional thread descriptor. Passing this pointer in will force
- * the spawned thread to cache this location in <Log_Msg> and wait
- * until <Thread_Manager> fills in all information in thread
- * descriptor.
- */
- ACE_OS_Thread_Descriptor *thr_desc_;
-
- /// The ACE_Log_Msg attributes.
- ACE_OS_Log_Msg_Attributes log_msg_attributes_;
-
- /// That is usefull for gprof, define itimerval
-#ifdef ACE_USES_GPROF
- struct itimerval itimer_;
-#endif // ACE_USES_GPROF
-
- /// Keep a reference to the configuration context that spawns the
- /// thread so the child can inherit it.
- ACE_Service_Gestalt * const ctx_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/Base_Thread_Adapter.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_BASE_THREAD_ADAPTER_H */
-
diff --git a/dep/include/ace/Base_Thread_Adapter.inl b/dep/include/ace/Base_Thread_Adapter.inl
deleted file mode 100644
index 3bac80246dd..00000000000
--- a/dep/include/ace/Base_Thread_Adapter.inl
+++ /dev/null
@@ -1,48 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Base_Thread_Adapter.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE long
-ACE_OS_Thread_Descriptor::flags (void) const
-{
- return flags_;
-}
-
-ACE_INLINE
-ACE_OS_Thread_Descriptor::ACE_OS_Thread_Descriptor (long flags)
- : flags_ (flags)
-{
-}
-
-ACE_INLINE void
-ACE_Base_Thread_Adapter::set_log_msg_hooks (
- ACE_INIT_LOG_MSG_HOOK init_hook,
- ACE_INHERIT_LOG_MSG_HOOK inherit_hook,
- ACE_CLOSE_LOG_MSG_HOOK close_hook,
- ACE_SYNC_LOG_MSG_HOOK sync_hook,
- ACE_THR_DESC_LOG_MSG_HOOK thr_desc_hook)
-{
- ACE_Base_Thread_Adapter::init_log_msg_hook_ = init_hook;
- ACE_Base_Thread_Adapter::inherit_log_msg_hook_ = inherit_hook;
- ACE_Base_Thread_Adapter::close_log_msg_hook_ = close_hook;
- ACE_Base_Thread_Adapter::sync_log_msg_hook_ = sync_hook;
- ACE_Base_Thread_Adapter::thr_desc_log_msg_hook_ = thr_desc_hook;
-}
-
-ACE_INLINE ACE_THR_C_FUNC
-ACE_Base_Thread_Adapter::entry_point (void)
-{
- return this->entry_point_;
-}
-
-#ifdef ACE_USES_GPROF
-ACE_INLINE itimerval*
-ACE_Base_Thread_Adapter::timerval (void)
-{
- return &(this->itimer_);
-}
-#endif // ACE_USES_GPROF
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Based_Pointer_Repository.h b/dep/include/ace/Based_Pointer_Repository.h
deleted file mode 100644
index 4cb49cb078b..00000000000
--- a/dep/include/ace/Based_Pointer_Repository.h
+++ /dev/null
@@ -1,91 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Based_Pointer_Repository.h
- *
- * $Id: Based_Pointer_Repository.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Dietrich Quehl <Dietrich.Quehl@med.siemens.de>
- * @author Douglas C. Schmidt <schmidt@.cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_BASED_POINTER_REPOSITORY_H
-#define ACE_BASED_POINTER_REPOSITORY_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Singleton.h"
-#include "ace/Synch_Traits.h"
-#include "ace/os_include/os_stddef.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decl., using the "Cheshire Cat" technique.
-class ACE_Based_Pointer_Repository_Rep;
-
-/**
- * @class ACE_Based_Pointer_Repository
- *
- * @brief Maps pointers to the base address of the region to which each
- * pointer belongs.
- */
-class ACE_Export ACE_Based_Pointer_Repository
-{
-public:
- // = Use ACE_Null_Mutex to allow locking while iterating.
-
- // = Initialization and termination methods.
- ACE_Based_Pointer_Repository (void);
- ~ACE_Based_Pointer_Repository (void);
-
- // = Search structure methods.
- /**
- * Return the appropriate @a base_addr region that contains @a addr.
- * Returns 1 on success and 0 if the @a addr isn't contained in any
- * @a base_addr region.
- */
- int find (void *addr,
- void *&base_addr);
-
- /// Bind a new entry to the repository or update the size of an
- /// existing entry. Returns 0 on success and -1 on failure.
- int bind (void *addr,
- size_t size);
-
- /// Unbind from the repository the <base_addr> that @a addr is
- /// contained within.
- int unbind (void *addr);
-
-private:
-
- /// Use the "Cheshire-Cat" technique to hide the implementation in
- /// order to avoid circular #include dependencies.
- ACE_Based_Pointer_Repository_Rep *rep_;
-
-};
-
-// ----------------------------------
-
-/// Declare a process wide singleton
-ACE_SINGLETON_DECLARE (ACE_Singleton,
- ACE_Based_Pointer_Repository,
- ACE_SYNCH_RW_MUTEX)
-
-/// Provide a Singleton access point to the based pointer repository.
-typedef ACE_Singleton<ACE_Based_Pointer_Repository, ACE_SYNCH_RW_MUTEX>
- ACE_BASED_POINTER_REPOSITORY;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_BASED_POINTER_REPOSITORY_H */
-
diff --git a/dep/include/ace/Based_Pointer_T.h b/dep/include/ace/Based_Pointer_T.h
deleted file mode 100644
index 39437bbb3c9..00000000000
--- a/dep/include/ace/Based_Pointer_T.h
+++ /dev/null
@@ -1,206 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Based_Pointer_T.h
- *
- * $Id: Based_Pointer_T.h 81705 2008-05-15 14:02:02Z johnnyw $
- *
- * @author Dietrich Quehl <Dietrich.Quehl@med.siemens.de>
- * @author Douglas C. Schmidt <schmidt@.cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_BASED_POINTER_T_H
-#define ACE_BASED_POINTER_T_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-#include "ace/Basic_Types.h"
-
-#if defined (_MSC_VER)
-// Suppress warning e.g. "return type for
-// 'ACE_Based_Pointer<long>::operator ->' is 'long *' (i.e., not a UDT
-// or reference to a UDT. Will produce errors if applied using infix
-// notation)"
-#pragma warning(disable: 4284)
-#endif /* _MSC_VER */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Based_Pointer_Basic
- *
- * @brief A proxy that keeps track of the relative offset of a "pointer"
- * from its base address.
- * This class makes it possible to transparently use "pointers" in
- * shared memory as easily as programming with pointers to local
- * memory. In particular, we don't need to ensure that the base
- * addresses of all the pointers are mapped into separate
- * processes at the same absolute memory base address.
- */
-template <class CONCRETE>
-class ACE_Based_Pointer_Basic
-{
-public:
- /**
- * This constructor initializes the <base_offset_> by asking the
- * <ACE_BASED_POINTER_REPOSITORY> Singleton for the base address of
- * the memory region within which it is instantiated. Two results
- * are possible:
- *
- * 1. An <ACE_*_Memory_Pool> has stored a base address/size pair and the
- * new based-pointer instance is located between the base address and
- * the base address + size - 1. In this case, the repository
- * returns the base address.
- *
- * 2. No suitable address/size pair was found. The repository
- * assumes an address in the regular (not mapped) virtual address
- * space of the process and returns 0. In this case, the
- * based-pointer uses its address as an offset to it's base
- * address 0.
- */
- ACE_Based_Pointer_Basic (void);
-
- /**
- * Initialize this object using the @a initial pointer. This
- * constructor initializes the <base_offset_> by asking the
- * <ACE_BASED_POINTER_REPOSITORY> Singleton for the base address of
- * the memory region within which it is instantiated. Three results
- * are possible:
- *
- * 1. An <ACE_*_Memory_Pool> has stored a base address/size pair and the
- * new based-pointer instance is located between the base address and
- * the base address + size - 1. In this case, the repository
- * returns the base address.
- *
- * 2. No suitable address/size pair was found. The repository
- * assumes an address in the regular (not mapped) virtual address
- * space of the process and returns 0. In this case, the
- * based-pointer uses its address as an offset to its base
- * address 0.
- *
- * 3. If @a initial is 0 then set the value of <target_> to -1, which
- * indicates a "NULL" pointer.
- */
- ACE_Based_Pointer_Basic (CONCRETE *initial);
-
- /// Copy constructor.
- ACE_Based_Pointer_Basic (const ACE_Based_Pointer_Basic<CONCRETE> &);
-
- /// Constructor for know base address. @a o is only used to
- /// resolve overload ambiguity.
- ACE_Based_Pointer_Basic (const void *base_addr, int o);
-
- /// Pseudo-assignment operator.
- void operator = (CONCRETE *from);
-
- /// Pseudo-assignment operator.
- void operator = (const ACE_Based_Pointer_Basic<CONCRETE> &);
-
- /// Dereference operator.
- CONCRETE operator * (void) const;
-
- /// Less than operator.
- bool operator < (const ACE_Based_Pointer_Basic<CONCRETE> &) const;
-
- /// Less than or equal operator.
- bool operator <= (const ACE_Based_Pointer_Basic<CONCRETE> &) const;
-
- /// Greater than operator.
- bool operator > (const ACE_Based_Pointer_Basic<CONCRETE> &) const;
-
- /// Greater than or equal operator.
- bool operator >= (const ACE_Based_Pointer_Basic<CONCRETE> &) const;
-
- /// Equality operator.
- bool operator == (const ACE_Based_Pointer_Basic<CONCRETE> &) const;
-
- /// Inequality operator.
- bool operator != (const ACE_Based_Pointer_Basic<CONCRETE> &) const;
-
- /// Subscript operator.
- CONCRETE operator [](int index) const;
-
- /// Increment operator.
- void operator+= (int index);
-
- /// Returns the underlying memory address of the smart pointer.
- operator CONCRETE *() const;
-
- /// Returns the underlying memory address of the smart pointer.
- CONCRETE *addr (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /// Dump the state of the object.
- void dump (void) const;
-
-protected:
- ptrdiff_t target_;
-
- /// Keep track of our offset from the base pointer.
- ptrdiff_t base_offset_;
-};
-
-/**
- * @class ACE_Based_Pointer
- *
- * @brief A smart proxy that keeps track of the relative offset of a
- * "pointer" from its base address.
- *
- * This class makes it possible to transparently use "pointers" in
- * shared memory as easily as programming with pointers to local
- * memory by overloading the C++ delegation operator ->().
- */
-template <class CONCRETE>
-class ACE_Based_Pointer : public ACE_Based_Pointer_Basic<CONCRETE>
-{
-public:
- // = Initialization method.
- /// Constructor. See constructor for ACE_Based_Pointer_Basic for
- /// details.
- ACE_Based_Pointer (void);
-
- /// Initialize this object using the <initial> pointer. See
- /// constructor for ACE_Based_Pointer_Basic for details.
- ACE_Based_Pointer (CONCRETE *initial);
-
- /// Initialize this object with known @a base_addr. @a dummy is
- /// a dummy value used to resolve overload ambiguity and it
- /// otherwise ignored.
- ACE_Based_Pointer (const void *base_addr, int dummy);
-
- /// Copy constructor (not implemented yet).
- ACE_Based_Pointer (const ACE_Based_Pointer<CONCRETE> &);
-
- /// Assignment operator.
- void operator = (const ACE_Based_Pointer<CONCRETE> &);
-
- /// Pseudo-assignment operator.
- void operator = (CONCRETE *from);
-
- /// The C++ "delegation operator".
- CONCRETE *operator-> (void);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Based_Pointer_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Based_Pointer_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Based_Pointer_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_BASED_POINTER_T_H */
-
diff --git a/dep/include/ace/Based_Pointer_T.inl b/dep/include/ace/Based_Pointer_T.inl
deleted file mode 100644
index ba6a5aa511b..00000000000
--- a/dep/include/ace/Based_Pointer_T.inl
+++ /dev/null
@@ -1,139 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Based_Pointer_T.inl 81705 2008-05-15 14:02:02Z johnnyw $
-
-#define ACE_COMPUTE_BASED_POINTER(P) (((char *) (P) - (P)->base_offset_) + (P)->target_)
-#include "ace/Global_Macros.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class CONCRETE> ACE_INLINE CONCRETE *
-ACE_Based_Pointer<CONCRETE>::operator->(void)
-{
- ACE_TRACE ("ACE_Based_Pointer<CONCRETE>::operator->");
- return reinterpret_cast<CONCRETE *> (ACE_COMPUTE_BASED_POINTER (this));
-}
-
-template <class CONCRETE> ACE_INLINE void
-ACE_Based_Pointer_Basic<CONCRETE>::operator = (CONCRETE *rhs)
-{
- ACE_TRACE ("ACE_Based_Pointer_Basic<CONCRETE>::operator =");
- if (rhs == 0)
- // Store a value of <target_> that indicate "NULL" pointer.
- this->target_ = -1;
- else
- this->target_ = ((char *) rhs
- - ((char *) this - this->base_offset_));
-}
-
-template <class CONCRETE> ACE_INLINE void
-ACE_Based_Pointer<CONCRETE>::operator = (CONCRETE *rhs)
-{
- ACE_TRACE ("ACE_Based_Pointer<CONCRETE>::operator =");
- if (rhs == 0)
- // Store a value of <target_> that indicate "NULL" pointer.
- this->target_ = -1;
- else
- this->target_ = ((char *) rhs
- - ((char *) this - this->base_offset_));
-}
-
-template <class CONCRETE> ACE_INLINE CONCRETE
-ACE_Based_Pointer_Basic<CONCRETE>::operator *(void) const
-{
- ACE_TRACE ("ACE_Based_Pointer_Basic<CONCRETE>::operator *");
- return *reinterpret_cast<CONCRETE *> (ACE_COMPUTE_BASED_POINTER (this));
-}
-
-template <class CONCRETE> ACE_INLINE CONCRETE *
-ACE_Based_Pointer_Basic<CONCRETE>::addr (void) const
-{
- ACE_TRACE ("ACE_Based_Pointer_Basic<CONCRETE>::addr");
-
- if (this->target_ == -1)
- return 0;
- else
- return reinterpret_cast<CONCRETE *> (ACE_COMPUTE_BASED_POINTER (this));
-}
-
-template <class CONCRETE> ACE_INLINE
-ACE_Based_Pointer_Basic<CONCRETE>::operator CONCRETE *() const
-{
- ACE_TRACE ("ACE_Based_Pointer_Basic<CONCRETE>::operator CONCRETE *()");
-
- return this->addr ();
-}
-
-template <class CONCRETE> ACE_INLINE CONCRETE
-ACE_Based_Pointer_Basic<CONCRETE>::operator [] (int index) const
-{
- ACE_TRACE ("ACE_Based_Pointer_Basic<CONCRETE>::operator []");
- CONCRETE *c =
- reinterpret_cast<CONCRETE *> (ACE_COMPUTE_BASED_POINTER (this));
- return c[index];
-}
-
-template <class CONCRETE> ACE_INLINE void
-ACE_Based_Pointer_Basic<CONCRETE>::operator += (int index)
-{
- ACE_TRACE ("ACE_Based_Pointer_Basic<CONCRETE>::operator +=");
- this->base_offset_ += (index * sizeof (CONCRETE));
-}
-
-template <class CONCRETE> ACE_INLINE bool
-ACE_Based_Pointer_Basic<CONCRETE>::operator == (const ACE_Based_Pointer_Basic<CONCRETE> &rhs) const
-{
- ACE_TRACE ("ACE_Based_Pointer_Basic<CONCRETE>::operator ==");
- return ACE_COMPUTE_BASED_POINTER (this) == ACE_COMPUTE_BASED_POINTER (&rhs);
-}
-
-template <class CONCRETE> ACE_INLINE bool
-ACE_Based_Pointer_Basic<CONCRETE>::operator != (const ACE_Based_Pointer_Basic<CONCRETE> &rhs) const
-{
- ACE_TRACE ("ACE_Based_Pointer_Basic<CONCRETE>::operator !=");
- return !(*this == rhs);
-}
-
-template <class CONCRETE> ACE_INLINE bool
-ACE_Based_Pointer_Basic<CONCRETE>::operator < (const ACE_Based_Pointer_Basic<CONCRETE> &rhs) const
-{
- ACE_TRACE ("ACE_Based_Pointer_Basic<CONCRETE>::operator <");
- return ACE_COMPUTE_BASED_POINTER (this) < ACE_COMPUTE_BASED_POINTER (&rhs);
-}
-
-template <class CONCRETE> ACE_INLINE bool
-ACE_Based_Pointer_Basic<CONCRETE>::operator <= (const ACE_Based_Pointer_Basic<CONCRETE> &rhs) const
-{
- ACE_TRACE ("ACE_Based_Pointer_Basic<CONCRETE>::operator <=");
- return ACE_COMPUTE_BASED_POINTER (this) <= ACE_COMPUTE_BASED_POINTER (&rhs);
-}
-
-template <class CONCRETE> ACE_INLINE bool
-ACE_Based_Pointer_Basic<CONCRETE>::operator > (const ACE_Based_Pointer_Basic<CONCRETE> &rhs) const
-{
- ACE_TRACE ("ACE_Based_Pointer_Basic<CONCRETE>::operator >");
- return ACE_COMPUTE_BASED_POINTER (this) > ACE_COMPUTE_BASED_POINTER (&rhs);
-}
-
-template <class CONCRETE> ACE_INLINE bool
-ACE_Based_Pointer_Basic<CONCRETE>::operator >= (const ACE_Based_Pointer_Basic<CONCRETE> &rhs) const
-{
- ACE_TRACE ("ACE_Based_Pointer_Basic<CONCRETE>::operator >=");
- return ACE_COMPUTE_BASED_POINTER (this) >= ACE_COMPUTE_BASED_POINTER (&rhs);
-}
-
-template <class CONCRETE> ACE_INLINE void
-ACE_Based_Pointer_Basic<CONCRETE>::operator= (const ACE_Based_Pointer_Basic<CONCRETE> &rhs)
-{
- ACE_TRACE ("ACE_Based_Pointer_Basic<CONCRETE>::operator=");
- *this = rhs.addr ();
-}
-
-template <class CONCRETE> ACE_INLINE void
-ACE_Based_Pointer<CONCRETE>::operator= (const ACE_Based_Pointer<CONCRETE> &rhs)
-{
- ACE_TRACE ("ACE_Based_Pointer<CONCRETE>::operator=");
- *this = rhs.addr ();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Basic_Stats.h b/dep/include/ace/Basic_Stats.h
deleted file mode 100644
index 2bf96a61c06..00000000000
--- a/dep/include/ace/Basic_Stats.h
+++ /dev/null
@@ -1,87 +0,0 @@
-
-//=============================================================================
-/**
- * @file Basic_Stats.h
- *
- * $Id: Basic_Stats.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Carlos O'Ryan <coryan@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_BASIC_STATS_H
-#define ACE_BASIC_STATS_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-#include "ace/Basic_Types.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/// Collect basic stats about a series of samples
-/**
- * Compute the average and standard deviation (aka jitter) for an
- * arbitrary number of samples, using constant space.
- * Normally used for latency statistics.
- */
-class ACE_Export ACE_Basic_Stats
-{
-public:
- /// Constructor
- /**
- * The number of samples is pre-allocated, and cannot changes once
- * the class is initialized.
- */
- ACE_Basic_Stats (void);
-
- /// The number of samples received so far
- ACE_UINT32 samples_count (void) const;
-
- /// Record one sample.
- void sample (ACE_UINT64 value);
-
- /// Update the values to reflect the stats in @a rhs.
- void accumulate (const ACE_Basic_Stats &rhs);
-
- /// Dump all the samples
- /**
- * Prints out the results, using @a msg as a prefix for each message and
- * scaling all the numbers by @a scale_factor. The latter is useful because
- * high resolution timer samples are acquired in clock ticks, but often
- * presented in microseconds.
- */
- void dump_results (const ACE_TCHAR *msg,
- ACE_UINT32 scale_factor) const;
-
- /// The number of samples
- ACE_UINT32 samples_count_;
-
- /// The minimum value
- ACE_UINT64 min_;
-
- /// The number of the sample that had the minimum value
- ACE_UINT32 min_at_;
-
- /// The maximum value
- ACE_UINT64 max_;
-
- /// The number of the sample that had the maximum value
- ACE_UINT32 max_at_;
-
- /// The sum of all the values
- ACE_UINT64 sum_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Basic_Stats.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_BASIC_STATS_H */
-
diff --git a/dep/include/ace/Basic_Stats.inl b/dep/include/ace/Basic_Stats.inl
deleted file mode 100644
index e2f153884e3..00000000000
--- a/dep/include/ace/Basic_Stats.inl
+++ /dev/null
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Basic_Stats.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Basic_Stats::ACE_Basic_Stats (void)
- : samples_count_ (0)
- , min_ (0)
- , min_at_ (0)
- , max_ (0)
- , max_at_ (0)
- , sum_ (0)
-{
-}
-
-ACE_INLINE ACE_UINT32
-ACE_Basic_Stats::samples_count (void) const
-{
- return this->samples_count_;
-}
-
-ACE_INLINE void
-ACE_Basic_Stats::sample (ACE_UINT64 value)
-{
- ++this->samples_count_;
-
- if (this->samples_count_ == 1u)
- {
- this->min_ = value;
- this->min_at_ = this->samples_count_;
- this->max_ = value;
- this->max_at_ = this->samples_count_;
- }
- else
- {
- if (this->min_ > value)
- {
- this->min_ = value;
- this->min_at_ = this->samples_count_;
- }
- if (this->max_ < value)
- {
- this->max_ = value;
- this->max_at_ = this->samples_count_;
- }
- }
-
- this->sum_ += value;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Basic_Types.h b/dep/include/ace/Basic_Types.h
deleted file mode 100644
index eb080e4975e..00000000000
--- a/dep/include/ace/Basic_Types.h
+++ /dev/null
@@ -1,888 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Basic_Types.h
- *
- * $Id: Basic_Types.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author David L. Levine
- *
- * #defines the list of preprocessor macros below. The config.h file can
- * pre-define any of these to short-cut the definitions. This is usually
- * only necessary if the preprocessor does all of its math using integers.
- *
- * Sizes of built-in types:
- * - ACE_SIZEOF_CHAR
- * - ACE_SIZEOF_WCHAR
- * - ACE_SIZEOF_SHORT
- * - ACE_SIZEOF_INT
- * - ACE_SIZEOF_LONG
- * - ACE_SIZEOF_LONG_LONG
- * - ACE_SIZEOF_VOID_P
- * - ACE_SIZEOF_FLOAT
- * - ACE_SIZEOF_DOUBLE
- * - ACE_SIZEOF_LONG_DOUBLE
- *
- * Wrappers for built-in types of specific sizes:
- * - ACE_USHORT16 (For backward compatibility. Use ACE_UINT16 instead.)
- * - ACE_INT8
- * - ACE_UINT8
- * - ACE_INT16
- * - ACE_UINT16
- * - ACE_INT32
- * - ACE_UINT32
- * - ACE_UINT64
- * (@note ACE_INT64 is partly defined, there is no ACE_LongLong for
- * platforms that don't have a native 8-byte integer type.)
- *
- * Byte-order (endian-ness) determination:
- * ACE_BYTE_ORDER, to either ACE_BIG_ENDIAN or ACE_LITTLE_ENDIAN
- *
- *
- */
-//=============================================================================
-
-#include "ace/config-lite.h"
-
-#ifndef ACE_BASIC_TYPES_H
-# define ACE_BASIC_TYPES_H
-
-# include /**/ "ace/pre.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// Pull in definitions
-# include "ace/os_include/os_limits.h" // Integer limits
-# include "ace/os_include/os_float.h" // Floating point limits
-# include "ace/os_include/os_stdlib.h" // Other types
-# include "ace/os_include/os_stddef.h" // Get ptrdiff_t - see further comments below
-
-# if defined(ACE_LACKS_LONGLONG_T)
-# include "ace/os_include/os_stdio.h" // For long long emulation
-# endif /* ACE_LACKS_LONGLONG_T */
-
-# include "ace/os_include/sys/os_types.h"
-
-# if !defined (ACE_LACKS_SYS_PARAM_H)
-# include /**/ <sys/param.h>
-# endif /* ACE_LACKS_SYS_PARAM_H */
-
-# include "ace/ACE_export.h"
-
-# if !defined (ACE_LACKS_STDINT_H)
-# include <stdint.h>
-# endif
-# if !defined (ACE_LACKS_INTTYPES_H)
-# include <inttypes.h>
-# endif
-
-#ifdef ACE_LACKS_INTPTR_T
-# include "ace/If_Then_Else.h"
-
-// This intptr_t typedef is here instead of
-// <ace/os_include/os_inttypes.h> since it depends on the template
-// metaprogramming in <ace/If_Then_Else.h>.
-
-// We could compare ACE_SIZEOF_VOID_P against ACE_SIZEOF_LONG, etc.
-// However, that depends on the ACE preprocessor symbol definitions in
-// the platform-specific configuration header being correct.
-// The template meta-programming approach we take below,
-// i.e. determining the type at compile-time rather than at
-// preprocessing-time, will work for all platforms, and does not
-// depend on ACE developer-defined configuration parameters.
-
-typedef ACE::If_Then_Else<
- (sizeof (void*) == sizeof (signed int)),
- signed int,
- ACE::If_Then_Else<
- (sizeof (void*) == sizeof (signed long)),
- signed long,
-#ifdef ACE_LACKS_LONGLONG_T
- void /* Unknown. Force an invalid type */
-#else
- ACE::If_Then_Else<
- (sizeof (void*) == sizeof (signed long long)),
- signed long long,
- void /* Unknown. Force an invalid type */
- >::result_type
-#endif /* ACE_LACKS_LONGLONG_T */
- >::result_type
- >::result_type intptr_t;
-
-typedef ACE::If_Then_Else<
- (sizeof (void*) == sizeof (unsigned int)),
- unsigned int,
- ACE::If_Then_Else<
- (sizeof (void*) == sizeof (unsigned long)),
- unsigned long,
-#ifdef ACE_LACKS_UNSIGNEDLONGLONG_T
- void /* Unknown. Force an invalid type */
-#else
- ACE::If_Then_Else<
- (sizeof (void*) == sizeof (unsigned long long)),
- unsigned long long,
- void /* Unknown. Force an invalid type */
- >::result_type
-#endif /* ACE_LACKS_UNSIGNEDLONGLONG_T */
- >::result_type
- >::result_type uintptr_t;
-
-#endif /* ACE_LACKS_INTPTR_T */
-
-// A char always has 1 byte, by definition.
-# define ACE_SIZEOF_CHAR 1
-
-// Unfortunately, there isn't a portable way to determine the size of a wchar.
-// So we just define them on a platform basis. If the platform doesn't
-// define it and it's an XPG4 system, assume wchar_t is 4 bytes. Some code
-// uses ACE_SIZEOF_WCHAR in preprocessor statements, so sizeof() isn't valid.
-// If the platform config doesn't set this, and this guess is wrong,
-// Basic_Types_Test should catch the inconsistency.
-# if defined (ACE_HAS_WCHAR)
-# if !defined (ACE_SIZEOF_WCHAR)
-# if defined (ACE_HAS_XPG4_MULTIBYTE_CHAR)
-# define ACE_SIZEOF_WCHAR 4
-# else
-// 0 so the Basic_Types test will catch this.
-# define ACE_SIZEOF_WCHAR 0
-# endif /* ACE_HAS_XPG4_MULTIBYTE_CHAR */
-# endif /* !ACE_SIZEOF_WCHAR */
-# endif /* ACE_HAS_WCHAR */
-
-// The number of bytes in a short.
-# if !defined (ACE_SIZEOF_SHORT)
-# if (USHRT_MAX) == 255U
-# define ACE_SIZEOF_SHORT 1
-# elif (USHRT_MAX) == 65535U
-# define ACE_SIZEOF_SHORT 2
-# elif (USHRT_MAX) == 4294967295U
-# define ACE_SIZEOF_SHORT 4
-# elif (USHRT_MAX) == 18446744073709551615U
-# define ACE_SIZEOF_SHORT 8
-# else
-# error: unsupported short size, must be updated for this platform!
-# endif /* USHRT_MAX */
-# endif /* !defined (ACE_SIZEOF_SHORT) */
-
-// The number of bytes in an int.
-# if !defined (ACE_SIZEOF_INT)
-# if (UINT_MAX) == 65535U
-# define ACE_SIZEOF_INT 2
-# elif (UINT_MAX) == 4294967295U
-# define ACE_SIZEOF_INT 4
-# elif (UINT_MAX) == 18446744073709551615U
-# define ACE_SIZEOF_INT 8
-# else
-# error: unsupported int size, must be updated for this platform!
-# endif /* UINT_MAX */
-# endif /* !defined (ACE_SIZEOF_INT) */
-
-// The number of bytes in a long.
-# if !defined (ACE_SIZEOF_LONG)
-# if (ULONG_MAX) == 65535UL
-# define ACE_SIZEOF_LONG 2
-# elif ((ULONG_MAX) == 4294967295UL)
-# define ACE_SIZEOF_LONG 4
-# elif ((ULONG_MAX) == 18446744073709551615UL)
-# define ACE_SIZEOF_LONG 8
-# else
-# error: unsupported long size, must be updated for this platform!
-# endif /* ULONG_MAX */
-# endif /* !defined (ACE_SIZEOF_LONG) */
-
-// The number of bytes in a long long.
-# if !defined (ACE_SIZEOF_LONG_LONG)
-# if defined (ACE_LACKS_LONGLONG_T)
-# define ACE_SIZEOF_LONG_LONG 8
-# elif defined (ULLONG_MAX)
-# if ((ULLONG_MAX) == 4294967295ULL)
-# define ACE_SIZEOF_LONG_LONG 4
-# elif ((ULLONG_MAX) == 18446744073709551615ULL)
-# define ACE_SIZEOF_LONG_LONG 8
-# endif
-# elif defined (ULONGLONG_MAX)
-# if ((ULONGLONG_MAX) == 4294967295ULL)
-# define ACE_SIZEOF_LONG_LONG 4
-# elif ((ULONGLONG_MAX) == 18446744073709551615ULL)
-# define ACE_SIZEOF_LONG_LONG 8
-# endif
-# endif
-# // If we can't determine the size of long long, assume it is 8
-# // instead of erroring out. (Either ULLONG_MAX and ULONGLONG_MAX
-# // may not be supported; or an extended C/C++ dialect may need to
-# // be selected. If this assumption is wrong, it can be addressed
-# // in the platform-specific config header.
-# if !defined (ACE_SIZEOF_LONG_LONG)
-# define ACE_SIZEOF_LONG_LONG 8
-# endif
-# endif /* !defined (ACE_SIZEOF_LONG_LONG) */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// The sizes of the commonly implemented types are now known. Set up
-// typedefs for whatever we can. Some of these are needed for certain
-// cases of ACE_UINT64, so do them before the 64-bit stuff.
-
-#if defined (ACE_INT8_TYPE)
- typedef ACE_INT8_TYPE ACE_INT8;
-#elif defined (ACE_HAS_INT8_T)
- typedef int8_t ACE_INT8;
-#elif !defined (ACE_LACKS_SIGNED_CHAR)
- typedef signed char ACE_INT8;
-#else
- typedef char ACE_INT8;
-#endif /* defined (ACE_INT8_TYPE) */
-
-#if defined (ACE_UINT8_TYPE)
- typedef ACE_UINT8_TYPE ACE_UINT8;
-#elif defined (ACE_HAS_UINT8_T)
- typedef uint8_t ACE_UINT8;
-#else
- typedef unsigned char ACE_UINT8;
-#endif /* defined (ACE_UINT8_TYPE) */
-
-#if defined (ACE_INT16_TYPE)
- typedef ACE_INT16_TYPE ACE_INT16;
-#elif defined (ACE_HAS_INT16_T)
- typedef int16_t ACE_INT16;
-#elif ACE_SIZEOF_SHORT == 2
- typedef short ACE_INT16;
-#elif ACE_SIZEOF_INT == 2
- typedef int ACE_INT16;
-#else
-# error Have to add to the ACE_INT16 type setting
-#endif /* defined (ACE_INT16_TYPE) */
-
-#if defined (ACE_UINT16_TYPE)
- typedef ACE_UINT16_TYPE ACE_UINT16;
-#elif defined (ACE_HAS_UINT16_T)
- typedef uint16_t ACE_UINT16;
-#elif ACE_SIZEOF_SHORT == 2
- typedef unsigned short ACE_UINT16;
-#elif ACE_SIZEOF_INT == 2
- typedef unsigned int ACE_UINT16;
-#else
-# error Have to add to the ACE_UINT16 type setting
-#endif /* defined (ACE_UINT16_TYPE) */
-
-#if defined (ACE_INT32_TYPE)
- typedef ACE_INT32_TYPE ACE_INT32;
-#elif defined (ACE_HAS_INT32_T)
- typedef int32_t ACE_INT32;
-#elif ACE_SIZEOF_INT == 4
- typedef int ACE_INT32;
-#elif ACE_SIZEOF_LONG == 4
- typedef long ACE_INT32;
-#else
-# error Have to add to the ACE_INT32 type setting
-#endif /* defined (ACE_INT32_TYPE) */
-
-#if defined (ACE_UINT32_TYPE)
- typedef ACE_UINT32_TYPE ACE_UINT32;
-#elif defined (ACE_HAS_UINT32_T)
- typedef uint32_t ACE_UINT32;
-#elif ACE_SIZEOF_INT == 4
- typedef unsigned int ACE_UINT32;
-#elif ACE_SIZEOF_LONG == 4
- typedef unsigned long ACE_UINT32;
-#else
-# error Have to add to the ACE_UINT32 type setting
-#endif /* defined (ACE_UINT32_TYPE) */
-
-#if defined (ACE_INT64_TYPE)
- typedef ACE_INT64_TYPE ACE_INT64;
-#elif defined (ACE_HAS_INT64_T)
- typedef int64_t ACE_INT64;
-#elif ACE_SIZEOF_LONG == 8
- typedef long ACE_INT64;
-#elif !defined (ACE_LACKS_LONGLONG_T) && ACE_SIZEOF_LONG_LONG == 8
-# ifdef __GNUC__
- // Silence g++ "-pedantic" warnings regarding use of "long long"
- // type.
- __extension__
-# endif /* __GNUC__ */
- typedef long long ACE_INT64;
-#endif /* defined (ACE_INT64_TYPE) */
-
-#if !(defined (ACE_LACKS_LONGLONG_T) || defined (ACE_LACKS_UNSIGNEDLONGLONG_T))
-/* See matching #if around ACE_U_LongLong class declaration below */
-
-# if defined (ACE_UINT64_TYPE)
- typedef ACE_UINT64_TYPE ACE_UINT64;
-# elif defined (ACE_HAS_UINT64_T)
- typedef uint64_t ACE_UINT64;
-# elif ACE_SIZEOF_LONG == 8
- typedef unsigned long ACE_UINT64;
-# elif ACE_SIZEOF_LONG_LONG == 8
-# ifdef __GNUC__
- // Silence g++ "-pedantic" warnings regarding use of "long long"
- // type.
- __extension__
-# endif /* __GNUC__ */
- typedef unsigned long long ACE_UINT64;
-# endif /* defined (ACE_UINT64_TYPE) */
-#endif /* !(ACE_LACKS_LONGLONG_T || ACE_LACKS_UNSIGNEDLONGLONG_T) */
-
-typedef ACE_UINT16 ACE_USHORT16; // @@ Backward compatibility.
-
-// Define a generic byte for use in codecs
-typedef unsigned char ACE_Byte;
-
-// Define a pseudo wide character type when wchar is not supported so we
-// can support basic wide character string operations.
-
-# if defined (ACE_HAS_WCHAR) || defined (ACE_HAS_XPG4_MULTIBYTE_CHAR)
-# define ACE_WINT_T wint_t
-# define ACE_WCHAR_T wchar_t
-# else
-# define ACE_WINT_T ACE_UINT16
-# define ACE_WCHAR_T ACE_UINT16
-# endif /* ACE_HAS_WCHAR */
-
-// The number of bytes in a void *.
-# ifndef ACE_SIZEOF_VOID_P
-# define ACE_SIZEOF_VOID_P ACE_SIZEOF_LONG
-# endif /* ACE_SIZEOF_VOID_P */
-
-// Type for doing arithmetic on pointers ... as elsewhere, we assume
-// that unsigned versions of a type are the same size as the signed
-// version of the same type.
-# if defined (ACE_HAS_WINCE) && (_WIN32_WCE < 400)
-typedef unsigned long ptrdiff_t; // evc3, PocketPC don't defined ptrdiff_t
-# endif
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// Byte-order (endian-ness) determination.
-# if defined (BYTE_ORDER)
-# if (BYTE_ORDER == LITTLE_ENDIAN)
-# define ACE_LITTLE_ENDIAN 0x0123
-# define ACE_BYTE_ORDER ACE_LITTLE_ENDIAN
-# elif (BYTE_ORDER == BIG_ENDIAN)
-# define ACE_BIG_ENDIAN 0x3210
-# define ACE_BYTE_ORDER ACE_BIG_ENDIAN
-# else
-# error: unknown BYTE_ORDER!
-# endif /* BYTE_ORDER */
-# elif defined (_BYTE_ORDER)
-# if (_BYTE_ORDER == _LITTLE_ENDIAN)
-# define ACE_LITTLE_ENDIAN 0x0123
-# define ACE_BYTE_ORDER ACE_LITTLE_ENDIAN
-# elif (_BYTE_ORDER == _BIG_ENDIAN)
-# define ACE_BIG_ENDIAN 0x3210
-# define ACE_BYTE_ORDER ACE_BIG_ENDIAN
-# else
-# error: unknown _BYTE_ORDER!
-# endif /* _BYTE_ORDER */
-# elif defined (__BYTE_ORDER)
-# if (__BYTE_ORDER == __LITTLE_ENDIAN)
-# define ACE_LITTLE_ENDIAN 0x0123
-# define ACE_BYTE_ORDER ACE_LITTLE_ENDIAN
-# elif (__BYTE_ORDER == __BIG_ENDIAN)
-# define ACE_BIG_ENDIAN 0x3210
-# define ACE_BYTE_ORDER ACE_BIG_ENDIAN
-# else
-# error: unknown __BYTE_ORDER!
-# endif /* __BYTE_ORDER */
-# else /* ! BYTE_ORDER && ! __BYTE_ORDER */
- // We weren't explicitly told, so we have to figure it out . . .
-# if defined (i386) || defined (__i386__) || defined (_M_IX86) || \
- defined (vax) || defined (__alpha) || defined (__LITTLE_ENDIAN__) || \
- defined (ARM) || defined (_M_IA64) || defined (__ia64__) || \
- defined (_M_AMD64) || defined (__amd64)
- // We know these are little endian.
-# define ACE_LITTLE_ENDIAN 0x0123
-# define ACE_BYTE_ORDER ACE_LITTLE_ENDIAN
-# else
- // Otherwise, we assume big endian.
-# define ACE_BIG_ENDIAN 0x3210
-# define ACE_BYTE_ORDER ACE_BIG_ENDIAN
-# endif
-# endif /* ! BYTE_ORDER && ! __BYTE_ORDER */
-
-// Byte swapping macros to deal with differences between little endian
-// and big endian machines. Note that "long" here refers to 32 bit
-// quantities.
-# define ACE_SWAP_LONG(L) ((ACE_SWAP_WORD ((L) & 0xFFFF) << 16) \
- | ACE_SWAP_WORD(((L) >> 16) & 0xFFFF))
-# define ACE_SWAP_WORD(L) ((((L) & 0x00FF) << 8) | (((L) & 0xFF00) >> 8))
-
-# if defined (ACE_LITTLE_ENDIAN)
-# define ACE_HTONL(X) ACE_SWAP_LONG (X)
-# define ACE_NTOHL(X) ACE_SWAP_LONG (X)
-# define ACE_IDL_NCTOHL(X) (X)
-# define ACE_IDL_NSTOHL(X) (X)
-# else
-# define ACE_HTONL(X) X
-# define ACE_NTOHL(X) X
-# define ACE_IDL_NCTOHL(X) (X << 24)
-# define ACE_IDL_NSTOHL(X) ((X) << 16)
-# endif /* ACE_LITTLE_ENDIAN */
-
-# if defined (ACE_LITTLE_ENDIAN)
-# define ACE_HTONS(x) ACE_SWAP_WORD(x)
-# define ACE_NTOHS(x) ACE_SWAP_WORD(x)
-# else
-# define ACE_HTONS(x) x
-# define ACE_NTOHS(x) x
-# endif /* ACE_LITTLE_ENDIAN */
-
-#if defined (ACE_LACKS_LONGLONG_T)
- // This throws away the high 32 bits. It's very unlikely that a
- // pointer will be more than 32 bits wide if the platform does not
- // support 64-bit integers.
-# define ACE_LONGLONG_TO_PTR(PTR_TYPE, L) \
- reinterpret_cast<PTR_TYPE> (L.lo ())
-#elif defined (ACE_OPENVMS) && (!defined (__INITIAL_POINTER_SIZE) || (__INITIAL_POINTER_SIZE < 64))
-# define ACE_LONGLONG_TO_PTR(PTR_TYPE, L) \
- reinterpret_cast<PTR_TYPE> (static_cast<int> (L))
-#else /* ! ACE_LACKS_LONGLONG_T */
-# define ACE_LONGLONG_TO_PTR(PTR_TYPE, L) \
- reinterpret_cast<PTR_TYPE> (static_cast<intptr_t> (L))
-#endif /* ! ACE_LACKS_LONGLONG_T */
-
-// If the platform lacks an unsigned long long, define one.
-#if defined (ACE_LACKS_LONGLONG_T) || defined (ACE_LACKS_UNSIGNEDLONGLONG_T)
-// Forward declaration for streams
-# include "ace/iosfwd.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_U_LongLong
- *
- * @brief Unsigned long long for platforms that don't have one.
- *
- * Provide our own unsigned long long. This is intended to be
- * use with ACE_High_Res_Timer, so the division operator assumes
- * that the quotient fits into a u_long.
- * Please note that the constructor takes (optionally) two values.
- * The high one contributes 0x100000000 times its value. So,
- * for example, (0, 2) is _not_ 20000000000, but instead
- * 0x200000000. To emphasize this, the default values are expressed
- * in hex, and output () dumps the value in hex.
- */
- class ACE_Export ACE_U_LongLong
- {
- public:
- // = Initialization and termination methods.
-#if defined (ACE_LACKS_UNSIGNEDLONGLONG_T)
- ACE_U_LongLong (const long long value = 0x0);
-#else
- ACE_U_LongLong (const ACE_UINT32 lo = 0x0, const ACE_UINT32 hi = 0x0);
-#endif
- ACE_U_LongLong (const ACE_U_LongLong &);
- ACE_U_LongLong &operator= (const ACE_U_LongLong &);
- ACE_U_LongLong &operator= (const ACE_INT32 &);
- ACE_U_LongLong &operator= (const ACE_UINT32 &);
- ~ACE_U_LongLong (void);
-
- // = Overloaded relation operators.
- bool operator== (const ACE_U_LongLong &) const;
- bool operator== (const ACE_UINT32) const;
- bool operator!= (const ACE_U_LongLong &) const;
- bool operator!= (const ACE_UINT32) const;
- bool operator< (const ACE_U_LongLong &) const;
- bool operator< (const ACE_UINT32) const;
- bool operator<= (const ACE_U_LongLong &) const;
- bool operator<= (const ACE_UINT32) const;
- bool operator> (const ACE_U_LongLong &) const;
- bool operator> (const ACE_UINT32) const;
- bool operator>= (const ACE_U_LongLong &) const;
- bool operator>= (const ACE_UINT32) const;
-
- ACE_U_LongLong operator+ (const ACE_U_LongLong &) const;
- ACE_U_LongLong operator+ (const ACE_UINT32) const;
- ACE_U_LongLong operator- (const ACE_U_LongLong &) const;
- ACE_U_LongLong operator- (const ACE_UINT32) const;
- ACE_U_LongLong operator* (const ACE_UINT32) const;
- ACE_U_LongLong &operator*= (const ACE_UINT32);
-
- ACE_U_LongLong operator<< (const unsigned int) const;
- ACE_U_LongLong &operator<<= (const unsigned int);
- ACE_U_LongLong operator>> (const unsigned int) const;
- ACE_U_LongLong &operator>>= (const unsigned int);
-
- double operator/ (const double) const;
-
- ACE_U_LongLong &operator+= (const ACE_U_LongLong &);
- ACE_U_LongLong &operator+= (const ACE_UINT32);
- ACE_U_LongLong &operator-= (const ACE_U_LongLong &);
- ACE_U_LongLong &operator-= (const ACE_UINT32);
- ACE_U_LongLong &operator++ ();
- ACE_U_LongLong &operator-- ();
- const ACE_U_LongLong operator++ (int);
- const ACE_U_LongLong operator-- (int);
- ACE_U_LongLong &operator|= (const ACE_U_LongLong);
- ACE_U_LongLong &operator|= (const ACE_UINT32);
- ACE_U_LongLong &operator&= (const ACE_U_LongLong);
- ACE_U_LongLong &operator&= (const ACE_UINT32);
-
- // Note that the following take ACE_UINT32 arguments. These are
- // typical use cases, and easy to implement. But, they limit the
- // return values to 32 bits as well. There are no checks for
- // overflow.
- ACE_UINT32 operator/ (const ACE_UINT32) const;
- ACE_UINT32 operator% (const ACE_UINT32) const;
-
- // The following only operate on the lower 32 bits (they take only
- // 32 bit arguments).
- ACE_UINT32 operator| (const ACE_INT32) const;
- ACE_UINT32 operator& (const ACE_INT32) const;
-
- // The following operators convert their arguments to
- // ACE_UINT32. So, there may be information loss if they are
- // used.
- ACE_U_LongLong operator* (const ACE_INT32) const;
- ACE_U_LongLong &operator*= (const ACE_INT32);
- ACE_UINT32 operator/ (const ACE_INT32) const;
-# if ACE_SIZEOF_INT == 4
- ACE_UINT32 operator/ (const unsigned long) const;
- ACE_UINT32 operator/ (const long) const;
-# else /* ACE_SIZEOF_INT != 4 */
- ACE_UINT32 operator/ (const unsigned int) const;
- ACE_UINT32 operator/ (const int) const;
-# endif /* ACE_SIZEOF_INT != 4 */
-
- // = Helper methods.
- /// Outputs the value to the FILE, in hex.
- void output (FILE * = stdout) const;
-
- ACE_TCHAR *as_string (ACE_TCHAR *string,
- unsigned int base = 10,
- unsigned int uppercase = 0) const;
-
- ACE_UINT32 hi (void) const;
- ACE_UINT32 lo (void) const;
-
- void hi (const ACE_UINT32 hi);
- void lo (const ACE_UINT32 lo);
-
-#if defined (ACE_LACKS_UNSIGNEDLONGLONG_T)
- long long to_int64 (void) const;
-# endif
-
- private:
-
-#if defined (ACE_LACKS_UNSIGNEDLONGLONG_T)
- long long data_;
-#else
- public:
- struct ace_hi_lo_correct_endian
- {
-# if defined (ACE_BIG_ENDIAN)
- /// High 32 bits.
- ACE_UINT32 hi_;
- /// Low 32 bits.
- ACE_UINT32 lo_;
-
-# else
-
- /// Low 32 bits.
- ACE_UINT32 lo_;
- /// High 32 bits.
- ACE_UINT32 hi_;
-# endif /* ! ACE_BIG_ENDIAN */
- };
- private:
- union
- {
- struct ace_hi_lo_correct_endian data_;
-
- /// To ensure alignment on 8-byte boundary.
- double for_alignment_;
- };
-
- // @note the following four accessors are inlined here in
- // order to minimize the extent of the data_ struct. It's
- // only used here; the .i and .cpp files use the accessors.
-
- /// Internal utility function to hide access through struct.
- const ACE_UINT32 &h_ () const { return data_.hi_; }
-
- /// Internal utility function to hide access through struct.
- ACE_UINT32 &h_ () { return data_.hi_; }
-
- /// Internal utility function to hide access through struct.
- const ACE_UINT32 &l_ () const { return data_.lo_; }
-
- /// Internal utility function to hide access through struct.
- ACE_UINT32 &l_ () { return data_.lo_; }
-
- // @note the above four accessors are inlined here in
- // order to minimize the extent of the data_ struct. It's
- // only used here; the .inl and .cpp files use the accessors.
-
- /// These functions are used to implement multiplication.
- ACE_UINT32 ul_shift (ACE_UINT32 a,
- ACE_UINT32 c_in,
- ACE_UINT32 *c_out) const;
- ACE_U_LongLong ull_shift (ACE_U_LongLong a,
- ACE_UINT32 c_in,
- ACE_UINT32 *c_out) const;
- ACE_U_LongLong ull_add (ACE_U_LongLong a,
- ACE_U_LongLong b,
- ACE_UINT32 *carry) const;
- ACE_U_LongLong ull_mult (ACE_U_LongLong a,
- ACE_UINT32 b,
- ACE_UINT32 *carry) const;
-#endif // ACE_LACKS_UNSIGNEDLONGLONG_T
- };
-
- typedef ACE_U_LongLong ACE_UINT64;
-
-#if !defined (ACE_LACKS_IOSTREAM_TOTALLY)
- ostream &operator<< (ostream &, const ACE_U_LongLong &);
-#endif /* ! ACE_LACKS_IOSTREAM_TOTALLY */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# endif /* ACE_LACKS_LONGLONG_T */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Conversions from ACE_UINT64 to ACE_UINT32. ACE_CU64_TO_CU32 should
-// be used on const ACE_UINT64's.
-# if defined (ACE_LACKS_LONGLONG_T) || defined (ACE_LACKS_UNSIGNEDLONGLONG_T)
-inline ACE_UINT32
-ACE_U64_TO_U32 (ACE_U_LongLong const & n)
-{
- /**
- * @note We could add a cast operator to ACE_U_LongLong but that may
- * cause more problems than it solves. Force users to perform
- * an explicit cast via ACE_{C}U64_TO_{C}U32.
- */
- return n.lo ();
-}
-
-inline ACE_UINT32
-ACE_CU64_TO_CU32 (ACE_U_LongLong const & n)
-{
- return ACE_U64_TO_U32 (n);
-}
-# else /* ! ACE_LACKS_LONGLONG_T */
-inline ACE_UINT32
-ACE_U64_TO_U32 (ACE_UINT64 n)
-{
- return static_cast<ACE_UINT32> (n);
-}
-
-inline ACE_UINT32
-ACE_CU64_TO_CU32 (ACE_UINT64 n)
-{
- return static_cast<ACE_UINT32> (n);
-}
-# endif /* ! ACE_LACKS_LONGLONG_T */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// 64-bit literals require special marking on some platforms.
-# if defined (ACE_LACKS_LONGLONG_T)
- // Can only specify 32-bit arguments.
-# define ACE_UINT64_LITERAL(n) n ## UL
- // This one won't really work, but it'll keep
- // some compilers happy until we have better support
-# define ACE_INT64_LITERAL(n) n ## L
-# elif defined (ACE_WIN32)
-# if defined (__MINGW32__)
-# define ACE_UINT64_LITERAL(n) n ## ull
-# define ACE_INT64_LITERAL(n) n ## ll
-# else
-# define ACE_UINT64_LITERAL(n) n ## ui64
-# define ACE_INT64_LITERAL(n) n ## i64
-# endif /* defined (__MINGW32__) */
-# elif defined (__TANDEM)
-# define ACE_UINT64_LITERAL(n) n ## LL
-# define ACE_INT64_LITERAL(n) n ## LL
-# else /* ! ACE_WIN32 && ! ACE_LACKS_LONGLONG_T */
-# define ACE_UINT64_LITERAL(n) n ## ull
-# define ACE_INT64_LITERAL(n) n ## ll
-# endif /* ! ACE_WIN32 && ! ACE_LACKS_LONGLONG_T */
-
-#if !defined (ACE_INT8_FORMAT_SPECIFIER)
-# if defined (PRId8)
-# define ACE_INT8_FORMAT_SPECIFIER ACE_TEXT ("%") ACE_TEXT (PRId8)
-# else
-# define ACE_INT8_FORMAT_SPECIFIER ACE_TEXT ("%d")
-# endif /* defined (PRId8) */
-#endif /* ACE_INT8_FORMAT_SPECIFIER */
-
-#if !defined (ACE_UINT8_FORMAT_SPECIFIER)
-# if defined (PRIu8)
-# define ACE_UINT8_FORMAT_SPECIFIER ACE_TEXT ("%") ACE_TEXT (PRIu8)
-# else
-# define ACE_UINT8_FORMAT_SPECIFIER ACE_TEXT ("%u")
-# endif /* defined (PRIu8) */
-#endif /* ACE_UINT8_FORMAT_SPECIFIER */
-
-#if !defined (ACE_INT16_FORMAT_SPECIFIER)
-# if defined (PRId16)
-# define ACE_INT16_FORMAT_SPECIFIER ACE_TEXT ("%") ACE_TEXT (PRId16)
-# else
-# define ACE_INT16_FORMAT_SPECIFIER ACE_TEXT ("%d")
-# endif /* defined (PRId16) */
-#endif /* ACE_INT16_FORMAT_SPECIFIER */
-
-#if !defined (ACE_UINT16_FORMAT_SPECIFIER)
-# if defined (PRIu16)
-# define ACE_UINT16_FORMAT_SPECIFIER ACE_TEXT ("%") ACE_TEXT (PRIu16)
-# else
-# define ACE_UINT16_FORMAT_SPECIFIER ACE_TEXT ("%u")
-# endif /* defined (PRIu16) */
-#endif /* ACE_UINT16_FORMAT_SPECIFIER */
-
-#if !defined (ACE_INT32_FORMAT_SPECIFIER)
-# if defined (PRId32)
-# define ACE_INT32_FORMAT_SPECIFIER ACE_TEXT ("%") ACE_TEXT (PRId32)
-# elif ACE_SIZEOF_INT == 4
-# define ACE_INT32_FORMAT_SPECIFIER ACE_TEXT ("%d")
-# else
-# define ACE_INT32_FORMAT_SPECIFIER ACE_TEXT ("%ld")
-# endif /* defined (PRId32) */
-#endif /* ACE_INT32_FORMAT_SPECIFIER */
-
-#if !defined (ACE_UINT32_FORMAT_SPECIFIER)
-# if defined (PRIu32)
-# define ACE_UINT32_FORMAT_SPECIFIER ACE_TEXT ("%") ACE_TEXT (PRIu32)
-# elif ACE_SIZEOF_INT == 4
-# define ACE_UINT32_FORMAT_SPECIFIER ACE_TEXT ("%u")
-# else
-# define ACE_UINT32_FORMAT_SPECIFIER ACE_TEXT ("%lu")
-# endif /* defined (PRIu32) */
-#endif /* ACE_UINT32_FORMAT_SPECIFIER */
-
-#if !defined (ACE_INT64_FORMAT_SPECIFIER)
-# if defined (PRId64)
-# define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%") ACE_TEXT (PRId64)
-# elif ACE_SIZEOF_LONG == 8
-# define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%ld")
-# else
-# define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%lld")
-# endif /* defined (PRId64) */
-#endif /* ACE_INT64_FORMAT_SPECIFIER */
-
-#if !defined (ACE_UINT64_FORMAT_SPECIFIER)
-# if defined (PRIu64)
-# define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%") ACE_TEXT (PRIu64)
-# elif ACE_SIZEOF_LONG == 8
-# define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%lu")
-# else
-# define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%llu")
-# endif /* defined (PRIu64) */
-#endif /* ACE_UINT64_FORMAT_SPECIFIER */
-
-#if !defined (ACE_SSIZE_T_FORMAT_SPECIFIER)
-# if defined (ACE_WIN64)
-# define ACE_SSIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%I64d")
-# else
-# define ACE_SSIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%d")
-# endif /* ACE_WIN64 */
-#endif /* ACE_SSIZE_T_FORMAT_SPECIFIER */
-
-#if !defined (ACE_SIZE_T_FORMAT_SPECIFIER)
-# if defined (ACE_WIN64)
-# define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%I64u")
-# else
-# define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%u")
-# endif /* ACE_WIN64 */
-#endif /* ACE_SIZE_T_FORMAT_SPECIFIER */
-
-// Cast from UINT64 to a double requires an intermediate cast to INT64
-// on some platforms.
-# if defined (ACE_LACKS_LONGLONG_T)
- // Only use the low 32 bits.
-# define ACE_UINT64_DBLCAST_ADAPTER(n) ACE_U64_TO_U32 (n)
-# elif defined (ACE_LACKS_UNSIGNEDLONGLONG_T)
-# define ACE_UINT64_DBLCAST_ADAPTER(n) ((n).to_int64 ())
-# elif defined (ACE_WIN32)
-# define ACE_UINT64_DBLCAST_ADAPTER(n) static_cast<__int64> (n)
-# else /* ! ACE_WIN32 && ! ACE_LACKS_LONGLONG_T */
-# define ACE_UINT64_DBLCAST_ADAPTER(n) (n)
-# endif /* ! ACE_WIN32 && ! ACE_LACKS_LONGLONG_T */
-
-// The number of bytes in a float.
-# ifndef ACE_SIZEOF_FLOAT
-# if FLT_MAX_EXP == 128
-# define ACE_SIZEOF_FLOAT 4
-# elif FLT_MAX_EXP == 1024
-# define ACE_SIZEOF_FLOAT 8
-# else
-# error: unsupported float size, must be updated for this platform!
-# endif /* FLT_MAX_EXP */
-# endif /* ACE_SIZEOF_FLOAT */
-
-// The number of bytes in a double.
-# ifndef ACE_SIZEOF_DOUBLE
-# if DBL_MAX_EXP == 128
-# define ACE_SIZEOF_DOUBLE 4
-# elif DBL_MAX_EXP == 1024
-# define ACE_SIZEOF_DOUBLE 8
-# else
-# error: unsupported double size, must be updated for this platform!
-# endif /* DBL_MAX_EXP */
-# endif /* ACE_SIZEOF_DOUBLE */
-
-// The number of bytes in a long double.
-# ifndef ACE_SIZEOF_LONG_DOUBLE
-# if LDBL_MAX_EXP == 128
-# define ACE_SIZEOF_LONG_DOUBLE 4
-# elif LDBL_MAX_EXP == 1024
-# define ACE_SIZEOF_LONG_DOUBLE 8
-# elif LDBL_MAX_EXP == 16384
-# if defined (LDBL_DIG) && LDBL_DIG == 18
-# if defined (__ia64) || defined (__x86_64)
-# define ACE_SIZEOF_LONG_DOUBLE 16
-# else /* ! __ia64 */
-# define ACE_SIZEOF_LONG_DOUBLE 12
-# endif /* __ia64 */
-# else /* ! LDBL_DIG || LDBL_DIG != 18 */
-# define ACE_SIZEOF_LONG_DOUBLE 16
-# endif /* ! LDBL_DIG || LDBL_DIG != 18 */
-# else
-# error: unsupported double size, must be updated for this platform!
-# endif /* LDBL_MAX_EXP */
-# endif /* ACE_SIZEOF_LONG_DOUBLE */
-
-// Max and min sizes for the ACE integer types.
-#define ACE_CHAR_MAX 0x7F
-#define ACE_CHAR_MIN -(ACE_CHAR_MAX)-1
-#define ACE_OCTET_MAX 0xFF
-#define ACE_INT16_MAX 0x7FFF
-#define ACE_INT16_MIN -(ACE_INT16_MAX)-1
-#define ACE_UINT16_MAX 0xFFFF
-#define ACE_WCHAR_MAX ACE_UINT16_MAX
-#define ACE_INT32_MAX 0x7FFFFFFF
-#define ACE_INT32_MIN -(ACE_INT32_MAX)-1
-#define ACE_UINT32_MAX 0xFFFFFFFF
-#define ACE_INT64_MAX ACE_INT64_LITERAL(0x7FFFFFFFFFFFFFFF)
-#define ACE_INT64_MIN -(ACE_INT64_MAX)-1
-
-#if defined (ACE_LACKS_UNSIGNEDLONGLONG_T)
-// ACE_U_LongLong's constructor accepts a "long long" in this
-// case. Set it to ACE_U_LongLong (-1) since the bit pattern for long
-// long (-1) is the same as the maximum unsigned long long value.
-# define ACE_UINT64_MAX ACE_U_LongLong (ACE_INT64_LITERAL (0xFFFFFFFFFFFFFFFF))
-#elif defined (ACE_LACKS_LONGLONG_T)
-// ACE_U_LongLong's constructor accepts an ACE_UINT32 low and high
-// pair of parameters.
-# define ACE_UINT64_MAX ACE_U_LongLong (0xFFFFFFFFu, 0xFFFFFFFFu)
-#else
-# define ACE_UINT64_MAX ACE_UINT64_LITERAL (0xFFFFFFFFFFFFFFFF)
-#endif /* ACE_LACKS_UNSIGNEDLONGLONG_T */
-
-// These use ANSI/IEEE format.
-#define ACE_FLT_MAX 3.402823466e+38F
-#define ACE_FLT_MIN 1.175494351e-38F
-#define ACE_DBL_MAX 1.7976931348623158e+308
-#define ACE_DBL_MIN 2.2250738585072014e-308
-
-# if defined (__ACE_INLINE__)
-# include "ace/Basic_Types.inl"
-# endif /* __ACE_INLINE__ */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_BASIC_TYPES_H */
-
diff --git a/dep/include/ace/Basic_Types.inl b/dep/include/ace/Basic_Types.inl
deleted file mode 100644
index 19cc7579b82..00000000000
--- a/dep/include/ace/Basic_Types.inl
+++ /dev/null
@@ -1,952 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Basic_Types.inl 80826 2008-03-04 14:51:23Z wotte $
-
-# if !defined (ACE_LACKS_LONGLONG_T) && defined (ACE_LACKS_UNSIGNEDLONGLONG_T)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Implementation for ACE_U_LongLong when we have signed long long
-// but no unsigned long long.
-
-ACE_INLINE
-ACE_U_LongLong::ACE_U_LongLong (const long long value)
- : data_ (value)
-{
-}
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::hi (void) const
-{
- return (data_ >> 32) & 0xFFFFFFFF;
-}
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::lo (void) const
-{
- return data_ & 0xFFFFFFFF;
-}
-
-ACE_INLINE void
-ACE_U_LongLong::hi (const ACE_UINT32 hi)
-{
- data_ = hi;
- data_ <<= 32;
-}
-
-ACE_INLINE void
-ACE_U_LongLong::lo (const ACE_UINT32 lo)
-{
- data_ = lo;
-}
-
-ACE_INLINE long long
-ACE_U_LongLong::to_int64 (void) const
-{
- return data_;
-}
-
-ACE_INLINE
-ACE_U_LongLong::~ACE_U_LongLong (void)
-{
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator== (const ACE_U_LongLong &n) const
-{
- return data_ == n.data_;
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator== (const ACE_UINT32 n) const
-{
- return data_ == n;
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator!= (const ACE_U_LongLong &n) const
-{
- return ! (*this == n);
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator!= (const ACE_UINT32 n) const
-{
- return ! (*this == n);
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator< (const ACE_U_LongLong &n) const
-{
- if (data_ > 0)
- if (n.data_ > 0)
- return data_ < n.data_;
- else
- return true;
- else
- if (n.data_ > 0)
- return false;
- else
- return data_ < n.data_;
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator< (const ACE_UINT32 n) const
-{
- return operator< (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator<= (const ACE_U_LongLong &n) const
-{
- if (data_ == n.data_) return true;
-
- return data_ < n.data_;
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator<= (const ACE_UINT32 n) const
-{
- return operator<= (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator> (const ACE_U_LongLong &n) const
-{
- if (data_ > 0)
- if (n.data_ > 0)
- return data_ > n.data_;
- else
- return false;
- else
- if (n.data_ > 0)
- return true;
- else
- return data_ > n.data_;
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator> (const ACE_UINT32 n) const
-{
- return operator> (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator>= (const ACE_U_LongLong &n) const
-{
- if (data_ == n.data_) return true;
-
- return data_ > n.data_;
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator>= (const ACE_UINT32 n) const
-{
- return operator>= (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE
-ACE_U_LongLong::ACE_U_LongLong (const ACE_U_LongLong &n)
- : data_ (n.data_)
-{
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator= (const ACE_U_LongLong &n)
-{
- data_ = n.data_;
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator= (const ACE_INT32 &rhs)
-{
- if (rhs >= 0)
- {
- data_ = rhs;
- data_ &= 0xFFFFFFFF;
- }
- else
- {
- // We do not handle the case where a negative 32 bit integer is
- // assigned to this representation of a 64 bit unsigned integer.
- // The "undefined behavior" behavior performed by this
- // implementation is to simply set all bits to zero.
- data_ = 0;
- }
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator= (const ACE_UINT32 &rhs)
-{
- data_ = rhs;
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::operator+ (const ACE_U_LongLong &n) const
-{
- return data_ + n.data_;
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::operator+ (const ACE_UINT32 n) const
-{
- return operator+ (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::operator- (const ACE_U_LongLong &n) const
-{
- return data_ - n.data_;
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::operator- (const ACE_UINT32 n) const
-{
- return operator- (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::operator<< (const u_int n) const
-{
- return data_ << n;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator<<= (const u_int n)
-{
- data_ <<= n;
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::operator>> (const u_int n) const
-{
- return data_ >> n;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator>>= (const u_int n)
-{
- data_ >>= n;
-
- return *this;
-}
-
-ACE_INLINE double
-ACE_U_LongLong::operator/ (const double n) const
-{
- return data_ / n;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator+= (const ACE_U_LongLong &n)
-{
- data_ += n.data_;
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator+= (const ACE_UINT32 n)
-{
- return operator+= (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::operator* (const ACE_UINT32 n) const
-{
- return data_ * n;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator*= (const ACE_UINT32 n)
-{
- data_ *= n;
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator-= (const ACE_U_LongLong &n)
-{
- data_ -= n.data_;
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator-= (const ACE_UINT32 n)
-{
- return operator-= (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator++ ()
-{
- ++data_;
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator-- ()
-{
- --data_;
-
- return *this;
-}
-
-ACE_INLINE const ACE_U_LongLong
-ACE_U_LongLong::operator++ (int)
-{
- // Post-increment operator should always be implemented in terms of
- // the pre-increment operator to enforce consistent semantics.
- ACE_U_LongLong temp (*this);
- ++*this;
- return temp;
-}
-
-ACE_INLINE const ACE_U_LongLong
-ACE_U_LongLong::operator-- (int)
-{
- // Post-decrement operator should always be implemented in terms of
- // the pre-decrement operator to enforce consistent semantics.
- ACE_U_LongLong temp (*this);
- --*this;
- return temp;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator|= (const ACE_U_LongLong n)
-{
- data_ |= n.data_;
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator|= (const ACE_UINT32 n)
-{
- return operator|= (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator&= (const ACE_U_LongLong n)
-{
- data_ &= n.data_;
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator&= (const ACE_UINT32 n)
-{
- return operator&= (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::operator/ (const ACE_UINT32 n) const
-{
- return data_ / n;
-}
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::operator% (const ACE_UINT32 n) const
-{
- return data_ % n;
-}
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::operator| (const ACE_INT32 n) const
-{
- return data_ | n;
-}
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::operator& (const ACE_INT32 n) const
-{
- return data_ & n;
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::operator* (const ACE_INT32 n) const
-{
- return operator* ((ACE_UINT32) n);
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator*= (const ACE_INT32 n)
-{
- return operator*= ((ACE_UINT32) n);
-}
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::operator/ (const ACE_INT32 n) const
-{
- return operator/ ((ACE_UINT32) n);
-}
-
-#if ACE_SIZEOF_INT == 4
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::operator/ (const u_long n) const
-{
- return operator/ ((ACE_UINT32) n);
-}
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::operator/ (const long n) const
-{
- return operator/ ((ACE_UINT32) n);
-}
-
-#else /* ACE_SIZEOF_INT != 4 */
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::operator/ (const u_int n) const
-{
- return operator/ ((ACE_UINT32) n);
-}
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::operator/ (const int n) const
-{
- return operator/ ((ACE_UINT32) n);
-}
-#endif
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#elif defined (ACE_LACKS_LONGLONG_T)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_U_LongLong::ACE_U_LongLong (const ACE_UINT32 lo, const ACE_UINT32 hi)
-{
- h_ () = hi;
- l_ () = lo;
-}
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::hi (void) const
-{
- return h_ ();
-}
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::lo (void) const
-{
- return l_ ();
-}
-
-ACE_INLINE void
-ACE_U_LongLong::hi (const ACE_UINT32 hi)
-{
- h_ () = hi;
-}
-
-ACE_INLINE void
-ACE_U_LongLong::lo (const ACE_UINT32 lo)
-{
- l_ () = lo;
-}
-
-ACE_INLINE
-ACE_U_LongLong::~ACE_U_LongLong (void)
-{
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator== (const ACE_U_LongLong &n) const
-{
- return h_ () == n.h_ () && l_ () == n.l_ ();
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator== (const ACE_UINT32 n) const
-{
- return h_ () == 0 && l_ () == n;
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator!= (const ACE_U_LongLong &n) const
-{
- return ! (*this == n);
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator!= (const ACE_UINT32 n) const
-{
- return ! (*this == n);
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator< (const ACE_U_LongLong &n) const
-{
- return h_ () < n.h_ () ? 1
- : h_ () > n.h_ () ? 0
- : l_ () < n.l_ ();
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator< (const ACE_UINT32 n) const
-{
- return operator< (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator<= (const ACE_U_LongLong &n) const
-{
- return h_ () < n.h_ () ? 1
- : h_ () > n.h_ () ? 0
- : l_ () <= n.l_ ();
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator<= (const ACE_UINT32 n) const
-{
- return operator<= (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator> (const ACE_U_LongLong &n) const
-{
- return h_ () > n.h_ () ? 1
- : h_ () < n.h_ () ? 0
- : l_ () > n.l_ ();
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator> (const ACE_UINT32 n) const
-{
- return operator> (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator>= (const ACE_U_LongLong &n) const
-{
- return h_ () > n.h_ () ? 1
- : h_ () < n.h_ () ? 0
- : l_ () >= n.l_ ();
-}
-
-ACE_INLINE bool
-ACE_U_LongLong::operator>= (const ACE_UINT32 n) const
-{
- return operator>= (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE
-ACE_U_LongLong::ACE_U_LongLong (const ACE_U_LongLong &n)
-{
- h_ () = n.h_ ();
- l_ () = n.l_ ();
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator= (const ACE_U_LongLong &n)
-{
- h_ () = n.h_ ();
- l_ () = n.l_ ();
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator= (const ACE_INT32 &rhs)
-{
- if (rhs >= 0)
- {
- l_ () = static_cast<ACE_UINT32> (rhs);
- h_ () = 0;
- }
- else
- {
- // We do not handle the case where a negative 32 bit integer is
- // assigned to this representation of a 64 bit unsigned integer.
- // The "undefined behavior" behavior performed by this
- // implementation is to simply set all bits to zero.
- l_ () = 0;
- h_ () = 0;
- }
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator= (const ACE_UINT32 &rhs)
-{
- l_ () = rhs;
- h_ () = 0;
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::operator+ (const ACE_U_LongLong &n) const
-{
- ACE_U_LongLong ret (l_ () + n.l_ (), h_ () + n.h_ ());
- if (ret.l_ () < n.l_ ()) /* carry */ ++ret.h_ ();
-
- return ret;
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::operator+ (const ACE_UINT32 n) const
-{
- return operator+ (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::operator- (const ACE_U_LongLong &n) const
-{
- ACE_U_LongLong ret (l_ () - n.l_ (), h_ () - n.h_ ());
- if (l_ () < n.l_ ()) /* borrow */ --ret.h_ ();
-
- return ret;
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::operator- (const ACE_UINT32 n) const
-{
- return operator- (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::operator<< (const u_int n) const
-{
- const ACE_UINT32 carry_mask = l_ () >> (32 - n);
- ACE_U_LongLong ret (n < 32 ? l_ () << n : 0,
- n < 32 ? (h_ () << n) | carry_mask : carry_mask);
-
- return ret;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator<<= (const u_int n)
-{
- const ACE_UINT32 carry_mask = l_ () >> (32 - n);
- h_ () = n < 32 ? (h_ () << n) | carry_mask : carry_mask;
-
- // g++ 2.7.2.3/Solaris 2.5.1 doesn't modify l_ () if shifted by 32.
- l_ () = n < 32 ? l_ () << n : 0;
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::operator>> (const u_int n) const
-{
- const ACE_UINT32 carry_mask = h_ () << (32 - n);
- ACE_U_LongLong ret (n < 32 ? (l_ () >> n) | carry_mask : 0,
- n < 32 ? h_ () >> n : 0);
-
- return ret;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator>>= (const u_int n)
-{
- const ACE_UINT32 carry_mask = h_ () << (32 - n);
- l_ () = n < 32 ? (l_ () >> n) | carry_mask : carry_mask;
- h_ () = n < 32 ? h_ () >> n : 0;
-
- return *this;
-}
-
-ACE_INLINE double
-ACE_U_LongLong::operator/ (const double n) const
-{
- // See the derivation above in operator/ (const ACE_UINT32).
-
- return ((double) 0xffffffffu - n + 1.0) / n * h_ () +
- (double) h_ () + (double) l_ () / n;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator+= (const ACE_U_LongLong &n)
-{
- h_ () += n.h_ ();
- l_ () += n.l_ ();
- if (l_ () < n.l_ ()) /* carry */ ++h_ ();
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator+= (const ACE_UINT32 n)
-{
- return operator+= (static_cast<const ACE_U_LongLong> (n));
-}
-
-#define ACE_HIGHBIT (~(~0UL >> 1))
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::ul_shift (ACE_UINT32 a, ACE_UINT32 c_in, ACE_UINT32 *c_out) const
-{
- const ACE_UINT32 b = (a << 1) | c_in;
- *c_out = (*c_out << 1) + ((a & ACE_HIGHBIT) > 0);
-
- return b;
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::ull_shift (ACE_U_LongLong a,
- ACE_UINT32 c_in,
- ACE_UINT32 *c_out) const
-{
- ACE_U_LongLong b;
-
- b.l_ () = (a.l_ () << 1) | c_in;
- c_in = ((a.l_ () & ACE_HIGHBIT) > 0);
- b.h_ () = (a.h_ () << 1) | c_in;
- *c_out = (*c_out << 1) + ((a.h_ () & ACE_HIGHBIT) > 0);
-
- return b;
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::ull_add (ACE_U_LongLong a, ACE_U_LongLong b, ACE_UINT32 *carry) const
-{
- ACE_U_LongLong r (0, 0);
- ACE_UINT32 c1, c2, c3, c4;
-
- c1 = a.l_ () % 2;
- c2 = b.l_ () % 2;
- c3 = 0;
-
- r.l_ () = a.l_ ()/2 + b.l_ ()/2 + (c1+c2)/2;
- r.l_ () = ul_shift (r.l_ (), (c1+c2)%2, &c3);
-
- c1 = a.h_ () % 2;
- c2 = b.h_ () % 2;
- c4 = 0;
-
- r.h_ () = a.h_ ()/2 + b.h_ ()/2 + (c1+c2+c3)/2;
- r.h_ () = ul_shift (r.h_ (), (c1+c2+c3)%2, &c4);
-
- *carry = c4;
-
- return r;
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::ull_mult (ACE_U_LongLong a, ACE_UINT32 b, ACE_UINT32 *carry) const
-{
- register ACE_UINT32 mask = ACE_HIGHBIT;
- const ACE_U_LongLong zero (0, 0);
- ACE_U_LongLong accum (0, 0);
- ACE_UINT32 c;
-
- *carry = 0;
- if (b > 0)
- do
- {
- accum = ull_shift (accum, 0U, carry);
- if (b & mask)
- accum = ull_add (accum, a, &c);
- else
- accum = ull_add (accum, zero, &c);
- *carry += c;
- mask >>= 1;
- }
- while (mask > 0);
-
- return accum;
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::operator* (const ACE_UINT32 n) const
-{
- ACE_UINT32 carry; // will throw the carry away
-
- return ull_mult (*this, n, &carry);
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator*= (const ACE_UINT32 n)
-{
- ACE_UINT32 carry; // will throw the carry away
-
- return *this = ull_mult (*this, n, &carry);
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator-= (const ACE_U_LongLong &n)
-{
- h_ () -= n.h_ ();
- if (l_ () < n.l_ ()) /* borrow */ --h_ ();
- l_ () -= n.l_ ();
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator-= (const ACE_UINT32 n)
-{
- return operator-= (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator++ ()
-{
- ++l_ ();
- if (l_ () == 0) /* carry */ ++h_ ();
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator-- ()
-{
- if (l_ () == 0) /* borrow */ --h_ ();
- --l_ ();
-
- return *this;
-}
-
-ACE_INLINE const ACE_U_LongLong
-ACE_U_LongLong::operator++ (int)
-{
- // Post-increment operator should always be implemented in terms of
- // the pre-increment operator to enforce consistent semantics.
- ACE_U_LongLong temp (*this);
- ++*this;
- return temp;
-}
-
-ACE_INLINE const ACE_U_LongLong
-ACE_U_LongLong::operator-- (int)
-{
- // Post-decrement operator should always be implemented in terms of
- // the pre-decrement operator to enforce consistent semantics.
- ACE_U_LongLong temp (*this);
- --*this;
- return temp;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator|= (const ACE_U_LongLong n)
-{
- l_ () |= n.l_ ();
- h_ () |= n.h_ ();
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator|= (const ACE_UINT32 n)
-{
- return operator|= (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator&= (const ACE_U_LongLong n)
-{
- l_ () &= n.l_ ();
- h_ () &= n.h_ ();
-
- return *this;
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator&= (const ACE_UINT32 n)
-{
- return operator&= (static_cast<const ACE_U_LongLong> (n));
-}
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::operator/ (const ACE_UINT32 n) const
-{
- // This takes advantage of the fact that the return type has only 32
- // bits. Replace 0x100000000 with 0xffffffff + 1 because the former
- // has 33 bits.
- // Quotient = (0x100000000u * hi_ + lo_) / n
- // = ((0x100000000u - n + n) * hi_ + lo_) / n
- // = ((0x100000000u - n) / n * hi_ + hi_ * n / n + lo_ / n
- // = (0x100000000u - n) / n * hi_ + hi_ + lo_ / n
- // = (0xffffffffu - n + 1) / n * hi_ + hi_ + lo_ / n
-
- return (0xffffffffu - n + 1) / n * h_ () + h_ () + l_ () / n;
-}
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::operator% (const ACE_UINT32 n) const
-{
- // Because the argument is an ACE_UINT32, the result can never be
- // bigger than 32 bits. Replace 0x100000000 with 0xffffffff + 1
- // because the former has 33 bits.
- // Mod = (0x100000000u * hi_ + lo_) % n
- // = (0x100000000u % n * hi_ + lo_ % n) % n
- // = ((0x100000000u - n) % n * hi_ + lo_ % n) % n
- // = ((0xffffffffu - n + 1) % n * hi_ + lo_ % n) % n
-
- return ((0xffffffff - n + 1) % n * h_ () + l_ () % n) % n;
-}
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::operator| (const ACE_INT32 n) const
-{
- return l_ () | n;
-}
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::operator& (const ACE_INT32 n) const
-{
- return l_ () & n;
-}
-
-ACE_INLINE ACE_U_LongLong
-ACE_U_LongLong::operator* (const ACE_INT32 n) const
-{
- return operator* ((ACE_UINT32) n);
-}
-
-ACE_INLINE ACE_U_LongLong &
-ACE_U_LongLong::operator*= (const ACE_INT32 n)
-{
- return operator*= ((ACE_UINT32) n);
-}
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::operator/ (const ACE_INT32 n) const
-{
- return operator/ ((ACE_UINT32) n);
-}
-
-#if ACE_SIZEOF_INT == 4
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::operator/ (const u_long n) const
-{
- return operator/ ((ACE_UINT32) n);
-}
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::operator/ (const long n) const
-{
- return operator/ ((ACE_UINT32) n);
-}
-
-#else /* ACE_SIZEOF_INT != 4 */
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::operator/ (const u_int n) const
-{
- return operator/ ((ACE_UINT32) n);
-}
-
-ACE_INLINE ACE_UINT32
-ACE_U_LongLong::operator/ (const int n) const
-{
- return operator/ ((ACE_UINT32) n);
-}
-#endif /* ACE_SIZEOF_INT != 4 */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_LACKS_LONGLONG_T || ACE_LACKS_UNSIGNEDLONGLONG_T */
diff --git a/dep/include/ace/Bound_Ptr.h b/dep/include/ace/Bound_Ptr.h
deleted file mode 100644
index 16ea929002e..00000000000
--- a/dep/include/ace/Bound_Ptr.h
+++ /dev/null
@@ -1,389 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Bound_Ptr.h
- *
- * $Id: Bound_Ptr.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Christopher Kohlhoff <chris@kohlhoff.com>
- * @author Boris Kolpackov <boris@codesynthesis.com>
- */
-//=============================================================================
-
-#ifndef ACE_BOUND_PTR_H
-#define ACE_BOUND_PTR_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Auto_Ptr.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Bound_Ptr_Counter
- *
- * @brief An ACE_Bound_Ptr_Counter<ACE_LOCK> object encapsulates an
- * object reference count.
- *
- * Do not use this class directly, use ACE_Strong_Bound_Ptr or
- * ACE_Weak_Bound_Ptr instead.
- */
-template <class ACE_LOCK>
-class ACE_Bound_Ptr_Counter
-{
-public:
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- ACE_Bound_Ptr_Counter (long init_obj_ref_count = 0);
- ~ACE_Bound_Ptr_Counter (void);
-
- /// Create a ACE_Bound_Ptr_Counter<ACE_LOCK> and initialize the
- /// reference count to indicate ownership by a strong pointer.
- static ACE_Bound_Ptr_Counter<ACE_LOCK> *create_strong (void);
-
- /// Increase both the object and counter reference counts and return
- /// the new object reference count. A return value of -1 indicates
- /// that the object has already been destroyed.
- static long attach_strong (ACE_Bound_Ptr_Counter<ACE_LOCK> *counter);
-
- /// Decreases both the object and counter reference counts and
- /// deletes whichever has no more references. Returns the new object
- /// reference count.
- static long detach_strong (ACE_Bound_Ptr_Counter<ACE_LOCK> *counter);
-
- /// Create a ACE_Bound_Ptr_Counter<ACE_LOCK> and initialize the
- /// reference count to indicate no ownership.
- static ACE_Bound_Ptr_Counter<ACE_LOCK> *create_weak (void);
-
- /// Increase the counter reference count and return argument.
- static void attach_weak (ACE_Bound_Ptr_Counter<ACE_LOCK> *counter);
-
- /// Decreases the counter reference count and deletes the counter if
- /// it has no more references.
- static void detach_weak (ACE_Bound_Ptr_Counter<ACE_LOCK> *counter);
-
- /// Determine whether the object has been deleted.
- static bool object_was_deleted (ACE_Bound_Ptr_Counter<ACE_LOCK> *counter);
-
-private:
-
- /// Allocate a new ACE_Bound_Ptr_Counter<ACE_LOCK> instance,
- /// returning NULL if it cannot be created.
- static ACE_Bound_Ptr_Counter<ACE_LOCK> *internal_create (long init_obj_ref_count);
-
-private:
-
- /// Reference count of underlying object. Is set to -1 once the
- /// object has been destroyed to indicate to all weak pointers that
- /// it is no longer valid.
- long obj_ref_count_;
-
- /// Reference count of this counter.
- long self_ref_count_;
-
- /// Mutex variable to synchronize access to the reference counts.
- ACE_LOCK lock_;
-};
-
-// Forward decl.
-template <class X, class ACE_LOCK> class ACE_Weak_Bound_Ptr;
-
-/**
- * @class ACE_Strong_Bound_Ptr
- *
- * @brief This class implements support for a reference counted
- * pointer.
- *
- * Assigning or copying instances of an ACE_Strong_Bound_Ptr will
- * automatically increment the reference count of the underlying object.
- * When the last instance of an ACE_Strong_Bound_Ptr that references a
- * particular object is destroyed or overwritten, it will invoke delete
- * on its underlying pointer.
- */
-template <class X, class ACE_LOCK>
-class ACE_Strong_Bound_Ptr
-{
-public:
- /// Constructor that initializes an ACE_Strong_Bound_Ptr to point to the
- /// object \<p\> immediately.
- explicit ACE_Strong_Bound_Ptr (X *p = 0);
-
- /// Constructor that initializes an ACE_Strong_Bound_Ptr by stealing
- /// ownership of an object from an auto_ptr.
- explicit ACE_Strong_Bound_Ptr (auto_ptr<X> p);
-
- /// Copy constructor binds @c this and @a r to the same object.
- ACE_Strong_Bound_Ptr (const ACE_Strong_Bound_Ptr<X, ACE_LOCK> &r);
-
- /// Constructor binds @c this and @a r to the same object.
- ACE_Strong_Bound_Ptr (const ACE_Weak_Bound_Ptr<X, ACE_LOCK> &r);
-
- /// Copy constructor binds @c this and @a r to the same object if
- /// Y* can be implicitly converted to X*.
- template <class Y>
- ACE_Strong_Bound_Ptr (const ACE_Strong_Bound_Ptr<Y, ACE_LOCK> &r)
- : counter_ (r.counter_),
- ptr_ (dynamic_cast<X_t*>(r.ptr_))
- {
- // This ctor is temporarily defined here to increase our chances
- // of being accepted by broken compilers.
- //
- COUNTER::attach_strong (this->counter_);
- }
-
- /// Destructor.
- ~ACE_Strong_Bound_Ptr (void);
-
- /// Assignment operator that binds @c this and @a r to the same object.
- void operator = (const ACE_Strong_Bound_Ptr<X, ACE_LOCK> &r);
-
- /// Assignment operator that binds @c this and @a r to the same object.
- void operator = (const ACE_Weak_Bound_Ptr<X, ACE_LOCK> &r);
-
- /// Assignment operator that binds @c this and @a r to the same object
- /// if Y* can be implicitly converted to X*.
- template <class Y>
- ACE_Weak_Bound_Ptr<X, ACE_LOCK>&
- operator= (const ACE_Strong_Bound_Ptr<Y, ACE_LOCK> &r)
- {
- // This operator is temporarily defined here to increase our chances
- // of being accepted by broken compilers.
- //
-
- // This will work if &r == this, by first increasing the ref count
-
- COUNTER *new_counter = r.counter_;
- X* new_ptr = dynamic_cast<X_t*> (r.ptr_);
- COUNTER::attach_strong (new_counter);
- if (COUNTER::detach_strong (this->counter_) == 0)
- delete this->ptr_;
- this->counter_ = new_counter;
- this->ptr_ = new_ptr;
-
- return *this;
- }
-
- /// Equality operator that returns @c true if both
- /// ACE_Strong_Bound_Ptr instances point to the same underlying
- /// object.
- /**
- * @note It also returns @c true if both objects have just been
- * instantiated and not used yet.
- */
- bool operator == (const ACE_Strong_Bound_Ptr<X, ACE_LOCK> &r) const;
-
- /// Equality operator that returns true if the ACE_Strong_Bound_Ptr
- /// and ACE_Weak_Bound_Ptr objects point to the same underlying
- /// object.
- /**
- * @note It also returns @c true if both objects have just been
- * instantiated and not used yet.
- */
- bool operator == (const ACE_Weak_Bound_Ptr<X, ACE_LOCK> &r) const;
-
- /// Equality operator that returns @c true if the
- /// ACE_Strong_Bound_Ptr and the raw pointer point to the same
- /// underlying object.
- bool operator == (X *p) const;
-
- /// Inequality operator, which is the opposite of equality.
- bool operator != (const ACE_Strong_Bound_Ptr<X, ACE_LOCK> &r) const;
-
- /// Inequality operator, which is the opposite of equality.
- bool operator != (const ACE_Weak_Bound_Ptr<X, ACE_LOCK> &r) const;
-
- /// Inequality operator, which is the opposite of equality.
- bool operator != (X *p) const;
-
- /// Redirection operator
- X *operator-> (void) const;
-
- /// Dereference operator
- X &operator * (void) const;
-
- /// Get the pointer value.
- X *get (void) const;
-
- /// Resets the ACE_Strong_Bound_Ptr to refer to a different
- /// underlying object.
- void reset (X *p = 0);
-
- /// Resets the ACE_Strong_Bound_Ptr to refer to a different
- /// underlying object, ownership of which is stolen from the
- /// auto_ptr.
- void reset (auto_ptr<X> p);
-
- /// Allows us to check for NULL on all ACE_Strong_Bound_Ptr
- /// objects.
- int null (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- typedef X X_t; // This indirection is for Borland C++.
-
- friend class ACE_Weak_Bound_Ptr<X, ACE_LOCK>;
-
- template <class Y, class L>
- friend class ACE_Strong_Bound_Ptr;
-
- /// The ACE_Bound_Ptr_Counter type.
- typedef ACE_Bound_Ptr_Counter<ACE_LOCK> COUNTER;
-
- /// The reference counter.
- COUNTER *counter_;
-
- /// The underlying object.
- X *ptr_;
-};
-
-/**
- * @class ACE_Weak_Bound_Ptr
- *
- * @brief This class implements support for a weak pointer that complements
- * ACE_Strong_Bound_Ptr.
- *
- * Unlike ACE_Strong_Bound_Ptr, assigning or copying instances of an
- * ACE_Weak_Bound_Ptr will not automatically increment the reference
- * count of the underlying object. What ACE_Weak_Bound_Ptr does is
- * preserve the knowledge that the object is in fact reference
- * counted, and thus provides an alternative to raw pointers where
- * non-ownership associations must be maintained. When the last
- * instance of an ACE_Strong_Bound_Ptr that references a particular
- * object is destroyed or overwritten, the corresponding
- * ACE_Weak_Bound_Ptr instances are set to NULL.
- */
-template <class X, class ACE_LOCK>
-class ACE_Weak_Bound_Ptr
-{
-public:
- /// Constructor that initializes an ACE_Weak_Bound_Ptr to point to
- /// the object \<p\> immediately.
- explicit ACE_Weak_Bound_Ptr (X *p = 0);
-
- /// Copy constructor binds @c this and @a r to the same object.
- ACE_Weak_Bound_Ptr (const ACE_Weak_Bound_Ptr<X, ACE_LOCK> &r);
-
- /// Constructor binds @c this and @a r to the same object.
- ACE_Weak_Bound_Ptr (const ACE_Strong_Bound_Ptr<X, ACE_LOCK> &r);
-
- /// Destructor.
- ~ACE_Weak_Bound_Ptr (void);
-
- /// Assignment operator that binds @c this and @a r to the same object.
- void operator = (const ACE_Weak_Bound_Ptr<X, ACE_LOCK> &r);
-
- /// Assignment operator that binds @c this and @a r to the same object.
- void operator = (const ACE_Strong_Bound_Ptr<X, ACE_LOCK> &r);
-
- /// Equality operator that returns @c true if both
- /// ACE_Weak_Bound_Ptr objects point to the same underlying object.
- /**
- * @note It also returns @c true if both objects have just been
- * instantiated and not used yet.
- */
- bool operator == (const ACE_Weak_Bound_Ptr<X, ACE_LOCK> &r) const;
-
- /// Equality operator that returns @c true if the ACE_Weak_Bound_Ptr
- /// and ACE_Strong_Bound_Ptr objects point to the same underlying
- /// object.
- /**
- * @note It also returns @c true if both objects have just been
- * instantiated and not used yet.
- */
- bool operator == (const ACE_Strong_Bound_Ptr<X, ACE_LOCK> &r) const;
-
- /// Equality operator that returns @c true if the ACE_Weak_Bound_Ptr
- /// and the raw pointer point to the same underlying object.
- bool operator == (X *p) const;
-
- /// Inequality operator, which is the opposite of equality.
- bool operator != (const ACE_Weak_Bound_Ptr<X, ACE_LOCK> &r) const;
-
- /// Inequality operator, which is the opposite of equality.
- bool operator != (const ACE_Strong_Bound_Ptr<X, ACE_LOCK> &r) const;
-
- /// Inequality operator, which is the opposite of equality.
- bool operator != (X *p) const;
-
- /// Redirection operator.
- /**
- * It returns a temporary strong pointer and makes use of the
- * chaining properties of operator-> to ensure that the underlying
- * object does not disappear while you are using it. If you are
- * certain of the lifetimes of the object, and do not want to incur
- * the locking overhead, then use the unsafe_get method instead.
- */
- ACE_Strong_Bound_Ptr<X, ACE_LOCK> operator-> (void) const;
-
- /// Obtain a strong pointer corresponding to this weak pointer. This
- /// function is useful to create a temporary strong pointer for
- /// conversion to a reference.
- ACE_Strong_Bound_Ptr<X, ACE_LOCK> strong (void) const;
-
- /// Get the pointer value. Warning: this does not affect the
- /// reference count of the underlying object, so it may disappear on
- /// you while you are using it if you are not careful.
- X *unsafe_get (void) const;
-
- /// Resets the ACE_Weak_Bound_Ptr to refer to a different underlying
- /// object.
- void reset (X *p = 0);
-
- /// Increment the reference count on the underlying object.
- /**
- * Returns the new reference count on the object. This function may
- * be used to integrate the bound pointers into an external
- * reference counting mechanism such as those used by COM or CORBA
- * servants.
- */
- long add_ref (void);
-
- /// Decrement the reference count on the underlying object, which is deleted
- /// if the count has reached zero.
- /**
- * Returns the new reference count on the object. This function may
- * be used to integrate the bound pointers into an external
- * reference counting mechanism such as those used by COM or CORBA
- * servants.
- */
- long remove_ref (void);
-
- /// Allows us to check for NULL on all ACE_Weak_Bound_Ptr objects.
- int null (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- typedef X X_t; // This indirection is for Borland C++.
-
- friend class ACE_Strong_Bound_Ptr<X, ACE_LOCK>;
-
- /// The ACE_Bound_Ptr_Counter type.
- typedef ACE_Bound_Ptr_Counter<ACE_LOCK> COUNTER;
-
- /// The reference counter.
- COUNTER *counter_;
-
- /// The underlying object.
- X *ptr_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include "ace/Bound_Ptr.inl"
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_BOUND_PTR_H */
-
diff --git a/dep/include/ace/Bound_Ptr.inl b/dep/include/ace/Bound_Ptr.inl
deleted file mode 100644
index 3165f6f5acc..00000000000
--- a/dep/include/ace/Bound_Ptr.inl
+++ /dev/null
@@ -1,492 +0,0 @@
-/* -*- C++ -*- */
-// $Id: Bound_Ptr.inl 80826 2008-03-04 14:51:23Z wotte $
-
-// Bound_Ptr.i
-
-#include "ace/Guard_T.h"
-#if !defined (ACE_NEW_THROWS_EXCEPTIONS)
-# include "ace/Log_Msg.h"
-#endif /* ACE_NEW_THROWS_EXCEPTIONS */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class ACE_LOCK> inline ACE_Bound_Ptr_Counter<ACE_LOCK> *
-ACE_Bound_Ptr_Counter<ACE_LOCK>::internal_create (long init_obj_ref_count)
-{
- ACE_Bound_Ptr_Counter<ACE_LOCK> *temp = 0;
- ACE_NEW_RETURN (temp,
- ACE_Bound_Ptr_Counter<ACE_LOCK> (init_obj_ref_count),
- 0);
- return temp;
-}
-
-template <class ACE_LOCK> inline ACE_Bound_Ptr_Counter<ACE_LOCK> *
-ACE_Bound_Ptr_Counter<ACE_LOCK>::create_strong (void)
-{
- // Set initial object reference count to 1.
- ACE_Bound_Ptr_Counter<ACE_LOCK> *temp = internal_create (1);
-#if defined (ACE_NEW_THROWS_EXCEPTIONS)
- if (temp == 0)
- ACE_throw_bad_alloc;
-#else
- ACE_ASSERT (temp != 0);
-#endif /* ACE_NEW_THROWS_EXCEPTIONS */
- return temp;
-}
-
-template <class ACE_LOCK> inline long
-ACE_Bound_Ptr_Counter<ACE_LOCK>::attach_strong (ACE_Bound_Ptr_Counter<ACE_LOCK>* counter)
-{
- ACE_GUARD_RETURN (ACE_LOCK, guard, counter->lock_, -1);
-
- // Can't attach a strong pointer to an object that has already been deleted.
- if (counter->obj_ref_count_ == -1)
- return -1;
-
- long new_obj_ref_count = ++counter->obj_ref_count_;
- ++counter->self_ref_count_;
-
- return new_obj_ref_count;
-}
-
-template <class ACE_LOCK> inline long
-ACE_Bound_Ptr_Counter<ACE_LOCK>::detach_strong (ACE_Bound_Ptr_Counter<ACE_LOCK>* counter)
-{
- ACE_Bound_Ptr_Counter<ACE_LOCK> *counter_del = 0;
- long new_obj_ref_count;
-
- {
- ACE_GUARD_RETURN (ACE_LOCK, guard, counter->lock_, -1);
-
- if ((new_obj_ref_count = --counter->obj_ref_count_) == 0)
- // Change the object reference count to -1 to indicate that the
- // object has been deleted, as opposed to a weak pointer that
- // simply hasn't had any strong pointers created from it yet.
- counter->obj_ref_count_ = -1;
-
- if (--counter->self_ref_count_ == 0)
- // Since counter contains the lock held by the ACE_Guard, the
- // guard needs to be released before freeing the memory holding
- // the lock. So save the pointer to free, then release, then
- // free.
- counter_del = counter;
-
- } // Release the lock
-
- delete counter_del;
-
- return new_obj_ref_count;
-}
-
-template <class ACE_LOCK> inline ACE_Bound_Ptr_Counter<ACE_LOCK> *
-ACE_Bound_Ptr_Counter<ACE_LOCK>::create_weak (void)
-{
- // Set initial object reference count to 0.
-
- ACE_Bound_Ptr_Counter<ACE_LOCK> *temp = internal_create (0);
-#if defined (ACE_NEW_THROWS_EXCEPTIONS)
- if (temp == 0)
- ACE_throw_bad_alloc;
-#else
- ACE_ASSERT (temp != 0);
-#endif /* ACE_NEW_THROWS_EXCEPTIONS */
- return temp;
-}
-
-template <class ACE_LOCK> inline void
-ACE_Bound_Ptr_Counter<ACE_LOCK>::attach_weak (ACE_Bound_Ptr_Counter<ACE_LOCK>* counter)
-{
- ACE_GUARD (ACE_LOCK, guard, counter->lock_);
-
- ++counter->self_ref_count_;
-}
-
-template <class ACE_LOCK> inline void
-ACE_Bound_Ptr_Counter<ACE_LOCK>::detach_weak (ACE_Bound_Ptr_Counter<ACE_LOCK>* counter)
-{
- ACE_Bound_Ptr_Counter<ACE_LOCK> *counter_del = 0;
-
- {
- ACE_GUARD (ACE_LOCK, guard, counter->lock_);
-
- if (--counter->self_ref_count_ == 0)
- // Since counter contains the lock held by the ACE_Guard, the
- // guard needs to be released before freeing the memory holding
- // the lock. So save the pointer to free, then release, then
- // free.
- counter_del = counter;
-
- } // Release the lock
-
- delete counter_del;
-}
-
-template <class ACE_LOCK> inline bool
-ACE_Bound_Ptr_Counter<ACE_LOCK>::object_was_deleted (ACE_Bound_Ptr_Counter<ACE_LOCK> *counter)
-{
- ACE_GUARD_RETURN (ACE_LOCK, guard, counter->lock_, 0);
-
- return counter->obj_ref_count_ == -1;
-}
-
-template <class ACE_LOCK> inline
-ACE_Bound_Ptr_Counter<ACE_LOCK>::ACE_Bound_Ptr_Counter (long init_obj_ref_count)
- : obj_ref_count_ (init_obj_ref_count),
- self_ref_count_ (1)
-{
-}
-
-template <class ACE_LOCK> inline
-ACE_Bound_Ptr_Counter<ACE_LOCK>::~ACE_Bound_Ptr_Counter (void)
-{
-}
-
-template <class X, class ACE_LOCK> inline
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::ACE_Strong_Bound_Ptr (X *p)
- : counter_ (COUNTER::create_strong ()),
- ptr_ (p)
-{
-}
-
-template <class X, class ACE_LOCK> inline
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::ACE_Strong_Bound_Ptr (auto_ptr<X> p)
- : counter_ (COUNTER::create_strong ()),
- ptr_ (p.release())
-{
-}
-
-template <class X, class ACE_LOCK> inline
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::ACE_Strong_Bound_Ptr (const ACE_Strong_Bound_Ptr<X, ACE_LOCK> &r)
- : counter_ (r.counter_),
- ptr_ (r.ptr_)
-{
- COUNTER::attach_strong (this->counter_);
-}
-
-template <class X, class ACE_LOCK> inline
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::ACE_Strong_Bound_Ptr (const ACE_Weak_Bound_Ptr<X, ACE_LOCK> &r)
- : counter_ (r.counter_),
- ptr_ (r.ptr_)
-{
- // When creating a strong pointer from a weak one we can't assume that the
- // underlying object still exists. Therefore we must check for a return value
- // of -1, which indicates that the object has been destroyed.
- if (COUNTER::attach_strong (this->counter_) == -1)
- {
- // Underlying object has already been deleted, so set this pointer to null.
- this->counter_ = COUNTER::create_strong ();
- this->ptr_ = 0;
- }
-}
-
-template <class X, class ACE_LOCK> inline
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::~ACE_Strong_Bound_Ptr (void)
-{
- if (COUNTER::detach_strong (this->counter_) == 0)
- delete this->ptr_;
-}
-
-template <class X, class ACE_LOCK> inline void
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::operator = (const ACE_Strong_Bound_Ptr<X, ACE_LOCK> &rhs)
-{
- // This will work if &r == this, by first increasing the ref count, but
- // why go through all that?
- if (&rhs == this)
- return;
-
- COUNTER *new_counter = rhs.counter_;
- X_t *new_ptr = rhs.ptr_;
- COUNTER::attach_strong (new_counter);
- if (COUNTER::detach_strong (this->counter_) == 0)
- delete this->ptr_;
- this->counter_ = new_counter;
- this->ptr_ = new_ptr;
-}
-
-template <class X, class ACE_LOCK> inline void
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::operator = (const ACE_Weak_Bound_Ptr<X, ACE_LOCK> &rhs)
-{
- // This will work if &r == this, by first increasing the ref count, but
- // why go through all that?
- if (&rhs == this)
- return;
-
- COUNTER *new_counter = rhs.counter_;
- X_t *new_ptr = rhs.ptr_;
-
- // When creating a strong pointer from a weak one we can't assume that the
- // underlying object still exists. Therefore we must check for a return value
- // of -1, which indicates that the object has been destroyed.
- if (COUNTER::attach_strong (new_counter) == -1)
- {
- // Underlying object has already been deleted, so set this pointer to null.
- new_counter = COUNTER::create_strong ();
- new_ptr = 0;
- }
-
- if (COUNTER::detach_strong (this->counter_) == 0)
- delete this->ptr_;
- this->counter_ = new_counter;
- this->ptr_ = new_ptr;
-}
-
-template <class X, class ACE_LOCK> inline bool
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::operator== (const ACE_Strong_Bound_Ptr<X, ACE_LOCK> &r) const
-{
- return this->ptr_ == r.ptr_;
-}
-
-template <class X, class ACE_LOCK> inline bool
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::operator== (const ACE_Weak_Bound_Ptr<X, ACE_LOCK> &r) const
-{
- // Use the weak pointer's operator== since it will check for null.
- return r == *this;
-}
-
-template <class X, class ACE_LOCK> inline bool
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::operator== (X *p) const
-{
- return this->ptr_ == p;
-}
-
-template <class X, class ACE_LOCK> inline bool
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::operator!= (const ACE_Strong_Bound_Ptr<X, ACE_LOCK> &r) const
-{
- return this->ptr_ != r.ptr_;
-}
-
-template <class X, class ACE_LOCK> inline bool
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::operator!= (const ACE_Weak_Bound_Ptr<X, ACE_LOCK> &r) const
-{
- // Use the weak pointer's operator!= since it will check for null.
- return r != *this;
-}
-
-template <class X, class ACE_LOCK> inline bool
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::operator!= (X *p) const
-{
- return this->ptr_ != p;
-}
-
-template <class X, class ACE_LOCK> inline X *
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::operator-> (void) const
-{
- return this->ptr_;
-}
-
-template<class X, class ACE_LOCK> inline X &
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::operator *() const
-{
- return *this->ptr_;
-}
-
-template <class X, class ACE_LOCK> inline X*
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::get (void) const
-{
- return this->ptr_;
-}
-
-template <class X, class ACE_LOCK> inline int
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::null (void) const
-{
- return this->ptr_ == 0;
-}
-
-template<class X, class ACE_LOCK> inline void
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::reset (X *p)
-{
- COUNTER *old_counter = this->counter_;
- X_t *old_ptr = this->ptr_;
- this->counter_ = COUNTER::create_strong ();
- this->ptr_ = p;
- if (COUNTER::detach_strong (old_counter) == 0)
- delete old_ptr;
-}
-
-template<class X, class ACE_LOCK> inline void
-ACE_Strong_Bound_Ptr<X, ACE_LOCK>::reset (auto_ptr<X> p)
-{
- COUNTER *old_counter = this->counter_;
- X_t *old_ptr = this->ptr_;
- this->counter_ = COUNTER::create_strong ();
- this->ptr_ = p.release ();
- if (COUNTER::detach_strong (old_counter) == 0)
- delete old_ptr;
-}
-
-template <class X, class ACE_LOCK> inline
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::ACE_Weak_Bound_Ptr (X *p)
- : counter_ (COUNTER::create_weak ()),
- ptr_ (p)
-{
-}
-
-template <class X, class ACE_LOCK> inline
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::ACE_Weak_Bound_Ptr (const ACE_Weak_Bound_Ptr<X, ACE_LOCK> &r)
- : counter_ (r.counter_),
- ptr_ (r.ptr_)
-{
- COUNTER::attach_weak (this->counter_);
-}
-
-template <class X, class ACE_LOCK> inline
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::ACE_Weak_Bound_Ptr (const ACE_Strong_Bound_Ptr<X, ACE_LOCK> &r)
- : counter_ (r.counter_),
- ptr_ (r.ptr_)
-{
- COUNTER::attach_weak (this->counter_);
-}
-
-template <class X, class ACE_LOCK> inline
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::~ACE_Weak_Bound_Ptr (void)
-{
- COUNTER::detach_weak (this->counter_);
-}
-
-template <class X, class ACE_LOCK> inline void
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::operator = (const ACE_Weak_Bound_Ptr<X, ACE_LOCK> &rhs)
-{
- // This will work if &rhs == this, by first increasing the ref count
- COUNTER *new_counter = rhs.counter_;
- COUNTER::attach_weak (new_counter);
- COUNTER::detach_weak (this->counter_);
- this->counter_ = new_counter;
- this->ptr_ = rhs.ptr_;
-}
-
-template <class X, class ACE_LOCK> inline void
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::operator = (const ACE_Strong_Bound_Ptr<X, ACE_LOCK> &rhs)
-{
- // This will work if &rhs == this, by first increasing the ref count
- COUNTER *new_counter = rhs.counter_;
- COUNTER::attach_weak (new_counter);
- COUNTER::detach_weak (this->counter_);
- this->counter_ = new_counter;
- this->ptr_ = rhs.ptr_;
-}
-
-template <class X, class ACE_LOCK> inline bool
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::operator== (const ACE_Weak_Bound_Ptr<X, ACE_LOCK> &r) const
-{
- // A weak pointer must behave as though it is automatically set to null
- // if the underlying object has been deleted.
- if (COUNTER::object_was_deleted (this->counter_))
- return r.ptr_ == 0;
-
- return this->ptr_ == r.ptr_;
-}
-
-template <class X, class ACE_LOCK> inline bool
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::operator== (const ACE_Strong_Bound_Ptr<X, ACE_LOCK> &r) const
-{
- // A weak pointer must behave as though it is automatically set to null
- // if the underlying object has been deleted.
- if (COUNTER::object_was_deleted (this->counter_))
- return r.ptr_ == 0;
-
- return this->ptr_ == r.ptr_;
-}
-
-template <class X, class ACE_LOCK> inline bool
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::operator== (X *p) const
-{
- // A weak pointer must behave as though it is automatically set to null
- // if the underlying object has been deleted.
- if (COUNTER::object_was_deleted (this->counter_))
- return p == 0;
-
- return this->ptr_ == p;
-}
-
-template <class X, class ACE_LOCK> inline bool
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::operator!= (const ACE_Weak_Bound_Ptr<X, ACE_LOCK> &r) const
-{
- // A weak pointer must behave as though it is automatically set to null
- // if the underlying object has been deleted.
- if (COUNTER::object_was_deleted (this->counter_))
- return r.ptr_ != 0;
-
- return this->ptr_ != r.ptr_;
-}
-
-template <class X, class ACE_LOCK> inline bool
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::operator!= (const ACE_Strong_Bound_Ptr<X, ACE_LOCK> &r) const
-{
- // A weak pointer must behave as though it is automatically set to null
- // if the underlying object has been deleted.
- if (COUNTER::object_was_deleted (this->counter_))
- return r.ptr_ != 0;
-
- return this->ptr_ != r.ptr_;
-}
-
-template <class X, class ACE_LOCK> inline bool
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::operator!= (X *p) const
-{
- // A weak pointer must behave as though it is automatically set to null
- // if the underlying object has been deleted.
- if (COUNTER::object_was_deleted (this->counter_))
- return p != 0;
-
- return this->ptr_ != p;
-}
-
-template <class X, class ACE_LOCK> inline ACE_Strong_Bound_Ptr<X, ACE_LOCK>
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::operator-> (void) const
-{
- return ACE_Strong_Bound_Ptr<X, ACE_LOCK> (*this);
-}
-
-template <class X, class ACE_LOCK> inline ACE_Strong_Bound_Ptr<X, ACE_LOCK>
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::strong (void) const
-{
- return ACE_Strong_Bound_Ptr<X, ACE_LOCK> (*this);
-}
-
-template <class X, class ACE_LOCK> inline X*
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::unsafe_get (void) const
-{
- // We do not check if the object has been deleted, since this operation
- // is defined to be unsafe!
- return this->ptr_;
-}
-
-template <class X, class ACE_LOCK> inline int
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::null (void) const
-{
- // A weak pointer must behave as though it is automatically set to null
- // if the underlying object has been deleted.
- if (COUNTER::object_was_deleted (this->counter_))
- return 1;
-
- return this->ptr_ == 0;
-}
-
-template<class X, class ACE_LOCK> inline void
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::reset (X *p)
-{
- COUNTER *old_counter = this->counter_;
- this->counter_ = COUNTER::create_weak ();
- this->ptr_ = p;
- COUNTER::detach_weak (old_counter);
-}
-
-template<class X, class ACE_LOCK> inline long
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::add_ref ()
-{
- return COUNTER::attach_strong (counter_);
-}
-
-template<class X, class ACE_LOCK> inline long
-ACE_Weak_Bound_Ptr<X, ACE_LOCK>::remove_ref ()
-{
- long new_obj_ref_count = COUNTER::detach_strong (counter_);
- if (new_obj_ref_count == 0)
- {
- delete this->ptr_;
- this->ptr_ = 0;
- }
- return new_obj_ref_count;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/CDR_Base.h b/dep/include/ace/CDR_Base.h
deleted file mode 100644
index 47db56002ee..00000000000
--- a/dep/include/ace/CDR_Base.h
+++ /dev/null
@@ -1,378 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file CDR_Base.h
- *
- * $Id: CDR_Base.h 82088 2008-06-19 16:22:16Z shuston $
- *
- * ACE Common Data Representation (CDR) basic types.
- *
- * The current implementation assumes that the host has 1-byte,
- * 2-byte and 4-byte integral types, and that it has single
- * precision and double precision IEEE floats.
- * Those assumptions are pretty good these days, with Crays being
- * the only known exception.
- *
- *
- * @author TAO version by
- * @author Aniruddha Gokhale <gokhale@cs.wustl.edu>
- * @author Carlos O'Ryan<coryan@cs.wustl.edu>
- * @author ACE version by
- * @author Jeff Parsons <parsons@cs.wustl.edu>
- * @author Istvan Buki <istvan.buki@euronet.be>
- */
-//=============================================================================
-
-#ifndef ACE_CDR_BASE_H
-#define ACE_CDR_BASE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Basic_Types.h"
-#include "ace/Default_Constants.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Stuff used by the ACE CDR classes. Watch these values... they're also used
-// in the ACE_CDR Byte_Order enum below.
-#if defined ACE_LITTLE_ENDIAN
-# define ACE_CDR_BYTE_ORDER 1
-// little endian encapsulation byte order has value = 1
-#else /* ! ACE_LITTLE_ENDIAN */
-# define ACE_CDR_BYTE_ORDER 0
-// big endian encapsulation byte order has value = 0
-#endif /* ! ACE_LITTLE_ENDIAN */
-
-class ACE_Message_Block;
-
-/**
- * @class ACE_CDR
- *
- * @brief Keep constants and some routines common to both Output and
- * Input CDR streams.
- */
-class ACE_Export ACE_CDR
-{
-public:
- // = Constants defined by the CDR protocol.
- // By defining as many of these constants as possible as enums we
- // ensure they get inlined and avoid pointless static memory
- // allocations.
-
- enum
- {
- // Note that some of these get reused as part of the standard
- // binary format: unsigned is the same size as its signed cousin,
- // float is LONG_SIZE, and double is LONGLONG_SIZE.
-
- OCTET_SIZE = 1,
- SHORT_SIZE = 2,
- LONG_SIZE = 4,
- LONGLONG_SIZE = 8,
- LONGDOUBLE_SIZE = 16,
-
- OCTET_ALIGN = 1,
- SHORT_ALIGN = 2,
- LONG_ALIGN = 4,
- LONGLONG_ALIGN = 8,
- /// @note the CORBA LongDouble alignment requirements do not
- /// match its size...
- LONGDOUBLE_ALIGN = 8,
-
- /// Maximal CDR 1.1 alignment: "quad precision" FP (i.e. "CDR::Long
- /// double", size as above).
- MAX_ALIGNMENT = 8,
-
- /// The default buffer size.
- /**
- * @todo We want to add options to control this
- * default value, so this constant should be read as the default
- * default value ;-)
- */
- DEFAULT_BUFSIZE = ACE_DEFAULT_CDR_BUFSIZE,
-
- /// The buffer size grows exponentially until it reaches this size;
- /// afterwards it grows linearly using the next constant
- EXP_GROWTH_MAX = ACE_DEFAULT_CDR_EXP_GROWTH_MAX,
-
- /// Once exponential growth is ruled out the buffer size increases
- /// in chunks of this size, note that this constants have the same
- /// value right now, but it does not need to be so.
- LINEAR_GROWTH_CHUNK = ACE_DEFAULT_CDR_LINEAR_GROWTH_CHUNK
- };
-
- /**
- * @enum Byte_Order
- *
- * Defines values for the byte_order argument to ACE_OutputCDR and
- * ACE_InputCDR.
- */
- enum Byte_Order
- {
- /// Use big-endian order (also known as network byte order).
- BYTE_ORDER_BIG_ENDIAN = 0,
- /// Use little-endian order.
- BYTE_ORDER_LITTLE_ENDIAN = 1,
- /// Use whichever byte order is native to this machine.
- BYTE_ORDER_NATIVE = ACE_CDR_BYTE_ORDER
- };
-
- /**
- * Do byte swapping for each basic IDL type size. There exist only
- * routines to put byte, halfword (2 bytes), word (4 bytes),
- * doubleword (8 bytes) and quadword (16 byte); because those are
- * the IDL basic type sizes.
- */
- static void swap_2 (char const *orig, char *target);
- static void swap_4 (char const *orig, char *target);
- static void swap_8 (char const *orig, char *target);
- static void swap_16 (char const *orig, char *target);
- static void swap_2_array (char const *orig,
- char *target,
- size_t length);
- static void swap_4_array (char const *orig,
- char *target,
- size_t length);
- static void swap_8_array (char const *orig,
- char *target,
- size_t length);
- static void swap_16_array (char const *orig,
- char *target,
- size_t length);
-
- /// Align the message block to ACE_CDR::MAX_ALIGNMENT,
- /// set by the CORBA spec at 8 bytes.
- static void mb_align (ACE_Message_Block *mb);
-
- /**
- * Compute the size of the smallest buffer that can contain at least
- * @a minsize bytes.
- * To understand how a "best fit" is computed look at the
- * algorithm in the code.
- * Basically the buffers grow exponentially, up to a certain point,
- * then the buffer size grows linearly.
- * The advantage of this algorithm is that is rapidly grows to a
- * large value, but does not explode at the end.
- */
- static size_t first_size (size_t minsize);
-
- /// Compute not the smallest, but the second smallest buffer that
- /// will fir @a minsize bytes.
- static size_t next_size (size_t minsize);
-
- /**
- * Increase the capacity of mb to contain at least @a minsize bytes.
- * If @a minsize is zero the size is increased by an amount at least
- * large enough to contain any of the basic IDL types.
- * @retval -1 Failure
- * @retval 0 Success.
- */
- static int grow (ACE_Message_Block *mb, size_t minsize);
-
- /// Copy a message block chain into a single message block,
- /// preserving the alignment of the first message block of the
- /// original stream, not the following message blocks.
- static void consolidate (ACE_Message_Block *dst,
- const ACE_Message_Block *src);
-
- static size_t total_length (const ACE_Message_Block *begin,
- const ACE_Message_Block *end);
-
- /**
- * @name Basic OMG IDL Types
- *
- * These types are for use in the CDR classes. The cleanest way to
- * avoid complaints from all compilers is to define them all.
- */
- //@{
- typedef bool Boolean;
- typedef unsigned char Octet;
- typedef char Char;
- typedef ACE_WCHAR_T WChar;
- typedef ACE_INT16 Short;
- typedef ACE_UINT16 UShort;
- typedef ACE_INT32 Long;
- typedef ACE_UINT32 ULong;
- typedef ACE_UINT64 ULongLong;
-
-# if (defined (_MSC_VER)) || (defined (__BORLANDC__))
- typedef __int64 LongLong;
-# elif ACE_SIZEOF_LONG == 8 && !defined(_CRAYMPP)
- typedef long LongLong;
-# elif defined(__TANDEM)
- typedef long long LongLong;
-# elif ACE_SIZEOF_LONG_LONG == 8 && !defined (ACE_LACKS_LONGLONG_T)
-# if defined (sun) && !defined (ACE_LACKS_U_LONGLONG_T)
- // sun #defines u_longlong_t, maybe other platforms do also.
- // Use it, at least with g++, so that its -pedantic doesn't
- // complain about no ANSI C++ long long.
- typedef longlong_t LongLong;
-# else
- // LynxOS 2.5.0 and Linux don't have u_longlong_t.
- typedef long long LongLong;
-# endif /* sun */
-# else /* no native 64 bit integer type */
-# define NONNATIVE_LONGLONG
- struct ACE_Export LongLong
- {
-# if defined (ACE_BIG_ENDIAN)
- ACE_CDR::Long h;
- ACE_CDR::Long l;
-# else
- ACE_CDR::Long l;
- ACE_CDR::Long h;
-# endif /* ! ACE_BIG_ENDIAN */
-
- /**
- * @name Overloaded Relation Operators.
- *
- * The canonical comparison operators.
- */
- //@{
- bool operator== (const LongLong &rhs) const;
- bool operator!= (const LongLong &rhs) const;
- //@}
- };
-# endif /* no native 64 bit integer type */
-
-# if defined (NONNATIVE_LONGLONG)
-# define ACE_CDR_LONGLONG_INITIALIZER {0,0}
-# else
-# define ACE_CDR_LONGLONG_INITIALIZER 0
-# endif /* NONNATIVE_LONGLONG */
-
-# if ACE_SIZEOF_FLOAT == 4
- typedef float Float;
-# else /* ACE_SIZEOF_FLOAT != 4 */
- struct Float
- {
-# if ACE_SIZEOF_INT == 4
- // Use unsigned int to get word alignment.
- unsigned int f;
-# else /* ACE_SIZEOF_INT != 4 */
- // Applications will probably have trouble with this.
- char f[4];
-# if defined(_UNICOS) && !defined(_CRAYMPP)
- Float (void);
- Float (const float &init);
- Float & operator= (const float &rhs);
- bool operator!= (const Float &rhs) const;
-# endif /* _UNICOS */
-# endif /* ACE_SIZEOF_INT != 4 */
- };
-# endif /* ACE_SIZEOF_FLOAT != 4 */
-
-# if ACE_SIZEOF_DOUBLE == 8
- typedef double Double;
-# else /* ACE_SIZEOF_DOUBLE != 8 */
- struct Double
- {
-# if ACE_SIZEOF_LONG == 8
- // Use u long to get word alignment.
- unsigned long f;
-# else /* ACE_SIZEOF_INT != 8 */
- // Applications will probably have trouble with this.
- char f[8];
-# endif /* ACE_SIZEOF_INT != 8 */
- };
-# endif /* ACE_SIZEOF_DOUBLE != 8 */
-
- // 94-9-32 Appendix A defines a 128 bit floating point "long
- // double" data type, with greatly extended precision and four
- // more bits of exponent (compared to "double"). This is an IDL
- // extension, not yet standard.
-
-# if ACE_SIZEOF_LONG_DOUBLE == 16
- typedef long double LongDouble;
-# define ACE_CDR_LONG_DOUBLE_INITIALIZER 0
-# define ACE_CDR_LONG_DOUBLE_ASSIGNMENT(LHS, RHS) LHS = RHS
-# else
-# define NONNATIVE_LONGDOUBLE
-# define ACE_CDR_LONG_DOUBLE_INITIALIZER {{0}}
-# define ACE_CDR_LONG_DOUBLE_ASSIGNMENT(LHS, RHS) LHS.assign (RHS)
- struct ACE_Export LongDouble
- {
- // VxWorks' compiler (gcc 2.96) gets confused by the operator long
- // double, so we avoid using long double as the NativeImpl.
- // Linux's x86 long double format (12 or 16 bytes) is incompatible
- // with Windows, Solaris, AIX, MacOS X and HP-UX (and probably others)
- // long double format (8 or 16 bytes). If you need 32-bit Linux to
- // inter-operate with 64-bit Linux you will want to define this
- // macro to 0 so that "long double" is used. Otherwise, do not define
- // this macro.
-# if defined (ACE_CDR_IMPLEMENT_WITH_NATIVE_DOUBLE) && \
- (ACE_CDR_IMPLEMENT_WITH_NATIVE_DOUBLE == 1)
- typedef double NativeImpl;
-# else
- typedef long double NativeImpl;
-# endif /* ACE_CDR_IMPLEMENT_WITH_NATIVE_DOUBLE==1 */
-
- char ld[16];
-
- LongDouble& assign (const NativeImpl& rhs);
- LongDouble& assign (const LongDouble& rhs);
-
- bool operator== (const LongDouble &rhs) const;
- bool operator!= (const LongDouble &rhs) const;
-
- LongDouble& operator*= (const NativeImpl rhs) {
- return this->assign (static_cast<NativeImpl> (*this) * rhs);
- }
- LongDouble& operator/= (const NativeImpl rhs) {
- return this->assign (static_cast<NativeImpl> (*this) / rhs);
- }
- LongDouble& operator+= (const NativeImpl rhs) {
- return this->assign (static_cast<NativeImpl> (*this) + rhs);
- }
- LongDouble& operator-= (const NativeImpl rhs) {
- return this->assign (static_cast<NativeImpl> (*this) - rhs);
- }
- LongDouble& operator++ () {
- return this->assign (static_cast<NativeImpl> (*this) + 1);
- }
- LongDouble& operator-- () {
- return this->assign (static_cast<NativeImpl> (*this) - 1);
- }
- LongDouble operator++ (int) {
- LongDouble ldv = *this;
- this->assign (static_cast<NativeImpl> (*this) + 1);
- return ldv;
- }
- LongDouble operator-- (int) {
- LongDouble ldv = *this;
- this->assign (static_cast<NativeImpl> (*this) - 1);
- return ldv;
- }
-
- operator NativeImpl () const;
- };
-# endif /* ACE_SIZEOF_LONG_DOUBLE != 16 */
-
- //@}
-
-#if !defined (ACE_CDR_GIOP_MAJOR_VERSION)
-# define ACE_CDR_GIOP_MAJOR_VERSION 1
-#endif /*ACE_CDR_GIOP_MAJOR_VERSION */
-
-#if !defined (ACE_CDR_GIOP_MINOR_VERSION)
-# define ACE_CDR_GIOP_MINOR_VERSION 2
-#endif /* ACE_CDR_GIOP_MINOR_VERSION */
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-# include "ace/CDR_Base.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CDR_BASE_H */
-
diff --git a/dep/include/ace/CDR_Base.inl b/dep/include/ace/CDR_Base.inl
deleted file mode 100644
index 85373170af7..00000000000
--- a/dep/include/ace/CDR_Base.inl
+++ /dev/null
@@ -1,255 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: CDR_Base.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#if defined (ACE_HAS_INTRINSIC_BYTESWAP)
-// Take advantage of MSVC++ byte swapping compiler intrinsics (found
-// in <stdlib.h>).
-# pragma intrinsic (_byteswap_ushort, _byteswap_ulong, _byteswap_uint64)
-#endif /* ACE_HAS_INTRINSIC_BYTESWAP */
-
-#if defined (ACE_HAS_BSWAP_16) || defined (ACE_HAS_BSWAP_32) || defined (ACE_HAS_BSWAP_64)
-# include "ace/os_include/os_byteswap.h"
-#endif
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-//
-// The ACE_CDR::swap_X and ACE_CDR::swap_X_array routines are broken
-// in 5 cases for optimization:
-//
-// * MSVC++ 7.1 or better
-// => Compiler intrinsics
-//
-// * AMD64 CPU + gnu g++
-// => gcc amd64 inline assembly.
-//
-// * x86 Pentium CPU + gnu g++
-// (ACE_HAS_PENTIUM && __GNUG__)
-// => gcc x86 inline assembly.
-//
-// * x86 Pentium CPU and (_MSC_VER) or BORLAND C++)
-// (ACE_HAS_PENTIUM && ( _MSC_VER || __BORLANDC__ )
-// => MSC x86 inline assembly.
-//
-// * 64 bit architecture
-// (ACE_SIZEOF_LONG == 8)
-// => shift/masks using 64bit words.
-//
-// * default
-// (none of the above)
-// => shift/masks using 32bit words.
-//
-//
-// Some things you could find useful to know if you intend to mess
-// with this optimizations for swaps:
-//
-// * MSVC++ don't assume register values are conserved between
-// statements. So you can clobber any register you want,
-// whenever you want (well not *anyone* really, see manual).
-// The MSVC++ optimizer will try to pick different registers
-// for the C++ statements sorrounding your asm block, and if
-// it's not possible will use the stack.
-//
-// * If you clobber registers with asm statements in gcc, you
-// better do it in an asm-only function, or save/restore them
-// before/after in the stack. If not, sorrounding C statements
-// could end using the same registers and big-badda-bum (been
-// there, done that...). The big-badda-bum could happen *even
-// if you specify the clobbered register in your asm's*.
-// Even better, use gcc asm syntax for detecting the register
-// asigned to a certain variable so you don't have to clobber any
-// register directly.
-//
-
-ACE_INLINE void
-ACE_CDR::swap_2 (const char *orig, char* target)
-{
-#if defined (ACE_HAS_INTRINSIC_BYTESWAP)
- // Take advantage of MSVC++ compiler intrinsic byte swapping
- // function.
- *reinterpret_cast<unsigned short *> (target) =
- _byteswap_ushort (*reinterpret_cast<unsigned short const *> (orig));
-#elif defined (ACE_HAS_BSWAP16)
- *reinterpret_cast<uint16_t *> (target) =
- bswap16 (*reinterpret_cast<uint16_t const *> (orig));
-#elif defined (ACE_HAS_BSWAP_16)
- *reinterpret_cast<uint16_t *> (target) =
- bswap_16 (*reinterpret_cast<uint16_t const *> (orig));
-#elif defined(ACE_HAS_INTEL_ASSEMBLY)
- unsigned short a =
- *reinterpret_cast<const unsigned short*> (orig);
- asm( "rolw $8, %0" : "=r" (a) : "0" (a) );
- *reinterpret_cast<unsigned short*> (target) = a;
-#elif defined (ACE_HAS_PENTIUM) \
- && (defined(_MSC_VER) || defined(__BORLANDC__)) \
- && !defined(ACE_LACKS_INLINE_ASSEMBLY)
- __asm mov ebx, orig;
- __asm mov ecx, target;
- __asm mov ax, [ebx];
- __asm rol ax, 8;
- __asm mov [ecx], ax;
-#else
- register ACE_UINT16 usrc = * reinterpret_cast<const ACE_UINT16*> (orig);
- register ACE_UINT16* udst = reinterpret_cast<ACE_UINT16*> (target);
- *udst = (usrc << 8) | (usrc >> 8);
-#endif /* ACE_HAS_PENTIUM */
-}
-
-ACE_INLINE void
-ACE_CDR::swap_4 (const char* orig, char* target)
-{
-#if defined (ACE_HAS_INTRINSIC_BYTESWAP)
- // Take advantage of MSVC++ compiler intrinsic byte swapping
- // function.
- *reinterpret_cast<unsigned long *> (target) =
- _byteswap_ulong (*reinterpret_cast<unsigned long const *> (orig));
-#elif defined (ACE_HAS_BSWAP32)
- *reinterpret_cast<uint32_t *> (target) =
- bswap32 (*reinterpret_cast<uint32_t const *> (orig));
-#elif defined (ACE_HAS_BSWAP_32)
- *reinterpret_cast<uint32_t *> (target) =
- bswap_32 (*reinterpret_cast<uint32_t const *> (orig));
-#elif defined(ACE_HAS_INTEL_ASSEMBLY)
- // We have ACE_HAS_PENTIUM, so we know the sizeof's.
- register unsigned int j =
- *reinterpret_cast<const unsigned int*> (orig);
- asm ("bswap %1" : "=r" (j) : "0" (j));
- *reinterpret_cast<unsigned int*> (target) = j;
-#elif defined(ACE_HAS_PENTIUM) \
- && (defined(_MSC_VER) || defined(__BORLANDC__)) \
- && !defined(ACE_LACKS_INLINE_ASSEMBLY)
- __asm mov ebx, orig;
- __asm mov ecx, target;
- __asm mov eax, [ebx];
- __asm bswap eax;
- __asm mov [ecx], eax;
-#else
- register ACE_UINT32 x = * reinterpret_cast<const ACE_UINT32*> (orig);
- x = (x << 24) | ((x & 0xff00) << 8) | ((x & 0xff0000) >> 8) | (x >> 24);
- * reinterpret_cast<ACE_UINT32*> (target) = x;
-#endif /* ACE_HAS_INTRINSIC_BYTESWAP */
-}
-
-ACE_INLINE void
-ACE_CDR::swap_8 (const char* orig, char* target)
-{
-#if defined (ACE_HAS_INTRINSIC_BYTESWAP)
- // Take advantage of MSVC++ compiler intrinsic byte swapping
- // function.
- *reinterpret_cast<unsigned __int64 *> (target) =
- _byteswap_uint64 (*reinterpret_cast<unsigned __int64 const *> (orig));
-#elif defined (ACE_HAS_BSWAP64)
- *reinterpret_cast<uint64_t *> (target) =
- bswap64 (*reinterpret_cast<uint64_t const *> (orig));
-#elif defined (ACE_HAS_BSWAP_64)
- *reinterpret_cast<uint64_t *> (target) =
- bswap_64 (*reinterpret_cast<uint64_t const *> (orig));
-#elif (defined (__amd64__) || defined (__x86_64__)) && defined(__GNUG__)
- register unsigned long x =
- * reinterpret_cast<const unsigned long*> (orig);
- asm ("bswapq %1" : "=r" (x) : "0" (x));
- *reinterpret_cast<unsigned long*> (target) = x;
-#elif defined(ACE_HAS_PENTIUM) && defined(__GNUG__)
- register unsigned int i =
- *reinterpret_cast<const unsigned int*> (orig);
- register unsigned int j =
- *reinterpret_cast<const unsigned int*> (orig + 4);
- asm ("bswap %1" : "=r" (i) : "0" (i));
- asm ("bswap %1" : "=r" (j) : "0" (j));
- *reinterpret_cast<unsigned int*> (target + 4) = i;
- *reinterpret_cast<unsigned int*> (target) = j;
-#elif defined(ACE_HAS_PENTIUM) \
- && (defined(_MSC_VER) || defined(__BORLANDC__)) \
- && !defined(ACE_LACKS_INLINE_ASSEMBLY)
- __asm mov ecx, orig;
- __asm mov edx, target;
- __asm mov eax, [ecx];
- __asm mov ebx, 4[ecx];
- __asm bswap eax;
- __asm bswap ebx;
- __asm mov 4[edx], eax;
- __asm mov [edx], ebx;
-#elif ACE_SIZEOF_LONG == 8
- // 64 bit architecture.
- register unsigned long x =
- * reinterpret_cast<const unsigned long*> (orig);
- register unsigned long x84 = (x & 0x000000ff000000ffUL) << 24;
- register unsigned long x73 = (x & 0x0000ff000000ff00UL) << 8;
- register unsigned long x62 = (x & 0x00ff000000ff0000UL) >> 8;
- register unsigned long x51 = (x & 0xff000000ff000000UL) >> 24;
- x = (x84 | x73 | x62 | x51);
- x = (x << 32) | (x >> 32);
- *reinterpret_cast<unsigned long*> (target) = x;
-#else
- register ACE_UINT32 x =
- * reinterpret_cast<const ACE_UINT32*> (orig);
- register ACE_UINT32 y =
- * reinterpret_cast<const ACE_UINT32*> (orig + 4);
- x = (x << 24) | ((x & 0xff00) << 8) | ((x & 0xff0000) >> 8) | (x >> 24);
- y = (y << 24) | ((y & 0xff00) << 8) | ((y & 0xff0000) >> 8) | (y >> 24);
- * reinterpret_cast<ACE_UINT32*> (target) = y;
- * reinterpret_cast<ACE_UINT32*> (target + 4) = x;
-#endif /* ACE_HAS_INTRINSIC_BYTESWAP */
-}
-
-ACE_INLINE void
-ACE_CDR::swap_16 (const char* orig, char* target)
-{
- swap_8 (orig + 8, target);
- swap_8 (orig, target + 8);
-}
-
-ACE_INLINE size_t
-ACE_CDR::first_size (size_t minsize)
-{
- if (minsize == 0)
- return ACE_CDR::DEFAULT_BUFSIZE;
-
- size_t newsize = ACE_CDR::DEFAULT_BUFSIZE;
- while (newsize < minsize)
- {
- if (newsize < ACE_CDR::EXP_GROWTH_MAX)
- {
- // We grow exponentially at the beginning, this is fast and
- // reduces the number of allocations.
-
- // Quickly multiply by two using a bit shift. This is
- // guaranteed to work since the variable is an unsigned
- // integer.
- newsize <<= 1;
- }
- else
- {
- // but continuing with exponential growth can result in over
- // allocations and easily yield an allocation failure.
- // So we grow linearly when the buffer is too big.
- newsize += ACE_CDR::LINEAR_GROWTH_CHUNK;
- }
- }
- return newsize;
-}
-
-ACE_INLINE size_t
-ACE_CDR::next_size (size_t minsize)
-{
- size_t newsize = ACE_CDR::first_size (minsize);
-
- if (newsize == minsize)
- {
- // If necessary increment the size
- if (newsize < ACE_CDR::EXP_GROWTH_MAX)
- // Quickly multiply by two using a bit shift. This is
- // guaranteed to work since the variable is an unsigned
- // integer.
- newsize <<= 1;
- else
- newsize += ACE_CDR::LINEAR_GROWTH_CHUNK;
- }
-
- return newsize;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// ****************************************************************
diff --git a/dep/include/ace/CDR_Size.h b/dep/include/ace/CDR_Size.h
deleted file mode 100644
index 3803310c7f2..00000000000
--- a/dep/include/ace/CDR_Size.h
+++ /dev/null
@@ -1,237 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file CDR_Size.h
- *
- * $Id: CDR_Size.h 80826 2008-03-04 14:51:23Z wotte $
- *
- *
- * ACE Common Data Representation (CDR) size-calculating stream.
- *
- *
- * The current implementation assumes that the host has 1-byte,
- * 2-byte and 4-byte integral types, and that it has single
- * precision and double precision IEEE floats.
- * Those assumptions are pretty good these days, with Crays beign
- * the only known exception.
- *
- *
- * @author Boris Kolpackov <boris@kolpackov.net>
- *
- */
-//=============================================================================
-
-#ifndef ACE_CDR_SIZE_H
-#define ACE_CDR_SIZE_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/CDR_Base.h"
-#include "ace/CDR_Stream.h" // for ACE_OutputCDR::from_*
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SStringfwd.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SizeCDR
- *
- * @brief A CDR stream for calculating size of the representation.
- *
- */
-class ACE_Export ACE_SizeCDR
-{
-public:
- /// Default constructor.
- ACE_SizeCDR (ACE_CDR::Octet major_version = ACE_CDR_GIOP_MAJOR_VERSION,
- ACE_CDR::Octet minor_version = ACE_CDR_GIOP_MINOR_VERSION);
-
- /// Returns @c false if an error has ocurred.
- bool good_bit (void) const;
-
- /// Reset current size.
- void reset (void);
-
- /// Return current size.
- size_t total_length (void) const;
-
- // Return 0 on failure and 1 on success.
- //@{ @name Size-calculating pseudo-write operations
- ACE_CDR::Boolean write_boolean (ACE_CDR::Boolean x);
- ACE_CDR::Boolean write_char (ACE_CDR::Char x);
- ACE_CDR::Boolean write_wchar (ACE_CDR::WChar x);
- ACE_CDR::Boolean write_octet (ACE_CDR::Octet x);
- ACE_CDR::Boolean write_short (ACE_CDR::Short x);
- ACE_CDR::Boolean write_ushort (ACE_CDR::UShort x);
- ACE_CDR::Boolean write_long (ACE_CDR::Long x);
- ACE_CDR::Boolean write_ulong (ACE_CDR::ULong x);
- ACE_CDR::Boolean write_longlong (const ACE_CDR::LongLong &x);
- ACE_CDR::Boolean write_ulonglong (const ACE_CDR::ULongLong &x);
- ACE_CDR::Boolean write_float (ACE_CDR::Float x);
- ACE_CDR::Boolean write_double (const ACE_CDR::Double &x);
- ACE_CDR::Boolean write_longdouble (const ACE_CDR::LongDouble &x);
-
- /// For string we offer methods that accept a precomputed length.
- ACE_CDR::Boolean write_string (const ACE_CDR::Char *x);
- ACE_CDR::Boolean write_string (ACE_CDR::ULong len,
- const ACE_CDR::Char *x);
- ACE_CDR::Boolean write_string (const ACE_CString &x);
- ACE_CDR::Boolean write_wstring (const ACE_CDR::WChar *x);
- ACE_CDR::Boolean write_wstring (ACE_CDR::ULong length,
- const ACE_CDR::WChar *x);
- //@}
-
- /// @note the portion written starts at <x> and ends
- /// at <x + length>.
- /// The length is *NOT* stored into the CDR stream.
- //@{ @name Array write operations
- ACE_CDR::Boolean write_boolean_array (const ACE_CDR::Boolean *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_char_array (const ACE_CDR::Char *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_wchar_array (const ACE_CDR::WChar* x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_octet_array (const ACE_CDR::Octet* x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_short_array (const ACE_CDR::Short *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_ushort_array (const ACE_CDR::UShort *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_long_array (const ACE_CDR::Long *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_ulong_array (const ACE_CDR::ULong *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_longlong_array (const ACE_CDR::LongLong* x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_ulonglong_array (const ACE_CDR::ULongLong *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_float_array (const ACE_CDR::Float *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_double_array (const ACE_CDR::Double *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_longdouble_array (const ACE_CDR::LongDouble* x,
- ACE_CDR::ULong length);
-
- ///
- /// Adjust to @a size and count <size> octets.
- void adjust (size_t size);
-
- /// As above, but now the size and alignment requirements may be
- /// different.
- void adjust (size_t size,
- size_t align);
-
-private:
- /// disallow copying...
- ACE_SizeCDR (const ACE_SizeCDR& rhs);
- ACE_SizeCDR& operator= (const ACE_SizeCDR& rhs);
-
- ACE_CDR::Boolean write_1 (const ACE_CDR::Octet *x);
- ACE_CDR::Boolean write_2 (const ACE_CDR::UShort *x);
- ACE_CDR::Boolean write_4 (const ACE_CDR::ULong *x);
- ACE_CDR::Boolean write_8 (const ACE_CDR::ULongLong *x);
- ACE_CDR::Boolean write_16 (const ACE_CDR::LongDouble *x);
-
- /**
- * write an array of @a length elements, each of @a size bytes and the
- * start aligned at a multiple of <align>. The elements are assumed
- * to be packed with the right alignment restrictions. It is mostly
- * designed for buffers of the basic types.
- *
- * This operation uses <memcpy>; as explained above it is expected
- * that using assignment is faster that <memcpy> for one element,
- * but for several elements <memcpy> should be more efficient, it
- * could be interesting to find the break even point and optimize
- * for that case, but that would be too platform dependent.
- */
- ACE_CDR::Boolean write_array (const void *x,
- size_t size,
- size_t align,
- ACE_CDR::ULong length);
-
- ACE_CDR::Boolean write_wchar_array_i (const ACE_CDR::WChar* x,
- ACE_CDR::ULong length);
-
-private:
- /// Set to false when an error ocurrs.
- bool good_bit_;
-
- /// Current size.
- size_t size_;
-
-protected:
- /// GIOP version information
- ACE_CDR::Octet major_version_;
- ACE_CDR::Octet minor_version_;
-};
-
-// @@ This operator should not be inlined since they force SString.h
-// to be included in this header.
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR &ss,
- const ACE_CString &x);
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-# include "ace/CDR_Size.inl"
-#else /* __ACE_INLINE__ */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Not used by CORBA or TAO
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR &ss,
- ACE_CDR::Char x);
-
-// CDR size-calculating output operators for primitive types
-
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR &ss,
- ACE_CDR::Short x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR &ss,
- ACE_CDR::UShort x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR &ss,
- ACE_CDR::Long x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR &ss,
- ACE_CDR::ULong x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR &ss,
- ACE_CDR::LongLong x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR &ss,
- ACE_CDR::ULongLong x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR& ss,
- ACE_CDR::LongDouble x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR &ss,
- ACE_CDR::Float x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR &ss,
- ACE_CDR::Double x);
-
-// CDR size-calculating output operator from helper classes
-
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR &ss,
- ACE_OutputCDR::from_boolean x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR &ss,
- ACE_OutputCDR::from_char x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR &ss,
- ACE_OutputCDR::from_wchar x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR &ss,
- ACE_OutputCDR::from_octet x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR &ss,
- ACE_OutputCDR::from_string x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR &ss,
- ACE_OutputCDR::from_wstring x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR &ss,
- const ACE_CDR::Char* x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_SizeCDR &ss,
- const ACE_CDR::WChar* x);
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CDR_SIZE_H */
-
diff --git a/dep/include/ace/CDR_Size.inl b/dep/include/ace/CDR_Size.inl
deleted file mode 100644
index 5d65ab94c09..00000000000
--- a/dep/include/ace/CDR_Size.inl
+++ /dev/null
@@ -1,419 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: CDR_Size.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_string.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_SizeCDR::ACE_SizeCDR (ACE_CDR::Octet major_version,
- ACE_CDR::Octet minor_version)
- : good_bit_ (true),
- size_ (0),
- major_version_ (major_version),
- minor_version_ (minor_version)
-{
-}
-
-ACE_INLINE bool
-ACE_SizeCDR::good_bit (void) const
-{
- return this->good_bit_;
-}
-
-ACE_INLINE void
-ACE_SizeCDR::reset (void)
-{
- this->size_ = 0;
-}
-
-ACE_INLINE size_t
-ACE_SizeCDR::total_length (void) const
-{
- return this->size_;
-}
-
-// Encode the CDR stream.
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_octet (ACE_CDR::Octet x)
-{
- return this->write_1 (reinterpret_cast<const ACE_CDR::Octet *> (&x));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_boolean (ACE_CDR::Boolean x)
-{
- return (ACE_CDR::Boolean) this->write_octet (x ? (ACE_CDR::Octet) 1 : (ACE_CDR::Octet) 0);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_char (ACE_CDR::Char x)
-{
- // Note: translator framework is not supported.
- //
- return this->write_1 (reinterpret_cast<const ACE_CDR::Octet*> (&x));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_short (ACE_CDR::Short x)
-{
- return this->write_2 (reinterpret_cast<const ACE_CDR::UShort*> (&x));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_ushort (ACE_CDR::UShort x)
-{
- return this->write_2 (reinterpret_cast<const ACE_CDR::UShort*> (&x));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_long (ACE_CDR::Long x)
-{
- return this->write_4 (reinterpret_cast<const ACE_CDR::ULong*> (&x));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_ulong (ACE_CDR::ULong x)
-{
- return this->write_4 (reinterpret_cast<const ACE_CDR::ULong*> (&x));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_longlong (const ACE_CDR::LongLong &x)
-{
- return this->write_8 (reinterpret_cast<const ACE_CDR::ULongLong*> (&x));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_ulonglong (const ACE_CDR::ULongLong &x)
-{
- const void *temp = &x;
- return this->write_8 (reinterpret_cast<const ACE_CDR::ULongLong *> (temp));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_float (ACE_CDR::Float x)
-{
- const void *temp = &x;
- return this->write_4 (reinterpret_cast<const ACE_CDR::ULong *> (temp));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_double (const ACE_CDR::Double &x)
-{
- const void *temp = &x;
- return this->write_8 (reinterpret_cast<const ACE_CDR::ULongLong*> (temp));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_longdouble (const ACE_CDR::LongDouble &x)
-{
- const void *temp = &x;
- return this->write_16 (reinterpret_cast<const ACE_CDR::LongDouble*> (temp));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_string (const ACE_CDR::Char *x)
-{
- if (x != 0)
- {
- const ACE_CDR::ULong len =
- static_cast<ACE_CDR::ULong> (ACE_OS::strlen (x));
- return this->write_string (len, x);
- }
- return this->write_string (0, 0);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_wstring (const ACE_CDR::WChar *x)
-{
- if (x != 0)
- {
- ACE_CDR::ULong len =
- static_cast<ACE_CDR::ULong> (ACE_OS::strlen (x));
- return this->write_wstring (len, x);
- }
- return this->write_wstring (0, 0);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_char_array (const ACE_CDR::Char *x,
- ACE_CDR::ULong length)
-{
- // Note: translator framework is not supported.
- //
- return this->write_array (x,
- ACE_CDR::OCTET_SIZE,
- ACE_CDR::OCTET_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_wchar_array (const ACE_CDR::WChar* x,
- ACE_CDR::ULong length)
-{
- // Note: translator framework is not supported.
- //
- if (ACE_OutputCDR::wchar_maxbytes () == 0)
- {
- errno = EACCES;
- return (ACE_CDR::Boolean) (this->good_bit_ = false);
- }
- if (ACE_OutputCDR::wchar_maxbytes () == sizeof (ACE_CDR::WChar))
- return this->write_array (x,
- sizeof (ACE_CDR::WChar),
- sizeof (ACE_CDR::WChar) == 2
- ? ACE_CDR::SHORT_ALIGN
- : ACE_CDR::LONG_ALIGN,
- length);
- return this->write_wchar_array_i (x,length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_octet_array (const ACE_CDR::Octet* x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::OCTET_SIZE,
- ACE_CDR::OCTET_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_short_array (const ACE_CDR::Short *x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::SHORT_SIZE,
- ACE_CDR::SHORT_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_ushort_array (const ACE_CDR::UShort *x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::SHORT_SIZE,
- ACE_CDR::SHORT_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_long_array (const ACE_CDR::Long *x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::LONG_SIZE,
- ACE_CDR::LONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_ulong_array (const ACE_CDR::ULong *x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::LONG_SIZE,
- ACE_CDR::LONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_longlong_array (const ACE_CDR::LongLong *x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::LONGLONG_SIZE,
- ACE_CDR::LONGLONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_ulonglong_array (const ACE_CDR::ULongLong *x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::LONGLONG_SIZE,
- ACE_CDR::LONGLONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_float_array (const ACE_CDR::Float *x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::LONG_SIZE,
- ACE_CDR::LONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_double_array (const ACE_CDR::Double *x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::LONGLONG_SIZE,
- ACE_CDR::LONGLONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_SizeCDR::write_longdouble_array (const ACE_CDR::LongDouble* x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::LONGDOUBLE_SIZE,
- ACE_CDR::LONGDOUBLE_ALIGN,
- length);
-}
-
-// ****************************************************************
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_SizeCDR &ss, ACE_CDR::Char x)
-{
- ss.write_char (x);
- return (ACE_CDR::Boolean) ss.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_SizeCDR &ss, ACE_CDR::Short x)
-{
- ss.write_short (x);
- return (ACE_CDR::Boolean) ss.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_SizeCDR &ss, ACE_CDR::UShort x)
-{
- ss.write_ushort (x);
- return (ACE_CDR::Boolean) ss.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_SizeCDR &ss, ACE_CDR::Long x)
-{
- ss.write_long (x);
- return (ACE_CDR::Boolean) ss.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_SizeCDR &ss, ACE_CDR::ULong x)
-{
- ss.write_ulong (x);
- return (ACE_CDR::Boolean) ss.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_SizeCDR &ss, ACE_CDR::LongLong x)
-{
- ss.write_longlong (x);
- return (ACE_CDR::Boolean) ss.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_SizeCDR &ss, ACE_CDR::ULongLong x)
-{
- ss.write_ulonglong (x);
- return (ACE_CDR::Boolean) ss.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_SizeCDR &ss, ACE_CDR::LongDouble x)
-{
- ss.write_longdouble (x);
- return (ACE_CDR::Boolean) ss.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_SizeCDR &ss, ACE_CDR::Float x)
-{
- ss.write_float (x);
- return (ACE_CDR::Boolean) ss.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_SizeCDR &ss, ACE_CDR::Double x)
-{
- ss.write_double (x);
- return (ACE_CDR::Boolean) ss.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_SizeCDR &ss, const ACE_CDR::Char *x)
-{
- ss.write_string (x);
- return (ACE_CDR::Boolean) ss.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_SizeCDR &ss, const ACE_CDR::WChar *x)
-{
- ss.write_wstring (x);
- return (ACE_CDR::Boolean) ss.good_bit ();
-}
-
-// The following use the helper classes
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_SizeCDR &ss, ACE_OutputCDR::from_boolean x)
-{
- ss.write_boolean (x.val_);
- return (ACE_CDR::Boolean) ss.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_SizeCDR &ss, ACE_OutputCDR::from_char x)
-{
- ss.write_char (x.val_);
- return (ACE_CDR::Boolean) ss.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_SizeCDR &ss, ACE_OutputCDR::from_wchar x)
-{
- ss.write_wchar (x.val_);
- return (ACE_CDR::Boolean) ss.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_SizeCDR &ss, ACE_OutputCDR::from_octet x)
-{
- ss.write_octet (x.val_);
- return (ACE_CDR::Boolean) ss.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_SizeCDR &ss, ACE_OutputCDR::from_string x)
-{
- ACE_CDR::ULong len = 0;
-
- if (x.val_ != 0)
- {
- len = static_cast<ACE_CDR::ULong> (ACE_OS::strlen (x.val_));
- }
-
- ss.write_string (len, x.val_);
- return
- (ACE_CDR::Boolean) (ss.good_bit () && (!x.bound_ || len <= x.bound_));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_SizeCDR &ss, ACE_OutputCDR::from_wstring x)
-{
- ACE_CDR::ULong len = 0;
-
- if (x.val_ != 0)
- {
- len = static_cast<ACE_CDR::ULong> (ACE_OS::strlen (x.val_));
- }
-
- ss.write_wstring (len, x.val_);
- return
- (ACE_CDR::Boolean) (ss.good_bit () && (!x.bound_ || len <= x.bound_));
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/CDR_Stream.h b/dep/include/ace/CDR_Stream.h
deleted file mode 100644
index c49a0006266..00000000000
--- a/dep/include/ace/CDR_Stream.h
+++ /dev/null
@@ -1,1398 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file CDR_Stream.h
- *
- * $Id: CDR_Stream.h 82350 2008-07-22 07:36:47Z johnnyw $
- *
- * ACE Common Data Representation (CDR) marshaling and demarshaling
- * classes.
- *
- * This implementation was inspired in the CDR class in SunSoft's
- * IIOP engine, but has a completely different implementation and a
- * different interface too.
- *
- * The current implementation assumes that the host has 1-byte,
- * 2-byte and 4-byte integral types, and that it has single
- * precision and double precision IEEE floats.
- * Those assumptions are pretty good these days, with Crays being
- * the only known exception.
- *
- * Optimizations
- * -------------
- * ACE_LACKS_CDR_ALIGNMENT
- * @author Arvind S. Krishna <arvindk@dre.vanderbilt.edu>
- *
- * CDR stream ignores alignment when marshaling data. Use this option
- * only when ACE_DISABLE_SWAP_ON_READ can be enabled. This option requires
- * ACE CDR engine to do both marshaling and demarshaling.
- *
- *
- * @author TAO version by Aniruddha Gokhale <gokhale@cs.wustl.edu>
- * @author Carlos O'Ryan <coryan@cs.wustl.edu>
- * @author ACE version by Jeff Parsons <parsons@cs.wustl.edu>
- * @author Istvan Buki <istvan.buki@euronet.be>
- * @author Codeset translation by Jim Rogers <jrogers@viasoft.com>
- */
-//=============================================================================
-
-#ifndef ACE_CDR_STREAM_H
-#define ACE_CDR_STREAM_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/CDR_Base.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SStringfwd.h"
-#include "ace/Message_Block.h"
-
-#if defined (GEN_OSTREAM_OPS)
-#include "ace/streams.h"
-#endif /* GEN_OSTREAM_OPS */
-
-#if defined (ACE_HAS_MONITOR_POINTS) && (ACE_HAS_MONITOR_POINTS == 1)
-#include "Monitor_Size.h"
-#endif /* ACE_HAS_MONITOR_POINTS==1 */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Char_Codeset_Translator;
-class ACE_WChar_Codeset_Translator;
-
-class ACE_InputCDR;
-
-/**
- * @class ACE_OutputCDR
- *
- * @brief A CDR stream for marshalling data, most often for transmission to
- * another system which may or may not have the same byte order.
- *
- * This class is based on the the CORBA spec for Java (98-02-29),
- * java class omg.org.CORBA.portable.OutputStream. It diverts in
- * a few ways:
- * @li Operations taking arrays don't have offsets, because in C++
- * it is easier to describe an array starting from x+offset.
- * @li Operations return an error status, because exceptions are
- * not widely available in C++ (yet).
- */
-class ACE_Export ACE_OutputCDR
-{
-public:
- /**
- * The Codeset translators need access to some private members to
- * efficiently marshal arrays
- * For reading from an output CDR stream.
- */
- friend class ACE_Char_Codeset_Translator;
- friend class ACE_WChar_Codeset_Translator;
- friend class ACE_InputCDR;
-
- /**
- * Default constructor; allows one to set byte ordering, allocators, and
- * tuning information.
- *
- * @param size Causes constructor to preallocate @a size bytes; if
- * @a size is 0 it allocates the default size.
- *
- * @param byte_order The byte order that data will have within this
- * object. Unless otherwise specified, the byte order
- * will be the order native to the hardware this is
- * executed on. To force the marshalled data to have
- * a specific order, specify one of the values defined
- * in ACE_CDR::Byte_Order.
- * @note The @c ACE_ENABLE_SWAP_ON_WRITE config macro
- * must be set for any local byte swapping to occur
- * as data is inserted into an ACE_OutputCDR object.
- */
- ACE_OutputCDR (size_t size = 0,
- int byte_order = ACE_CDR::BYTE_ORDER_NATIVE,
- ACE_Allocator* buffer_allocator = 0,
- ACE_Allocator* data_block_allocator = 0,
- ACE_Allocator* message_block_allocator = 0,
- size_t memcpy_tradeoff = ACE_DEFAULT_CDR_MEMCPY_TRADEOFF,
- ACE_CDR::Octet major_version = ACE_CDR_GIOP_MAJOR_VERSION,
- ACE_CDR::Octet minor_version = ACE_CDR_GIOP_MINOR_VERSION);
-
- /// Build a CDR stream with an initial buffer, it will *not* remove
- /// <data>, since it did not allocated it. It's important to be careful
- /// with the alignment of <data>.
- /**
- * Create an output stream from an arbitrary buffer, care must be
- * exercised with alignment, because this contructor will align if
- * needed. In this case @a data will not point to the start of the
- * output stream. @c begin()->rd_ptr() points to the start of the
- * output stream. See @c ACE_ptr_align_binary() to properly align a
- * pointer and use ACE_CDR::MAX_ALIGNMENT for the correct alignment.
- */
- ACE_OutputCDR (char *data,
- size_t size,
- int byte_order = ACE_CDR::BYTE_ORDER_NATIVE,
- ACE_Allocator* buffer_allocator = 0,
- ACE_Allocator* data_block_allocator = 0,
- ACE_Allocator* message_block_allocator = 0,
- size_t memcpy_tradeoff = ACE_DEFAULT_CDR_MEMCPY_TRADEOFF,
- ACE_CDR::Octet giop_major_version = ACE_CDR_GIOP_MAJOR_VERSION,
- ACE_CDR::Octet giop_minor_version = ACE_CDR_GIOP_MINOR_VERSION);
-
- /// Build a CDR stream with an initial data block, it will *not* remove
- /// <data_block>, since it did not allocated it. It's important to be
- // careful with the alignment of <data_block>.
- /**
- * Create an output stream from an arbitrary data block, care must be
- * exercised with alignment, because this contructor will align if
- * needed. In this case @a data_block will not point to the
- * start of the output stream. begin()->rd_ptr() points to the start
- * off the output stream. See ACE_ptr_align_binary() to properly align a
- * pointer and use ACE_CDR::MAX_ALIGNMENT for the correct alignment.
- */
- ACE_OutputCDR (ACE_Data_Block *data_block,
- int byte_order = ACE_CDR::BYTE_ORDER_NATIVE,
- ACE_Allocator* message_block_allocator = 0,
- size_t memcpy_tradeoff = ACE_DEFAULT_CDR_MEMCPY_TRADEOFF,
- ACE_CDR::Octet giop_major_version = ACE_CDR_GIOP_MAJOR_VERSION,
- ACE_CDR::Octet giop_minor_version = ACE_CDR_GIOP_MINOR_VERSION);
-
- /// Build a CDR stream with an initial Message_Block chain, it will
- /// *not* remove @a data, since it did not allocate it.
- ACE_OutputCDR (ACE_Message_Block *data,
- int byte_order = ACE_CDR::BYTE_ORDER_NATIVE,
- size_t memcpy_tradeoff = ACE_DEFAULT_CDR_MEMCPY_TRADEOFF,
- ACE_CDR::Octet giop_major_version = ACE_CDR_GIOP_MAJOR_VERSION,
- ACE_CDR::Octet giop_minor_version = ACE_CDR_GIOP_MINOR_VERSION);
-
- /// destructor
- ~ACE_OutputCDR (void);
-
- /**
- * Disambiguate overload when inserting booleans, octets, chars, and
- * bounded strings.
- */
- //@{ @name Helper classes
-
- struct ACE_Export from_boolean
- {
- explicit from_boolean (ACE_CDR::Boolean b);
- ACE_CDR::Boolean val_;
- };
-
- struct ACE_Export from_octet
- {
- explicit from_octet (ACE_CDR::Octet o);
- ACE_CDR::Octet val_;
- };
-
- struct ACE_Export from_char
- {
- explicit from_char (ACE_CDR::Char c);
- ACE_CDR::Char val_;
- };
-
- struct ACE_Export from_wchar
- {
- explicit from_wchar (ACE_CDR::WChar wc);
- ACE_CDR::WChar val_;
- };
-
- struct ACE_Export from_string
- {
- from_string (ACE_CDR::Char* s,
- ACE_CDR::ULong b,
- ACE_CDR::Boolean nocopy = 0);
- from_string (const ACE_CDR::Char* s,
- ACE_CDR::ULong b,
- ACE_CDR::Boolean nocopy = 0);
- ACE_CDR::Char *val_;
- ACE_CDR::ULong bound_;
- ACE_CDR::Boolean nocopy_;
- };
-
- struct ACE_Export from_wstring
- {
- from_wstring (ACE_CDR::WChar* ws,
- ACE_CDR::ULong b,
- ACE_CDR::Boolean nocopy = 0);
- from_wstring (const ACE_CDR::WChar* ws,
- ACE_CDR::ULong b,
- ACE_CDR::Boolean nocopy = 0);
- ACE_CDR::WChar *val_;
- ACE_CDR::ULong bound_;
- ACE_CDR::Boolean nocopy_;
- };
- //@}
-
- /**
- * @{ @name Write operations
- * Return 0 on failure and 1 on success.
- */
- ACE_CDR::Boolean write_boolean (ACE_CDR::Boolean x);
- ACE_CDR::Boolean write_char (ACE_CDR::Char x);
- ACE_CDR::Boolean write_wchar (ACE_CDR::WChar x);
- ACE_CDR::Boolean write_octet (ACE_CDR::Octet x);
- ACE_CDR::Boolean write_short (ACE_CDR::Short x);
- ACE_CDR::Boolean write_ushort (ACE_CDR::UShort x);
- ACE_CDR::Boolean write_long (ACE_CDR::Long x);
- ACE_CDR::Boolean write_ulong (ACE_CDR::ULong x);
- ACE_CDR::Boolean write_longlong (const ACE_CDR::LongLong &x);
- ACE_CDR::Boolean write_ulonglong (const ACE_CDR::ULongLong &x);
- ACE_CDR::Boolean write_float (ACE_CDR::Float x);
- ACE_CDR::Boolean write_double (const ACE_CDR::Double &x);
- ACE_CDR::Boolean write_longdouble (const ACE_CDR::LongDouble &x);
-
- /// For string we offer methods that accept a precomputed length.
- ACE_CDR::Boolean write_string (const ACE_CDR::Char *x);
- ACE_CDR::Boolean write_string (ACE_CDR::ULong len,
- const ACE_CDR::Char *x);
- ACE_CDR::Boolean write_string (const ACE_CString &x);
- ACE_CDR::Boolean write_wstring (const ACE_CDR::WChar *x);
- ACE_CDR::Boolean write_wstring (ACE_CDR::ULong length,
- const ACE_CDR::WChar *x);
- //@}
-
- /// @note the portion written starts at <x> and ends
- /// at <x + length>.
- /// The length is *NOT* stored into the CDR stream.
- //@{ @name Array write operations
- ACE_CDR::Boolean write_boolean_array (const ACE_CDR::Boolean *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_char_array (const ACE_CDR::Char *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_wchar_array (const ACE_CDR::WChar* x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_octet_array (const ACE_CDR::Octet* x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_short_array (const ACE_CDR::Short *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_ushort_array (const ACE_CDR::UShort *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_long_array (const ACE_CDR::Long *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_ulong_array (const ACE_CDR::ULong *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_longlong_array (const ACE_CDR::LongLong* x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_ulonglong_array (const ACE_CDR::ULongLong *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_float_array (const ACE_CDR::Float *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_double_array (const ACE_CDR::Double *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean write_longdouble_array (const ACE_CDR::LongDouble* x,
- ACE_CDR::ULong length);
-
- /// Write an octet array contained inside a MB, this can be optimized
- /// to minimize copies.
- ACE_CDR::Boolean write_octet_array_mb (const ACE_Message_Block* mb);
- //@}
-
- /**
- * @{ @name Placeholder/replace operations
- * Facilitates writing a placeholder into a CDR stream to be replaced
- * later with a different value.
- *
- * @note An example use for this facility is:
- * @code
- ACE_OutputCDR strm;
- ... // insert values...
- char *pos = strm.write_long_placeholder ();
- ... // insert more values
- ACE_CDR::Long real_val; // Somehow assign the "correct" value
- strm.replace (real_val, pos); // Replace earlier placeholder
- @endcode
- */
-
- /**
- * Write a placeholder into the stream. The placeholder's pointer
- * is returned so it may later be passed as the @a loc argument to
- * replace ().
- * These methods align the stream's write pointer properly prior to
- * writing the placeholder.
- *
- * @retval Pointer to the placeholder; 0 if there is not enough space
- * in the stream and memory could not be allocated.
- */
- char* write_long_placeholder (void);
- char* write_short_placeholder (void);
-
- /**
- * Writes a new value into a specific location. This is commonly
- * used to update a prior "placeholder" location in the stream.
- * The specified location is assumed to have proper CDR alignment for the
- * type to insert. This requirement is satisfied by using one of the
- * placeholder-writing methods to align the stream for the anticipated
- * value and obtain the correct location.
- * Treatment of @a x with repect to byte swapping is the same as for when
- * any value is inserted.
- *
- * @param x The value to insert into the specified location.
- * @param loc The location at which to insert @a x. @a loc must be a valid
- * position within the stream's current set of message blocks.
- *
- * @sa write_long_placeholder(), write_short_placeholder ()
- */
- ACE_CDR::Boolean replace (ACE_CDR::Long x, char* loc);
- ACE_CDR::Boolean replace (ACE_CDR::Short x, char* loc);
- //@}
-
- /**
- * Return 0 on failure and 1 on success.
- */
- //@{ @name Append contents of own CDR stream to another
- ACE_CDR::Boolean append_boolean (ACE_InputCDR &);
- ACE_CDR::Boolean append_char (ACE_InputCDR &);
- ACE_CDR::Boolean append_wchar (ACE_InputCDR &);
- ACE_CDR::Boolean append_octet (ACE_InputCDR &);
- ACE_CDR::Boolean append_short (ACE_InputCDR &);
- ACE_CDR::Boolean append_ushort (ACE_InputCDR &);
- ACE_CDR::Boolean append_long (ACE_InputCDR &);
- ACE_CDR::Boolean append_ulong (ACE_InputCDR &);
- ACE_CDR::Boolean append_longlong (ACE_InputCDR &);
- ACE_CDR::Boolean append_ulonglong (ACE_InputCDR &);
- ACE_CDR::Boolean append_float (ACE_InputCDR &);
- ACE_CDR::Boolean append_double (ACE_InputCDR &);
- ACE_CDR::Boolean append_longdouble (ACE_InputCDR &);
-
- ACE_CDR::Boolean append_wstring (ACE_InputCDR &);
- ACE_CDR::Boolean append_string (ACE_InputCDR &);
- //@}
-
- /// Returns @c false if an error has ocurred.
- /**
- * @note The only expected error is to run out of memory.
- */
- bool good_bit (void) const;
-
- /// Reuse the CDR stream to write on the old buffer.
- void reset (void);
-
- /// Add the length of each message block in the chain.
- size_t total_length (void) const;
-
- /**
- * Return the start of the message block chain for this CDR stream.
- * @note The complete CDR stream is represented by a chain of
- * message blocks.
- */
- const ACE_Message_Block *begin (void) const;
-
- /// Return the last message in the chain that is is use.
- const ACE_Message_Block *end (void) const;
-
- /// Return the <current_> message block in chain.
- const ACE_Message_Block *current (void) const;
-
- /// Replace the message block chain with a single message block.
- /**
- * Upon successful completion, there will be a single message block
- * containing the data from the complete message block chain.
- *
- * @note The only expected error is to run out of memory.
- */
- int consolidate (void);
-
- /**
- * Access the underlying buffer (read only). @note This
- * method only returns a pointer to the first block in the
- * chain.
- */
- const char *buffer (void) const;
-
- /**
- * Return the size of first message block in the block chain. @note This
- * method only returns information about the first block in the
- * chain.
- */
- size_t length (void) const;
-
- /**
- * Utility function to allow the user more flexibility.
- * Pads the stream up to the nearest <alignment>-byte boundary.
- * Argument MUST be a power of 2.
- * Returns 0 on success and -1 on failure.
- */
- int align_write_ptr (size_t alignment);
-
- /// Access the codeset translators. They can be null!
- ACE_Char_Codeset_Translator *char_translator (void) const;
- ACE_WChar_Codeset_Translator *wchar_translator (void) const;
-
- /// Set the char codeset translator.
- void char_translator (ACE_Char_Codeset_Translator *);
- /// Set the wchar codeset translator.
- void wchar_translator (ACE_WChar_Codeset_Translator *);
-
- /// set the global size of serialized wchars. This may be different
- /// than the size of a wchar_t.
- static void wchar_maxbytes (size_t max_bytes);
-
- /// access the serialized size of wchars.
- static size_t wchar_maxbytes (void);
-
- /**
- * Return alignment of the wr_ptr(), with respect to the start of
- * the CDR stream. This is not the same as the alignment of
- * current->wr_ptr()!
- */
- size_t current_alignment (void) const;
-
- void current_alignment (size_t current_alignment);
-
- /**
- * Returns (in @a buf) the next position in the buffer aligned to
- * @a size, it advances the Message_Block wr_ptr past the data
- * (i.e., @a buf + @a size). If necessary it grows the Message_Block
- * buffer. Sets the good_bit to false and returns a -1 on failure.
- */
- int adjust (size_t size,
- char *&buf);
-
- /// As above, but now the size and alignment requirements may be
- /// different.
- int adjust (size_t size,
- size_t align,
- char *&buf);
-
- /// Returns true if this stream is writing in non-native byte order
- /// and false otherwise. For example, it would be true if either
- /// ACE_ENABLE_SWAP_ON_WRITE is defined or a specific byte order was
- /// specified for this stream.
- bool do_byte_swap (void) const;
-
- /// Returns the byte order this stream is marshaling data in. Will be one
- /// of the values in ACE_CDR::Byte_Order.
- int byte_order (void) const;
-
- /// For use by a gateway, which creates the output stream for the
- /// reply to the client in its native byte order, but which must
- /// send the reply in the byte order of the target's reply to the
- /// gateway.
- void reset_byte_order (int byte_order);
-
- /// set GIOP version info
- void set_version (ACE_CDR::Octet major, ACE_CDR::Octet minor);
-
- /// Set the underlying GIOP version..
- void get_version (ACE_CDR::Octet &major, ACE_CDR::Octet &minor);
-
-#if defined (ACE_HAS_MONITOR_POINTS) && (ACE_HAS_MONITOR_POINTS == 1)
- /// Register and unregister our buffer size monitor.
- void register_monitor (const char* id);
- void unregister_monitor (void);
-#endif /* ACE_HAS_MONITOR_POINTS==1 */
-
-private:
-
- // Find the message block in the chain of message blocks
- // that the provide location locates.
- ACE_Message_Block* find (char* loc);
-
- /// disallow copying...
- ACE_OutputCDR (const ACE_OutputCDR& rhs);
- ACE_OutputCDR& operator= (const ACE_OutputCDR& rhs);
-
- ACE_CDR::Boolean write_1 (const ACE_CDR::Octet *x);
- ACE_CDR::Boolean write_2 (const ACE_CDR::UShort *x);
- ACE_CDR::Boolean write_4 (const ACE_CDR::ULong *x);
- ACE_CDR::Boolean write_8 (const ACE_CDR::ULongLong *x);
- ACE_CDR::Boolean write_16 (const ACE_CDR::LongDouble *x);
-
- /**
- * write an array of @a length elements, each of @a size bytes and the
- * start aligned at a multiple of <align>. The elements are assumed
- * to be packed with the right alignment restrictions. It is mostly
- * designed for buffers of the basic types.
- *
- * This operation uses <memcpy>; as explained above it is expected
- * that using assignment is faster that <memcpy> for one element,
- * but for several elements <memcpy> should be more efficient, it
- * could be interesting to find the break even point and optimize
- * for that case, but that would be too platform dependent.
- */
- ACE_CDR::Boolean write_array (const void *x,
- size_t size,
- size_t align,
- ACE_CDR::ULong length);
-
- ACE_CDR::Boolean write_wchar_array_i (const ACE_CDR::WChar* x,
- ACE_CDR::ULong length);
-
- /**
- * Grow the CDR stream. When it returns @a buf contains a pointer to
- * memory in the CDR stream, with at least @a size bytes ahead of it
- * and aligned to an <align> boundary. It moved the <wr_ptr> to <buf
- * + size>.
- */
- int grow_and_adjust (size_t size,
- size_t align,
- char *&buf);
-
-private:
- /// The start of the chain of message blocks.
- ACE_Message_Block start_;
-
- /// The current block in the chain where we are writing.
- ACE_Message_Block *current_;
-
-#if !defined (ACE_LACKS_CDR_ALIGNMENT)
- /**
- * The current alignment as measured from the start of the buffer.
- * Usually this coincides with the alignment of the buffer in
- * memory, but, when we chain another buffer this "quasi invariant"
- * is broken.
- * The current_alignment is used to readjust the buffer following
- * the stolen message block.
- */
- size_t current_alignment_;
-#endif /* ACE_LACKS_CDR_ALIGNMENT */
-
- /**
- * Is the current block writable. When we steal a buffer from the
- * user and just chain it into the message block we are not supposed
- * to write on it, even if it is past the start and end of the
- * buffer.
- */
- bool current_is_writable_;
-
- /**
- * If not zero swap bytes at writing so the created CDR stream byte
- * order does *not* match the machine byte order. The motivation
- * for such a beast is that in some setting a few (fast) machines
- * can be serving hundreds of slow machines with the opposite byte
- * order, so it makes sense (as a load balancing device) to put the
- * responsibility in the writers. THIS IS NOT A STANDARD IN CORBA,
- * USE AT YOUR OWN RISK
- */
- bool do_byte_swap_;
-
- /// Set to false when an error ocurrs.
- bool good_bit_;
-
- /// Break-even point for copying.
- size_t const memcpy_tradeoff_;
-
-#if defined (ACE_HAS_MONITOR_POINTS) && (ACE_HAS_MONITOR_POINTS == 1)
- ACE::Monitor_Control::Size_Monitor *monitor_;
-#endif /* ACE_HAS_MONITOR_POINTS==1 */
-
-protected:
- /// GIOP version information
- ACE_CDR::Octet major_version_;
- ACE_CDR::Octet minor_version_;
-
- /// If not nil, invoke for translation of character and string data.
- ACE_Char_Codeset_Translator *char_translator_;
- ACE_WChar_Codeset_Translator *wchar_translator_;
-
- /**
- * Some wide char codesets may be defined with a maximum number
- * of bytes that is smaller than the size of a wchar_t. This means
- * that the CDR cannot simply memcpy a block of wchars to and from
- * the stream, but must instead realign the bytes appropriately.
- * In cases when wchar i/o is not allowed, such as with GIOP 1.0,
- * or not having a native wchar codeset defined, the maxbytes is
- * set to zero, indicating no wchar data is allowed.
- */
- static size_t wchar_maxbytes_;
-};
-
-// ****************************************************************
-
-/**
- * @class ACE_InputCDR
- *
- * @brief A CDR stream for demarshalling CDR-encoded data.
- *
- * This class is based on the the CORBA spec for Java (98-02-29),
- * java class omg.org.CORBA.portable.InputStream. It diverts in a
- * few ways:
- * @li Operations to retrieve basic types take parameters by
- * reference.
- * @li Operations taking arrays don't have offsets, because in C++
- * it is easier to describe an array starting from x+offset.
- * @li Operations return an error status, because exceptions are
- * not widely available in C++ (yet).
- */
-class ACE_Export ACE_InputCDR
-{
-public:
- // The translators need privileged access to efficiently demarshal
- // arrays and such.
- friend class ACE_Char_Codeset_Translator;
- friend class ACE_WChar_Codeset_Translator;
-
- /**
- * Create an input stream from an arbitrary buffer. The buffer must
- * be properly aligned because this contructor will *not* work if
- * the buffer is aligned unproperly.See ACE_ptr_align_binary() for
- * instructions on how to align a pointer properly and use
- * ACE_CDR::MAX_ALIGNMENT for the correct alignment.
- */
- ACE_InputCDR (const char *buf,
- size_t bufsiz,
- int byte_order = ACE_CDR::BYTE_ORDER_NATIVE,
- ACE_CDR::Octet major_version = ACE_CDR_GIOP_MAJOR_VERSION,
- ACE_CDR::Octet minor_version = ACE_CDR_GIOP_MINOR_VERSION);
-
- /// Create an empty input stream. The caller is responsible for
- /// putting the right data and providing the right alignment.
- ACE_InputCDR (size_t bufsiz,
- int byte_order = ACE_CDR::BYTE_ORDER_NATIVE,
- ACE_CDR::Octet major_version = ACE_CDR_GIOP_MAJOR_VERSION,
- ACE_CDR::Octet minor_version = ACE_CDR_GIOP_MINOR_VERSION);
-
- /// Create an input stream from an ACE_Message_Block
- /**
- * The alignment of the @a data block is carried into the new
- * ACE_InputCDR object. This constructor either increments the
- * @a data reference count, or copies the data (if it's a compound
- * message block) so the caller can release the block immediately
- * upon return.
- */
- ACE_InputCDR (const ACE_Message_Block *data,
- int byte_order = ACE_CDR::BYTE_ORDER_NATIVE,
- ACE_CDR::Octet major_version = ACE_CDR_GIOP_MAJOR_VERSION,
- ACE_CDR::Octet minor_version = ACE_CDR_GIOP_MINOR_VERSION,
- ACE_Lock* lock = 0);
-
- /// Create an input stream from an ACE_Data_Block. The <flag>
- /// indicates whether the <data> can be deleted by the CDR stream
- /// or not
- ACE_InputCDR (ACE_Data_Block *data,
- ACE_Message_Block::Message_Flags flag = 0,
- int byte_order = ACE_CDR::BYTE_ORDER_NATIVE,
- ACE_CDR::Octet major_version = ACE_CDR_GIOP_MAJOR_VERSION,
- ACE_CDR::Octet minor_version = ACE_CDR_GIOP_MINOR_VERSION);
-
- /// Create an input stream from an ACE_Data_Block. It also sets the
- /// read and write pointers at the desired positions. This would be
- /// helpful if the applications desires to create a new CDR stream
- /// from a semi-processed datablock.
- ACE_InputCDR (ACE_Data_Block *data,
- ACE_Message_Block::Message_Flags flag,
- size_t read_pointer_position,
- size_t write_pointer_position,
- int byte_order = ACE_CDR::BYTE_ORDER_NATIVE,
- ACE_CDR::Octet major_version = ACE_CDR_GIOP_MAJOR_VERSION,
- ACE_CDR::Octet minor_version = ACE_CDR_GIOP_MINOR_VERSION);
-
- /**
- * These make a copy of the current stream state, but do not copy
- * the internal buffer, so the same stream can be read multiple
- * times efficiently.
- */
- ACE_InputCDR (const ACE_InputCDR& rhs);
-
- ACE_InputCDR& operator= (const ACE_InputCDR& rhs);
-
- /// When interpreting indirected TypeCodes it is useful to make a
- /// "copy" of the stream starting in the new position.
- ACE_InputCDR (const ACE_InputCDR& rhs,
- size_t size,
- ACE_CDR::Long offset);
-
- /// This creates an encapsulated stream, the first byte must be (per
- /// the spec) the byte order of the encapsulation.
- ACE_InputCDR (const ACE_InputCDR& rhs,
- size_t size);
-
- /// Create an input CDR from an output CDR.
- ACE_InputCDR (const ACE_OutputCDR& rhs,
- ACE_Allocator* buffer_allocator = 0,
- ACE_Allocator* data_block_allocator = 0,
- ACE_Allocator* message_block_allocator = 0);
-
- /// Helper class to transfer the contents from one input CDR to
- /// another without requiring any extra memory allocations, data
- /// copies or too many temporaries.
- struct ACE_Export Transfer_Contents
- {
- Transfer_Contents (ACE_InputCDR &rhs);
-
- ACE_InputCDR &rhs_;
- };
- /// Transfer the contents from <rhs> to a new CDR
- ACE_InputCDR (Transfer_Contents rhs);
-
- /// Destructor
- ~ACE_InputCDR (void);
-
- /// Disambiguate overloading when extracting octets, chars,
- /// booleans, and bounded strings
- //@{ @name Helper classes
-
- struct ACE_Export to_boolean
- {
- explicit to_boolean (ACE_CDR::Boolean &b);
- ACE_CDR::Boolean &ref_;
- };
-
- struct ACE_Export to_char
- {
- explicit to_char (ACE_CDR::Char &c);
- ACE_CDR::Char &ref_;
- };
-
- struct ACE_Export to_wchar
- {
- explicit to_wchar (ACE_CDR::WChar &wc);
- ACE_CDR::WChar &ref_;
- };
-
- struct ACE_Export to_octet
- {
- explicit to_octet (ACE_CDR::Octet &o);
- ACE_CDR::Octet &ref_;
- };
-
- struct ACE_Export to_string
- {
- /**
- * @deprecated The constructor taking a non-const string is now
- * deprecated (C++ mapping 00-01-02), but we keep it
- * around for backward compatibility.
- */
- to_string (ACE_CDR::Char *&s,
- ACE_CDR::ULong b);
- to_string (const ACE_CDR::Char *&s,
- ACE_CDR::ULong b);
- const ACE_CDR::Char *&val_;
- ACE_CDR::ULong bound_;
- };
-
- struct ACE_Export to_wstring
- {
- /// The constructor taking a non-const wstring is
- /// now deprecated (C++ mapping 00-01-02), but we
- /// keep it around for backward compatibility.
- to_wstring (ACE_CDR::WChar *&ws,
- ACE_CDR::ULong b);
- to_wstring (const ACE_CDR::WChar *&ws,
- ACE_CDR::ULong b);
- const ACE_CDR::WChar *&val_;
- ACE_CDR::ULong bound_;
- };
- //@}
-
- /**
- * Return @c false on failure and @c true on success.
- */
- //@{ @name Read basic IDL types
- ACE_CDR::Boolean read_boolean (ACE_CDR::Boolean& x);
- ACE_CDR::Boolean read_char (ACE_CDR::Char &x);
- ACE_CDR::Boolean read_wchar (ACE_CDR::WChar& x);
- ACE_CDR::Boolean read_octet (ACE_CDR::Octet& x);
- ACE_CDR::Boolean read_short (ACE_CDR::Short &x);
- ACE_CDR::Boolean read_ushort (ACE_CDR::UShort &x);
- ACE_CDR::Boolean read_long (ACE_CDR::Long &x);
- ACE_CDR::Boolean read_ulong (ACE_CDR::ULong &x);
- ACE_CDR::Boolean read_longlong (ACE_CDR::LongLong& x);
- ACE_CDR::Boolean read_ulonglong (ACE_CDR::ULongLong& x);
- ACE_CDR::Boolean read_float (ACE_CDR::Float &x);
- ACE_CDR::Boolean read_double (ACE_CDR::Double &x);
- ACE_CDR::Boolean read_longdouble (ACE_CDR::LongDouble &x);
-
- ACE_CDR::Boolean read_string (ACE_CDR::Char *&x);
- ACE_CDR::Boolean read_string (ACE_CString &x);
- ACE_CDR::Boolean read_wstring (ACE_CDR::WChar*& x);
- //@}
-
- /**
- * The buffer @a x must be large enough to contain @a length
- * elements.
- * Return @c false on failure and @c true on success.
- */
- //@{ @name Read basic IDL types arrays
- ACE_CDR::Boolean read_boolean_array (ACE_CDR::Boolean* x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean read_char_array (ACE_CDR::Char *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean read_wchar_array (ACE_CDR::WChar* x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean read_octet_array (ACE_CDR::Octet* x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean read_short_array (ACE_CDR::Short *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean read_ushort_array (ACE_CDR::UShort *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean read_long_array (ACE_CDR::Long *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean read_ulong_array (ACE_CDR::ULong *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean read_longlong_array (ACE_CDR::LongLong* x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean read_ulonglong_array (ACE_CDR::ULongLong* x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean read_float_array (ACE_CDR::Float *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean read_double_array (ACE_CDR::Double *x,
- ACE_CDR::ULong length);
- ACE_CDR::Boolean read_longdouble_array (ACE_CDR::LongDouble* x,
- ACE_CDR::ULong length);
- //@}
-
- /**
- * Return @c false on failure and @c true on success.
- */
- //@{ @name Skip elements
- ACE_CDR::Boolean skip_boolean (void);
- ACE_CDR::Boolean skip_char (void);
- ACE_CDR::Boolean skip_wchar (void);
- ACE_CDR::Boolean skip_octet (void);
- ACE_CDR::Boolean skip_short (void);
- ACE_CDR::Boolean skip_ushort (void);
- ACE_CDR::Boolean skip_long (void);
- ACE_CDR::Boolean skip_ulong (void);
- ACE_CDR::Boolean skip_longlong (void);
- ACE_CDR::Boolean skip_ulonglong (void);
- ACE_CDR::Boolean skip_float (void);
- ACE_CDR::Boolean skip_double (void);
- ACE_CDR::Boolean skip_longdouble (void);
- //@}
-
- /**
- * The next field must be a string, this method skips it. It is
- * useful in parsing a TypeCode.
- * @return @c false on failure and @c true on success.
- */
- ACE_CDR::Boolean skip_wstring (void);
- ACE_CDR::Boolean skip_string (void);
-
- /// Skip @a n bytes in the CDR stream.
- /**
- * @return @c false on failure and @c true on success.
- */
- ACE_CDR::Boolean skip_bytes (size_t n);
-
- /// returns @c false if a problem has been detected.
- bool good_bit (void) const;
-
- /**
- * @return The start of the message block chain for this CDR
- * stream.
- *
- * @note In the current implementation the chain has length 1, but
- * we are planning to change that.
- */
- const ACE_Message_Block* start (void) const;
-
- // = The following functions are useful to read the contents of the
- // CDR stream from a socket or file.
-
- /**
- * Grow the internal buffer, reset @c rd_ptr to the first byte in
- * the new buffer that is properly aligned, and set @c wr_ptr to @c
- * rd_ptr @c + @c newsize
- */
- int grow (size_t newsize);
-
- /**
- * After reading and partially parsing the contents the user can
- * detect a change in the byte order, this method will let him/her
- * change it.
- */
- void reset_byte_order (int byte_order);
-
- /// Re-initialize the CDR stream, copying the contents of the chain
- /// of message_blocks starting from @a data.
- void reset (const ACE_Message_Block *data,
- int byte_order);
-
- /// Steal the contents from the current CDR.
- ACE_Message_Block *steal_contents (void);
-
- /// Steal the contents of @a cdr and make a shallow copy into this
- /// stream.
- void steal_from (ACE_InputCDR &cdr);
-
- /// Exchange data blocks with the caller of this method. The read
- /// and write pointers are also exchanged.
- /**
- * @note We now do only with the start_ message block.
- */
- void exchange_data_blocks (ACE_InputCDR &cdr);
-
- /// Copy the data portion from the @c cdr to this cdr and return the
- /// data content (ie. the ACE_Data_Block) from this CDR to the
- /// caller.
- /**
- * @note The caller is responsible for managing the memory of the
- * returned ACE_Data_Block.
- */
- ACE_Data_Block* clone_from (ACE_InputCDR &cdr);
-
- /// Re-initialize the CDR stream, forgetting about the old contents
- /// of the stream and allocating a new buffer (from the allocators).
- void reset_contents (void);
-
- /// Returns the current position for the @c rd_ptr.
- char* rd_ptr (void);
-
- /// Returns the current position for the @c wr_ptr.
- char* wr_ptr (void);
-
- /// Return how many bytes are left in the stream.
- size_t length (void) const;
-
- /**
- * Utility function to allow the user more flexibility.
- * Skips up to the nearest @a alignment-byte boundary.
- * Argument MUST be a power of 2.
- *
- * @return 0 on success and -1 on failure.
- */
- int align_read_ptr (size_t alignment);
-
- /// If @c true then this stream is writing in non-native byte order.
- /// This is only meaningful if ACE_ENABLE_SWAP_ON_WRITE is defined.
- bool do_byte_swap (void) const;
-
- /// If @c do_byte_swap() returns @c false, this returns
- /// ACE_CDR_BYTE_ORDER else it returns !ACE_CDR_BYTE_ORDER.
- int byte_order (void) const;
-
- /// Access the codeset translators. They can be nil!
- ACE_Char_Codeset_Translator *char_translator (void) const;
- ACE_WChar_Codeset_Translator *wchar_translator (void) const;
-
- /// Set the codeset translators.
- void char_translator (ACE_Char_Codeset_Translator *);
- void wchar_translator (ACE_WChar_Codeset_Translator *);
-
- /**
- * Returns (in @a buf) the next position in the buffer aligned to
- * @a size. It advances the Message_Block @c rd_ptr past the data
- * (i.e., @c buf @c + @c size). Sets the good_bit to @c false and
- * returns a -1 on failure.
- */
- int adjust (size_t size,
- char *&buf);
-
- /// As above, but now the size and alignment requirements may be
- /// different.
- int adjust (size_t size,
- size_t align,
- char *&buf);
-
- /// Set the underlying GIOP version..
- void set_version (ACE_CDR::Octet major, ACE_CDR::Octet minor);
-
- /// Set the underlying GIOP version..
- void get_version (ACE_CDR::Octet &major, ACE_CDR::Octet &minor);
-
-#if defined (ACE_HAS_MONITOR_POINTS) && (ACE_HAS_MONITOR_POINTS == 1)
- /// Register and unregister our buffer size monitor.
- void register_monitor (const char* id);
- void unregister_monitor (void);
-#endif /* ACE_HAS_MONITOR_POINTS==1 */
-
-protected:
-
- /// The start of the chain of message blocks, even though in the
- /// current version the chain always has length 1.
- ACE_Message_Block start_;
-
- /// The CDR stream byte order does not match the one on the machine,
- /// swapping is needed while reading.
- bool do_byte_swap_;
-
- /// set to @c false when an error occurs.
- bool good_bit_;
-
- /// The GIOP versions for this stream
- ACE_CDR::Octet major_version_;
- ACE_CDR::Octet minor_version_;
-
- /// If not nil, invoke for translation of character and string data.
- ACE_Char_Codeset_Translator *char_translator_;
- ACE_WChar_Codeset_Translator *wchar_translator_;
-
-#if defined (ACE_HAS_MONITOR_POINTS) && (ACE_HAS_MONITOR_POINTS == 1)
- ACE::Monitor_Control::Size_Monitor *monitor_;
-#endif /* ACE_HAS_MONITOR_POINTS==1 */
-
-private:
-
- ACE_CDR::Boolean read_1 (ACE_CDR::Octet *x);
- ACE_CDR::Boolean read_2 (ACE_CDR::UShort *x);
- ACE_CDR::Boolean read_4 (ACE_CDR::ULong *x);
- ACE_CDR::Boolean read_8 (ACE_CDR::ULongLong *x);
- ACE_CDR::Boolean read_16 (ACE_CDR::LongDouble *x);
-
- // Several types can be read using the same routines, since TAO
- // tries to use native types with known size for each CORBA type.
- // We could use void* or char* to make the interface more
- // consistent, but using native types let us exploit the strict
- // alignment requirements of CDR streams and implement the
- // operations using asignment.
-
- /**
- * Read an array of @a length elements, each of @a size bytes and the
- * start aligned at a multiple of <align>. The elements are assumed
- * to be packed with the right alignment restrictions. It is mostly
- * designed for buffers of the basic types.
- *
- * This operation uses <memcpy>; as explained above it is expected
- * that using assignment is faster that <memcpy> for one element,
- * but for several elements <memcpy> should be more efficient, it
- * could be interesting to find the break even point and optimize
- * for that case, but that would be too platform dependent.
- */
- ACE_CDR::Boolean read_array (void* x,
- size_t size,
- size_t align,
- ACE_CDR::ULong length);
-
- /**
- * On those occasions when the native codeset for wchar is smaller than
- * the size of a wchar_t, such as using UTF-16 with a 4-byte wchar_t, a
- * special form of reading the array is needed. Actually, this should be
- * a default translator.
- */
- ACE_CDR::Boolean read_wchar_array_i (ACE_CDR::WChar * x,
- ACE_CDR::ULong length);
-
- /// Move the rd_ptr ahead by @a offset bytes.
- void rd_ptr (size_t offset);
-
- /// Points to the continuation field of the current message block.
- char* end (void);
-};
-
-// ****************************************************************
-
-/**
- * @class ACE_Char_Codeset_Translator
- *
- * @brief Codeset translation routines common to both Output and Input
- * CDR streams.
- *
- * This class is a base class for defining codeset translation
- * routines to handle the character set translations required by
- * both CDR Input streams and CDR Output streams.
- *
- * Translators are reference counted. This allows for stateful as well
- * as stateless translators. Stateless translators will be allocated
- * once whereas CDR Streams own their own copy of a stateful translator.
- */
-class ACE_Export ACE_Char_Codeset_Translator
-{
-public:
- virtual ~ACE_Char_Codeset_Translator ();
-
- /// Read a single character from the stream, converting from the
- /// stream codeset to the native codeset
- virtual ACE_CDR::Boolean read_char (ACE_InputCDR&,
- ACE_CDR::Char&) = 0;
-
- /// Read a string from the stream, including the length, converting
- /// the characters from the stream codeset to the native codeset
- virtual ACE_CDR::Boolean read_string (ACE_InputCDR&,
- ACE_CDR::Char *&) = 0;
-
- /// Read an array of characters from the stream, converting the
- /// characters from the stream codeset to the native codeset.
- virtual ACE_CDR::Boolean read_char_array (ACE_InputCDR&,
- ACE_CDR::Char*,
- ACE_CDR::ULong) = 0;
-
- /// Write a single character to the stream, converting from the
- /// native codeset to the stream codeset
- virtual ACE_CDR::Boolean write_char (ACE_OutputCDR&,
- ACE_CDR::Char) = 0;
-
- /// Write a string to the stream, including the length, converting
- /// from the native codeset to the stream codeset
- virtual ACE_CDR::Boolean write_string (ACE_OutputCDR&,
- ACE_CDR::ULong,
- const ACE_CDR::Char*) = 0;
-
- /// Write an array of characters to the stream, converting from the
- /// native codeset to the stream codeset
- virtual ACE_CDR::Boolean write_char_array (ACE_OutputCDR&,
- const ACE_CDR::Char*,
- ACE_CDR::ULong) = 0;
-
- virtual ACE_CDR::ULong ncs () = 0;
- virtual ACE_CDR::ULong tcs () = 0;
-protected:
- /// Children have access to low-level routines because they cannot
- /// use read_char or something similar (it would recurse).
- ACE_CDR::Boolean read_1 (ACE_InputCDR& input,
- ACE_CDR::Octet *x);
- ACE_CDR::Boolean write_1 (ACE_OutputCDR& output,
- const ACE_CDR::Octet *x);
-
- /// Efficiently read @a length elements of size @a size each from
- /// <input> into <x>; the data must be aligned to <align>.
- ACE_CDR::Boolean read_array (ACE_InputCDR& input,
- void* x,
- size_t size,
- size_t align,
- ACE_CDR::ULong length);
-
- /**
- * Efficiently write @a length elements of size @a size from <x> into
- * <output>. Before inserting the elements enough padding is added
- * to ensure that the elements will be aligned to <align> in the
- * stream.
- */
- ACE_CDR::Boolean write_array (ACE_OutputCDR& output,
- const void *x,
- size_t size,
- size_t align,
- ACE_CDR::ULong length);
-
- /**
- * Exposes the stream implementation of <adjust>, this is useful in
- * many cases to minimize memory allocations during marshaling.
- * On success @a buf will contain a contiguous area in the CDR stream
- * that can hold @a size bytes aligned to <align>.
- * Results
- */
- int adjust (ACE_OutputCDR& out,
- size_t size,
- size_t align,
- char *&buf);
-
- /// Used by derived classes to set errors in the CDR stream.
- void good_bit (ACE_OutputCDR& out, bool bit);
-
- /// Obtain the CDR Stream's major & minor version values.
- ACE_CDR::Octet major_version (ACE_InputCDR& input);
- ACE_CDR::Octet minor_version (ACE_InputCDR& input);
- ACE_CDR::Octet major_version (ACE_OutputCDR& output);
- ACE_CDR::Octet minor_version (ACE_OutputCDR& output);
-};
-
-// ****************************************************************
-
-/**
- * @class ACE_WChar_Codeset_Translator
- *
- * @brief Codeset translation routines common to both Output and Input
- * CDR streams.
- *
- * This class is a base class for defining codeset translation
- * routines to handle the character set translations required by
- * both CDR Input streams and CDR Output streams.
- */
-class ACE_Export ACE_WChar_Codeset_Translator
-{
-public:
- virtual ~ACE_WChar_Codeset_Translator ();
-
- virtual ACE_CDR::Boolean read_wchar (ACE_InputCDR&,
- ACE_CDR::WChar&) = 0;
- virtual ACE_CDR::Boolean read_wstring (ACE_InputCDR&,
- ACE_CDR::WChar *&) = 0;
- virtual ACE_CDR::Boolean read_wchar_array (ACE_InputCDR&,
- ACE_CDR::WChar*,
- ACE_CDR::ULong) = 0;
- virtual ACE_CDR::Boolean write_wchar (ACE_OutputCDR&,
- ACE_CDR::WChar) = 0;
- virtual ACE_CDR::Boolean write_wstring (ACE_OutputCDR&,
- ACE_CDR::ULong,
- const ACE_CDR::WChar*) = 0;
- virtual ACE_CDR::Boolean write_wchar_array (ACE_OutputCDR&,
- const ACE_CDR::WChar*,
- ACE_CDR::ULong) = 0;
-
- virtual ACE_CDR::ULong ncs () = 0;
- virtual ACE_CDR::ULong tcs () = 0;
-protected:
- /// Children have access to low-level routines because they cannot
- /// use read_char or something similar (it would recurse).
- ACE_CDR::Boolean read_1 (ACE_InputCDR& input,
- ACE_CDR::Octet *x);
- ACE_CDR::Boolean read_2 (ACE_InputCDR& input,
- ACE_CDR::UShort *x);
- ACE_CDR::Boolean read_4 (ACE_InputCDR& input,
- ACE_CDR::ULong *x);
- ACE_CDR::Boolean write_1 (ACE_OutputCDR& output,
- const ACE_CDR::Octet *x);
- ACE_CDR::Boolean write_2 (ACE_OutputCDR& output,
- const ACE_CDR::UShort *x);
- ACE_CDR::Boolean write_4 (ACE_OutputCDR& output,
- const ACE_CDR::ULong *x);
-
- /// Efficiently read @a length elements of size @a size each from
- /// <input> into <x>; the data must be aligned to <align>.
- ACE_CDR::Boolean read_array (ACE_InputCDR& input,
- void* x,
- size_t size,
- size_t align,
- ACE_CDR::ULong length);
-
- /**
- * Efficiently write @a length elements of size @a size from <x> into
- * <output>. Before inserting the elements enough padding is added
- * to ensure that the elements will be aligned to <align> in the
- * stream.
- */
- ACE_CDR::Boolean write_array (ACE_OutputCDR& output,
- const void *x,
- size_t size,
- size_t align,
- ACE_CDR::ULong length);
-
- /**
- * Exposes the stream implementation of <adjust>, this is useful in
- * many cases to minimize memory allocations during marshaling.
- * On success @a buf will contain a contiguous area in the CDR stream
- * that can hold @a size bytes aligned to <align>.
- * Results
- */
- int adjust (ACE_OutputCDR& out,
- size_t size,
- size_t align,
- char *&buf);
-
- /// Used by derived classes to set errors in the CDR stream.
- void good_bit (ACE_OutputCDR& out, bool bit);
-
- /// Obtain the CDR Stream's major & minor version values.
- ACE_CDR::Octet major_version (ACE_InputCDR& input);
- ACE_CDR::Octet minor_version (ACE_InputCDR& input);
- ACE_CDR::Octet major_version (ACE_OutputCDR& output);
- ACE_CDR::Octet minor_version (ACE_OutputCDR& output);
-
-};
-
-// @@ These operators should not be inlined since they force SString.h
-// to be included in this header.
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR &os,
- const ACE_CString &x);
-
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_CString &x);
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-# include "ace/CDR_Stream.inl"
-#else /* __ACE_INLINE__ */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Not used by CORBA or TAO
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR &os,
- ACE_CDR::Char x);
-// CDR output operators for primitive types
-
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR &os,
- ACE_CDR::Short x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR &os,
- ACE_CDR::UShort x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR &os,
- ACE_CDR::Long x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR &os,
- ACE_CDR::ULong x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR &os,
- ACE_CDR::LongLong x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR &os,
- ACE_CDR::ULongLong x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR& os,
- ACE_CDR::LongDouble x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR &os,
- ACE_CDR::Float x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR &os,
- ACE_CDR::Double x);
-
-// CDR output operator from helper classes
-
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR &os,
- ACE_OutputCDR::from_boolean x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR &os,
- ACE_OutputCDR::from_char x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR &os,
- ACE_OutputCDR::from_wchar x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR &os,
- ACE_OutputCDR::from_octet x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR &os,
- ACE_OutputCDR::from_string x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR &os,
- ACE_OutputCDR::from_wstring x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR &os,
- const ACE_CDR::Char* x);
-extern ACE_Export ACE_CDR::Boolean operator<< (ACE_OutputCDR &os,
- const ACE_CDR::WChar* x);
-
-// Not used by CORBA or TAO
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_CDR::Char &x);
-// CDR input operators for primitive types
-
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_CDR::Short &x);
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_CDR::UShort &x);
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_CDR::Long &x);
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_CDR::ULong &x);
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_CDR::LongLong &x);
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_CDR::ULongLong &x);
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_CDR::LongDouble &x);
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_CDR::Float &x);
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_CDR::Double &x);
-
-// CDR input operator from helper classes
-
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_InputCDR::to_boolean x);
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_InputCDR::to_char x);
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_InputCDR::to_wchar x);
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_InputCDR::to_octet x);
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_InputCDR::to_string x);
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_InputCDR::to_wstring x);
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_CDR::Char*& x);
-extern ACE_Export ACE_CDR::Boolean operator>> (ACE_InputCDR &is,
- ACE_CDR::WChar*& x);
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* __ACE_INLINE__ */
-
-#if defined (GEN_OSTREAM_OPS)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// ostream insertion operators for debugging code generated from IDL. All
-// but these below are either in generated code itself or are unambiguous
-// primitive types.
-
-ACE_Export std::ostream& operator<< (std::ostream &os,
- ACE_OutputCDR::from_boolean x);
-
-ACE_Export std::ostream& operator<< (std::ostream &os,
- ACE_OutputCDR::from_char x);
-
-ACE_Export std::ostream& operator<< (std::ostream &os,
- ACE_OutputCDR::from_wchar x);
-
-ACE_Export std::ostream& operator<< (std::ostream &os,
- ACE_OutputCDR::from_octet x);
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* GEN_OSTREAM_OPS */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CDR_STREAM_H */
-
diff --git a/dep/include/ace/CDR_Stream.inl b/dep/include/ace/CDR_Stream.inl
deleted file mode 100644
index bf5a6e25cb2..00000000000
--- a/dep/include/ace/CDR_Stream.inl
+++ /dev/null
@@ -1,1720 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: CDR_Stream.inl 82350 2008-07-22 07:36:47Z johnnyw $
-
-#include "ace/OS_NS_string.h"
-#include "ace/OS_Memory.h"
-
-// ****************************************************************
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// implementing the special types
-ACE_INLINE
-ACE_OutputCDR::from_boolean::from_boolean (ACE_CDR::Boolean b)
- : val_ (b)
-{
-}
-
-ACE_INLINE
-ACE_InputCDR::to_boolean::to_boolean (ACE_CDR::Boolean &b)
- : ref_ (b)
-{
-}
-
-ACE_INLINE
-ACE_OutputCDR::from_octet::from_octet (ACE_CDR::Octet o)
- : val_ (o)
-{
-}
-
-ACE_INLINE
-ACE_InputCDR::to_octet::to_octet (ACE_CDR::Octet &o)
- : ref_ (o)
-{
-}
-
-ACE_INLINE
-ACE_OutputCDR::from_char::from_char (ACE_CDR::Char c)
- : val_ (c)
-{
-}
-
-ACE_INLINE
-ACE_InputCDR::to_char::to_char (ACE_CDR::Char &c)
- : ref_ (c)
-{
-}
-
-ACE_INLINE
-ACE_OutputCDR::from_wchar::from_wchar (ACE_CDR::WChar wc)
- : val_ (wc)
-{
-}
-
-ACE_INLINE
-ACE_InputCDR::to_wchar::to_wchar (ACE_CDR::WChar &wc)
- : ref_ (wc)
-{
-}
-
-ACE_INLINE
-ACE_OutputCDR::from_string::from_string (ACE_CDR::Char *s,
- ACE_CDR::ULong b,
- ACE_CDR::Boolean nocopy)
- : val_ (s),
- bound_ (b),
- nocopy_ (nocopy)
-{
-}
-
-ACE_INLINE
-ACE_OutputCDR::from_string::from_string (const ACE_CDR::Char *s,
- ACE_CDR::ULong b,
- ACE_CDR::Boolean nocopy)
- : val_ (const_cast<ACE_CDR::Char *> (s)),
- bound_ (b),
- nocopy_ (nocopy)
-{
-}
-
-ACE_INLINE
-ACE_InputCDR::to_string::to_string (ACE_CDR::Char *&s,
- ACE_CDR::ULong b)
- : val_ (const_cast<const ACE_CDR::Char *&> (s)),
- bound_ (b)
-{
-}
-
-ACE_INLINE
-ACE_InputCDR::to_string::to_string (const ACE_CDR::Char *&s,
- ACE_CDR::ULong b)
- : val_ (s),
- bound_ (b)
-{
-}
-
-ACE_INLINE
-ACE_OutputCDR::from_wstring::from_wstring (ACE_CDR::WChar *ws,
- ACE_CDR::ULong b,
- ACE_CDR::Boolean nocopy)
- : val_ (ws),
- bound_ (b),
- nocopy_ (nocopy)
-{
-}
-
-ACE_INLINE
-ACE_OutputCDR::from_wstring::from_wstring (const ACE_CDR::WChar *ws,
- ACE_CDR::ULong b,
- ACE_CDR::Boolean nocopy)
- : val_ (const_cast<ACE_CDR::WChar *> (ws)),
- bound_ (b),
- nocopy_ (nocopy)
-{
-}
-
-ACE_INLINE
-ACE_InputCDR::to_wstring::to_wstring (ACE_CDR::WChar *&ws,
- ACE_CDR::ULong b)
- : val_ (const_cast<const ACE_CDR::WChar *&> (ws)),
- bound_ (b)
-{
-}
-
-ACE_INLINE
-ACE_InputCDR::to_wstring::to_wstring (const ACE_CDR::WChar *&ws,
- ACE_CDR::ULong b)
- : val_ (ws),
- bound_ (b)
-{
-}
-
-ACE_INLINE
-ACE_InputCDR::Transfer_Contents::Transfer_Contents (ACE_InputCDR &rhs)
- : rhs_ (rhs)
-{
-}
-
-// ****************************************************************
-
-ACE_INLINE
-ACE_OutputCDR::~ACE_OutputCDR (void)
-{
- if (this->start_.cont () != 0)
- {
- ACE_Message_Block::release (this->start_.cont ());
- this->start_.cont (0);
- }
-
- this->current_ = 0;
-
-#if defined (ACE_HAS_MONITOR_POINTS) && (ACE_HAS_MONITOR_POINTS == 1)
- this->monitor_->remove_ref ();
-#endif /* ACE_HAS_MONITOR_POINTS==1 */
-}
-
-ACE_INLINE void
-ACE_OutputCDR::reset (void)
-{
- this->current_ = &this->start_;
- this->current_is_writable_ = true;
- ACE_CDR::mb_align (&this->start_);
-
-#if !defined (ACE_LACKS_CDR_ALIGNMENT)
- this->current_alignment_ = 0;
-#endif /* ACE_LACKS_CDR_ALIGNMENT */
-
- // It is tempting not to remove the memory, but we need to do so to
- // release any potential user buffers chained in the continuation
- // field.
-
- ACE_Message_Block * const cont = this->start_.cont ();
- if (cont)
- {
- ACE_Message_Block::release (cont);
- this->start_.cont (0);
- }
-
-#if defined (ACE_HAS_MONITOR_POINTS) && (ACE_HAS_MONITOR_POINTS == 1)
- this->monitor_->receive (this->start_.total_size ());
-#endif /* ACE_HAS_MONITOR_POINTS==1 */
-}
-
-// Encode the CDR stream.
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_octet (ACE_CDR::Octet x)
-{
- return this->write_1 (&x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_boolean (ACE_CDR::Boolean x)
-{
- return
- static_cast<ACE_CDR::Boolean> (
- this->write_octet (
- x
- ? static_cast<ACE_CDR::Octet> (1)
- : static_cast<ACE_CDR::Octet> (0)));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_char (ACE_CDR::Char x)
-{
- if (this->char_translator_ == 0)
- {
- ACE_CDR::Octet temp = static_cast<ACE_CDR::Octet> (x);
- return this->write_1 (&temp);
- }
- return this->char_translator_->write_char (*this, x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_short (ACE_CDR::Short x)
-{
- ACE_CDR::UShort temp = static_cast<ACE_CDR::UShort> (x);
- return this->write_2 (&temp);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_ushort (ACE_CDR::UShort x)
-{
- return this->write_2 (&x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_long (ACE_CDR::Long x)
-{
- ACE_CDR::ULong temp = static_cast<ACE_CDR::ULong> (x);
- return this->write_4 (&temp);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_ulong (ACE_CDR::ULong x)
-{
- return this->write_4 (&x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_longlong (const ACE_CDR::LongLong &x)
-{
- void const * const temp = &x;
- return this->write_8 (reinterpret_cast<ACE_CDR::ULongLong const *> (temp));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_ulonglong (const ACE_CDR::ULongLong &x)
-{
- return this->write_8 (&x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_float (ACE_CDR::Float x)
-{
- void const * const temp = &x;
- return this->write_4 (reinterpret_cast<ACE_CDR::ULong const *> (temp));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_double (const ACE_CDR::Double &x)
-{
- void const * const temp = &x;
- return this->write_8 (reinterpret_cast<ACE_CDR::ULongLong const *> (temp));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_longdouble (const ACE_CDR::LongDouble &x)
-{
- return this->write_16 (&x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_string (const ACE_CDR::Char *x)
-{
- if (x)
- {
- ACE_CDR::ULong const len =
- static_cast<ACE_CDR::ULong> (ACE_OS::strlen (x));
- return this->write_string (len, x);
- }
-
- return this->write_string (0, 0);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_wstring (const ACE_CDR::WChar *x)
-{
- if (x)
- {
- ACE_CDR::ULong const len =
- static_cast<ACE_CDR::ULong> (ACE_OS::strlen (x));
- return this->write_wstring (len, x);
- }
-
- return this->write_wstring (0, 0);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_char_array (const ACE_CDR::Char *x,
- ACE_CDR::ULong length)
-{
- if (this->char_translator_ == 0)
- return this->write_array (x,
- ACE_CDR::OCTET_SIZE,
- ACE_CDR::OCTET_ALIGN,
- length);
- return this->char_translator_->write_char_array (*this, x, length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_wchar_array (const ACE_CDR::WChar* x,
- ACE_CDR::ULong length)
-{
- if (this->wchar_translator_)
- return this->wchar_translator_->write_wchar_array (*this, x, length);
-
- if (ACE_OutputCDR::wchar_maxbytes_ == 0)
- {
- errno = EACCES;
- return (ACE_CDR::Boolean) (this->good_bit_ = false);
- }
-
- if (ACE_OutputCDR::wchar_maxbytes_ == sizeof (ACE_CDR::WChar))
- return this->write_array (x,
- sizeof (ACE_CDR::WChar),
- sizeof (ACE_CDR::WChar) == 2
- ? ACE_CDR::SHORT_ALIGN
- : ACE_CDR::LONG_ALIGN,
- length);
- return this->write_wchar_array_i (x,length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_octet_array (const ACE_CDR::Octet* x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::OCTET_SIZE,
- ACE_CDR::OCTET_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_short_array (const ACE_CDR::Short *x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::SHORT_SIZE,
- ACE_CDR::SHORT_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_ushort_array (const ACE_CDR::UShort *x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::SHORT_SIZE,
- ACE_CDR::SHORT_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_long_array (const ACE_CDR::Long *x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::LONG_SIZE,
- ACE_CDR::LONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_ulong_array (const ACE_CDR::ULong *x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::LONG_SIZE,
- ACE_CDR::LONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_longlong_array (const ACE_CDR::LongLong *x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::LONGLONG_SIZE,
- ACE_CDR::LONGLONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_ulonglong_array (const ACE_CDR::ULongLong *x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::LONGLONG_SIZE,
- ACE_CDR::LONGLONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_float_array (const ACE_CDR::Float *x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::LONG_SIZE,
- ACE_CDR::LONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_double_array (const ACE_CDR::Double *x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::LONGLONG_SIZE,
- ACE_CDR::LONGLONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::write_longdouble_array (const ACE_CDR::LongDouble* x,
- ACE_CDR::ULong length)
-{
- return this->write_array (x,
- ACE_CDR::LONGDOUBLE_SIZE,
- ACE_CDR::LONGDOUBLE_ALIGN,
- length);
-}
-
-ACE_INLINE bool
-ACE_OutputCDR::good_bit (void) const
-{
- return this->good_bit_;
-}
-
-ACE_INLINE int
-ACE_OutputCDR::adjust (size_t size,
- size_t align,
- char*& buf)
-{
- if (!this->current_is_writable_)
- return this->grow_and_adjust (size, align, buf);
-
-#if !defined (ACE_LACKS_CDR_ALIGNMENT)
- size_t const offset =
- ACE_align_binary (this->current_alignment_, align)
- - this->current_alignment_;
-
- buf = this->current_->wr_ptr () + offset;
-#else
- buf = this->current_->wr_ptr ();
-#endif /* ACE_LACKS_CDR_ALIGNMENT */
-
- char * const end = buf + size;
-
- if (end <= this->current_->end () &&
- end >= buf)
- {
-#if !defined (ACE_LACKS_CDR_ALIGNMENT)
- this->current_alignment_ += offset + size;
-#endif /* ACE_LACKS_CDR_ALIGNMENT */
- this->current_->wr_ptr (end);
-
-#if defined (ACE_HAS_MONITOR_POINTS) && (ACE_HAS_MONITOR_POINTS == 1)
- this->monitor_->receive (this->total_length ());
-#endif /* ACE_HAS_MONITOR_POINTS==1 */
-
- return 0;
- }
-
- return this->grow_and_adjust (size, align, buf);
-}
-
-ACE_INLINE int
-ACE_OutputCDR::adjust (size_t size, char*& buf)
-{
- return this->adjust (size, size, buf);
-}
-
-ACE_INLINE void
-ACE_OutputCDR::set_version (ACE_CDR::Octet major, ACE_CDR::Octet minor)
-{
- this->major_version_ = major;
- this->minor_version_ = minor;
-}
-
-ACE_INLINE void
-ACE_OutputCDR::get_version (ACE_CDR::Octet &major, ACE_CDR::Octet &minor)
-{
- major = this->major_version_;
- minor = this->minor_version_;
-}
-
-ACE_INLINE const ACE_Message_Block*
-ACE_OutputCDR::begin (void) const
-{
- return &this->start_;
-}
-
-ACE_INLINE const ACE_Message_Block*
-ACE_OutputCDR::end (void) const
-{
- return this->current_->cont ();
-}
-
-ACE_INLINE const ACE_Message_Block*
-ACE_OutputCDR::current (void) const
-{
- return this->current_;
-}
-
-ACE_INLINE size_t
-ACE_OutputCDR::total_length (void) const
-{
- return ACE_CDR::total_length (this->begin (), this->end ());
-}
-
-ACE_INLINE const char*
-ACE_OutputCDR::buffer (void) const
-{
- return this->start_.rd_ptr ();
-}
-
-ACE_INLINE size_t
-ACE_OutputCDR::length (void) const
-{
- return this->start_.length ();
-}
-
-ACE_INLINE bool
-ACE_OutputCDR::do_byte_swap (void) const
-{
- return this->do_byte_swap_;
-}
-
-ACE_INLINE int
-ACE_OutputCDR::byte_order (void) const
-{
- if (this->do_byte_swap ())
- return !ACE_CDR_BYTE_ORDER;
- else
- return ACE_CDR_BYTE_ORDER;
-}
-
-ACE_INLINE void
-ACE_OutputCDR::reset_byte_order (int byte_order)
-{
- this->do_byte_swap_ = (byte_order != ACE_CDR_BYTE_ORDER);
-}
-
-ACE_INLINE size_t
-ACE_OutputCDR::current_alignment (void) const
-{
-#if !defined (ACE_LACKS_CDR_ALIGNMENT)
- return this->current_alignment_;
-#else
- // Default value set to 0
- return 0;
-#endif /* ACE_LACKS_CDR_ALIGNMENT */
-}
-
-ACE_INLINE void
-ACE_OutputCDR::current_alignment (size_t current_alignment)
-{
-#if !defined (ACE_LACKS_CDR_ALIGNMENT)
- this->current_alignment_ = current_alignment;
-#else
- ACE_UNUSED_ARG (current_alignment);
- return 0;
-#endif /* ACE_LACKS_CDR_ALIGNMENT */
-}
-
-ACE_INLINE int
-ACE_OutputCDR::align_write_ptr (size_t alignment)
-{
-#if !defined (ACE_LACKS_CDR_ALIGNMENT)
- char *dummy;
- return this->adjust (0, alignment, dummy);
-#else
- ACE_UNUSED_ARG (alignment);
- // A return value of -1 from this function is used
- // to indicate failure, returning 0
- return 0;
-#endif /* ACE_LACKS_CDR_ALIGNMENT */
-}
-
-ACE_INLINE ACE_Char_Codeset_Translator *
-ACE_OutputCDR::char_translator (void) const
-{
- return this->char_translator_;
-}
-
-ACE_INLINE ACE_WChar_Codeset_Translator *
-ACE_OutputCDR::wchar_translator (void) const
-{
- return this->wchar_translator_;
-}
-
-ACE_INLINE void
-ACE_OutputCDR::char_translator (ACE_Char_Codeset_Translator * ctran)
-{
- this->char_translator_ = ctran;
-}
-
-ACE_INLINE void
-ACE_OutputCDR::wchar_translator (ACE_WChar_Codeset_Translator * wctran)
-{
- this->wchar_translator_ = wctran;
-}
-
-// ****************************************************************
-
-ACE_INLINE
-ACE_InputCDR::~ACE_InputCDR (void)
-{
-#if defined (ACE_HAS_MONITOR_POINTS) && (ACE_HAS_MONITOR_POINTS == 1)
- this->monitor_->remove_ref ();
-#endif /* ACE_HAS_MONITOR_POINTS==1 */
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_octet (ACE_CDR::Octet& x)
-{
- return this->read_1 (&x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_boolean (ACE_CDR::Boolean& x)
-{
- ACE_CDR::Octet tmp = 0;
- (void) this->read_octet (tmp);
- x = tmp ? true : false;
- return (ACE_CDR::Boolean) this->good_bit_;
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_char (ACE_CDR::Char &x)
-{
- if (this->char_translator_ == 0)
- {
- void *temp = &x;
- return this->read_1 (reinterpret_cast<ACE_CDR::Octet*> (temp));
- }
- return this->char_translator_->read_char (*this, x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_short (ACE_CDR::Short &x)
-{
- void *temp = &x;
- return this->read_2 (reinterpret_cast<ACE_CDR::UShort*> (temp));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_ushort (ACE_CDR::UShort &x)
-{
- return this->read_2 (&x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_long (ACE_CDR::Long &x)
-{
- void *temp = &x;
- return this->read_4 (reinterpret_cast<ACE_CDR::ULong*> (temp));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_ulong (ACE_CDR::ULong &x)
-{
- return this->read_4 (&x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_longlong (ACE_CDR::LongLong &x)
-{
- void *temp = &x;
- return this->read_8 (reinterpret_cast<ACE_CDR::ULongLong*> (temp));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_ulonglong (ACE_CDR::ULongLong &x)
-{
- return this->read_8 (&x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_float (ACE_CDR::Float &x)
-{
- void *temp = &x;
- return this->read_4 (reinterpret_cast<ACE_CDR::ULong*> (temp));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_double (ACE_CDR::Double &x)
-{
- void *temp = &x;
- return this->read_8 (reinterpret_cast<ACE_CDR::ULongLong*> (temp));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_longdouble (ACE_CDR::LongDouble &x)
-{
- return this->read_16 (&x);
-}
-
-ACE_INLINE size_t
-ACE_InputCDR::length (void) const
-{
- return this->start_.length ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_char_array (ACE_CDR::Char* x,
- ACE_CDR::ULong length)
-{
- // Make sure the length of the array isn't greater than the length of
- // the stream.
- if (length > this->length ())
- {
- this->good_bit_ = false;
- return false;
- }
-
- if (this->char_translator_ == 0)
- return this->read_array (x,
- ACE_CDR::OCTET_SIZE,
- ACE_CDR::OCTET_ALIGN,
- length);
- return this->char_translator_->read_char_array (*this, x, length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_wchar_array (ACE_CDR::WChar* x,
- ACE_CDR::ULong length)
-{
- // Make sure the length of the array isn't greater than the length of
- // the stream.
- if (length * ACE_OutputCDR::wchar_maxbytes_ > this->length ())
- {
- this->good_bit_ = false;
- return false;
- }
-
- if (this->wchar_translator_ != 0)
- return this->wchar_translator_->read_wchar_array (*this, x, length);
- if (ACE_OutputCDR::wchar_maxbytes_ != sizeof (ACE_CDR::WChar))
- return this->read_wchar_array_i (x, length);
- return this->read_array (x,
- sizeof (ACE_CDR::WChar),
- sizeof (ACE_CDR::WChar) == 2
- ? ACE_CDR::SHORT_ALIGN
- : ACE_CDR::LONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_octet_array (ACE_CDR::Octet* x,
- ACE_CDR::ULong length)
-{
- // Make sure the length of the array isn't greater than the length of
- // the stream.
- if (length * ACE_CDR::OCTET_SIZE > this->length ())
- {
- this->good_bit_ = false;
- return false;
- }
-
- return this->read_array (x,
- ACE_CDR::OCTET_SIZE,
- ACE_CDR::OCTET_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_short_array (ACE_CDR::Short *x,
- ACE_CDR::ULong length)
-{
- // Make sure the length of the array isn't greater than the length of
- // the stream.
- if (length * ACE_CDR::SHORT_SIZE > this->length ())
- {
- this->good_bit_ = false;
- return false;
- }
-
- return this->read_array (x,
- ACE_CDR::SHORT_SIZE,
- ACE_CDR::SHORT_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_ushort_array (ACE_CDR::UShort *x,
- ACE_CDR::ULong length)
-{
- // Make sure the length of the array isn't greater than the length of
- // the stream.
- if (length * ACE_CDR::SHORT_SIZE > this->length ())
- {
- this->good_bit_ = false;
- return false;
- }
-
- return this->read_array (x,
- ACE_CDR::SHORT_SIZE,
- ACE_CDR::SHORT_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_long_array (ACE_CDR::Long *x,
- ACE_CDR::ULong length)
-{
- // Make sure the length of the array isn't greater than the length of
- // the stream.
- if (length * ACE_CDR::LONG_SIZE > this->length ())
- {
- this->good_bit_ = false;
- return false;
- }
-
- return this->read_array (x,
- ACE_CDR::LONG_SIZE,
- ACE_CDR::LONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_ulong_array (ACE_CDR::ULong *x,
- ACE_CDR::ULong length)
-{
- // Make sure the length of the array isn't greater than the length of
- // the stream.
- if (length * ACE_CDR::LONG_SIZE > this->length ())
- {
- this->good_bit_ = false;
- return false;
- }
-
- return this->read_array (x,
- ACE_CDR::LONG_SIZE,
- ACE_CDR::LONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_longlong_array (ACE_CDR::LongLong *x,
- ACE_CDR::ULong length)
-{
- // Make sure the length of the array isn't greater than the length of
- // the stream.
- if (length * ACE_CDR::LONGLONG_SIZE > this->length ())
- {
- this->good_bit_ = false;
- return false;
- }
-
- return this->read_array (x,
- ACE_CDR::LONGLONG_SIZE,
- ACE_CDR::LONGLONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_ulonglong_array (ACE_CDR::ULongLong *x,
- ACE_CDR::ULong length)
-{
- // Make sure the length of the array isn't greater than the length of
- // the stream.
- if (length * ACE_CDR::LONGLONG_SIZE > this->length ())
- {
- this->good_bit_ = false;
- return false;
- }
-
- return this->read_array (x,
- ACE_CDR::LONGLONG_SIZE,
- ACE_CDR::LONGLONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_float_array (ACE_CDR::Float *x,
- ACE_CDR::ULong length)
-{
- // Make sure the length of the array isn't greater than the length of
- // the stream.
- if (length * ACE_CDR::LONG_SIZE > this->length ())
- {
- this->good_bit_ = false;
- return false;
- }
-
- return this->read_array (x,
- ACE_CDR::LONG_SIZE,
- ACE_CDR::LONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_double_array (ACE_CDR::Double *x,
- ACE_CDR::ULong length)
-{
- // Make sure the length of the array isn't greater than the length of
- // the stream.
- if (length * ACE_CDR::LONGLONG_SIZE > this->length ())
- {
- this->good_bit_ = false;
- return false;
- }
-
- return this->read_array (x,
- ACE_CDR::LONGLONG_SIZE,
- ACE_CDR::LONGLONG_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::read_longdouble_array (ACE_CDR::LongDouble* x,
- ACE_CDR::ULong length)
-{
- // Make sure the length of the array isn't greater than the length of
- // the stream.
- if (length * ACE_CDR::LONGDOUBLE_SIZE > this->length ())
- {
- this->good_bit_ = false;
- return false;
- }
- return this->read_array (x,
- ACE_CDR::LONGDOUBLE_SIZE,
- ACE_CDR::LONGDOUBLE_ALIGN,
- length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::skip_octet (void)
-{
- ACE_CDR::Octet x;
- return this->read_1 (&x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::skip_char (void)
-{
- return this->skip_octet (); // sizeof (Char) == sizeof (Octet)
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::skip_boolean (void)
-{
- return this->skip_octet () && this->good_bit_;
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::skip_ushort (void)
-{
- ACE_CDR::UShort x;
- return this->read_2 (&x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::skip_short (void)
-{
- return this->skip_ushort ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::skip_ulong (void)
-{
- ACE_CDR::ULong x;
- return this->read_4 (&x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::skip_long (void)
-{
- return this->skip_ulong (); // sizeof (Long) == sizeof (ULong)
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::skip_ulonglong (void)
-{
- ACE_CDR::ULongLong x;
- return this->read_8 (&x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::skip_longlong (void)
-{
- return this->skip_ulonglong (); // sizeof (LongLong) == sizeof (ULongLong)
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::skip_float (void)
-{
- return this->skip_ulong (); // sizeof(Float) == sizeof (ULong)
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::skip_double (void)
-{
- return this->skip_ulonglong (); // sizeof(Double) == sizeof (ULongLong)
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_InputCDR::skip_longdouble (void)
-{
- ACE_CDR::LongDouble x;
- return this->read_16 (&x);
-}
-
-ACE_INLINE char*
-ACE_InputCDR::end (void)
-{
- return this->start_.end ();
-}
-
-ACE_INLINE void
-ACE_InputCDR::rd_ptr (size_t offset)
-{
- this->start_.rd_ptr (offset);
-}
-
-ACE_INLINE char*
-ACE_InputCDR::rd_ptr (void)
-{
- return this->start_.rd_ptr ();
-}
-
-ACE_INLINE char*
-ACE_InputCDR::wr_ptr (void)
-{
- return this->start_.wr_ptr ();
-}
-
-ACE_INLINE int
-ACE_InputCDR::adjust (size_t size,
- size_t align,
- char*& buf)
-{
-#if !defined (ACE_LACKS_CDR_ALIGNMENT)
- buf = ACE_ptr_align_binary (this->rd_ptr (), align);
-#else
- buf = this->rd_ptr ();
-#endif /* ACE_LACKS_CDR_ALIGNMENT */
-
- char * const end = buf + size;
- if (end <= this->wr_ptr ())
- {
- this->start_.rd_ptr (end);
- return 0;
- }
-
- this->good_bit_ = false;
- return -1;
-#if defined (ACE_LACKS_CDR_ALIGNMENT)
- ACE_UNUSED_ARG (align);
-#endif /* ACE_LACKS_CDR_ALIGNMENT */
-}
-
-ACE_INLINE int
-ACE_InputCDR::adjust (size_t size,
- char*& buf)
-{
- return this->adjust (size, size, buf);
-}
-
-ACE_INLINE const ACE_Message_Block*
-ACE_InputCDR::start (void) const
-{
- return &this->start_;
-}
-
-ACE_INLINE bool
-ACE_InputCDR::good_bit (void) const
-{
- return this->good_bit_;
-}
-
-// ****************************************************************
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_OutputCDR &os, ACE_CDR::Char x)
-{
- os.write_char (x);
- return (ACE_CDR::Boolean) os.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_OutputCDR &os, ACE_CDR::Short x)
-{
- os.write_short (x);
- return (ACE_CDR::Boolean) os.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_OutputCDR &os, ACE_CDR::UShort x)
-{
- os.write_ushort (x);
- return (ACE_CDR::Boolean) os.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_OutputCDR &os, ACE_CDR::Long x)
-{
- os.write_long (x);
- return (ACE_CDR::Boolean) os.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_OutputCDR &os, ACE_CDR::ULong x)
-{
- os.write_ulong (x);
- return (ACE_CDR::Boolean) os.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_OutputCDR &os, ACE_CDR::LongLong x)
-{
- os.write_longlong (x);
- return (ACE_CDR::Boolean) os.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_OutputCDR &os, ACE_CDR::ULongLong x)
-{
- os.write_ulonglong (x);
- return (ACE_CDR::Boolean) os.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_OutputCDR &os, ACE_CDR::LongDouble x)
-{
- os.write_longdouble (x);
- return (ACE_CDR::Boolean) os.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_OutputCDR &os, ACE_CDR::Float x)
-{
- os.write_float (x);
- return (ACE_CDR::Boolean) os.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_OutputCDR &os, ACE_CDR::Double x)
-{
- os.write_double (x);
- return (ACE_CDR::Boolean) os.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_OutputCDR &os, const ACE_CDR::Char *x)
-{
- os.write_string (x);
- return (ACE_CDR::Boolean) os.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_OutputCDR &os, const ACE_CDR::WChar *x)
-{
- os.write_wstring (x);
- return (ACE_CDR::Boolean) os.good_bit ();
-}
-
-// The following use the helper classes
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_OutputCDR &os, ACE_OutputCDR::from_boolean x)
-{
- (void) os.write_boolean (x.val_);
- return (ACE_CDR::Boolean) os.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_OutputCDR &os, ACE_OutputCDR::from_char x)
-{
- os.write_char (x.val_);
- return (ACE_CDR::Boolean) os.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_OutputCDR &os, ACE_OutputCDR::from_wchar x)
-{
- os.write_wchar (x.val_);
- return (ACE_CDR::Boolean) os.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_OutputCDR &os, ACE_OutputCDR::from_octet x)
-{
- os.write_octet (x.val_);
- return (ACE_CDR::Boolean) os.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_OutputCDR &os, ACE_OutputCDR::from_string x)
-{
- ACE_CDR::ULong len = 0;
-
- if (x.val_ != 0)
- {
- len = static_cast<ACE_CDR::ULong> (ACE_OS::strlen (x.val_));
- }
-
- os.write_string (len, x.val_);
- return
- (ACE_CDR::Boolean) (os.good_bit () && (!x.bound_ || len <= x.bound_));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator<< (ACE_OutputCDR &os, ACE_OutputCDR::from_wstring x)
-{
- ACE_CDR::ULong len = 0;
-
- if (x.val_ != 0)
- {
- len = static_cast<ACE_CDR::ULong> (ACE_OS::strlen (x.val_));
- }
-
- os.write_wstring (len, x.val_);
- return
- (ACE_CDR::Boolean) (os.good_bit () && (!x.bound_ || len <= x.bound_));
-}
-
-// ****************************************************************
-
-ACE_INLINE ACE_CDR::Boolean
-operator>> (ACE_InputCDR &is, ACE_CDR::Char &x)
-{
- return is.read_char (x) && is.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator>> (ACE_InputCDR &is, ACE_CDR::Short &x)
-{
- return is.read_short (x) && is.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator>> (ACE_InputCDR &is, ACE_CDR::UShort &x)
-{
- return is.read_ushort (x) && is.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator>>(ACE_InputCDR &is, ACE_CDR::Long &x)
-{
- return is.read_long (x) && is.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator>> (ACE_InputCDR &is, ACE_CDR::ULong &x)
-{
- return is.read_ulong (x) && is.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator>> (ACE_InputCDR& is, ACE_CDR::LongLong &x)
-{
- return is.read_longlong (x) && is.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator>> (ACE_InputCDR& is, ACE_CDR::ULongLong &x)
-{
- return is.read_ulonglong (x) && is.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator>> (ACE_InputCDR& is, ACE_CDR::LongDouble &x)
-{
- return is.read_longdouble (x) && is.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator>> (ACE_InputCDR &is, ACE_CDR::Float &x)
-{
- return is.read_float (x) && is.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator>> (ACE_InputCDR &is, ACE_CDR::Double &x)
-{
- return is.read_double (x) && is.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator>> (ACE_InputCDR &is, ACE_CDR::Char *&x)
-{
- return is.read_string (x) && is.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator>> (ACE_InputCDR &is, ACE_CDR::WChar *&x)
-{
- return is.read_wstring (x) && is.good_bit ();
-}
-
-// The following use the helper classes
-ACE_INLINE ACE_CDR::Boolean
-operator>> (ACE_InputCDR &is, ACE_InputCDR::to_boolean x)
-{
- return is.read_boolean (x.ref_);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator>> (ACE_InputCDR &is, ACE_InputCDR::to_char x)
-{
- return is.read_char (x.ref_) && is.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator>> (ACE_InputCDR &is, ACE_InputCDR::to_wchar x)
-{
- return is.read_wchar (x.ref_) && is.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator>> (ACE_InputCDR &is, ACE_InputCDR::to_octet x)
-{
- return is.read_octet (x.ref_) && is.good_bit ();
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator>> (ACE_InputCDR &is, ACE_InputCDR::to_string x)
-{
- // check if the bounds are satisfied
- return
- (is.read_string (const_cast<char *&> (x.val_))
- && is.good_bit ()
- && (!x.bound_
- || ACE_OS::strlen (x.val_) <= x.bound_));
-}
-
-ACE_INLINE ACE_CDR::Boolean
-operator>> (ACE_InputCDR &is, ACE_InputCDR::to_wstring x)
-{
- // check if the bounds are satisfied
- return
- (is.read_wstring (const_cast<ACE_CDR::WChar *&> (x.val_))
- && is.good_bit ()
- && (!x.bound_
- || ACE_OS::strlen (x.val_) <= x.bound_));
-}
-
-// ***************************************************************************
-// We must define these methods here because they use the "read_*" inlined
-// methods of the ACE_InputCDR class
-// ***************************************************************************
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::append_boolean (ACE_InputCDR &stream)
-{
- ACE_CDR::Boolean x;
- return stream.read_boolean (x) ? this->write_boolean (x) : false;
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::append_char (ACE_InputCDR &stream)
-{
- ACE_CDR::Char x;
- return stream.read_char (x) ? this->write_char (x) : false;
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::append_wchar (ACE_InputCDR &stream)
-{
- ACE_CDR::WChar x;
- return stream.read_wchar (x) ? this->write_wchar (x) : false;
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::append_octet (ACE_InputCDR &stream)
-{
- ACE_CDR::Octet x;
- return stream.read_octet (x) ? this->write_octet (x) : false;
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::append_short (ACE_InputCDR &stream)
-{
- ACE_CDR::Short x;
- return stream.read_short (x) ? this->write_short (x) : false;
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::append_ushort (ACE_InputCDR &stream)
-{
- ACE_CDR::UShort x;
- return stream.read_ushort (x) ? this->write_ushort (x) : false;
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::append_long (ACE_InputCDR &stream)
-{
- ACE_CDR::Long x;
- return stream.read_long (x) ? this->write_long (x) : false;
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::append_ulong (ACE_InputCDR &stream)
-{
- ACE_CDR::ULong x;
- return stream.read_ulong (x) ? this->write_ulong (x) : false;
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::append_longlong (ACE_InputCDR &stream)
-{
- ACE_CDR::LongLong x;
- return stream.read_longlong (x) ? this->write_longlong (x) : false;
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::append_ulonglong (ACE_InputCDR &stream)
-{
- ACE_CDR::ULongLong x;
- return stream.read_ulonglong (x) ? this->write_ulonglong (x) : false;
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::append_float (ACE_InputCDR &stream)
-{
- ACE_CDR::Float x;
- return stream.read_float (x) ? this->write_float (x) : false;
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::append_double (ACE_InputCDR &stream)
-{
- ACE_CDR::Double x;
- return stream.read_double (x) ? this->write_double (x) : false;
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::append_longdouble (ACE_InputCDR &stream)
-{
- ACE_CDR::LongDouble x;
- return stream.read_longdouble (x) ? this->write_longdouble (x) : false;
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::append_string (ACE_InputCDR &stream)
-{
- ACE_CDR::Char *x = 0;
- ACE_CDR::Boolean const flag =
- (stream.read_string (x) ? this->write_string (x) : false);
- delete [] x;
- return flag;
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_OutputCDR::append_wstring (ACE_InputCDR &stream)
-{
- ACE_CDR::WChar *x = 0;
- ACE_CDR::Boolean const flag =
- (stream.read_wstring (x) ? this->write_wstring (x) : false);
- delete [] x;
- return flag;
-}
-
-ACE_INLINE void
-ACE_InputCDR::reset_byte_order (int byte_order)
-{
- this->do_byte_swap_ = (byte_order != ACE_CDR_BYTE_ORDER);
-}
-
-ACE_INLINE bool
-ACE_InputCDR::do_byte_swap (void) const
-{
- return this->do_byte_swap_;
-}
-
-ACE_INLINE int
-ACE_InputCDR::byte_order (void) const
-{
- return this->do_byte_swap () ? !ACE_CDR_BYTE_ORDER : ACE_CDR_BYTE_ORDER;
-}
-
-ACE_INLINE int
-ACE_InputCDR::align_read_ptr (size_t alignment)
-{
-#if !defined (ACE_LACKS_CDR_ALIGNMENT)
- char *buf = ACE_ptr_align_binary (this->rd_ptr (),
- alignment);
-#else
- char *buf = this->rd_ptr ();
-#endif /* ACE_LACKS_CDR_ALIGNMENT */
-
- if (buf <= this->wr_ptr ())
- {
- this->start_.rd_ptr (buf);
- return 0;
- }
-
- this->good_bit_ = false;
- return -1;
-}
-
-ACE_INLINE void
-ACE_InputCDR::set_version (ACE_CDR::Octet major, ACE_CDR::Octet minor)
-{
- this->major_version_ = major;
- this->minor_version_ = minor;
-}
-
-ACE_INLINE void
-ACE_InputCDR::get_version (ACE_CDR::Octet &major, ACE_CDR::Octet &minor)
-{
- major = this->major_version_;
- minor = this->minor_version_;
-}
-
-ACE_INLINE ACE_Char_Codeset_Translator *
-ACE_InputCDR::char_translator (void) const
-{
- return this->char_translator_;
-}
-
-ACE_INLINE ACE_WChar_Codeset_Translator *
-ACE_InputCDR::wchar_translator (void) const
-{
- return this->wchar_translator_;
-}
-
-ACE_INLINE void
-ACE_InputCDR::char_translator (ACE_Char_Codeset_Translator * ctran)
-{
- this->char_translator_ = ctran;
-}
-
-ACE_INLINE void
-ACE_InputCDR::wchar_translator (ACE_WChar_Codeset_Translator * wctran)
-{
- this->wchar_translator_ = wctran;
-}
-
-// ****************************************************************
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_Char_Codeset_Translator::read_1 (ACE_InputCDR& input,
- ACE_CDR::Octet *x)
-{
- return input.read_1 (x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_Char_Codeset_Translator::write_1 (ACE_OutputCDR& output,
- const ACE_CDR::Octet *x)
-{
- return output.write_1 (x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_Char_Codeset_Translator::read_array (ACE_InputCDR& in,
- void* x,
- size_t size,
- size_t align,
- ACE_CDR::ULong length)
-{
- return in.read_array (x, size, align, length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_Char_Codeset_Translator::write_array (ACE_OutputCDR& out,
- const void *x,
- size_t size,
- size_t align,
- ACE_CDR::ULong length)
-{
- return out.write_array(x, size, align, length);
-}
-
-ACE_INLINE int
-ACE_Char_Codeset_Translator::adjust (ACE_OutputCDR& out,
- size_t size,
- size_t align,
- char *&buf)
-{
- return out.adjust(size, align, buf);
-}
-
-ACE_INLINE void
-ACE_Char_Codeset_Translator::good_bit (ACE_OutputCDR& out, bool bit)
-{
- out.good_bit_ = bit;
-}
-
-ACE_INLINE ACE_CDR::Octet
-ACE_Char_Codeset_Translator::major_version (ACE_InputCDR& input)
-{
- return input.major_version_;
-}
-
-ACE_INLINE ACE_CDR::Octet
-ACE_Char_Codeset_Translator::minor_version (ACE_InputCDR& input)
-{
- return input.minor_version_;
-}
-
-ACE_INLINE ACE_CDR::Octet
-ACE_Char_Codeset_Translator::major_version (ACE_OutputCDR& output)
-{
- return output.major_version_;
-}
-
-ACE_INLINE ACE_CDR::Octet
-ACE_Char_Codeset_Translator::minor_version (ACE_OutputCDR& output)
-{
- return output.minor_version_;
-}
-
-// ****************************************************************
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_WChar_Codeset_Translator::read_1 (ACE_InputCDR& input,
- ACE_CDR::Octet *x)
-{
- return input.read_1 (x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_WChar_Codeset_Translator::read_2 (ACE_InputCDR& input,
- ACE_CDR::UShort *x)
-{
- return input.read_2 (x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_WChar_Codeset_Translator::read_4 (ACE_InputCDR& input,
- ACE_CDR::ULong *x)
-{
- return input.read_4 (x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_WChar_Codeset_Translator::write_1 (ACE_OutputCDR& output,
- const ACE_CDR::Octet *x)
-{
- return output.write_1 (x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_WChar_Codeset_Translator::write_2 (ACE_OutputCDR& output,
- const ACE_CDR::UShort *x)
-{
- return output.write_2 (x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_WChar_Codeset_Translator::write_4 (ACE_OutputCDR& output,
- const ACE_CDR::ULong *x)
-{
- return output.write_4 (x);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_WChar_Codeset_Translator::read_array (ACE_InputCDR& in,
- void* x,
- size_t size,
- size_t align,
- ACE_CDR::ULong length)
-{
- return in.read_array (x, size, align, length);
-}
-
-ACE_INLINE ACE_CDR::Boolean
-ACE_WChar_Codeset_Translator::write_array (ACE_OutputCDR& out,
- const void *x,
- size_t size,
- size_t align,
- ACE_CDR::ULong length)
-{
- return out.write_array(x, size, align, length);
-}
-
-ACE_INLINE int
-ACE_WChar_Codeset_Translator::adjust (ACE_OutputCDR& out,
- size_t size,
- size_t align,
- char *&buf)
-{
- return out.adjust(size, align, buf);
-}
-
-ACE_INLINE void
-ACE_WChar_Codeset_Translator::good_bit (ACE_OutputCDR& out, bool bit)
-{
- out.good_bit_ = bit;
-}
-
-ACE_INLINE ACE_CDR::Octet
-ACE_WChar_Codeset_Translator::major_version (ACE_InputCDR& input)
-{
- return input.major_version_;
-}
-
-ACE_INLINE ACE_CDR::Octet
-ACE_WChar_Codeset_Translator::minor_version (ACE_InputCDR& input)
-{
- return input.minor_version_;
-}
-
-ACE_INLINE ACE_CDR::Octet
-ACE_WChar_Codeset_Translator::major_version (ACE_OutputCDR& output)
-{
- return output.major_version_;
-}
-
-ACE_INLINE ACE_CDR::Octet
-ACE_WChar_Codeset_Translator::minor_version (ACE_OutputCDR& output)
-{
- return output.minor_version_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/CE_Screen_Output.h b/dep/include/ace/CE_Screen_Output.h
deleted file mode 100644
index e4a3e3d92b0..00000000000
--- a/dep/include/ace/CE_Screen_Output.h
+++ /dev/null
@@ -1,110 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file CE_Screen_Output.h
- *
- * $Id: CE_Screen_Output.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Si Mong Park <spark@ociweb.com>
- */
-//=============================================================================
-
-#ifndef ACE_CE_SCREEN_OUTPUT_H
-#define ACE_CE_SCREEN_OUTPUT_H
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_WINCE)
-
-#include "ace/Log_Msg_Callback.h"
-#include "ace/Log_Record.h"
-
-namespace
-{
- const ACE_TCHAR endl[] = ACE_TEXT("\r\n");
- const ACE_TCHAR tab[] = ACE_TEXT("\t");
-}
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_CE_Screen_Output
- *
- * @brief Replacement of text output for Windows CE.
- *
- * This class allows standard text output to be displayed on
- * text window for Windows CE. Generally, all ACE output will
- * go through under CE if and only if user uses WindozeCE
- * implementation by using main_ce instead of main.
- * Also, for the easier debugging purpose, object pointer of
- * this class can be gotten from ACE_Log_Msg::msg_callback()
- * and then can be used directly by user just like cout stream.
- */
-class ACE_Export ACE_CE_Screen_Output : public ACE_Log_Msg_Callback
-{
-public:
-
- ACE_CE_Screen_Output (HWND hEdit);
-
- ACE_CE_Screen_Output (void);
-
- virtual ~ACE_CE_Screen_Output();
-
- /// Implementation of pure virtual function from ACE_Log_Msg_Callback.
- virtual void log (ACE_Log_Record &log_record);
-
- /// Interface to specify active window handle.
- void SetOutputWindow (HWND hWnd);
-
- void clear (void);
-
- /// Stream insertion operator that performs actual print out.
- /**
- * @note This is the only one operator that performs output. All
- * other perators convert the type and use this operator
- * underneath.
- */
- ACE_CE_Screen_Output& operator << (ACE_TCHAR*);
- ACE_CE_Screen_Output& operator << (const ACE_TCHAR*);
-
- ACE_CE_Screen_Output& operator << (ACE_ANTI_TCHAR* output);
- ACE_CE_Screen_Output& operator << (const ACE_ANTI_TCHAR* output);
-
- ACE_CE_Screen_Output& operator << (char output);
- ACE_CE_Screen_Output& operator << (unsigned char output);
-
- ACE_CE_Screen_Output& operator << (unsigned short output);
-
- ACE_CE_Screen_Output& operator << (int output);
- ACE_CE_Screen_Output& operator << (unsigned int output);
-
- ACE_CE_Screen_Output& operator << (float output);
-
- ACE_CE_Screen_Output& operator << (long output);
- ACE_CE_Screen_Output& operator << (unsigned long output);
-
- ACE_CE_Screen_Output& operator << (FILE* pFile);
-
-private:
-
- ACE_CE_Screen_Output (ACE_CE_Screen_Output&);
-
-private:
-
- HWND handler_;
-
- /// FILE pointer that used to save output to file. This class does
- /// not own the file handler pointer.
- FILE* pFile_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif // ACE_HAS_WINCE
-#endif // ACE_CE_SCREEN_OUTPUT_H
-
diff --git a/dep/include/ace/CORBA_macros.h b/dep/include/ace/CORBA_macros.h
deleted file mode 100644
index 7284e9ae8e3..00000000000
--- a/dep/include/ace/CORBA_macros.h
+++ /dev/null
@@ -1,575 +0,0 @@
-// -*- C++ -*-
-
-// ============================================================================
-/**
- * @file CORBA_macros.h
- *
- * $Id: CORBA_macros.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Writing code that is portable between platforms with or without
- * native C++ exceptions is hard. The following macros offer some
- * help on this task, mostly oriented to making the ORB code and the
- * IDL generated code portable.
- *
- * @author Nanbor Wang <nanbor@cs.wustl.edu>
- * @author Aniruddha Gokhale <gokhale@sahyadri.research.bell-labs.com>
- * @author Carlos O'Ryan <coryan@uci.edu>, et al.
- */
-// ============================================================================
-
-// Macros for handling CORBA exceptions.
-
-#ifndef ACE_CORBA_MACROS_H
-#define ACE_CORBA_MACROS_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#define ACE_ENV_POLLUTE_NAMES
-
-#include "ace/Exception_Macros.h"
-
-// The Windows MFC exception mechanism requires that a caught CException
-// (including the CMemoryException in use here) be freed using its Delete()
-// method. Thus, when MFC is in use and we're catching exceptions as a result
-// of new(), the exception's Delete() method has to be called. No other
-// platform imposes this sort of restriction/requirement. The Windows
-// config stuff (at least for MSVC/MFC) defines a ACE_del_bad_alloc macro
-// that works with its ACE_bad_alloc macro to implement this cleanup
-// requirement. Since no other platform requires this, define it as
-// empty here.
-#if !defined (ACE_del_bad_alloc)
-# define ACE_del_bad_alloc
-#endif
-
-#if !defined (ACE_LACKS_DEPRECATED_MACROS)
-
-// If you wish to you use these macros for emulating exceptions on
-// platforms which lack native exception support, you need to do the
-// following:
-// 1. Define a class Exception. You can name it as you please. This class
-// should be at the root of the inheritance hierarchy of all the
-// exceptions used in your application. It should define at a minimum
-// the following pure virtual methods:
-// a) _downcast () - Which allows narrowing of the base exception type to a
-// derived type.
-// b) _raise() - Which throws an exception of type Exception.
-//
-// Classes which derive from these should implement these operations.
-//
-// 2. Define a class Environment. You can name it as you please. This class
-// is an exception holder. This class is always on the stack. It should
-// support at a minimum the following methods:
-// a) exception() - Which returns the Exception held in the current
-// Environment.
-// b) exception (Exception* foo) - Which replaces/sets the Exception
-// held in the current Environment with foo.
-// b) clear() - Which resets a particular instance of Environment.
-// c) A copy constructor and an assignment operator.
-//
-// Note that the above description assumes that you use the following
-// macros only within a particular domain. For example, if your
-// application has to interoperate across domains, then you need to define
-// an exception adapter to translate exceptions from one domain to
-// exceptions in the other. Please refer to Stroustrup's book on how to do
-// this. If your use case is this complex, you would be better off with
-// going with native exceptions rather than emulated exceptions, though
-// the macros should still work if you defined your adapter class as
-// ACE_EXCEPTION_TYPE.
-
-// The following macros assume that an environment variable is passed
-// in/out of each function that can throw an exception. The type of the
-// environment variable is defined by ACE_ENV_TYPE.
-
-#if !defined (ACE_ENV_TYPE)
-# define ACE_ENV_TYPE CORBA::Environment
-#endif /* ACE_ENV_TYPE */
-
-// The name of the variable is defined by ACE_TRY_ENV. Below is the name
-// that we use by default. If you wish to change it you can redefine
-// ACE_TRY_ENV to change the default name. Also ACE_ADOPT_ENV allows the
-// use of non-standard name within a scope.
-
-#if !defined (ACE_TRY_ENV)
-# define ACE_TRY_ENV _ACE_CORBA_Environment_variable
-#endif /* ACE_TRY_ENV */
-
-// The base type of Exception from which all the other exception types are
-// derived. You can set this to any type as you please. By default, it is
-// set to CORBA::Exception.
-
-#if !defined (ACE_EXCEPTION_TYPE)
-# define ACE_EXCEPTION_TYPE CORBA::Exception
-#endif /* ACE_EXCEPTION_TYPE */
-
-// This method is used to get the default value of the Environment
-// variable. In the case of TAO, this variable is part of the TSS ORB
-// resources and the method TAO_default_environment() returns the
-// Environment variable.
-
-#if !defined (ACE_DEFAULT_GET_ENV_METHOD)
-# define ACE_DEFAULT_GET_ENV_METHOD TAO_default_environment
-#endif /* ACE_DEFAULT_GET_ENV_METHOD */
-
-// This is the exception caught by ACE_CATCHANY.
-#if !defined (ACE_ANY_EXCEPTION)
-# define ACE_ANY_EXCEPTION ex
-#endif /* ACE_ANY_EXCEPTION */
-
-// Declare a new environment variable on the stack. The type of the
-// environment variable is determined by ACE_ENV_TYPE.
-#if defined (ACE_USES_NATIVE_EXCEPTIONS)
-// Don't instantiate an emulated exception environment at all when
-// using native C++ exception support. It won't be used.
-# define ACE_DECLARE_NEW_ENV
-#else
-# define ACE_DECLARE_NEW_ENV \
- ACE_ENV_TYPE ACE_TRY_ENV
-#endif /* ACE_USES_NATIVE_EXCEPTIONS */
-
-// Provided for backward compatibility purposes. Don't use it in new code.
-// Use the definition above along with defining ACE_ENV_TYPE.
-
-#if defined (ACE_ENV_POLLUTE_NAMES)
-# define ACE_DECLARE_NEW_CORBA_ENV ACE_DECLARE_NEW_ENV
-#endif /* ACE_ENV_POLLUTE_NAMES */
-
-#if defined (ACE_USES_NATIVE_EXCEPTIONS)
-// -----------------------------------------------------------------
-
-// Provided for backward compatibility purposes. Don't use it in new code.
-#if defined (ACE_ENV_POLLUTE_NAMES)
-# define ACE_ADOPT_CORBA_ENV(ENV)
-#endif /* ACE_ENV_POLLUTE_NAMES */
-
-#define ACE_ADOPT_ENV (ENV)
-
-// No need to check. Native exceptions handle the control flow
-// automatically when an exception occurs.
-# define ACE_CHECK
-
-// Used when the function requires a return value.
-# define ACE_CHECK_RETURN(RETV)
-
-// ACE_THROW_INT should not be used by the user.
-# define ACE_THROW_INT(EXCEPTION) \
- throw EXCEPTION
-
-// Throwing an exception is easy. These two macros should _NOT_ be
-// used within try blocks.
-# define ACE_THROW(EXCEPTION) \
- throw EXCEPTION
-
-// Throwing an exception when the function requires a return value.
-# define ACE_THROW_RETURN(EXCEPTION,RETV) \
- throw EXCEPTION
-
-// For compilers with native exceptions, we can simply use try to try. ;-)
-// do {} while (0) is required to avoid compilation warnings.
-# define ACE_TRY \
- do \
- { \
- try \
- {
-# define ACE_TRY_NEW_ENV \
- do \
- { \
- try \
- {
-# define ACE_TRY_EX(LABEL) \
- do \
- { \
- try \
- {
-
-// No need to check for exceptions within try block for compilers with
-// native exceptions.
-# define ACE_TRY_CHECK
-# define ACE_TRY_CHECK_EX(LABEL)
-
-// Likewise, throwing exceptions within try blocks is easy.
-# define ACE_TRY_THROW(EXCEPTION) throw EXCEPTION
-# define ACE_TRY_THROW_EX(EXCEPTION,LABEL) throw EXCEPTION
-
-// Same thing for catch.
-# define ACE_CATCH(EXCEPTION,VAR) \
- } \
- catch (EXCEPTION & VAR) \
- { \
- ACE_UNUSED_ARG (VAR);
-
-# define ACE_CATCHANY \
- ACE_CATCH(ACE_EXCEPTION_TYPE, ACE_ANY_EXCEPTION)
-
-# define ACE_CATCHALL \
- } \
- catch (...) \
- {
-
-# if defined (ACE_HAS_DEPRECATED_ACE_RETHROW)
-# define ACE_RETHROW throw
-# endif /* ACE_HAS_DEPRECATED_ACE_RETHROW */
-
-// Rethrowing the exception from catch blocks.
-# define ACE_RE_THROW throw
-# define ACE_RE_THROW_EX(LABEL) throw
-
-// Close the catch block.
-# define ACE_ENDTRY \
- } \
- } while (0)
-
-#else /* ! ACE_USES_NATIVE_EXCEPTIONS */
-// -----------------------------------------------------------------
-
-// When handling compilers without native exceptions, things get a bit
-// hairy. Exceptions are simulated using ACE_ENV_TYPE. The trick here is to
-// make sure the flow-of-control can simulate the case when native
-// exceptions occur...
-
-#if defined (ACE_ENV_POLLUTE_NAMES)
-# define ACE_ADOPT_CORBA_ENV(ENV) ACE_ENV_TYPE &ACE_TRY_ENV = ENV
-#endif /* ACE_ENV_POLLUTE_NAMES */
-
-# define ACE_ADOPT_ENV(ENV) ACE_ENV_TYPE &ACE_TRY_ENV = ENV
-
-// Follow every statement that could throw exceptions with ACE_CHECK or
-// ACE_CHECK_RETURN. These two macros should _NOT_ be used within try
-// blocks. Use ACE_TRY_CHECK or ACE_TRY_CHECK_EX instead.
-# define ACE_CHECK \
- if (ACE_TRY_ENV . exception () != 0) \
- return
-// When function requires a return value
-# define ACE_CHECK_RETURN(RETV) \
- if (ACE_TRY_ENV . exception () != 0) \
- return RETV
-
-// ACE_THROW_INT should not be used by the user.
-# define ACE_THROW_INT(EXCEPTION) ACE_TRY_ENV.exception (new EXCEPTION)
-
-// Throwing exceptions will inevitably cause a return from the current
-// function. These two macros should _NOT_ be used within try blocks. Use
-// ACE_TRY_THROW or ACE_TRY_THROW_EX instead.
-# define ACE_THROW(EXCEPTION) \
- do \
- { \
- ACE_TRY_ENV.exception (new EXCEPTION); \
- return; \
- } while (0)
-
-# define ACE_THROW_RETURN(EXCEPTION,RETV) \
- do \
- { \
- ACE_TRY_ENV.exception (new EXCEPTION); \
- return RETV; \
- } while (0)
-
-// ACE_TRY sets up flags to control program flow. ACE_TRY_FLAG acts like a
-// one-shot flip-flop. When an exception occurs (detected using
-// ACE_TRY_CHECK,) ACE_TRY_FLAG will be reset and the control goes back
-// into ACE_TRY_LABEL. Since ACE_TRY_FLAG is reset, the try block won't get
-// executed again and the control proceeds to the following catch blocks.
-// ACE_EXCEPTION_NOT_CAUGHT flag is used to prevent catching an exception
-// twice. This macro assumes there's already an ACE_ENV_TYPE variable
-// ACE_TRY_ENV defined (which should be the case normally)
-# define ACE_TRY \
- do { \
- int ACE_TRY_FLAG = 1; \
- int ACE_EXCEPTION_NOT_CAUGHT = 1; \
- ACE_TRY_LABEL: \
- if (ACE_TRY_FLAG) \
- do {
-
-// ACE_TRY_NEW_ENV functions like the macro ACE_TRY but defines a new
-// ACE_ENV_TYPE variable ACE_TRY_ENV. It is most often used in the outer
-// most function where no ACE_TRY_ENV is available.
-# define ACE_TRY_NEW_ENV \
- do { \
- ACE_DECLARE_NEW_ENV;\
- int ACE_TRY_FLAG = 1; \
- int ACE_EXCEPTION_NOT_CAUGHT = 1; \
- ACE_TRY_LABEL: \
- if (ACE_TRY_FLAG) \
- do {
-
-// ACE_TRY_EX works exactly like ACE_TRY macro except the label used in the
-// try block is customizable to avoid name clashing. It should be used when
-// nested try blocks or multiple try blocks are required, in the same
-// function.
-# define ACE_TRY_EX(LABEL) \
- do { \
- int ACE_TRY_FLAG = 1; \
- int ACE_EXCEPTION_NOT_CAUGHT = 1; \
- ACE_TRY_LABEL ## LABEL: \
- if (ACE_TRY_FLAG) \
- do {
-
-// Check for exceptions within try blocks.
-# define ACE_TRY_CHECK \
- { \
- if (ACE_TRY_ENV.exception () != 0) \
- { \
- ACE_TRY_FLAG = 0; \
- goto ACE_TRY_LABEL; \
- } \
- }
-
-// Checking exception within EX try blocks.
-# define ACE_TRY_CHECK_EX(LABEL) \
- { \
- if (ACE_TRY_ENV.exception () != 0) \
- { \
- ACE_TRY_FLAG = 0; \
- goto ACE_TRY_LABEL ## LABEL; \
- } \
- }
-
-// Throwing exception within TRY blocks.
-# define ACE_TRY_THROW(EXCEPTION) \
- { \
- ACE_TRY_ENV.exception (new EXCEPTION); \
- ACE_TRY_FLAG = 0; \
- goto ACE_TRY_LABEL; \
- }
-
-# define ACE_TRY_THROW_EX(EXCEPTION,LABEL) \
- { \
- ACE_TRY_ENV.exception (new EXCEPTION); \
- ACE_TRY_FLAG = 0; \
- goto ACE_TRY_LABEL ## LABEL; \
- }
-
-// When exceptions occur or try block finishes execution without exception,
-// control will continue in the catch block. This macro first checks if
-// there's any uncaught exception left. If all the conditions are met, we
-// have caught an exception. It then resets ACE_EXCEPTION_NOT_CAUGHT to
-// prevent subsequent catch blocks from catching the same exception again,
-// and extracts out the underlying exception in ACE_TRY_ENV. We also make a
-// copy of ACE_TRY_ENV in ACE_CAUGHT_ENV, in case we want to rethrow the
-// exception. ACE_TRY_ENV is cleared out after the exception is caught so
-// you should not use ACE_TRY_ENV within the catch block(You should use the
-// exception directly).
-# define ACE_CATCH(TYPE,VAR) \
- } while (0); \
- do \
- if (ACE_TRY_ENV.exception () != 0 && ACE_EXCEPTION_NOT_CAUGHT && \
- TYPE::_downcast(ACE_TRY_ENV.exception ()) != 0) \
- { \
- ACE_ENV_TYPE ACE_CAUGHT_ENV = ACE_TRY_ENV;\
- ACE_EXCEPTION_NOT_CAUGHT = 0; \
- TYPE &VAR = *TYPE::_downcast (ACE_CAUGHT_ENV.exception ()); \
- ACE_UNUSED_ARG (VAR); \
- ACE_TRY_ENV.clear ();
-
-// ACE_CATCHANY uses ACE_CATCH to catch all exceptions derived from
-// ACE_EXCEPTION_TYPE
-# define ACE_CATCHANY ACE_CATCH (ACE_EXCEPTION_TYPE, ACE_ANY_EXCEPTION)
-
-// Since there's no other exception for compilers without exception
-// support, we simply catch all ACE_EXCEPTION_TYPE exceptions for
-// ACE_CATCHALL.
-# define ACE_CATCHALL ACE_CATCHANY
-
-# if defined (ACE_HAS_DEPRECATED_ACE_RETHROW)
-# define ACE_RETHROW \
- do \
- ACE_TRY_ENV = ACE_CAUGHT_ENV; \
- while (0)
-# endif /* ACE_HAS_DEPRECATED_ACE_RETHROW */
-
-// Rethrowing exception within catch blocks. Notice that we depend on the
-// ACE_CHECK/ACE_CHECK_RETURN following the ACE_ENDTRY, or ACE_TRY_CHECK/
-// ACE_TRY_CHECK_EX following the ACE_ENDTRY when the catch block is within
-// another try block, to do the "Right Thing[TM]."
-# define ACE_RE_THROW \
- do {\
- ACE_TRY_ENV = ACE_CAUGHT_ENV; \
- goto ACE_TRY_LABEL; \
- } while (0)
-# define ACE_RE_THROW_EX(LABEL) \
- do {\
- ACE_TRY_ENV = ACE_CAUGHT_ENV; \
- goto ACE_TRY_LABEL ## LABEL; \
- } while (0)
-
-// Close the try block. Since exceptions may not get caught, and exceptions
-// can also be rethrown from the catch block, it's always a good idea to
-// follow ACE_ENDTRY with ACE_CHECK or ACE_TRY_CHECK (depending on the
-// context.)
-# define ACE_ENDTRY \
- } while (0); \
- } while (0)
-
-#endif /* ! ACE_USES_NATIVE_EXCEPTIONS */
-
-#endif /* !ACE_LACKS_DEPRECATED_MACROS */
-
-// ACE_HAS_EXCEPTIONS is not the same as ACE_NEW_THROWS_EXCEPTIONS.
-#if defined(ACE_NEW_THROWS_EXCEPTIONS)
-
-# if defined (ACE_HAS_NEW_NOTHROW)
-
-# define ACE_NEW_THROW_EX(POINTER,CONSTRUCTOR,EXCEPTION) \
- do { POINTER = new (ACE_nothrow) CONSTRUCTOR; \
- if (POINTER == 0) { throw EXCEPTION; } \
- } while (0)
-
-# else
-
-# define ACE_NEW_THROW_EX(POINTER,CONSTRUCTOR,EXCEPTION) \
- do { try { POINTER = new CONSTRUCTOR; } \
- catch (ACE_bad_alloc) { ACE_del_bad_alloc throw EXCEPTION; } \
- } while (0)
-
-# endif /* ACE_HAS_NEW_NOTHROW */
-
-#else /* ! ACE_NEW_THROWS_EXCEPTIONS */
-
-# define ACE_NEW_THROW_EX(POINTER,CONSTRUCTOR,EXCEPTION) \
- do { POINTER = new CONSTRUCTOR; \
- if (POINTER == 0) { throw EXCEPTION; } \
- } while (0)
-
-#endif /* ACE_NEW_THROWS_EXCEPTIONS */
-
-# define ACE_GUARD_THROW_EX(MUTEX,OBJ,LOCK,EXCEPTION) \
- ACE_Guard< MUTEX > OBJ (LOCK); \
- if (OBJ.locked () == 0) throw EXCEPTION;
-
-# define ACE_READ_GUARD_THROW_EX(MUTEX,OBJ,LOCK,EXCEPTION) \
- ACE_Read_Guard< MUTEX > OBJ (LOCK); \
- if (OBJ.locked () == 0) throw EXCEPTION;
-
-# define ACE_WRITE_GUARD_THROW_EX(MUTEX,OBJ,LOCK,EXCEPTION) \
- ACE_Write_Guard< MUTEX > OBJ (LOCK); \
- if (OBJ.locked () == 0) throw EXCEPTION;
-
-#if !defined (ACE_LACKS_DEPRECATED_MACROS)
-
-//@{
-/**
- * @name Native C++ exceptions portability macros.
- *
- * The following macros are used to write code portable between platforms
- * with and without native C++ exception support. Their main goal is to
- * hide the presence of the ACE_ENV_TYPE argument, but they collaborate
- * with the ACE_TRY_* macros to emulate the try/catch blocks.
- */
-
-/// Define a macro to emit code only when ACE_ENV_TYPE is used
-#if !defined (ACE_USES_NATIVE_EXCEPTIONS) || defined (ACE_ENV_BKWD_COMPAT)
-# define ACE_ENV_EMIT_CODE(X) X
-#else
-# define ACE_ENV_EMIT_CODE(X)
-#endif /* ACE_USES_NATIVE_EXCEPTIONS && ! ACE_ENV_BKWD_COMPAT */
-
-/// Another macro to emit code only when ACE_ENV_TYPE is used
-#if !defined (ACE_USES_NATIVE_EXCEPTIONS) || defined (ACE_ENV_BKWD_COMPAT)
-# define ACE_ENV_EMIT_CODE2(X,Y) X,Y
-#else
-# define ACE_ENV_EMIT_CODE2(X,Y)
-#endif /* ACE_USES_NATIVE_EXCEPTIONS && ! ACE_ENV_BKWD_COMPAT */
-
-/// Helper macro
-#define ACE_ENV_EMIT_DUMMY
-
-/// Declare a ACE_ENV_TYPE argument as the last argument of a
-/// function
-/**
- * Normally this macro is used as follows:
- *
- * <CODE>void my_funct (int x, int y ACE_ENV_ARG_DECL);</CODE>
- *
- * Its purpose is to provide developers (and users) with a mechanism to
- * write code that is portable to platforms with and without native C++
- * exceptions.
- */
-#define ACE_ENV_ARG_DECL \
- ACE_ENV_EMIT_CODE2(ACE_ENV_EMIT_DUMMY, \
- ACE_ENV_TYPE &ACE_TRY_ENV)
-
-/// Declare a ACE_ENV_TYPE argument with the default value obtained from
-/// the ORB/application.
-/**
- * It is similar to ACE_ENV_ARG_DECL. The name of the default environment
- * getter method needs to be changed when switching ORBs or when used with
- * another application.
- */
-#define ACE_ENV_ARG_DECL_WITH_DEFAULTS \
- ACE_ENV_EMIT_CODE2(ACE_ENV_EMIT_DUMMY, \
- ACE_ENV_TYPE &ACE_TRY_ENV = \
- ACE_DEFAULT_GET_ENV_METHOD ())
-
-/// Declare a ACE_ENV_TYPE argument that is not used by the
-/// function definition.
-/**
- * Similar to ACE_ENV_ARG_DECL, but the formal parameter name is dropped to
- * avoid warnings about unused parameters
- */
-#define ACE_ENV_ARG_DECL_NOT_USED \
- ACE_ENV_EMIT_CODE2(ACE_ENV_EMIT_DUMMY, \
- ACE_ENV_TYPE &)
-
-/// Declare a ACE_ENV_TYPE argument for methods that do not take any other
-/// parameters
-#define ACE_ENV_SINGLE_ARG_DECL \
- ACE_ENV_EMIT_CODE(ACE_ENV_TYPE &ACE_TRY_ENV)
-
-/// Declare a ACE_ENV_TYPE argument with a default value for methods that
-/// do not take any other parameters. The name of the default environment
-/// getter method needs to be changed when switching ORBs or when used in
-/// another application.
-#define ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS \
- ACE_ENV_EMIT_CODE(ACE_ENV_TYPE &ACE_TRY_ENV = \
- ACE_DEFAULT_GET_ENV_METHOD ())
-
-/// Declare a ACE_ENV_TYPE argument for methods which don't use it.
-#define ACE_ENV_SINGLE_ARG_DECL_NOT_USED \
- ACE_ENV_EMIT_CODE(ACE_ENV_TYPE &)
-
-/// Use the ACE_ENV_TYPE argument in a nested call
-#define ACE_ENV_ARG_PARAMETER \
- ACE_ENV_EMIT_CODE2(ACE_ENV_EMIT_DUMMY, \
- ACE_TRY_ENV)
-
-/// Use the ACE_ENV_TYPE argument in a nested call, assuming that the
-/// called function takes only the ACE_TRY_ENV argument.
-#define ACE_ENV_SINGLE_ARG_PARAMETER \
- ACE_ENV_EMIT_CODE(ACE_TRY_ENV)
-
-/// Eliminate unused argument warnings about ACE_TRY_ENV
-#define ACE_ENV_ARG_NOT_USED \
- ACE_ENV_EMIT_CODE(ACE_UNUSED_ARG(ACE_TRY_ENV))
-//@}
-
-#if !defined (ACE_USES_NATIVE_EXCEPTIONS)
-// This thing can be moved above when we drop ACE_ENV_BKWD_COMPAT.
-# define ACE_ENV_RAISE(ex) ACE_TRY_ENV.exception (ex)
-#else
-# define ACE_ENV_RAISE(ex) (ex)->_raise ()
-#endif /* ACE_USES_NATIVE_EXCEPTIONS */
-
-// ============================================================
-
-// Print out a TAO exception. This is not CORBA compliant.
-# define ACE_PRINT_TAO_EXCEPTION(EX,INFO) \
- EX._tao_print_exception (INFO)
-
-// Print out a CORBA exception. There is not portable way to
-// dump a CORBA exception. If you are using other ORB implementation,
-// redefine the macro to get what you want.
-# if !defined ACE_PRINT_EXCEPTION
-# define ACE_PRINT_EXCEPTION(EX,INFO) ACE_PRINT_TAO_EXCEPTION(EX,INFO)
-# endif /* ACE_PRINT_EXCEPTION */
-
-#endif /* !ACE_LACKS_DEPRECATED_MACROS */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CORBA_MACROS_H */
-
diff --git a/dep/include/ace/Cache_Map_Manager_T.h b/dep/include/ace/Cache_Map_Manager_T.h
deleted file mode 100644
index 1476597ab54..00000000000
--- a/dep/include/ace/Cache_Map_Manager_T.h
+++ /dev/null
@@ -1,406 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Cache_Map_Manager_T.h
- *
- * $Id: Cache_Map_Manager_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Kirthika Parameswaran <kirthika@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_CACHE_MAP_MANAGER_T_H
-#define ACE_CACHE_MAP_MANAGER_T_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Default_Constants.h"
-#include "ace/Global_Macros.h"
-#include "ace/Pair_T.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declaration.
-class ACE_Allocator;
-
-#define ACE_Cache_Map_Iterator ACMI
-#define ACE_Cache_Map_Reverse_Iterator ACMRI
-
-template <class KEY, class VALUE, class IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES>
-class ACE_Cache_Map_Iterator;
-
-template <class KEY, class VALUE, class REVERSE_IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES>
-class ACE_Cache_Map_Reverse_Iterator;
-
-// For linkers that cant grok long names.
-#define ACE_Cache_Map_Manager ACMM
-
-/**
- * @class ACE_Cache_Map_Manager
- *
- * @brief Defines a abstraction that will purge entries from a map.
- *
- * The <ACE_Cache_Map_Manager> will manage the map it contains
- * and provide purging on demand from the map. The strategy for
- * caching is decided by the user and provided to the Cache
- * Manager. The Cache Manager acts as a agent and communicates
- * between the Map and the Strategy for purging entries from the
- * map.
- * No locking mechanism provided since locking at this level
- * isn't efficient. Locking has to be provided by the
- * application.
- */
-template <class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES>
-class ACE_Cache_Map_Manager
-{
-public:
-
- // = Traits.
- typedef KEY key_type;
- typedef VALUE mapped_type;
- typedef CMAP_TYPE map_type;
- typedef CACHING_STRATEGY caching_strategy_type;
-
- typedef ITERATOR_IMPL ITERATOR_IMPLEMENTATION;
- typedef REVERSE_ITERATOR_IMPL REVERSE_ITERATOR_IMPLEMENTATION;
-
- friend class ACE_Cache_Map_Iterator<KEY, VALUE, ITERATOR_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>;
- friend class ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_ITERATOR_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>;
-
- // = ACE-style iterator typedefs.
- typedef ACE_Cache_Map_Iterator<KEY, VALUE, ITERATOR_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>
- ITERATOR;
- typedef ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_ITERATOR_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>
- REVERSE_ITERATOR;
-
- // = STL-style iterator typedefs.
- typedef ITERATOR
- iterator;
- typedef REVERSE_ITERATOR
- reverse_iterator;
-
- /**
- * The actual value mapped to the key in the map. The <attributes>
- * are used by the strategy and is transparent to the user of this
- * class.
- */
- typedef ACE_Pair<VALUE, ATTRIBUTES> CACHE_VALUE;
-
- // = Initialization and termination methods.
-
- /// Initialize a <Cache_Map_Manager> with <caching_strategy> and
- /// @a size entries.
- ACE_Cache_Map_Manager (CACHING_STRATEGY &caching_strategy,
- size_t size = ACE_DEFAULT_MAP_SIZE,
- ACE_Allocator *alloc = 0);
-
- /// Close down a <Cache_Map_Manager> and release dynamically allocated
- /// resources.
- virtual ~ACE_Cache_Map_Manager (void);
-
- /// Initialize a cache with size @a length.
- int open (size_t length = ACE_DEFAULT_MAP_SIZE,
- ACE_Allocator *alloc = 0);
-
- /// Close down a cache and release dynamically allocated resources.
- int close (void);
-
- /**
- * Associate @a key with @a value. If @a key is already in the CMAP_TYPE
- * then the ENTRY is not changed. Returns 0 if a new entry is bound
- * successfully, returns 1 if an attempt is made to bind an existing
- * entry, and returns -1 if failures occur.
- */
- int bind (const KEY &key,
- const VALUE &value);
-
- /**
- * Lookup entry<key,value> in the cache. If it is not found, returns -1.
- * If the @a key is located in the CMAP_TYPE object, the CACHING_STRATEGY is
- * notified of it via notify_find (int result, ATTRIBUTES &attribute).
- * If notify_find also returns 0 (success), then this function returns
- * 0 (success) and sets the cached value in @a value.
- */
- int find (const KEY &key,
- VALUE &value);
-
- /**
- * Lookup entry<key,value> in the cache. If it is not found, returns -1.
- * If the @a key is located in the CMAP_TYPE object, the CACHING_STRATEGY is
- * notified of it via notify_find (int result, ATTRIBUTES &attribute).
- * If notify_find also returns 0 (success), then this function returns
- * 0 (success).
- */
- int find (const KEY &key);
-
- /**
- * Reassociate the @a key with @a value. If the @a key already exists
- * in the cache then returns 1, on a new bind returns 0 and returns
- * -1 in case of any failures.
- */
- int rebind (const KEY &key,
- const VALUE &value);
-
- /**
- * Reassociate @a key with @a value, storing the old value into the
- * "out" parameter @a old_value. The function fails if @a key is not
- * in the cache for caches that do not allow user specified keys.
- * However, for caches that allow user specified keys, if the key is
- * not in the cache, a new @a key / @a value association is created.
- */
- int rebind (const KEY &key,
- const VALUE &value,
- VALUE &old_value);
-
- /**
- * Reassociate @a key with @a value, storing the old key and value
- * into the "out" parameters @a old_key and @a old_value. The
- * function fails if @a key is not in the cache for caches that do
- * not allow user specified keys. However, for caches that allow
- * user specified keys, if the key is not in the cache, a new
- * @a key / @a value association is created.
- */
- int rebind (const KEY &key,
- const VALUE &value,
- KEY &old_key,
- VALUE &old_value);
-
- /**
- * Associate @a key with @a value if and only if @a key is not in the
- * cache. If @a key is already in the cache, then the @a value
- * parameter is overwritten with the existing value in the
- * cache. Returns 0 if a new @a key / @a value association is created.
- * Returns 1 if an attempt is made to bind an existing entry. This
- * function fails for maps that do not allow user specified keys.
- */
- int trybind (const KEY &key,
- VALUE &value);
-
- /// Remove @a key from the cache.
- int unbind (const KEY &key);
-
- /// Remove @a key from the cache, and return the @a value associated with
- /// @a key.
- int unbind (const KEY &key,
- VALUE &value);
-
- /// Remove entries from the cache depending upon the strategy.
- int purge (void);
-
- /// Return the current size of the cache.
- size_t current_size (void) const;
-
- /// Return the total size of the cache.
- size_t total_size (void) const;
-
- /// Dumps the state of the object.
- void dump (void) const;
-
- // = STL styled iterator factory functions.
-
- /// Return forward iterator.
- ITERATOR begin (void);
- ITERATOR end (void);
-
- /// Return reverse iterator.
- REVERSE_ITERATOR rbegin (void);
- REVERSE_ITERATOR rend (void);
-
- /// The map managed by the Cache_Map_Manager.
- CMAP_TYPE &map (void);
-
- /// The caching strategy used on the cache.
- CACHING_STRATEGY &caching_strategy (void);
-
-protected:
-
- /// The underlying map which needs to be cached.
- CMAP_TYPE map_;
-
- /// The strategy to be followed for caching entries in the map.
- CACHING_STRATEGY &caching_strategy_;
-
-private:
-
- // = Disallow these operations.
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Cache_Map_Manager<KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Cache_Map_Manager (const ACE_Cache_Map_Manager<KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES> &))
-
-};
-
-/**
- * @class ACE_Cache_Map_Iterator
- *
- * @brief Defines a iterator for the Cache_Map_Manager.
- *
- * Implementation to be provided by the iterator of the map
- * managed by the ACE_Cache_Map_Manager.
- */
-template <class KEY, class VALUE, class IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES>
-class ACE_Cache_Map_Iterator
-{
-
-public:
-
- // = Traits.
- /// The actual value mapped to the key in the cache. The <attributes>
- /// are used by the strategy and is transperant to the cache user.
- typedef ACE_Reference_Pair<KEY, VALUE>
- value_type;
- typedef ACE_Pair <VALUE, ATTRIBUTES>
- CACHE_VALUE;
-
- // = Initialisation and termination methods.
-
- ACE_Cache_Map_Iterator (const IMPLEMENTATION &iterator_impl);
-
- /// Copy constructor.
- ACE_Cache_Map_Iterator (const ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs);
-
- virtual ~ACE_Cache_Map_Iterator (void);
-
- // = Iteration methods.
-
- /// assignment operator.
- ACE_Cache_Map_Iterator <KEY, VALUE, IMPLEMENTATION,
- CACHING_STRATEGY, ATTRIBUTES> &operator=
- (const ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION,
- CACHING_STRATEGY, ATTRIBUTES> &rhs);
-
- /// Comparision operators.
- bool operator== (const ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs) const;
- bool operator!= (const ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs) const;
-
- /// Returns a reference to the internal element @c this is pointing
- /// to.
- ACE_Reference_Pair<KEY, VALUE> operator* (void) const;
-
- // = STL styled iteration, compare, and reference functions.
-
- /// Prefix advance
- ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &operator++ (void);
-
- /// Postfix advance.
- ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> operator++ (int);
-
- /// Prefix reverse.
- ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &operator-- (void);
-
- /// Postfix reverse.
- ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> operator-- (int);
-
- /// Returns the iterator of the internal map in the custody of the
- /// Cache_Map_Manager.
- IMPLEMENTATION &iterator_implementation (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// The actual iterator which iterates internally on the map
- /// belonging to the Cache_Map_Manager.
- IMPLEMENTATION iterator_implementation_;
-};
-
-/**
- * @class ACE_Cache_Map_Reverse_Iterator
- *
- * @brief Defines a reverse iterator for the Cache_Map_Manager.
- *
- * Implementation to be provided by the reverse iterator of the map
- * managed by thr Cache_Map_manager.
- */
-template <class KEY, class VALUE, class REVERSE_IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES>
-class ACE_Cache_Map_Reverse_Iterator
-{
-public:
-
- // = Traits.
- /// The actual value mapped to the key in the cache. The <attributes>
- /// are used by the strategy and is transperant to the cache user.
- typedef ACE_Reference_Pair<KEY, VALUE> value_type;
- typedef ACE_Pair <VALUE, ATTRIBUTES> CACHE_VALUE;
-
- // = Initialisation and termination methods.
-
- ACE_Cache_Map_Reverse_Iterator (const REVERSE_IMPLEMENTATION &iterator_impl);
-
- /// Copy constructor.
- ACE_Cache_Map_Reverse_Iterator (const ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs);
-
- ~ACE_Cache_Map_Reverse_Iterator (void);
-
- // = Iteration methods.
-
- /// Assignment operator.
- ACE_Cache_Map_Reverse_Iterator <KEY, VALUE, REVERSE_IMPLEMENTATION,
- CACHING_STRATEGY, ATTRIBUTES> &operator=
- (const ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION,
- CACHING_STRATEGY, ATTRIBUTES> &rhs);
-
- /// Comparision operators.
- bool operator== (const ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs) const;
- bool operator!= (const ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs) const;
-
- /// Returns a reference to the internal element @c this is pointing
- /// to.
- ACE_Reference_Pair<KEY, VALUE> operator* (void) const;
-
- // = STL styled iteration, compare, and reference functions.
-
- /// Prefix advance
- ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &operator++ (void);
-
- /// Postfix advance.
- ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> operator++ (int);
-
- /// Prefix reverse.
- ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &operator-- (void);
-
- /// Postfix reverse.
- ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> operator-- (int);
-
- /// Returns the iterator of the internal map in the custody of the
- /// Cache_Map_Manager.
- REVERSE_IMPLEMENTATION &iterator_implementation (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// The actual iterator which iterates internally on the map
- /// belonging to the Cache_Map_Manager.
- REVERSE_IMPLEMENTATION reverse_iterator_implementation_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Cache_Map_Manager_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Cache_Map_Manager_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Cache_Map_Manager_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CACHE_MAP_MANAGER_T_H */
-
diff --git a/dep/include/ace/Cache_Map_Manager_T.inl b/dep/include/ace/Cache_Map_Manager_T.inl
deleted file mode 100644
index 5c5c4eb593e..00000000000
--- a/dep/include/ace/Cache_Map_Manager_T.inl
+++ /dev/null
@@ -1,244 +0,0 @@
-// -*- C++ -*-
-//
-//$Id: Cache_Map_Manager_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE int
-ACE_Cache_Map_Manager<KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES>::purge (void)
-{
- return this->caching_strategy ().caching_utility ().clear_cache (this->map_,
- this->caching_strategy ().purge_percent ());
-}
-
-template <class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE size_t
-ACE_Cache_Map_Manager<KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES>::current_size (void) const
-{
- return this->map_.current_size ();
-}
-
-template <class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE size_t
-ACE_Cache_Map_Manager<KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES>::total_size (void) const
-{
- return this->map_.total_size ();
-}
-
-template <class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE CMAP_TYPE &
-ACE_Cache_Map_Manager<KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES>::map (void)
-{
- return this->map_;
-}
-
-template <class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE CACHING_STRATEGY &
-ACE_Cache_Map_Manager<KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES>::caching_strategy (void)
-{
- return this->caching_strategy_;
-}
-
-template <class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE ACE_Cache_Map_Iterator<KEY, VALUE, ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES>
-ACE_Cache_Map_Manager<KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES>::begin (void)
-{
- return ITERATOR (this->map_.begin ());
-}
-
-template <class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE ACE_Cache_Map_Iterator<KEY, VALUE, ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES>
-ACE_Cache_Map_Manager<KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES>::end (void)
-{
- return ITERATOR (this->map_.end ());
-}
-
-template <class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES>
-ACE_Cache_Map_Manager<KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES>::rbegin (void)
-{
- return REVERSE_ITERATOR (this->map_.rbegin ());
-}
-template <class KEY, class VALUE, class CMAP_TYPE, class ITERATOR_IMPL, class REVERSE_ITERATOR_IMPL, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES>
-ACE_Cache_Map_Manager<KEY, VALUE, CMAP_TYPE, ITERATOR_IMPL, REVERSE_ITERATOR_IMPL, CACHING_STRATEGY, ATTRIBUTES>::rend (void)
-{
- return REVERSE_ITERATOR (this->map_.rend ());
-}
-
-////////////////////////////////////////////////////////////////////////////////
-
-template <class KEY, class VALUE, class IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE
-ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::ACE_Cache_Map_Iterator (const ACE_Cache_Map_Iterator <KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs)
- : iterator_implementation_ (rhs.iterator_implementation_)
-{
-}
-
-template <class KEY, class VALUE, class IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &
-ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::operator= (const ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs)
-{
- this->iterator_implementation_ = rhs.iterator_implementation_;
- return *this;
-}
-
-template <class KEY, class VALUE, class IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE bool
-ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::operator== (const ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs) const
-{
- return this->iterator_implementation_ == rhs.iterator_implementation_;
-}
-
-template <class KEY, class VALUE, class IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE bool
-ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::operator!= (const ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs) const
-{
- return this->iterator_implementation_ != rhs.iterator_implementation_;
-}
-
-template <class KEY, class VALUE, class IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE ACE_Reference_Pair<KEY, VALUE>
-ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::operator* (void) const
-{
- value_type retn ((*this->iterator_implementation_).ext_id_,
- (*this->iterator_implementation_).int_id_.first ());
- return retn;
-}
-
-template <class KEY, class VALUE, class IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE
-ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &
-ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::operator++ (void)
-{
- ++this->iterator_implementation_;
- return *this;
-}
-
-template <class KEY, class VALUE, class IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE
-ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>
-ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::operator++ (int)
-{
- ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> retn = *this;
- ++this->iterator_implementation_;
- return retn;
-}
-
-template <class KEY, class VALUE, class IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE
-ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &
-ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::operator-- (void)
-{
- --this->iterator_implementation_;
- return *this;
-}
-
-template <class KEY, class VALUE, class IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE
-ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>
-ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::operator-- (int)
-{
- ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> retn = *this;
- --this->iterator_implementation_;
- return retn;
-}
-
-template <class KEY, class VALUE, class IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE void
-ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- this->iterator_implementation_.dump ();
-#endif /* ACE_HAS_DUMP */
-}
-
-template <class KEY, class VALUE, class IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE
-ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::ACE_Cache_Map_Iterator (const IMPLEMENTATION &iterator_impl)
- : iterator_implementation_ (iterator_impl)
-{
-}
-
-template <class KEY, class VALUE, class IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE IMPLEMENTATION &
-ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::iterator_implementation (void)
-{
- return this->iterator_implementation_;
-}
-
-////////////////////////////////////////////////////////////////////////////////
-
-template <class KEY, class VALUE, class REVERSE_IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE
-ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::ACE_Cache_Map_Reverse_Iterator (const ACE_Cache_Map_Reverse_Iterator <KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs)
- : reverse_iterator_implementation_ (rhs.reverse_iterator_implementation_)
-{
-}
-
-template <class KEY, class VALUE, class REVERSE_IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE
-ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::~ACE_Cache_Map_Reverse_Iterator (void)
-{
-}
-
-template <class KEY, class VALUE, class REVERSE_IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &
-ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::operator= (const ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs)
-{
- this->reverse_iterator_implementation_ = rhs.reverse_iterator_implementation_;
- return *this;
-}
-
-template <class KEY, class VALUE, class REVERSE_IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE bool
-ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::operator== (const ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs) const
-{
- return this->reverse_iterator_implementation_ == rhs.reverse_iterator_implementation_;
-}
-
-template <class KEY, class VALUE, class REVERSE_IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE bool
-ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::operator!= (const ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs) const
-{
- return this->reverse_iterator_implementation_ != rhs.reverse_iterator_implementation_;
-}
-
-template <class KEY, class VALUE, class REVERSE_IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE ACE_Reference_Pair<KEY, VALUE>
-ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::operator* (void) const
-{
- value_type retv ((*this->reverse_iterator_implementation_).ext_id_,
- (*this->reverse_iterator_implementation_).int_id_.first ());
- return retv;
-}
-
-template <class KEY, class VALUE, class REVERSE_IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE
-ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &
-ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::operator++ (void)
-{
- ++this->reverse_iterator_implementation_;
- return *this;
-}
-
-template <class KEY, class VALUE, class REVERSE_IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE
-ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>
-ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::operator++ (int)
-{
- ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> retn = *this;
- ++this->reverse_iterator_implementation_;
- return retn;
-}
-
-template <class KEY, class VALUE, class REVERSE_IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE
-ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &
-ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::operator-- (void)
-{
- --this->reverse_iterator_implementation_;
- return *this;
-}
-
-template <class KEY, class VALUE, class REVERSE_IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE
-ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>
-ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::operator-- (int)
-{
- ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> retn = *this;
- --this->reverse_iterator_implementation_;
- return retn;
-}
-
-template <class KEY, class VALUE, class REVERSE_IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE void
-ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- this->reverse_iterator_implementation_.dump ();
-#endif /* ACE_HAS_DUMP */
-}
-
-template <class KEY, class VALUE, class REVERSE_IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE
-ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::ACE_Cache_Map_Reverse_Iterator (const REVERSE_IMPLEMENTATION &iterator_impl)
- : reverse_iterator_implementation_(iterator_impl)
-{
-}
-
-template <class KEY, class VALUE, class REVERSE_IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES> ACE_INLINE REVERSE_IMPLEMENTATION &
-ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::iterator_implementation (void)
-{
- return this->reverse_iterator_implementation_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Cached_Connect_Strategy_T.h b/dep/include/ace/Cached_Connect_Strategy_T.h
deleted file mode 100644
index 9f3227b54f1..00000000000
--- a/dep/include/ace/Cached_Connect_Strategy_T.h
+++ /dev/null
@@ -1,263 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Cached_Connect_Strategy_T.h
- *
- * $Id: Cached_Connect_Strategy_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Kirthika Parameswaran <kirthika@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef CACHED_CONNECT_STRATEGY_T_H
-#define CACHED_CONNECT_STRATEGY_T_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Strategies_T.h"
-#include "ace/Hash_Cache_Map_Manager_T.h"
-#include "ace/Caching_Strategies_T.h"
-#include "ace/Functor_T.h"
-#include "ace/Pair_T.h"
-
-// For linkers which cant grok long names...
-#define ACE_Cached_Connect_Strategy_Ex ACCSE
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Cached_Connect_Strategy_Ex
- *
- * @brief A connection strategy which caches connections to peers
- * (represented by SVC_HANDLER instances), thereby allowing
- * subsequent re-use of unused, but available, connections.
- *
- * <Cached_Connect_Strategy> is intended to be used as a
- * plug-in connection strategy for ACE_Strategy_Connector.
- * It's added value is re-use of established connections and
- * tweaking the role of the cache as per the caching strategy.
- */
-template <class SVC_HANDLER, ACE_PEER_CONNECTOR_1, class CACHING_STRATEGY, class ATTRIBUTES, class MUTEX>
-class ACE_Cached_Connect_Strategy_Ex
- : public ACE_Cached_Connect_Strategy<SVC_HANDLER, ACE_PEER_CONNECTOR_2, MUTEX>
-{
-public:
- /// Constructor
- ACE_Cached_Connect_Strategy_Ex (
- CACHING_STRATEGY &caching_s,
- ACE_Creation_Strategy<SVC_HANDLER> *cre_s = 0,
- ACE_Concurrency_Strategy<SVC_HANDLER> *con_s = 0,
- ACE_Recycling_Strategy<SVC_HANDLER> *rec_s = 0,
- MUTEX *lock = 0,
- int delete_lock = 0);
-
- /// Destructor
- virtual ~ACE_Cached_Connect_Strategy_Ex (void);
-
- /// Explicit purging of connection entries from the connection cache.
- virtual int purge_connections (void);
-
- /// Mark as closed (non-locking version). This is used during the cleanup of the
- /// connections purged.
- virtual int mark_as_closed_i (const void *recycling_act);
-
- /**
- * Since g++ version < 2.8 arent happy with templates, this special
- * method had to be devised to avoid memory leaks and perform
- * cleanup of the <connection_cache_>.
- */
- void cleanup (void);
-
- // = Typedefs for managing the map
- typedef ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>
- REFCOUNTED_HASH_RECYCLABLE_ADDRESS;
- typedef ACE_Hash_Cache_Map_Manager<REFCOUNTED_HASH_RECYCLABLE_ADDRESS,
- SVC_HANDLER *,
- ACE_Hash<REFCOUNTED_HASH_RECYCLABLE_ADDRESS>,
- ACE_Equal_To<REFCOUNTED_HASH_RECYCLABLE_ADDRESS>,
- CACHING_STRATEGY,
- ATTRIBUTES>
- CONNECTION_CACHE;
- typedef typename CONNECTION_CACHE::CACHE_ENTRY CONNECTION_CACHE_ENTRY;
- typedef typename CONNECTION_CACHE::key_type KEY;
- typedef typename CONNECTION_CACHE::mapped_type VALUE;
-
- typedef ACE_Recyclable_Handler_Cleanup_Strategy<REFCOUNTED_HASH_RECYCLABLE_ADDRESS,
- ACE_Pair<SVC_HANDLER *, ATTRIBUTES>,
- ACE_Hash_Map_Manager_Ex<REFCOUNTED_HASH_RECYCLABLE_ADDRESS,
- ACE_Pair<SVC_HANDLER *, ATTRIBUTES>,
- ACE_Hash<REFCOUNTED_HASH_RECYCLABLE_ADDRESS>,
- ACE_Equal_To<REFCOUNTED_HASH_RECYCLABLE_ADDRESS>,
- MUTEX> >
- CLEANUP_STRATEGY;
-
- typedef ACE_Cached_Connect_Strategy<SVC_HANDLER, ACE_PEER_CONNECTOR_2, MUTEX>
- CCSBASE;
-
- // = Accessor.
- CACHING_STRATEGY &caching_strategy (void);
-
-protected:
-
- /// Find an idle handle.
- int find (ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR> &search_addr,
- ACE_Hash_Map_Entry<ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>, ACE_Pair<SVC_HANDLER *, ATTRIBUTES> > *&entry);
-
- /// Remove from cache (non-locking version).
- virtual int purge_i (const void *recycling_act);
-
- /// Add to cache (non-locking version).
- virtual int cache_i (const void *recycling_act);
-
- /// Get/Set <recycle_state> (non-locking version).
- virtual int recycle_state_i (const void *recycling_act,
- ACE_Recyclable_State new_state);
- virtual ACE_Recyclable_State recycle_state_i (const void *recycling_act) const;
-
- /// Cleanup hint and reset <*act_holder> to zero if <act_holder != 0>.
- virtual int cleanup_hint_i (const void *recycling_act,
- void **act_holder);
-
- // = Helpers
- int check_hint_i (SVC_HANDLER *&sh,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- ACE_Time_Value *timeout,
- const ACE_PEER_CONNECTOR_ADDR &local_addr,
- int reuse_addr,
- int flags,
- int perms,
- ACE_Hash_Map_Entry<ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>, ACE_Pair<SVC_HANDLER *, ATTRIBUTES> > *&entry,
- int &found);
-
- virtual int find_or_create_svc_handler_i (SVC_HANDLER *&sh,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- ACE_Time_Value *timeout,
- const ACE_PEER_CONNECTOR_ADDR &local_addr,
- int reuse_addr,
- int flags,
- int perms,
- ACE_Hash_Map_Entry<ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>, ACE_Pair<SVC_HANDLER *, ATTRIBUTES> > *&entry,
- int &found);
-
- virtual int connect_svc_handler_i (SVC_HANDLER *&sh,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- ACE_Time_Value *timeout,
- const ACE_PEER_CONNECTOR_ADDR &local_addr,
- int reuse_addr,
- int flags,
- int perms,
- int &found);
-
- /**
- * Connection of the svc_handler with the remote host. This method
- * also encapsulates the connection done with auto_purging under the
- * hood. If the connect failed due to the process running out of
- * file descriptors then, auto_purging of some connections are done
- * from the CONNECTION_CACHE. This frees the descriptors which get
- * used in the connect process and hence the connect operation can
- * succeed.
- */
- virtual int cached_connect (SVC_HANDLER *&sh,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- ACE_Time_Value *timeout,
- const ACE_PEER_CONNECTOR_ADDR &local_addr,
- int reuse_addr,
- int flags,
- int perms);
-
- /// Table that maintains the cache of connected SVC_HANDLERs.
- CONNECTION_CACHE connection_cache_;
-};
-
-/////////////////////////////////////////////////////////////////////////////
-
-// For linkers which cant grok long names...
-#define ACE_Bounded_Cached_Connect_Strategy ABCCS
-
-/**
- * @class ACE_Bounded_Cached_Connect_Strategy
- *
- * @brief A connection strategy which caches connections to peers
- * (represented by SVC_HANDLER instances), thereby allowing
- * subsequent re-use of unused, but available, connections.
- * This strategy should be used when the cache is bounded by
- * maximum size.
- *
- * <Bounded_Cached_Connect_Strategy> is intended to be used as a
- * plug-in connection strategy for ACE_Strategy_Connector.
- * It's added value is re-use of established connections and
- * tweaking the role of the cache as per the caching strategy.
- * Thanks to Edan Ayal <edana@bandwiz.com> for contributing this
- * class and Susan Liebeskind <shl@janis.gtri.gatech.edu> for
- * brainstorming about it.
- */
-template <class SVC_HANDLER, ACE_PEER_CONNECTOR_1,
- class CACHING_STRATEGY, class ATTRIBUTES,
- class MUTEX>
-class ACE_Bounded_Cached_Connect_Strategy
- : public ACE_Cached_Connect_Strategy_Ex<SVC_HANDLER, ACE_PEER_CONNECTOR_2, CACHING_STRATEGY, ATTRIBUTES, MUTEX>
-{
-
- typedef ACE_Cached_Connect_Strategy_Ex<SVC_HANDLER, ACE_PEER_CONNECTOR_2, CACHING_STRATEGY, ATTRIBUTES, MUTEX>
- CCSEBASE;
-
- // = Typedefs for managing the map
- typedef ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>
- REFCOUNTED_HASH_RECYCLABLE_ADDRESS;
-
-public:
-
- /// Constructor
- ACE_Bounded_Cached_Connect_Strategy (size_t max_size,
- CACHING_STRATEGY &caching_s,
- ACE_Creation_Strategy<SVC_HANDLER> *cre_s = 0,
- ACE_Concurrency_Strategy<SVC_HANDLER> *con_s = 0,
- ACE_Recycling_Strategy<SVC_HANDLER> *rec_s = 0,
- MUTEX *lock = 0,
- int delete_lock = 0);
-
- /// Destructor
- virtual ~ACE_Bounded_Cached_Connect_Strategy (void);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
-
- virtual int find_or_create_svc_handler_i (SVC_HANDLER *&sh,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- ACE_Time_Value *timeout,
- const ACE_PEER_CONNECTOR_ADDR &local_addr,
- int reuse_addr,
- int flags,
- int perms,
- ACE_Hash_Map_Entry<ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>,
- ACE_Pair<SVC_HANDLER *, ATTRIBUTES> > *&entry,
- int &found);
-
-protected:
-
- /// max items in the cache, used as a bound for the creation of svc_handlers.
- size_t max_size_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Cached_Connect_Strategy_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Cached_Connect_Strategy_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* CACHED_CONNECT_STRATEGY_T_H */
-
diff --git a/dep/include/ace/Caching_Strategies_T.h b/dep/include/ace/Caching_Strategies_T.h
deleted file mode 100644
index e2fa428c3b7..00000000000
--- a/dep/include/ace/Caching_Strategies_T.h
+++ /dev/null
@@ -1,552 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Caching_Strategies_T.h
- *
- * $Id: Caching_Strategies_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Kirthika Parameswaran <kirthika@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_CACHING_STRATEGIES_H
-#define ACE_CACHING_STRATEGIES_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-#include "ace/Caching_Utility_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined(_MSC_VER)
-#pragma warning(disable:4503)
-#endif /* _MSC_VER */
-
-// For linkers that cant grok long names.
-#define ACE_Caching_Strategy ACS
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Caching_Strategy
- *
- * @brief This class is an abstract base class for a caching strategy.
- *
- * This class consists of all the interfaces a caching strategy should
- * have and is used in association with the
- * ACE_Caching_Strategy_Adaptor.
- */
-template <class ATTRIBUTES, class CACHING_UTILITY>
-class ACE_Caching_Strategy
-{
-public:
- /// Destructor.
- virtual ~ACE_Caching_Strategy (void);
-
- /// Accessor method for the timer attributes.
- virtual ATTRIBUTES attributes (void) = 0;
-
- /// Get the percentage of entries to purge.
- virtual double purge_percent (void) = 0;
-
- /// Set the percentage of entries to purge.
- virtual void purge_percent (double percentage) = 0;
-
- // = Strategy related Operations
-
- /// This method acts as a notification about the CONTAINERs bind
- /// method call.
- virtual int notify_bind (int result,
- const ATTRIBUTES &attr) = 0;
-
- /// This method acts as a notification about the CONTAINERs find
- /// method call
- virtual int notify_find (int result,
- ATTRIBUTES &attr) = 0;
-
- /// This method acts as a notification about the CONTAINERs unbind
- /// method call
- virtual int notify_unbind (int result,
- const ATTRIBUTES &attr) = 0;
-
- /// This method acts as a notification about the CONTAINERs trybind
- /// method call
- virtual int notify_trybind (int result,
- ATTRIBUTES &attr) = 0;
-
- /// This method acts as a notification about the CONTAINERs rebind
- /// method call
- virtual int notify_rebind (int result,
- const ATTRIBUTES &attr) = 0;
-
- /// Purge the cache.
- virtual CACHING_UTILITY &caching_utility (void) = 0;
-
- /// Dumps the state of the object.
- virtual void dump (void) const = 0;
-};
-
-//////////////////////////////////////////////////////////////////////////
-
-#define ACE_Caching_Strategy_Adapter ACSA
-
-/**
- * @class ACE_Caching_Strategy_Adapter
- *
- * @brief This class follows the Adaptor pattern and is used to provide
- * External Polymorphism by deriving from ACE_Caching_Strategy.
- *
- * This class simply delegates all requests to the
- * IMPLEMNETATION object within. This class should be passed in
- * place of the the abstract base ACE_Caching_Strategy class as
- * part of the External Polymorphism pattern.
- */
-template <class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION>
-class ACE_Caching_Strategy_Adapter
- : public ACE_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>
-{
-
-public:
-
- /// Constructor.
- ACE_Caching_Strategy_Adapter (IMPLEMENTATION *implementation = 0,
- bool delete_implementation = false);
-
- /// Destructor.
- ~ACE_Caching_Strategy_Adapter (void);
-
- /// Accessor method for the timer attributes.
- ATTRIBUTES attributes (void);
-
- /// Get the percentage of entries to purge.
- double purge_percent (void);
-
- /// Set the percentage of entries to purge.
- void purge_percent (double percentage);
-
- // = Strategy related Operations
-
- /// This method acts as a notification about the CONTAINERs bind
- /// method call.
- int notify_bind (int result,
- const ATTRIBUTES &attr);
-
- /// This method acts as a notification about the CONTAINERs find
- /// method call
- int notify_find (int result,
- ATTRIBUTES &attr);
-
- /// This method acts as a notification about the CONTAINERs unbind
- /// method call
- int notify_unbind (int result,
- const ATTRIBUTES &attr);
-
- /// This method acts as a notification about the CONTAINERs trybind
- /// method call
- int notify_trybind (int result,
- ATTRIBUTES &attr);
-
- /// This method acts as a notification about the CONTAINERs rebind
- /// method call
- int notify_rebind (int result,
- const ATTRIBUTES &attr);
-
- /// Accessor to the implementation.
- IMPLEMENTATION &implementation (void);
-
- /// Purge the cache.
- CACHING_UTILITY &caching_utility (void);
-
- /// Dumps the state of the object.
- void dump (void) const;
-
-private:
-
- /// Implementation class.
- IMPLEMENTATION *implementation_;
-
- /// Do we need to delete the implementation?
- bool delete_implementation_;
-};
-
-//////////////////////////////////////////////////////////////////////////
-#define ACE_LRU_Caching_Strategy ALRU
-
-/**
- * @class ACE_LRU_Caching_Strategy
- *
- * @brief Defines a Least Recently Used strategy which will decide on
- * the item to be removed from the cache.
- *
- * This is a strategy which makes use of a virtual timer which
- * is updated whenever an item is inserted or looked up in the
- * container. When the need of purging entries arises, the items
- * with the lowest timer values are removed.
- * Explanation of the template parameter list:
- * CONTAINER is any map with entries of type <KEY, VALUE>.
- * The ATTRIBUTES are the deciding factor for purging of entries
- * and should logically be included with the VALUE. Some ways of
- * doing this are: As being a member of the VALUE or VALUE being
- * ACE_Pair<x, ATTRIBUTES>. The CACHING_UTILITY is the
- * class which can be plugged in and which decides the entries
- * to purge.
- */
-template <class ATTRIBUTES, class CACHING_UTILITY>
-class ACE_LRU_Caching_Strategy
-{
-public:
-
- // Traits.
- typedef ATTRIBUTES CACHING_ATTRIBUTES;
-
- // = Initialisation and termination.
-
- /**
- * The <container> is the map in which the entries reside. The
- * timer attribute is initialed to zero in this constructor. And
- * the <purge_percent> field denotes the percentage of the entries
- * in the cache which can be purged automagically and by default is
- * set to 10%.
- */
- ACE_LRU_Caching_Strategy (void);
-
- // = Operations of the strategy.
-
- /// Accessor method for the timer attributes.
- ATTRIBUTES attributes (void);
-
- /// Get the percentage of entries to purge.
- double purge_percent (void);
-
- /// Set the percentage of entries to purge.
- void purge_percent (double percentage);
-
- // = Strategy related Operations
-
- /// This method acts as a notification about the CONTAINERs bind
- /// method call.
- int notify_bind (int result,
- const ATTRIBUTES &attr);
-
- /// This method acts as a notification about the CONTAINERs find
- /// method call
- int notify_find (int result,
- ATTRIBUTES &attr);
-
- /// This method acts as a notification about the CONTAINERs unbind
- /// method call
- int notify_unbind (int result,
- const ATTRIBUTES &attr);
-
- /// This method acts as a notification about the CONTAINERs trybind
- /// method call
- int notify_trybind (int result,
- ATTRIBUTES &attr);
-
- /// This method acts as a notification about the CONTAINERs rebind
- /// method call
- int notify_rebind (int result,
- const ATTRIBUTES &attr);
-
- /// Purge the cache.
- CACHING_UTILITY &caching_utility (void);
-
- /// Dumps the state of the object.
- void dump (void) const;
-
-private:
-
- /// This element is the one which is the deciding factor for purging
- /// of an ITEM.
- ATTRIBUTES timer_;
-
- /// The level about which the purging will happen automagically.
- double purge_percent_;
-
- /// This is the helper class which will decide and expunge entries
- /// from the cache.
- CACHING_UTILITY caching_utility_;
-};
-
-//////////////////////////////////////////////////////////////////////////
-#define ACE_LFU_Caching_Strategy ALFU
-
-/**
- * @class ACE_LFU_Caching_Strategy
- *
- * @brief Defines a Least Frequently Used strategy for which will decide on
- * the item to be removed from the cache.
- *
- * A attribute is tagged to each item which increments whenever
- * the item is bound or looked up in the cache. Thus it denotes
- * the frequency of use. According to the value of the attribute
- * the item is removed from the CONTAINER i.e cache.
- * Explanation of the template parameter list:
- * CONTAINER is any map with entries of type <KEY, VALUE>.
- * The ATTRIBUTES are the deciding factor for purging of entries
- * and should logically be included with the VALUE. Some ways of
- * doing this are: As being a member of the VALUE or VALUE being
- * ACE_Pair<x, ATTRIBUTES>. The CACHING_UTILITY is the
- * class which can be plugged in and which decides the entries
- * to purge.
- */
-template <class ATTRIBUTES, class CACHING_UTILITY>
-class ACE_LFU_Caching_Strategy
-{
-
-public:
-
- // Traits.
- typedef ATTRIBUTES CACHING_ATTRIBUTES;
-
- // = Initialisation and termination methods.
-
- /**
- * The <container> is the map in which the entries reside. The
- * timer attribute is initialed to zero in this constructor. And
- * the <purge_percent> field denotes the percentage of the entries
- * in the cache which can be purged automagically and by default is
- * set to 10%.
- */
- ACE_LFU_Caching_Strategy (void);
-
- // = Strategy methods.
-
- /// Access the attributes.
- ATTRIBUTES attributes (void);
-
- /// Get the percentage of entries to purge.
- double purge_percent (void);
-
- /// Set the percentage of entries to purge.
- void purge_percent (double percentage);
-
- // = Strategy related Operations
-
- /// This method acts as a notification about the CONTAINERs bind
- /// method call.
- int notify_bind (int result,
- const ATTRIBUTES &attr);
-
- /// Lookup notification.
- int notify_find (int result,
- ATTRIBUTES &attr);
-
- /// This method acts as a notification about the CONTAINERs unbind
- /// method call
- int notify_unbind (int result,
- const ATTRIBUTES &attr);
-
- /// This method acts as a notification about the CONTAINERs trybind
- /// method call
- int notify_trybind (int result,
- ATTRIBUTES &attr);
-
- /// This method acts as a notification about the CONTAINERs rebind
- /// method call
- int notify_rebind (int result,
- const ATTRIBUTES &attr);
-
- /// Purge the cache.
- CACHING_UTILITY &caching_utility (void);
-
- /// Dumps the state of the object.
- void dump (void) const;
-
-private:
-
- /// The level about which the purging will happen automagically.
- double purge_percent_;
-
- /// This is the helper class which will decide and expunge entries
- /// from the cache.
- CACHING_UTILITY caching_utility_;
-};
-
-/////////////////////////////////////////////////////////////
-#define ACE_FIFO_Caching_Strategy AFIFO
-
-/**
- * @class ACE_FIFO_Caching_Strategy
- *
- * @brief The First In First Out strategy is implemented wherein each
- * item is ordered.
- *
- * The order tag of each item is used to decide the item to be
- * removed from the cache. The items with least order are removed.
- * Explanation of the template parameter list:
- * CONTAINER is any map with entries of type <KEY, VALUE>.
- * The ATTRIBUTES are the deciding factor for purging of entries
- * and should logically be included with the VALUE. Some ways of
- * doing this are: As being a member of the VALUE or VALUE being
- * ACE_Pair<x, ATTRIBUTES>. The CACHING_UTILITY is the
- * class which can be plugged in and which decides the entries
- * to purge.
- */
-template<class ATTRIBUTES, class CACHING_UTILITY>
-class ACE_FIFO_Caching_Strategy
-{
-
-public:
-
- typedef ATTRIBUTES CACHING_ATTRIBUTES;
-
- // = Initialisation and termination.
-
- /**
- * The <container> is the map in which the entries reside. The
- * timer attribute is initialed to zero in this constructor. And
- * the <purge_percent> field denotes the percentage of the entries
- * in the cache which can be purged automagically and by default is
- * set to 10%.
- */
- ACE_FIFO_Caching_Strategy (void);
-
- // = Strategy methods.
-
- /// Accessor method.
- ATTRIBUTES attributes (void);
-
- /// Get the percentage of entries to purge.
- double purge_percent (void);
-
- /// Set the percentage of entries to purge.
- void purge_percent (double percentage);
-
- // = Strategy related Operations
-
- /// Notification for an item getting bound into the cache.
- int notify_bind (int result,
- const ATTRIBUTES &attr);
-
- /// This method acts as a notification about the CONTAINERs find
- /// method call
- int notify_find (int result,
- ATTRIBUTES &attr);
-
- /// This method acts as a notification about the CONTAINERs unbind
- /// method call
- int notify_unbind (int result,
- const ATTRIBUTES &attr);
-
- /// This method acts as a notification about the CONTAINERs trybind
- /// method call
- int notify_trybind (int result,
- ATTRIBUTES &attr);
-
- /// Notification for an item getting bound again into the cache.
- int notify_rebind (int result,
- const ATTRIBUTES &attr);
-
- /// Purge the cache.
- CACHING_UTILITY &caching_utility (void);
-
- /// Dumps the state of the object.
- void dump (void) const;
-
-private:
-
- /// The order is the deciding factor for the item to be removed from
- /// the cache.
- ATTRIBUTES order_;
-
- /// The level about which the purging will happen automagically.
- double purge_percent_;
-
- /// This is the helper class which will decide and expunge entries
- /// from the cache.
- CACHING_UTILITY caching_utility_;
-};
-
-//////////////////////////////////////////////////////////////////////
-#define ACE_Null_Caching_Strategy ANULL
-
-/**
- * @class ACE_Null_Caching_Strategy
- *
- * @brief The is a special caching strategy which doesnt have the purging
- * feature.
- *
- * No purging provided. To be used when purging might be too expensive
- * an operation.
- */
-template<class ATTRIBUTES, class CACHING_UTILITY>
-class ACE_Null_Caching_Strategy
-{
-
-public:
-
- // = Traits.
- typedef ATTRIBUTES CACHING_ATTRIBUTES;
-
- // = Strategy methods. All are NO_OP methods!!!
-
- /// Accessor method.
- ATTRIBUTES attributes (void);
-
- /// Get the percentage of entries to purge.
- double purge_percent (void);
-
- /// Set the percentage of entries to purge.
- void purge_percent (double percentage);
-
- // = Strategy related Operations
-
- /// Notification for an item getting bound into the cache.
- int notify_bind (int result,
- const ATTRIBUTES &attr);
-
- /// This method acts as a notification about the CONTAINERs find
- /// method call
- int notify_find (int result,
- ATTRIBUTES &attr);
-
- /// This method acts as a notification about the CONTAINERs unbind
- /// method call
- int notify_unbind (int result,
- const ATTRIBUTES &attr);
-
- /// This method acts as a notification about the CONTAINERs trybind
- /// method call
- int notify_trybind (int result,
- ATTRIBUTES &attr);
-
- /// Notification for an item getting bound again into the cache.
- int notify_rebind (int result,
- const ATTRIBUTES &attr);
-
- /// Purge the cache.
- CACHING_UTILITY &caching_utility (void);
-
- /// Dumps the state of the object.
- void dump (void) const;
-
-private:
-
- /// This is the helper class which will decide and expunge entries
- /// from the cache.
- CACHING_UTILITY caching_utility_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Caching_Strategies_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Caching_Strategies_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Caching_Strategies_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CACHING_STRATEGIES_H */
-
diff --git a/dep/include/ace/Caching_Strategies_T.inl b/dep/include/ace/Caching_Strategies_T.inl
deleted file mode 100644
index 41fa2d30301..00000000000
--- a/dep/include/ace/Caching_Strategies_T.inl
+++ /dev/null
@@ -1,456 +0,0 @@
-// -*-C++-*-
-//
-//$Id: Caching_Strategies_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-//////////////////////////////////////////////////////////////////////////////////
-
-#include "ace/OS_Memory.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template<class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION> ACE_INLINE
-ACE_Caching_Strategy_Adapter<ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION>::ACE_Caching_Strategy_Adapter (IMPLEMENTATION *implementation,
- bool delete_implementation)
- : implementation_ (implementation),
- delete_implementation_ (delete_implementation)
-{
- if (this->implementation_ == 0)
- {
- ACE_NEW (this->implementation_,
- IMPLEMENTATION);
- this->delete_implementation_ = true;
- }
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION> ACE_INLINE
-ACE_Caching_Strategy_Adapter<ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION>::~ACE_Caching_Strategy_Adapter (void)
-{
- if (this->delete_implementation_)
- {
- delete this->implementation_;
- this->delete_implementation_ = false;
- this->implementation_ = 0;
- }
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION> ACE_INLINE ATTRIBUTES
-ACE_Caching_Strategy_Adapter<ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION>::attributes (void)
-{
- return this->implementation_->attributes ();
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION> ACE_INLINE double
-ACE_Caching_Strategy_Adapter<ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION>::purge_percent (void)
-{
- return this->implementation_->purge_percent ();
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION> ACE_INLINE void
-ACE_Caching_Strategy_Adapter<ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION>::purge_percent (double percentage)
-{
- this->implementation_->purge_percent (percentage);
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION> ACE_INLINE int
-ACE_Caching_Strategy_Adapter<ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION>::notify_bind (int result,
- const ATTRIBUTES &attr)
-{
- return this->implementation_->notify_bind (result,
- attr);
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION> ACE_INLINE int
-ACE_Caching_Strategy_Adapter<ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION>::notify_find (int result,
- ATTRIBUTES &attr)
-{
- return this->implementation_->notify_find (result,
- attr);
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION> ACE_INLINE int
-ACE_Caching_Strategy_Adapter<ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION>::notify_unbind (int result,
- const ATTRIBUTES &attr)
-{
- return this->implementation_->notify_unbind (result,
- attr);
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION> ACE_INLINE int
-ACE_Caching_Strategy_Adapter<ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION>::notify_trybind (int result,
- ATTRIBUTES &attr)
-{
- return this->implementation_->notify_trybind (result,
- attr);
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION> ACE_INLINE int
-ACE_Caching_Strategy_Adapter<ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION>::notify_rebind (int result,
- const ATTRIBUTES &attr)
-{
- return this->implementation_->notify_rebind (result,
- attr);
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION> ACE_INLINE IMPLEMENTATION &
-ACE_Caching_Strategy_Adapter<ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION>::implementation (void)
-{
- return *this->implementation_;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION> ACE_INLINE CACHING_UTILITY &
-ACE_Caching_Strategy_Adapter<ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION>::caching_utility (void)
-{
- return this->implementation_->caching_utility ();
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY, class IMPLEMENTATION> ACE_INLINE void
-ACE_Caching_Strategy_Adapter<ATTRIBUTES, CACHING_UTILITY, IMPLEMENTATION>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_Caching_Strategy_Adapter::dump");
-
- ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this));
- ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP));
-#endif /* ACE_HAS_DUMP */
-}
-
-//////////////////////////////////////////////////////////////////////////////////
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE ATTRIBUTES
-ACE_LRU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::attributes (void)
-{
- return this->timer_;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE double
-ACE_LRU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::purge_percent (void)
-{
- return this->purge_percent_;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE void
-ACE_LRU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::purge_percent (double percentage)
-{
- this->purge_percent_ = percentage;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_LRU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_bind (
- int result,
- const ATTRIBUTES & /* attr */)
-{
- if (result == 0)
- ++this->timer_;
-
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_LRU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_find (
- int result,
- ATTRIBUTES &attr)
-{
- if (result == 0)
- {
- attr = this->timer_;
- ++this->timer_;
- }
-
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_LRU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_unbind (
- int result,
- const ATTRIBUTES & /* attr */)
-{
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_LRU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_trybind (
- int result,
- ATTRIBUTES & /* attr */)
-{
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_LRU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_rebind (
- int result,
- const ATTRIBUTES & /* attr */)
-{
- if (result == 0)
- ++this->timer_;
-
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE CACHING_UTILITY &
-ACE_LRU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::caching_utility (void)
-{
- return this->caching_utility_;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE void
-ACE_LRU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_LRU_Caching_Strategy::dump");
-
- ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this));
- ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("timer_ = %d "), this->timer_));
- ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP));
-#endif /* ACE_HAS_DUMP */
-}
-
-//////////////////////////////////////////////////////////////////////////////////
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE ATTRIBUTES
-ACE_LFU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::attributes (void)
-{
- return 0;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE double
-ACE_LFU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::purge_percent (void)
-{
- return this->purge_percent_;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE void
-ACE_LFU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::purge_percent (double percentage)
-{
- this->purge_percent_ = percentage;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_LFU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_bind (int result,
- const ATTRIBUTES & /* attr */)
-{
-
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_LFU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_find (int result,
- ATTRIBUTES &attr)
-{
- if (result == 0)
- ++attr;
-
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_LFU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_trybind (int result,
- ATTRIBUTES & /* attr */)
-{
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_LFU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_rebind (int result,
- const ATTRIBUTES & /* attr */)
-{
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_LFU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_unbind (int result,
- const ATTRIBUTES & /* attr */)
-{
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE CACHING_UTILITY &
-ACE_LFU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::caching_utility (void)
-{
- return this->caching_utility_;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE void
-ACE_LFU_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_LFU_Caching_Strategy::dump");
-
- ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this));
- ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP));
-#endif /* ACE_HAS_DUMP */
-}
-
-//////////////////////////////////////////////////////////////////////////////////////
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE ATTRIBUTES
-ACE_FIFO_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::attributes (void)
-{
- return this->order_;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE double
-ACE_FIFO_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::purge_percent (void)
-{
- return this->purge_percent_;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE void
-ACE_FIFO_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::purge_percent (double percentage)
-{
- this->purge_percent_ = percentage;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_FIFO_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_bind (int result,
- const ATTRIBUTES &attr)
-{
- ACE_UNUSED_ARG (attr);
-
- if (result == 0)
- ++this->order_;
-
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_FIFO_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_find (int result,
- ATTRIBUTES &attr)
-{
- ACE_UNUSED_ARG (attr);
-
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_FIFO_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_unbind (int result,
- const ATTRIBUTES &attr)
-{
- ACE_UNUSED_ARG (attr);
-
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_FIFO_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_trybind (int result,
- ATTRIBUTES &attr)
-{
- ACE_UNUSED_ARG (attr);
-
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_FIFO_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_rebind (int result,
- const ATTRIBUTES &attr)
-{
- ACE_UNUSED_ARG (attr);
-
- if (result == 0)
- ++this->order_;
-
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE CACHING_UTILITY &
-ACE_FIFO_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::caching_utility (void)
-{
- return this->caching_utility_;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE void
-ACE_FIFO_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_FIFO_Caching_Strategy::dump");
-
- ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this));
- ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("order_ = %d "), this->order_));
- ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP));
-#endif /* ACE_HAS_DUMP */
-}
-
-//////////////////////////////////////////////////////////////////////////////////
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE ATTRIBUTES
-ACE_Null_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::attributes (void)
-{
- return 0;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE double
-ACE_Null_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::purge_percent (void)
-{
- return 0;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE void
-ACE_Null_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::purge_percent (double percentage)
-{
- ACE_UNUSED_ARG (percentage);
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_Null_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_bind (int result,
- const ATTRIBUTES &attr)
-{
- ACE_UNUSED_ARG (attr);
-
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_Null_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_find (int result,
- ATTRIBUTES &attr)
-{
- ACE_UNUSED_ARG (attr);
-
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_Null_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_unbind (int result,
- const ATTRIBUTES &attr)
-{
- ACE_UNUSED_ARG (attr);
-
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_Null_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_trybind (int result,
- ATTRIBUTES &attr)
-{
- ACE_UNUSED_ARG (attr);
-
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE int
-ACE_Null_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::notify_rebind (int result,
- const ATTRIBUTES &attr)
-{
- ACE_UNUSED_ARG (attr);
-
- return result;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE CACHING_UTILITY &
-ACE_Null_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::caching_utility (void)
-{
- return this->caching_utility_;
-}
-
-template<class ATTRIBUTES, class CACHING_UTILITY> ACE_INLINE void
-ACE_Null_Caching_Strategy<ATTRIBUTES, CACHING_UTILITY>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_Null_Caching_Strategy::dump");
-
- ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this));
- ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP));
-#endif /* ACE_HAS_DUMP */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-//////////////////////////////////////////////////////////////////////////////////
diff --git a/dep/include/ace/Caching_Utility_T.h b/dep/include/ace/Caching_Utility_T.h
deleted file mode 100644
index 9859159be4c..00000000000
--- a/dep/include/ace/Caching_Utility_T.h
+++ /dev/null
@@ -1,348 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Caching_Utility_T.h
- *
- * $Id: Caching_Utility_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Kirthika Parameswaran <kirthika@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_CACHING_UTILITY_H
-#define ACE_CACHING_UTILITY_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Global_Macros.h"
-#include "ace/Cleanup_Strategies_T.h"
-
-// For linkers that cant grok long names.
-#define ACE_Pair_Caching_Utility APUTIL
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Pair_Caching_Utility
- *
- * @brief Defines a helper class for the Caching Strategies.
- *
- * This class defines the methods commonly used by the different
- * caching strategies. For instance: <clear_cache> method which
- * decides and purges the entry from the container. @note This
- * class helps in the caching_strategies using a container
- * containing entries of <KEY, ACE_Pair<VALUE, attributes>>
- * kind. The attributes helps in deciding the entries to be
- * purged. The Cleanup_Strategy is the callback class to which the
- * entries to be cleaned up will be delegated.
- */
-template <class KEY, class VALUE, class CONTAINER, class ITERATOR, class ATTRIBUTES>
-class ACE_Pair_Caching_Utility
-{
-public:
-
- typedef ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> CLEANUP_STRATEGY;
-
- /// Constructor.
- ACE_Pair_Caching_Utility (ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> *cleanup_strategy = 0,
- int delete_cleanup_strategy = 0);
-
- /// Destructor.
- ~ACE_Pair_Caching_Utility (void);
-
- /**
- * Purge entries from the @a container. The Cleanup_Strategy will do the
- * actual job of cleanup once the entries to be cleaned up are decided.
- */
- int clear_cache (CONTAINER &container,
- double purge_percent);
-
-protected:
-
- /// Find the entry with minimum caching attributes.
- void minimum (CONTAINER &container,
- KEY *&key_to_remove,
- VALUE *&value_to_remove);
-
- /// The cleanup strategy which can be used to destroy the entries of
- /// the container.
- CLEANUP_STRATEGY *cleanup_strategy_;
-
- /// Whether the cleanup_strategy should be destroyed or not.
- int delete_cleanup_strategy_;
-
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Pair_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Pair_Caching_Utility (const ACE_Pair_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
-};
-
-////////////////////////////////////////////////////////////////////////////////
-#define ACE_Recyclable_Handler_Caching_Utility ARHUTIL
-
-/**
- * @class ACE_Recyclable_Handler_Caching_Utility
- *
- * @brief Defines a helper class for the Caching Strategies.
- *
- * This class defines the methods commonly used by the different
- * caching strategies. For instance: <clear_cache> method which
- * decides and purges the entry from the container. @note This
- * class helps in the caching_strategies using a container
- * containing entries of <KEY, Svc_Handler> kind. The attributes
- * helps in deciding the entries to be purged. The
- * Cleanup_Strategy is the callback class to which the entries to
- * be cleaned up will be delegated.
- */
-template <class KEY, class VALUE, class CONTAINER, class ITERATOR, class ATTRIBUTES>
-class ACE_Recyclable_Handler_Caching_Utility
-{
-
-public:
-
- typedef ACE_Recyclable_Handler_Cleanup_Strategy<KEY, VALUE, CONTAINER> CLEANUP_STRATEGY;
- typedef ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> CLEANUP_STRATEGY_BASE;
-
- /// Constructor.
- ACE_Recyclable_Handler_Caching_Utility (ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> *cleanup_strategy = 0,
- int delete_cleanup_strategy = 0);
-
- /// Destructor.
- ~ACE_Recyclable_Handler_Caching_Utility (void);
-
- /**
- * Purge entries from the <container>. The Cleanup_Strategy will do
- * the actual job of cleanup once the entries to be cleaned up are
- * decided.
- */
- int clear_cache (CONTAINER &container,
- double purge_percent);
-
-protected:
-
- /// Find the entry with minimum caching attributes.
- void minimum (CONTAINER &container,
- KEY *&key_to_remove,
- VALUE *&value_to_remove);
-
- /// This is the default Cleanup Strategy for this utility.
- CLEANUP_STRATEGY_BASE *cleanup_strategy_;
-
- /// Whether the cleanup_strategy should be destroyed or not.
- int delete_cleanup_strategy_;
-
-private:
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Recyclable_Handler_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Recyclable_Handler_Caching_Utility (const ACE_Recyclable_Handler_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
-};
-
-///////////////////////////////////////////////////////////////////////////
-#define ACE_Refcounted_Recyclable_Handler_Caching_Utility ARRHUTIL
-
-/**
- * @class ACE_Refcounted_Recyclable_Handler_Caching_Utility
- *
- * @brief Defines a helper class for the Caching Strategies.
- *
- * This class defines the methods commonly used by the different
- * caching strategies. For instance: clear_cache () method which
- * decides and purges the entry from the container. @note This
- * class helps in the caching_strategies using a container
- * containing entries of <Refcounted_KEY,
- * Recyclable_Connection_Handler> kind. The attributes helps in
- * deciding the entries to be purged. The Cleanup_Strategy is the
- * callback class to which the entries to be cleaned up will be
- * delegated.
- */
-template <class KEY, class VALUE, class CONTAINER, class ITERATOR, class ATTRIBUTES>
-class ACE_Refcounted_Recyclable_Handler_Caching_Utility
-{
-
-public:
-
- typedef ACE_Refcounted_Recyclable_Handler_Cleanup_Strategy<KEY, VALUE, CONTAINER> CLEANUP_STRATEGY;
- typedef ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> CLEANUP_STRATEGY_BASE;
-
- /// Constructor.
- ACE_Refcounted_Recyclable_Handler_Caching_Utility (ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> *cleanup_strategy = 0,
- int delete_cleanup_strategy = 0);
-
- /// Destructor.
- ~ACE_Refcounted_Recyclable_Handler_Caching_Utility (void);
-
- /**
- * Purge entries from the <container>. The Cleanup_Strategy will do
- * the actual job of cleanup once the entries to be cleaned up are
- * decided.
- */
- int clear_cache (CONTAINER &container,
- double purge_percent);
-
-protected:
-
- /// Find the entry with minimum caching attributes.
- void minimum (CONTAINER &container,
- KEY *&key_to_remove,
- VALUE *&value_to_remove);
-
- /// This is the default Cleanup Strategy for this utility.
- CLEANUP_STRATEGY_BASE *cleanup_strategy_;
-
- /// Whether the cleanup_strategy should be destroyed or not.
- int delete_cleanup_strategy_;
-
- /**
- * This figure denotes the number of entries are there in the
- * container which have been marked as closed already but might
- * not have been unbound from the container.
- */
- size_t marked_as_closed_entries_;
-
-private:
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Refcounted_Recyclable_Handler_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Refcounted_Recyclable_Handler_Caching_Utility (const ACE_Refcounted_Recyclable_Handler_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
-};
-
-////////////////////////////////////////////////////////////////////////////////////////
-
-/**
- * @class ACE_Handler_Caching_Utility
- *
- * @brief Defines a helper class for the Caching Strategies.
- *
- * This class defines the methods commonly used by the different
- * caching strategies. For instance: <clear_cache> method which
- * decides and purges the entry from the container. @note This
- * class helps in the caching_strategies using a container
- * containing entries of <KEY, HANDLER> kind where the HANDLER
- * contains the caching attributes which help in deciding the
- * entries to be purged. The Cleanup_Strategy is the callback
- * class to which the entries to be cleaned up will be delegated.
- */
-template <class KEY, class VALUE, class CONTAINER, class ITERATOR, class ATTRIBUTES>
-class ACE_Handler_Caching_Utility
-{
-public:
-
- typedef ACE_Handler_Cleanup_Strategy<KEY, VALUE, CONTAINER> CLEANUP_STRATEGY;
- typedef ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> CLEANUP_STRATEGY_BASE;
-
- /// Constructor.
- ACE_Handler_Caching_Utility (ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> *cleanup_strategy = 0,
- int delete_cleanup_strategy = 0);
-
- /// Destructor.
- ~ACE_Handler_Caching_Utility (void);
-
- /**
- * Purge entries from the <container>. The Cleanup_Strategy will do
- * the actual job of cleanup once the entries to be cleaned up are
- * decided.
- */
- int clear_cache (CONTAINER &container,
- double purge_percent);
-
-protected:
-
- /**
- * Find the entry with minimum caching attributes. This is handler
- * specific since this utility is to be used very specifically for
- * handler who have caching_attributes for server side acched
- * connection management.
- */
- void minimum (CONTAINER &container,
- KEY *&key_to_remove,
- VALUE *&value_to_remove);
-
- /// The cleanup strategy which can be used to destroy the entries of
- /// the container.
- CLEANUP_STRATEGY_BASE *cleanup_strategy_;
-
- /// Whether the cleanup_strategy should be destroyed or not.
- int delete_cleanup_strategy_;
-
-private:
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Handler_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Handler_Caching_Utility (const ACE_Handler_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
-};
-
-///////////////////////////////////////////////////////////////////////////
-#define ACE_Null_Caching_Utility ANUTIL
-/**
- * @class ACE_Null_Caching_Utility
- *
- * @brief Defines a dummy helper class for the Caching Strategies.
- *
- * This class defines the methods commonly used by the different
- * caching strategies. For instance: <clear_cache> method which
- * decides and purges the entry from the container. @note This
- * class is be used with the Null_Caching_Strategy. The
- * Cleanup_Strategy is the callback class to which the entries to
- * be cleaned up will be delegated.
- */
-template <class KEY, class VALUE, class CONTAINER, class ITERATOR, class ATTRIBUTES>
-class ACE_Null_Caching_Utility
-{
-public:
-
- typedef ACE_Null_Cleanup_Strategy<KEY, VALUE, CONTAINER> CLEANUP_STRATEGY;
- typedef ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> CLEANUP_STRATEGY_BASE;
-
- /// Constructor.
- ACE_Null_Caching_Utility (ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> *cleanup_strategy = 0,
- int delete_cleanup_strategy = 0);
-
- /// Destructor.
- ~ACE_Null_Caching_Utility (void);
-
- /**
- * Purge entries from the <container>. The Cleanup_Strategy will do
- * the actual job of cleanup once the entries to be cleaned up are
- * decided. @note Here it is a no-op.
- */
- int clear_cache (CONTAINER &container,
- double purge_percent);
-
-protected:
-
- /**
- * Find the entry with minimum caching attributes. This is handler
- * specific since this utility is to be used very specifically for
- * handler who have caching_attributes for server side acched
- * connection management.@note Here it is a no-op.
- */
- void minimum (CONTAINER &container,
- KEY *&key_to_remove,
- VALUE *&value_to_remove);
-
- /// The cleanup strategy which can be used to destroy the entries of
- /// the container.
- CLEANUP_STRATEGY_BASE *cleanup_strategy_;
-
- /// Whether the cleanup_strategy should be destroyed or not.
- int delete_cleanup_strategy_;
-
-private:
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Null_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Null_Caching_Utility (const ACE_Null_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Caching_Utility_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Caching_Utility_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CACHING_UTILITY_H */
-
diff --git a/dep/include/ace/Capabilities.h b/dep/include/ace/Capabilities.h
deleted file mode 100644
index 8c239825e7d..00000000000
--- a/dep/include/ace/Capabilities.h
+++ /dev/null
@@ -1,220 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Capabilities.h
- *
- * $Id: Capabilities.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Arturo Montes <mitosys@colomsat.net.co>
- */
-//=============================================================================
-
-#ifndef ACE_CAPABILITIES_H
-#define ACE_CAPABILITIES_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Null_Mutex.h"
-#include "ace/Hash_Map_Manager_T.h"
-#include "ace/Containers.h"
-#include "ace/SString.h"
-#include "ace/Functor_String.h"
-
-#if defined (ACE_IS_SPLITTING)
-# include "ace/OS_NS_ctype.h"
-#endif /* ACE_IS_SPLITTING */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_CapEntry
- *
- * @brief This class is the base class for all ACE Capabilities entry
- * subclasses.
- *
- * This class is not instantiable and does not provide accessors
- * or methods. If you want to add a new kind of attribute subclass
- * this class and dynamic_cast to proper subclass.
- */
-class ACE_Export ACE_CapEntry
-{
-public:
-
- virtual ~ACE_CapEntry (void);
-
-protected:
-
- enum
- {
- ACE_INTCAP = 0,
- ACE_STRINGCAP = 1,
- ACE_BOOLCAP = 2
- };
-
- ACE_CapEntry (int captype);
-
-protected:
-
- int captype_;
-
-};
-
-/**
- * @class ACE_IntCapEntry
- *
- * @brief This class implement the ACE Integer Capability subclass.
- *
- * This is a container class for ACE Capabilities integer container
- * values.
- */
-class ACE_Export ACE_IntCapEntry : public ACE_CapEntry
-{
-public:
- ACE_IntCapEntry (int val);
- int getval (void) const;
-
-protected:
- int val_;
-};
-
-/**
- * @class ACE_StringCapEntry
- *
- * @brief This class implement the ACE String Capability subclass.
- *
- * This is a container class for ACE Capabilities String container
- * values.
- */
-class ACE_Export ACE_StringCapEntry : public ACE_CapEntry
-{
-public:
- ACE_StringCapEntry (const ACE_TString &val);
- ACE_TString getval (void) const;
-
-protected:
- ACE_TString val_;
-};
-
-/**
- * @class ACE_BoolCapEntry
- *
- * @brief This class implement the ACE Bool Capability subclass.
- *
- * This is a container class for ACE Capabilities bool container
- * values.
- */
-class ACE_Export ACE_BoolCapEntry : public ACE_CapEntry
-{
-public:
- ACE_BoolCapEntry (int val);
- int getval (void) const;
-
-protected:
- int val_;
-};
-
-/**
- * @class ACE_Capabilities
- *
- * @brief This class implement the ACE Capabilities.
- *
- * This is a container class for ACE Capabilities
- * values. Currently exist three different capability values:
- * <ACE_IntCapEntry> (integer), <ACE_BoolCapEntry> (bool) and
- * <ACE_StringCapEntry> (String). An ACE_Capabilities is a
- * unordered set of pair = (<String>, <ACE_CapEntry> *). Where
- * the first component is the name of capability and the second
- * component is a pointer to the capability value container. A
- * <FILE> is a container for ACE_Capabilities, the
- * ACE_Capabilities has a name in the file, as a termcap file.
- */
-class ACE_Export ACE_Capabilities
-{
-public:
-
- typedef ACE_Hash_Map_Manager_Ex<ACE_TString, ACE_CapEntry *, ACE_Hash<ACE_TString>, ACE_Equal_To<ACE_TString>, ACE_Null_Mutex> CAPABILITIES_MAP;
-
- /// The Constructor
- ACE_Capabilities (void);
-
- /// The Destructor
- ~ACE_Capabilities(void);
-
-public:
-
- /// Get a string entry.
- int getval (const ACE_TCHAR *ent, ACE_TString &val);
-
- /// Get an integer entry.
- int getval (const ACE_TCHAR *ent, int &val);
-
- /// Get the ACE_Capabilities name from FILE fname and load the
- /// associated capabitily entries in map.
- int getent (const ACE_TCHAR *fname, const ACE_TCHAR *name);
-
-protected:
-
- /// Parse an integer property
- const ACE_TCHAR *parse (const ACE_TCHAR *buf, int &cap);
-
- /// Parse a string property
- const ACE_TCHAR *parse (const ACE_TCHAR *buf, ACE_TString &cap);
-
- /// Fill the ACE_Capabilities with description in ent.
- int fillent(const ACE_TCHAR *ent);
-
- /// Parse a cap entry
- int parseent (const ACE_TCHAR *name, ACE_TCHAR *line);
-
- /// Get a line from FILE input stream
- int getline (FILE* fp,
- ACE_TString &line);
-
- /// Is a valid entry
- int is_entry (const ACE_TCHAR *name, const ACE_TCHAR *line);
-
- /// Reset the set of capabilities
- void resetcaps (void);
-
-private:
-
- /// This is the set of ACE_CapEntry.
- CAPABILITIES_MAP caps_;
-
-};
-
-#if defined (ACE_IS_SPLITTING)
-int
-is_empty (const ACE_TCHAR *line)
-{
- while (*line && ACE_OS::ace_isspace (*line))
- ++line;
-
- return *line == ACE_TEXT ('\0') || *line == ACE_TEXT ('#');
-}
-
-int
-is_line (const ACE_TCHAR *line)
-{
- while (*line && ACE_OS::ace_isspace (*line))
- ++line;
-
- return *line != ACE_TEXT ('\0');
-}
-#endif /* ACE_IS_SPLITTING */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Capabilities.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* __ACE_CAPABILITIES_H__ */
-
diff --git a/dep/include/ace/Capabilities.inl b/dep/include/ace/Capabilities.inl
deleted file mode 100644
index 37284b28696..00000000000
--- a/dep/include/ace/Capabilities.inl
+++ /dev/null
@@ -1,52 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Capabilities.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_CapEntry::ACE_CapEntry (int captype)
- : captype_ (captype)
-{
-}
-
-ACE_INLINE
-ACE_IntCapEntry::ACE_IntCapEntry (int val)
- : ACE_CapEntry (ACE_INTCAP),
- val_ (val)
-{
-}
-
-ACE_INLINE int
-ACE_IntCapEntry::getval (void) const
-{
- return val_;
-}
-
-ACE_INLINE
-ACE_StringCapEntry::ACE_StringCapEntry (const ACE_TString &val)
- : ACE_CapEntry (ACE_STRINGCAP),
- val_ (val)
-{
-}
-
-ACE_INLINE ACE_TString
-ACE_StringCapEntry::getval (void) const
-{
- return val_;
-}
-
-ACE_INLINE
-ACE_BoolCapEntry::ACE_BoolCapEntry (int val)
- : ACE_CapEntry (ACE_BOOLCAP),
- val_(val)
-{
-}
-
-ACE_INLINE int
-ACE_BoolCapEntry::getval (void) const
-{
- return val_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Cleanup.h b/dep/include/ace/Cleanup.h
deleted file mode 100644
index c38db701360..00000000000
--- a/dep/include/ace/Cleanup.h
+++ /dev/null
@@ -1,138 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Cleanup.h
- *
- * $Id: Cleanup.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_CLEANUP_H
-# define ACE_CLEANUP_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-lite.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include /**/ "ace/ACE_export.h"
-
-#if (defined (ACE_HAS_VERSIONED_NAMESPACE) && ACE_HAS_VERSIONED_NAMESPACE == 1)
-# include "ace/Global_Macros.h"
-# define ACE_CLEANUP_DESTROYER_NAME ACE_PREPROC_CONCATENATE(ACE_VERSIONED_NAMESPACE_NAME, _ace_cleanup_destroyer)
-#else
-# define ACE_CLEANUP_DESTROYER_NAME ace_cleanup_destroyer
-#endif /* ACE_HAS_VERSIONED_NAMESPACE == 1 */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Cleanup
- *
- * @brief Base class for objects that are cleaned by ACE_Object_Manager.
- */
-class ACE_Export ACE_Cleanup
-{
-public:
- /// No-op constructor.
- ACE_Cleanup (void);
-
- /// Destructor.
- virtual ~ACE_Cleanup (void);
-
- /// Cleanup method that, by default, simply deletes itself.
- virtual void cleanup (void *param = 0);
-};
-
-// Adapter for cleanup, used by ACE_Object_Manager.
-extern "C" ACE_Export
-void ACE_CLEANUP_DESTROYER_NAME (ACE_Cleanup *, void *param = 0);
-
-/**
- * @class ACE_Cleanup_Info
- *
- * @brief Hold cleanup information for thread/process
- */
-class ACE_Export ACE_Cleanup_Info
-{
-public:
- /// Default constructor.
- ACE_Cleanup_Info (void);
-
- /// Equality operator.
- bool operator== (const ACE_Cleanup_Info &o) const;
-
- /// Inequality operator.
- bool operator!= (const ACE_Cleanup_Info &o) const;
-
- /// Point to object that gets passed into the <cleanup_hook_>.
- void *object_;
-
- /// Cleanup hook that gets called back.
- ACE_CLEANUP_FUNC cleanup_hook_;
-
- /// Parameter passed to the <cleanup_hook_>.
- void *param_;
-};
-
-class ACE_Cleanup_Info_Node;
-
-/**
- * @class ACE_OS_Exit_Info
- *
- * @brief Hold Object Manager cleanup (exit) information.
- *
- * For internal use by the ACE library, only.
- */
-class ACE_Export ACE_OS_Exit_Info
-{
-public:
- /// Default constructor.
- ACE_OS_Exit_Info (void);
-
- /// Destructor.
- ~ACE_OS_Exit_Info (void);
-
- /// Use to register a cleanup hook.
- int at_exit_i (void *object, ACE_CLEANUP_FUNC cleanup_hook, void *param);
-
- /// Look for a registered cleanup hook object. Returns 1 if already
- /// registered, 0 if not.
- int find (void *object);
-
- /// Call all registered cleanup hooks, in reverse order of
- /// registration.
- void call_hooks ();
-
-private:
- /**
- * Keeps track of all registered objects. The last node is only
- * used to terminate the list (it doesn't contain a valid
- * ACE_Cleanup_Info).
- */
- ACE_Cleanup_Info_Node *registered_objects_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/Cleanup.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_CLEANUP_H */
-
diff --git a/dep/include/ace/Cleanup.inl b/dep/include/ace/Cleanup.inl
deleted file mode 100644
index 9c36d6b1ffd..00000000000
--- a/dep/include/ace/Cleanup.inl
+++ /dev/null
@@ -1,12 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Cleanup.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Cleanup::ACE_Cleanup (void)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Cleanup_Strategies_T.h b/dep/include/ace/Cleanup_Strategies_T.h
deleted file mode 100644
index 89775562f6e..00000000000
--- a/dep/include/ace/Cleanup_Strategies_T.h
+++ /dev/null
@@ -1,149 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Cleanup_Strategies_T.h
- *
- * $Id: Cleanup_Strategies_T.h 81388 2008-04-23 14:02:05Z johnnyw $
- *
- * @author Kirthika Parameswaran <kirthika@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef CLEANUP_STRATEGIES_H
-#define CLEANUP_STRATEGIES_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// For linkers that cant grok long names.
-#define ACE_Cleanup_Strategy ACLE
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Cleanup_Strategy
- *
- * @brief Defines a default strategy to be followed for cleaning up
- * entries from a map which is the container.
- *
- * By default the entry to be cleaned up is removed from the
- * container.
- */
-template <class KEY, class VALUE, class CONTAINER>
-class ACE_Cleanup_Strategy
-{
-
-public:
-
- /// Destructor.
- virtual ~ACE_Cleanup_Strategy (void);
-
- /// The method which will do the cleanup of the entry in the container.
- virtual int cleanup (CONTAINER &container, KEY *key, VALUE *value);
-};
-
-//////////////////////////////////////////////////////////////////////
-#define ACE_Recyclable_Handler_Cleanup_Strategy ARHCLE
-
-/**
- * @class ACE_Recyclable_Handler_Cleanup_Strategy
- *
- * @brief Defines a strategy to be followed for cleaning up
- * entries which are svc_handlers from a container.
- *
- * The entry to be cleaned up is removed from the container.
- * Here, since we are dealing with svc_handlers specifically, we
- * perform a couple of extra operations. @note To be used when
- * the handler is recyclable.
- */
-template <class KEY, class VALUE, class CONTAINER>
-class ACE_Recyclable_Handler_Cleanup_Strategy : public ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER>
-{
-
-public:
-
- /// The method which will do the cleanup of the entry in the container.
- virtual int cleanup (CONTAINER &container, KEY *key, VALUE *value);
-};
-
-//////////////////////////////////////////////////////////////////////
-#define ACE_Refcounted_Recyclable_Handler_Cleanup_Strategy ARRHCLE
-
-/**
- * @class ACE_Refcounted_Recyclable_Handler_Cleanup_Strategy
- *
- * @brief Defines a strategy to be followed for cleaning up
- * entries which are svc_handlers from a container.
- *
- * The entry to be cleaned up is removed from the container.
- * Here, since we are dealing with recyclable svc_handlers with
- * addresses which are refcountable specifically, we perform a
- * couple of extra operations and do so without any locking.
- */
-template <class KEY, class VALUE, class CONTAINER>
-class ACE_Refcounted_Recyclable_Handler_Cleanup_Strategy : public ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER>
-{
-public:
- /// The method which will do the cleanup of the entry in the container.
- virtual int cleanup (CONTAINER &container, KEY *key, VALUE *value);
-};
-
-//////////////////////////////////////////////////////////////////////
-
-/**
- * @class ACE_Handler_Cleanup_Strategy
- *
- * @brief Defines a strategy to be followed for cleaning up
- * entries which are svc_handlers from a container.
- *
- * The entry to be cleaned up is removed from the container.
- * Here, since we are dealing with svc_handlers specifically, we
- * perform a couple of extra operations. @note This cleanup strategy
- * should be used in the case when the handler has the caching
- * attributes.
- */
-template <class KEY, class VALUE, class CONTAINER>
-class ACE_Handler_Cleanup_Strategy : public ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER>
-{
-public:
- /// The method which will do the cleanup of the entry in the container.
- virtual int cleanup (CONTAINER &container, KEY *key, VALUE *value);
-};
-
-//////////////////////////////////////////////////////////////////////
-#define ACE_Null_Cleanup_Strategy ANCLE
-
-/**
- * @class ACE_Null_Cleanup_Strategy
- *
- * @brief Defines a do-nothing implementation of the cleanup strategy.
- *
- * This class simply does nothing at all! Can be used to nullify
- * the effect of the Cleanup Strategy.
- */
-template <class KEY, class VALUE, class CONTAINER>
-class ACE_Null_Cleanup_Strategy : public ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER>
-{
-public:
- /// The dummy cleanup method.
- virtual int cleanup (CONTAINER &container, KEY *key, VALUE *value);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Cleanup_Strategies_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Cleanup_Strategies_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* CLEANUP_STRATEGIES_H */
-
diff --git a/dep/include/ace/Codecs.h b/dep/include/ace/Codecs.h
deleted file mode 100644
index 5b1b8bbde70..00000000000
--- a/dep/include/ace/Codecs.h
+++ /dev/null
@@ -1,121 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Codecs.h
- *
- * $Id: Codecs.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Krishnakumar B <kitty@cs.wustl.edu>
- *
- * Codecs is a generic wrapper for various encoding and decoding
- * mechanisms. Currently it includes Base64 content transfer-encoding as
- * specified by RFC 2045, Multipurpose Internet Mail Extensions (MIME) Part
- * One: Format of Internet Message Bodies.
- *
- */
-//=============================================================================
-
-#ifndef ACE_CODECS_H
-#define ACE_CODECS_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Basic_Types.h"
-#include "ace/Global_Macros.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Base64
- *
- * @brief Encode/Decode a stream of bytes according to Base64 encoding.
- *
- * This class provides methods to encode or decode a stream of bytes
- * to/from Base64 encoding. It doesn't convert the input stream to a
- * canonical form before encoding.
- *
- */
-class ACE_Export ACE_Base64
-{
-public:
-
- //@{
-
- /**
- * Encodes a stream of bytes to Base64 data
- *
- * @param input Binary data in byte stream.
- * @param input_len Length of the byte stream.
- * @param output_len Length of the encoded Base64 byte stream.
- * @param is_chunked If true, terminate 72 character blocks with newline
- * @return Encoded Base64 data in byte stream or NULL if input data cannot
- * be encoded.
- */
-
- static ACE_Byte* encode (const ACE_Byte* input,
- const size_t input_len,
- size_t* output_len,
- bool is_chunked = true);
- /**
- * Decodes a stream of Base64 to bytes data
- *
- * @param input Encoded Base64 data in byte stream.
- * @param output_len Length of the binary byte stream.
- * @return Binary data in byte stream or NULL if input data cannot
- * be encoded.
- */
- static ACE_Byte* decode (const ACE_Byte* input,
- size_t* output_len);
-
- /**
- * Return the length of the encoded input data
- *
- * @param input Encoded Base64 data in byte stream.
- * @return Length of the encoded Base64 data.
- *
- */
- static size_t length (const ACE_Byte* input);
-
- //@}
-
-protected:
-
- // Prevent default construction.
- ACE_Base64 (void) {}
-
-private:
-
- // Preventing copying and assignment.
- ACE_Base64 (ACE_Base64 const &);
- ACE_Base64 & operator= (ACE_Base64 const &);
-
- /// Initialize the tables for encoding/decoding.
- static void init (void);
-
-private:
-
- /// Alphabet used for decoding i.e decoder_[alphabet_[i = 0..63]] = i
- static ACE_Byte decoder_[];
-
- /// Alphabet used to check valid range of encoded input i.e
- /// member_[alphabet_[0..63]] = 1
- static ACE_Byte member_[];
-
- /// Boolean to denote whether initialization is complete
- static bool init_;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CODECS_H */
-
diff --git a/dep/include/ace/Codeset_IBM1047.h b/dep/include/ace/Codeset_IBM1047.h
deleted file mode 100644
index 5e19763f94c..00000000000
--- a/dep/include/ace/Codeset_IBM1047.h
+++ /dev/null
@@ -1,127 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Codeset_IBM1047.h
- *
- * $Id: Codeset_IBM1047.h 81388 2008-04-23 14:02:05Z johnnyw $
- *
- * Declares the arrays required to convert between ISO8859 (aka
- * Latin/1) and IBM1047 (aka EBCDIC).
- *
- * @author Jim Rogers (jrogers@viasoft.com)
- */
-//=============================================================================
-
-#ifndef ACE_CODESET_IMB1047_H
-#define ACE_CODESET_IMB1047_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_EBCDIC)
-
-#include "ace/CDR_Stream.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// ****************************************************************
-
-/**
- * @class ACE_IBM1047_ISO8859
- *
- * @brief Codeset translation specialization.
- *
- * This class performs the codeset translation:
- * - Native: IBM_1047 (i.e. EBCDIC)
- * - Stream: ISO-8859 (i.e. Latin/1)
- */
-class ACE_Export ACE_IBM1047_ISO8859 : public ACE_Char_Codeset_Translator
-{
-public:
- /// A do nothing constructor.
- ACE_IBM1047_ISO8859 (void);
-
- /// Virtual destruction
- virtual ~ACE_IBM1047_ISO8859 (void);
-
- // = Documented in $ACE_ROOT/ace/CDR_Stream.h
- virtual ACE_CDR::Boolean read_char (ACE_InputCDR &,
- ACE_CDR::Char &);
- virtual ACE_CDR::Boolean read_string (ACE_InputCDR &,
- ACE_CDR::Char *&);
- virtual ACE_CDR::Boolean read_char_array (ACE_InputCDR &,
- ACE_CDR::Char *,
- ACE_CDR::ULong);
- virtual ACE_CDR::Boolean write_char (ACE_OutputCDR &,
- ACE_CDR::Char);
- virtual ACE_CDR::Boolean write_string (ACE_OutputCDR &,
- ACE_CDR::ULong,
- const ACE_CDR::Char *);
- virtual ACE_CDR::Boolean write_char_array (ACE_OutputCDR &,
- const ACE_CDR::Char *,
- ACE_CDR::ULong);
-
- /// Return the native codeset ID as defined in the OSF code and character
- /// set registry, 0x10020417
- virtual ACE_CDR::ULong ncs ();
- /// Return the translated codeset ID as defined in the OSF code and character
- /// set registry, 0x00010001
- virtual ACE_CDR::ULong tcs ();
-};
-
-/**
- * @class ACE_ISO8859_IBM1047
- *
- * @brief Codeset translation specialization.
- *
- * This class performs the codeset translation:
- * - Native: ISO-8859 (i.e. Latin/1)
- * - Stream: IBM-1047 (i.e. EBCDIC)
- */
-class ACE_Export ACE_ISO8859_IBM1047 : public ACE_Char_Codeset_Translator
-{
-public:
- /// A do nothing constructor.
- ACE_ISO8859_IBM1047 (void);
-
- /// Virtual destruction
- virtual ~ACE_ISO8859_IBM1047 (void);
-
- // = Documented in $ACE_ROOT/ace/CDR_Stream.h
- virtual ACE_CDR::Boolean read_char (ACE_InputCDR &,
- ACE_CDR::Char &);
- virtual ACE_CDR::Boolean read_string (ACE_InputCDR &,
- ACE_CDR::Char *&);
- virtual ACE_CDR::Boolean read_char_array (ACE_InputCDR &,
- ACE_CDR::Char *,
- ACE_CDR::ULong);
- virtual ACE_CDR::Boolean write_char (ACE_OutputCDR &,
- ACE_CDR::Char);
- virtual ACE_CDR::Boolean write_string (ACE_OutputCDR &,
- ACE_CDR::ULong,
- const ACE_CDR::Char *);
- virtual ACE_CDR::Boolean write_char_array (ACE_OutputCDR &,
- const ACE_CDR::Char *,
- ACE_CDR::ULong);
-
- /// Return the native codeset ID as defined in the OSF code and character
- /// set registry, 0x00010001
- virtual ACE_CDR::ULong ncs ();
- /// Return the translated codeset ID as defined in the OSF code and character
- /// set registry, 0x10020417
- virtual ACE_CDR::ULong tcs ();
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_EBCDIC */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CODESET_IMB1047_H */
-
diff --git a/dep/include/ace/Codeset_Registry.h b/dep/include/ace/Codeset_Registry.h
deleted file mode 100644
index 80887d9a106..00000000000
--- a/dep/include/ace/Codeset_Registry.h
+++ /dev/null
@@ -1,105 +0,0 @@
-// -*- C++ -*-
-//=============================================================================
-/**
- * @file Codeset_Registry.h
- *
- * $Id: Codeset_Registry.h 81348 2008-04-14 09:00:32Z johnnyw $
- *
- * ACE wrapper around access functions for the OSF's DCE codeset registry
- * access functions
- *
- * For environments that intrinsicly support the DCE defined access functions,
- * the methods in this class are simply wrappers. On other platforms, emulation
- * is provided. The motivation for this class is to support interoperability
- * via translators and the CDR streams, primarily in TAO, but this capability
- * is not restricted to CORBA.
- *
- * The emulated functionality supports Open Group RFC #40, currently RFC 40.2,
- * www.opengroup.org/tech/rfc/rfc40.2.html
- *
- * @author Phil Mesnier <mesnier_p@ociweb.com>
- */
-//=============================================================================
-
-#ifndef ACE_CODESET_REGISTRY_H
-#define ACE_CODESET_REGISTRY_H
-
-#include /**/ "ace/pre.h"
-#include "ace/SString.h"
-#include "ace/CDR_Base.h"
-#include "ace/Codeset_Symbols.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_DCE_CODESET_REGISTRY)
-#include /**/ <dce/rpc.h>
-#endif /* ACE_HAS_DCE_CODESET_REGISTRY */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Export ACE_Codeset_Registry
-{
-public:
-
- /// Based on a locale string, find the registry value and optional codeset
- /// collection. This wraps the dce_cs_loc_to_rgy function, or emulates it.
- static int locale_to_registry (const ACE_CString &locale,
- ACE_CDR::ULong &codeset_id,
- ACE_CDR::UShort * = 0,
- ACE_CDR::UShort ** = 0);
-
- /// Based on a registry value, find the locale string and optional codeset
- /// collection. This wraps the dce_cs_rgy_to_loc function, or emulates it.
- static int registry_to_locale (ACE_CDR::ULong codeset_id,
- ACE_CString &locale,
- ACE_CDR::UShort * = 0,
- ACE_CDR::UShort ** = 0);
-
- /// Tell if two codesets are compatible. This wraps the
- /// rpc_cs_char_set_compat_check function.
- static int is_compatible (ACE_CDR::ULong codeset_id,
- ACE_CDR::ULong other);
-
- /// Return the max number of bytes required to represent a single character.
- /// This wraps the rpc_rgy_get_max_bytes function.
- static ACE_CDR::Short get_max_bytes (ACE_CDR::ULong codeset_id);
-
- enum {max_charsets_ = 5};
-protected:
- typedef struct {
- const char * desc_;
- const char * loc_name_;
- ACE_CDR::ULong codeset_id_;
- ACE_CDR::UShort num_sets_;
- ACE_CDR::UShort char_sets_[max_charsets_];
- ACE_CDR::UShort max_bytes_;
- } registry_entry;
-
-private:
- static size_t const num_registry_entries_;
- static registry_entry const registry_db_[];
-
- static int locale_to_registry_i (const ACE_CString &locale,
- ACE_CDR::ULong &codeset_id,
- ACE_CDR::UShort * = 0,
- ACE_CDR::UShort ** = 0);
- static int registry_to_locale_i (ACE_CDR::ULong codeset_id,
- ACE_CString &locale,
- ACE_CDR::UShort * = 0,
- ACE_CDR::UShort ** = 0);
- static int is_compatible_i (ACE_CDR::ULong codeset_id,
- ACE_CDR::ULong other);
- static ACE_CDR::Short get_max_bytes_i (ACE_CDR::ULong codeset_id);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Codeset_Registry.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CODESET_REGISTRY_H */
-
diff --git a/dep/include/ace/Codeset_Registry.inl b/dep/include/ace/Codeset_Registry.inl
deleted file mode 100644
index 4419cf5e7fc..00000000000
--- a/dep/include/ace/Codeset_Registry.inl
+++ /dev/null
@@ -1,102 +0,0 @@
-// -*- C++ -*-
-//=============================================================================
-/**
- * @file Codeset_Registry.inl
- *
- * $Id: Codeset_Registry.inl 80826 2008-03-04 14:51:23Z wotte $
- *
- * ACE wrapper around access functions for the OSF's DCE codeset registry
- * access functions - the inline functions either call the system supplied
- * DCE based codeset regsitry function, or calls the emulation
- *
- *
- * @author Phil Mesnier <mesnier_p@ociweb.com>
- */
-//=============================================================================
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-int
-ACE_Codeset_Registry::locale_to_registry(const ACE_CString &locale,
- ACE_CDR::ULong &codeset_id,
- ACE_CDR::UShort *num_sets,
- ACE_CDR::UShort **char_sets)
-{
-#if defined (ACE_HAS_DCE_CODESET_REGISTRY)
- error_status_t result;
- dce_cs_loc_to_rgy (locale.c_str(),
- &codeset_id,
- num_sets,
- char_sets,
- &result);
- return (result == dce_cs_c_ok) ? 1 : 0;
-#else
- return ACE_Codeset_Registry::locale_to_registry_i (locale,
- codeset_id,
- num_sets,
- char_sets);
-#endif /* ACE_HAS_DCE_CODESET_REGISTRY */
-}
-
-// based on a registry value, find the locale string and optional codeset
-// collection. This wraps the dce_cs_rgy_to_loc function, or emulates it.
-ACE_INLINE
-int
-ACE_Codeset_Registry::registry_to_locale(ACE_CDR::ULong codeset_id,
- ACE_CString &locale,
- ACE_CDR::UShort *num_sets,
- ACE_CDR::UShort **char_sets)
-{
-#if defined (ACE_HAS_DCE_CODESET_REGISTRY)
- error_status_t result;
- char *buffer;
- dce_cs_rgy_to_loc (codeset_id,
- &buffer,
- num_sets,
- char_sets,
- &result);
- locale.set(buffer); // does a copy :-(
- free (buffer);
- return (result == dce_cs_c_ok) ? 1 : 0;
-#else
- return ACE_Codeset_Registry::registry_to_locale_i (codeset_id,
- locale,
- num_sets,
- char_sets);
-#endif /* ACE_HAS_DCE_CODESET_REGISTRY */
-}
-
-// Tell if two codesets are compatible. This wraps the
-// rpc_cs_char_set_compat_check function.
-ACE_INLINE
-int
-ACE_Codeset_Registry::is_compatible (ACE_CDR::ULong codeset_id,
- ACE_CDR::ULong other)
-{
-#if defined (ACE_HAS_DCE_CODESET_REGISTRY)
- error_status_t result;
- rpc_cs_char_set_compat_check(codeset_id,other,&result);
- return (result == rpc_s_ok) ? 1 : 0;
-#else
- return ACE_Codeset_Registry::is_compatible_i (codeset_id,other);
-#endif /* ACE_HAS_DCE_CODESET_REGISTRY */
-}
-
-// Return the max number of bytes required to represent a single character.
-// This wraps the rpc_rgy_get_max_bytes function.
-ACE_INLINE
-ACE_CDR::Short
-ACE_Codeset_Registry::get_max_bytes (ACE_CDR::ULong codeset_id)
-{
-#if defined (ACE_HAS_DCE_CODESET_REGISTRY)
- error_status_t result;
- short max_bytes;
- rpc_rgy_get_max_bytes(codeset_id,&max_bytes,&result);
- return (result == rpc_s_ok) ? (short)max_bytes : 0;
-#else
- return ACE_Codeset_Registry::get_max_bytes_i (codeset_id);
-#endif /* ACE_HAS_DCE_CODESET_REGISTRY */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Codeset_Symbols.h b/dep/include/ace/Codeset_Symbols.h
deleted file mode 100644
index 2cfb6bc26b6..00000000000
--- a/dep/include/ace/Codeset_Symbols.h
+++ /dev/null
@@ -1,221 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Codeset_Symbols.h
- *
- * $Id: Codeset_Symbols.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Symbolic names for codeset ids.
- *
- * @author Dale Wilson (wilson_d@ociweb.com)
- */
-//=============================================================================
-#ifndef CODESET_SYMBOLS_H
-#define CODESET_SYMBOLS_H
-
-// These numbers are assigned by the OpenGroup, a database is
-// available at
-//
-// ftp://ftp.opengroup.org/pub/code_set_registry/
-//
-// Alas, the database is in a semi-regular text file -- difficult to use.
-// The following C/C++-friendly version of the codeset ids was captured
-// from Version 1.2g of the registry.
-//
-#define ACE_CODESET_ID_ISO_8859_1 0x00010001U
-#define ACE_CODESET_ID_ISO_8859_2 0x00010002U
-#define ACE_CODESET_ID_ISO_8859_3 0x00010003U
-#define ACE_CODESET_ID_ISO_8859_4 0x00010004U
-#define ACE_CODESET_ID_ISO_8859_5 0x00010005U
-#define ACE_CODESET_ID_ISO_8859_6 0x00010006U
-#define ACE_CODESET_ID_ISO_8859_7 0x00010007U
-#define ACE_CODESET_ID_ISO_8859_8 0x00010008U
-#define ACE_CODESET_ID_ISO_8859_9 0x00010009U
-#define ACE_CODESET_ID_ISO_8859_10 0x0001000AU
-#define ACE_CODESET_ID_ISO_8859_15 0x0001000FU
-#define ACE_CODESET_ID_ISO_646 0x00010020U
-#define ACE_CODESET_ID_ISO_UCS_2_LEVEL_1 0x00010100U
-#define ACE_CODESET_ID_ISO_UCS_2_LEVEL_2 0x00010101U
-#define ACE_CODESET_ID_ISO_UCS_2_LEVEL_3 0x00010102U
-#define ACE_CODESET_ID_ISO_UCS_4_LEVEL_1 0x00010104U
-#define ACE_CODESET_ID_ISO_UCS_4_LEVEL_2 0x00010105U
-#define ACE_CODESET_ID_ISO_UCS_4_LEVEL_3 0x00010106U
-#define ACE_CODESET_ID_ISO_UTF_8 0x00010108U
-#define ACE_CODESET_ID_ISO_UTF_16 0x00010109U
-#define ACE_CODESET_ID_JIS_X0201 0x00030001U
-#define ACE_CODESET_ID_JIS_X0208_1978 0x00030004U
-#define ACE_CODESET_ID_JIS_X0208_1983 0x00030005U
-#define ACE_CODESET_ID_JIS_X0208_1990 0x00030006U
-#define ACE_CODESET_ID_JIS_X0212 0x0003000AU
-#define ACE_CODESET_ID_JIS_EUCJP 0x00030010U
-#define ACE_CODESET_ID_KS_C5601 0x00040001U
-#define ACE_CODESET_ID_KS_C5657 0x00040002U
-#define ACE_CODESET_ID_KS_EUCKR 0x0004000AU
-#define ACE_CODESET_ID_CNS_11643_1986 0x00050001U
-#define ACE_CODESET_ID_CNS_11643_1992 0x00050002U
-#define ACE_CODESET_ID_CNS_EUCTW_1991 0x0005000AU
-#define ACE_CODESET_ID_CNS_EUCTW_1993 0x00050010U
-#define ACE_CODESET_ID_TIS_620_25290X000B0001U
-#define ACE_CODESET_ID_TTB_CCDC 0x000D0001U
-#define ACE_CODESET_ID_OSF_JAPANESE_UJIS 0x05000010U
-#define ACE_CODESET_ID_OSF_JAPANESE_SJIS_1 0x05000011U
-#define ACE_CODESET_ID_OSF_JAPANESE_SJIS_2 0x05000012U
-#define ACE_CODESET_ID_XOPEN_UTF_8 0x05010001U
-#define ACE_CODESET_ID_JVC_EUCJP 0x05020001U
-#define ACE_CODESET_ID_JVC_SJIS 0x05020002U
-#define ACE_CODESET_ID_DEC_KANJI 0x10000001U
-#define ACE_CODESET_ID_SUPER_DEC_KANJI 0x10000002U
-#define ACE_CODESET_ID_DEC_SHIFT_JIS 0x10000003U
-#define ACE_CODESET_ID_HP_ROMAN8 0x10010001U
-#define ACE_CODESET_ID_HP_KANA8 0x10010002U
-#define ACE_CODESET_ID_HP_ARABIC8 0x10010003U
-#define ACE_CODESET_ID_HP_GREEK8 0x10010004U
-#define ACE_CODESET_ID_HP_HEBREW8 0x10010005U
-#define ACE_CODESET_ID_HP_TURKISH8 0x10010006U
-#define ACE_CODESET_ID_HP15CN 0x10010007U
-#define ACE_CODESET_ID_HP_BIG5 0x10010008U
-#define ACE_CODESET_ID_HP_JAPANESE15__SJIS_ 0x10010009U
-#define ACE_CODESET_ID_HP_SJISHI 0x1001000AU
-#define ACE_CODESET_ID_HP_SJISPC 0x1001000BU
-#define ACE_CODESET_ID_HP_UJIS 0x1001000CU
-#define ACE_CODESET_ID_IBM_037 0x10020025U
-#define ACE_CODESET_ID_IBM_273 0x10020111U
-#define ACE_CODESET_ID_IBM_277 0x10020115U
-#define ACE_CODESET_ID_IBM_278 0x10020116U
-#define ACE_CODESET_ID_IBM_280 0x10020118U
-#define ACE_CODESET_ID_IBM_282 0x1002011AU
-#define ACE_CODESET_ID_IBM_284 0x1002011CU
-#define ACE_CODESET_ID_IBM_285 0x1002011DU
-#define ACE_CODESET_ID_IBM_290 0x10020122U
-#define ACE_CODESET_ID_IBM_297 0x10020129U
-#define ACE_CODESET_ID_IBM_300 0x1002012CU
-#define ACE_CODESET_ID_IBM_301 0x1002012DU
-#define ACE_CODESET_ID_IBM_420 0x100201A4U
-#define ACE_CODESET_ID_IBM_424 0x100201A8U
-#define ACE_CODESET_ID_IBM_437 0x100201B5U
-#define ACE_CODESET_ID_IBM_500 0x100201F4U
-#define ACE_CODESET_ID_IBM_833 0x10020341U
-#define ACE_CODESET_ID_IBM_834 0x10020342U
-#define ACE_CODESET_ID_IBM_835 0x10020343U
-#define ACE_CODESET_ID_IBM_836 0x10020344U
-#define ACE_CODESET_ID_IBM_837 0x10020345U
-#define ACE_CODESET_ID_IBM_838 0x10020346U
-#define ACE_CODESET_ID_IBM_839 0x10020347U
-#define ACE_CODESET_ID_IBM_850 0x10020352U
-#define ACE_CODESET_ID_IBM_852 0x10020354U
-#define ACE_CODESET_ID_IBM_855 0x10020357U
-#define ACE_CODESET_ID_IBM_856 0x10020358U
-#define ACE_CODESET_ID_IBM_857 0x10020359U
-#define ACE_CODESET_ID_IBM_861 0x1002035DU
-#define ACE_CODESET_ID_IBM_862 0x1002035EU
-#define ACE_CODESET_ID_IBM_863 0x1002035FU
-#define ACE_CODESET_ID_IBM_864 0x10020360U
-#define ACE_CODESET_ID_IBM_866 0x10020362U
-#define ACE_CODESET_ID_IBM_868 0x10020364U
-#define ACE_CODESET_ID_IBM_869 0x10020365U
-#define ACE_CODESET_ID_IBM_870 0x10020366U
-#define ACE_CODESET_ID_IBM_871 0x10020367U
-#define ACE_CODESET_ID_IBM_874 0x1002036AU
-#define ACE_CODESET_ID_IBM_875 0x1002036BU
-#define ACE_CODESET_ID_IBM_880 0x10020370U
-#define ACE_CODESET_ID_IBM_891 0x1002037BU
-#define ACE_CODESET_ID_IBM_896 0x10020380U
-#define ACE_CODESET_ID_IBM_897 0x10020381U
-#define ACE_CODESET_ID_IBM_903 0x10020387U
-#define ACE_CODESET_ID_IBM_904 0x10020388U
-#define ACE_CODESET_ID_IBM_918 0x10020396U
-#define ACE_CODESET_ID_IBM_921 0x10020399U
-#define ACE_CODESET_ID_IBM_922 0x1002039AU
-#define ACE_CODESET_ID_IBM_926 0x1002039EU
-#define ACE_CODESET_ID_IBM_927 0x1002039FU
-#define ACE_CODESET_ID_IBM_928 0x100203A0U
-#define ACE_CODESET_ID_IBM_929 0x100203A1U
-#define ACE_CODESET_ID_IBM_930 0x100203A2U
-#define ACE_CODESET_ID_IBM_932 0x100203A4U
-#define ACE_CODESET_ID_IBM_933 0x100203A5U
-#define ACE_CODESET_ID_IBM_934 0x100203A6U
-#define ACE_CODESET_ID_IBM_935 0x100203A7U
-#define ACE_CODESET_ID_IBM_936 0x100203A8U
-#define ACE_CODESET_ID_IBM_937 0x100203A9U
-#define ACE_CODESET_ID_IBM_938 0x100203AAU
-#define ACE_CODESET_ID_IBM_939 0x100203ABU
-#define ACE_CODESET_ID_IBM_941 0x100203ADU
-#define ACE_CODESET_ID_IBM_942 0x100203AEU
-#define ACE_CODESET_ID_IBM_943 0x100203AFU
-#define ACE_CODESET_ID_IBM_946 0x100203B2U
-#define ACE_CODESET_ID_IBM_947 0x100203B3U
-#define ACE_CODESET_ID_IBM_948 0x100203B4U
-#define ACE_CODESET_ID_IBM_949 0x100203B5U
-#define ACE_CODESET_ID_IBM_950 0x100203B6U
-#define ACE_CODESET_ID_IBM_951 0x100203B7U
-#define ACE_CODESET_ID_IBM_955 0x100203BBU
-#define ACE_CODESET_ID_IBM_964 0x100203C4U
-#define ACE_CODESET_ID_IBM_970 0x100203CAU
-#define ACE_CODESET_ID_IBM_1006 0x100203EEU
-#define ACE_CODESET_ID_IBM_1025 0x10020401U
-#define ACE_CODESET_ID_IBM_1026 0x10020402U
-#define ACE_CODESET_ID_IBM_1027 0x10020403U
-#define ACE_CODESET_ID_IBM_1040 0x10020410U
-#define ACE_CODESET_ID_IBM_1041 0x10020411U
-#define ACE_CODESET_ID_IBM_1043 0x10020413U
-#define ACE_CODESET_ID_IBM_1046 0x10020416U
-#define ACE_CODESET_ID_IBM_1047 0x10020417U
-#define ACE_CODESET_ID_IBM_1088 0x10020440U
-#define ACE_CODESET_ID_IBM_1097 0x10020449U
-#define ACE_CODESET_ID_IBM_1098 0x1002044AU
-#define ACE_CODESET_ID_IBM_1112 0x10020458U
-#define ACE_CODESET_ID_IBM_1114 0x1002045AU
-#define ACE_CODESET_ID_IBM_1115 0x1002045BU
-#define ACE_CODESET_ID_IBM_1122 0x10020462U
-#define ACE_CODESET_ID_IBM_1250 0x100204E2U
-#define ACE_CODESET_ID_IBM_1251 0x100204E3U
-#define ACE_CODESET_ID_IBM_1252 0x100204E4U
-#define ACE_CODESET_ID_IBM_1253 0x100204E5U
-#define ACE_CODESET_ID_IBM_1254 0x100204E6U
-#define ACE_CODESET_ID_IBM_1255 0x100204E7U
-#define ACE_CODESET_ID_IBM_1256 0x100204E8U
-#define ACE_CODESET_ID_IBM_1257 0x100204E9U
-#define ACE_CODESET_ID_IBM_1380 0x10020564U
-#define ACE_CODESET_ID_IBM_1381 0x10020565U
-#define ACE_CODESET_ID_IBM_1383 0x10020567U
-#define ACE_CODESET_ID_IBM_4396 0x1002112CU
-#define ACE_CODESET_ID_IBM_4946 0x10021352U
-#define ACE_CODESET_ID_IBM_4948 0x10021354U
-#define ACE_CODESET_ID_IBM_4951 0x10021357U
-#define ACE_CODESET_ID_IBM_4952 0x10021358U
-#define ACE_CODESET_ID_IBM_4953 0x10021359U
-#define ACE_CODESET_ID_IBM_4960 0x10021360U
-#define ACE_CODESET_ID_IBM_4964 0x10021364U
-#define ACE_CODESET_ID_IBM_4965 0x10021365U
-#define ACE_CODESET_ID_IBM_5026 0x100213A2U
-#define ACE_CODESET_ID_IBM_5031 0x100213A7U
-#define ACE_CODESET_ID_IBM_5035 0x100213ABU
-#define ACE_CODESET_ID_IBM_5048 0x100213B8U
-#define ACE_CODESET_ID_IBM_5049 0x100213B9U
-#define ACE_CODESET_ID_IBM_5067 0x100213CBU
-#define ACE_CODESET_ID_IBM_8612 0x100221A4U
-#define ACE_CODESET_ID_IBM_9025 0x10022341U
-#define ACE_CODESET_ID_IBM_9026 0x10022342U
-#define ACE_CODESET_ID_IBM_9030 0x10022346U
-#define ACE_CODESET_ID_IBM_9056 0x10022360U
-#define ACE_CODESET_ID_IBM_9066 0x1002236AU
-#define ACE_CODESET_ID_IBM_9125 0x100223A5U
-#define ACE_CODESET_ID_IBM_25426 0x10026352U
-#define ACE_CODESET_ID_IBM_25432 0x10026358U
-#define ACE_CODESET_ID_IBM_1042 0x10026412U
-#define ACE_CODESET_ID_IBM_28709 0x10027025U
-#define ACE_CODESET_ID_IBM_33624 0x10028358U
-#define ACE_CODESET_ID_IBM_33722 0x100283BAU
-#define ACE_CODESET_ID_HTCSJIS 0x10030001U
-#define ACE_CODESET_ID_HTCUJIS 0x10030002U
-#define ACE_CODESET_ID_FUJITSU_U90 0x10040001U
-#define ACE_CODESET_ID_FUJITSU_S90 0x10040002U
-#define ACE_CODESET_ID_FUJITSU_R90 0x10040003U
-#define ACE_CODESET_ID_EBCDIC_ASCII_AND_JEF 0x10040004U
-#define ACE_CODESET_ID_EBCDIC_KATAKANA_AND_JEF 0x10040005U
-#define ACE_CODESET_ID_EBCDIC_JAPANESE_ENGLISH_AND_JEF 0x10040006U
-
-#define ACE_CODESET_ID_TAO_BACKWARD_COMPATIBLE 0xf54414F0U
-#endif // CODESET_SYMBOLS_H
-
diff --git a/dep/include/ace/Condition_Recursive_Thread_Mutex.h b/dep/include/ace/Condition_Recursive_Thread_Mutex.h
deleted file mode 100644
index 8625aa2fcea..00000000000
--- a/dep/include/ace/Condition_Recursive_Thread_Mutex.h
+++ /dev/null
@@ -1,119 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Condition_Recursive_Thread_Mutex.h
- *
- * $Id: Condition_Recursive_Thread_Mutex.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_CONDITION_RECURSIVE_THREAD_MUTEX_H
-#define ACE_CONDITION_RECURSIVE_THREAD_MUTEX_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_HAS_THREADS)
-# include "ace/Null_Condition.h"
-#else /* ACE_HAS_THREADS */
-#include "ace/Recursive_Thread_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class ACE_LOCK> class ACE_Condition;
-
-/**
- * @class ACE_Condition<ACE_Recursive_Thread_Mutex>
- *
- * @brief ACE_Condition template specialization written using
- * @a ACE_Recursive_Thread_Mutex. This allows threads to block until
- * shared data changes state using recursive mutexes.
- */
-template<>
-class ACE_Export ACE_Condition<ACE_Recursive_Thread_Mutex>
-{
-public:
- /// Initialize the condition variable with a recursive mutex.
- ACE_Condition (ACE_Recursive_Thread_Mutex &m);
-
- /// Implicitly destroy the condition variable.
- ~ACE_Condition (void);
-
- /**
- * Explicitly destroy the condition variable. Note that only one
- * thread should call this method since it doesn't protect against
- * race conditions.
- */
- int remove (void);
-
- /**
- * Block on condition, or until absolute time-of-day has passed. If
- * abstime == 0 use "blocking" <wait> semantics. Else, if <abstime>
- * != 0 and the call times out before the condition is signaled
- * <wait> returns -1 and sets errno to ETIME.
- */
- int wait (const ACE_Time_Value *abstime = 0);
-
- /**
- * Block on condition or until absolute time-of-day has passed. If
- * abstime == 0 use "blocking" wait() semantics on the recursive @a mutex
- * passed as a parameter (this is useful if you need to store the
- * <Condition> in shared memory). Else, if <abstime> != 0 and the
- * call times out before the condition is signaled <wait> returns -1
- * and sets errno to ETIME.
- */
- int wait (ACE_Recursive_Thread_Mutex &mutex,
- const ACE_Time_Value *abstime = 0);
-
- /// Signal one waiting thread.
- int signal (void);
-
- /// Signal *all* waiting threads.
- int broadcast (void);
-
- /// Returns a reference to the underlying mutex;
- ACE_Recursive_Thread_Mutex &mutex (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
-private:
-
- // = Prevent assignment and copying.
- void operator= (const ACE_Condition<ACE_Recursive_Thread_Mutex> &);
- ACE_Condition (const ACE_Condition<ACE_Recursive_Thread_Mutex> &);
-
-private:
-
- /// A normal (i.e., non-recursive) condition variable.
- ACE_cond_t cond_;
-
- /// Reference to the recursive mutex.
- ACE_Recursive_Thread_Mutex &mutex_;
-
-};
-
-class ACE_Export ACE_Condition_Recursive_Thread_Mutex
- : public ACE_Condition<ACE_Recursive_Thread_Mutex>
-{
-public:
- /// Initialize the condition variable with a recursive mutex.
- ACE_Condition_Recursive_Thread_Mutex (ACE_Recursive_Thread_Mutex &m);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* !ACE_HAS_THREADS */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONDITION_RECURSIVE_THREAD_MUTEX_H */
-
diff --git a/dep/include/ace/Condition_T.h b/dep/include/ace/Condition_T.h
deleted file mode 100644
index 8e6132ec92c..00000000000
--- a/dep/include/ace/Condition_T.h
+++ /dev/null
@@ -1,168 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Condition_T.h
- *
- * $Id: Condition_T.h 81462 2008-04-28 11:39:40Z johnnyw $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_CONDITION_T_H
-#define ACE_CONDITION_T_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/OS_NS_Thread.h"
-#include "ace/Lock.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_THREADS) /* ACE platform supports some form of threading. */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-/**
- * @class ACE_Condition
- *
- * @brief ACE_Condition variable wrapper, which allows threads to block
- * until shared data changes state.
- *
- * A condition variable enables threads to atomically block and
- * test the condition under the protection of a mutual exclu-
- * sion lock (mutex) until the condition is satisfied. That is,
- * the mutex must have been held by the thread before calling
- * wait or signal on the condition. If the condition is false,
- * a thread blocks on a condition variable and atomically
- * releases the mutex that is waiting for the condition to
- * change. If another thread changes the condition, it may wake
- * up waiting threads by signaling the associated condition
- * variable. The waiting threads, upon awakening, reacquire the
- * mutex and re-evaluate the condition.
- * Note, you can only parameterize <ACE_Condition> with
- * @a ACE_Thread_Mutex, @a ACE_Recursive_Thread_Mutex, or @a ACE_Null_Mutex.
- */
-template <class MUTEX>
-class ACE_Condition
-{
-public:
- // = Initialiation and termination methods.
- /// Initialize the condition variable.
- ACE_Condition (MUTEX &m, int type = USYNC_THREAD,
- const ACE_TCHAR *name = 0, void *arg = 0);
-
- /// Implicitly destroy the condition variable.
- ~ACE_Condition (void);
-
- // = Lock accessors.
- /**
- * Block on condition, or until absolute time-of-day has passed. If
- * @a abstime == 0 use "blocking" <wait> semantics. Else, if @a abstime
- * != 0 and the call times out before the condition is signaled
- * <wait> returns -1 and sets errno to ETIME.
- */
- int wait (const ACE_Time_Value *abstime);
-
- /// Block on condition.
- int wait (void);
-
- /**
- * Block on condition or until absolute time-of-day has passed. If
- * abstime == 0 use "blocking" wait() semantics on the <mutex>
- * passed as a parameter (this is useful if you need to store the
- * <Condition> in shared memory). Else, if <abstime> != 0 and the
- * call times out before the condition is signaled <wait> returns -1
- * and sets errno to ETIME.
- */
- int wait (MUTEX &mutex, const ACE_Time_Value *abstime = 0);
-
- /// Signal one waiting thread.
- int signal (void);
-
- /// Signal *all* waiting threads.
- int broadcast (void);
-
- // = Utility methods.
- /// Explicitly destroy the condition variable.
- int remove (void);
-
- /// Returns a reference to the underlying mutex_;
- MUTEX &mutex (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // ACE_ALLOC_HOOK_DECLARE;
- // Declare the dynamic allocation hooks.
-
-protected:
- /// Condition variable.
- ACE_cond_t cond_;
-
- /// Reference to mutex lock.
- MUTEX &mutex_;
-
-private:
- // = Prevent assignment and initialization.
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Condition<MUTEX> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Condition (const ACE_Condition<MUTEX> &))
-};
-
-/**
- * @class ACE_Thread_Condition
- *
- * @brief ACE_Condition variable wrapper that works within processes.
- *
- * A condition variable enables threads to atomically block and
- * test the condition under the protection of a mutual exclu-
- * sion lock (mutex) until the condition is satisfied. That is,
- * the mutex must have been held by the thread before calling
- * wait or signal on the condition. If the condition is false,
- * a thread blocks on a condition variable and atomically
- * releases the mutex that is waiting for the condition to
- * change. If another thread changes the condition, it may wake
- * up waiting threads by signaling the associated condition
- * variable. The waiting threads, upon awakening, reacquire the
- * mutex and re-evaluate the condition.
- */
-template <class MUTEX>
-class ACE_Thread_Condition : public ACE_Condition<MUTEX>
-{
-public:
- // = Initialization method.
- ACE_Thread_Condition (MUTEX &m, const ACE_TCHAR *name = 0, void *arg = 0);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // ACE_ALLOC_HOOK_DECLARE;
- // Declare the dynamic allocation hooks.
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Condition_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Condition_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Condition_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#endif /* ACE_HAS_THREADS */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONDITION_T_H */
-
diff --git a/dep/include/ace/Condition_T.inl b/dep/include/ace/Condition_T.inl
deleted file mode 100644
index e3b452734a2..00000000000
--- a/dep/include/ace/Condition_T.inl
+++ /dev/null
@@ -1,51 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Condition_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template<class MUTEX> ACE_INLINE int
-ACE_Condition<MUTEX>::remove (void)
-{
- // ACE_TRACE ("ACE_Condition<MUTEX>::remove");
-
- // cond_destroy() is called in a loop if the condition variable is
- // BUSY. This avoids a condition where a condition is signaled and
- // because of some timing problem, the thread that is to be signaled
- // has called the cond_wait routine after the signal call. Since
- // the condition signal is not queued in any way, deadlock occurs.
-
- int result = 0;
-
- while ((result = ACE_OS::cond_destroy (&this->cond_)) == -1
- && errno == EBUSY)
- {
- ACE_OS::cond_broadcast (&this->cond_);
- ACE_OS::thr_yield ();
- }
-
- return result;
-}
-
-template<class MUTEX> ACE_INLINE MUTEX &
-ACE_Condition<MUTEX>::mutex (void)
-{
- // ACE_TRACE ("ACE_Condition<MUTEX>::mutex");
- return this->mutex_;
-}
-
-template <class MUTEX> ACE_INLINE int
-ACE_Condition<MUTEX>::signal (void)
-{
-// ACE_TRACE ("ACE_Condition<MUTEX>::signal");
- return ACE_OS::cond_signal (&this->cond_);
-}
-
-template <class MUTEX> ACE_INLINE int
-ACE_Condition<MUTEX>::broadcast (void)
-{
-// ACE_TRACE ("ACE_Condition<MUTEX>::broadcast");
- return ACE_OS::cond_broadcast (&this->cond_);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Condition_Thread_Mutex.h b/dep/include/ace/Condition_Thread_Mutex.h
deleted file mode 100644
index bc47ae2514a..00000000000
--- a/dep/include/ace/Condition_Thread_Mutex.h
+++ /dev/null
@@ -1,191 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Condition_Thread_Mutex.h
- *
- * $Id: Condition_Thread_Mutex.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_CONDITION_THREAD_MUTEX_H
-#define ACE_CONDITION_THREAD_MUTEX_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_HAS_THREADS)
-# include "ace/Null_Condition.h"
-#else /* ACE_HAS_THREADS */
-// ACE platform supports some form of threading.
-
-#include "ace/Thread_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-class ACE_Export ACE_Condition_Attributes
-{
-public:
- /// Constructor
- ACE_Condition_Attributes (int type = ACE_DEFAULT_SYNCH_TYPE);
-
- /// Destructor
- ~ACE_Condition_Attributes (void);
-
-private:
- friend class ACE_Condition_Thread_Mutex;
-
- /// The attributes
- ACE_condattr_t attributes_;
-
-private:
- // = Prevent assignment and initialization.
- void operator= (const ACE_Condition_Attributes &);
- ACE_Condition_Attributes (const ACE_Condition_Attributes &);
-};
-
-/**
- * @class ACE_Condition_Thread_Mutex
- *
- * @brief ACE_Condition variable wrapper written using ACE_Mutexes This
- * allows threads to block until shared data changes state.
- * A condition variable enables threads to atomically block and
- * test the condition under the protection of a mutual exclu-
- * sion lock (mutex) until the condition is satisfied. That is,
- * the mutex must have been held by the thread before calling
- * wait or signal on the condition. If the condition is false,
- * a thread blocks on a condition variable and atomically
- * releases the mutex that is waiting for the condition to
- * change. If another thread changes the condition, it may wake
- * up waiting threads by signaling the associated condition
- * variable. The waiting threads, upon awakening, reacquire the
- * mutex and re-evaluate the condition.
- *
- * This should be an instantiation of ACE_Condition but problems
- * with compilers precludes this...
- */
-class ACE_Export ACE_Condition_Thread_Mutex
-{
-public:
- /// Initialize the condition variable.
- ACE_Condition_Thread_Mutex (ACE_Thread_Mutex &m,
- const ACE_TCHAR *name = 0,
- void *arg = 0);
-
- /// Initialize the condition variable.
- ACE_Condition_Thread_Mutex (ACE_Thread_Mutex &m,
- ACE_Condition_Attributes &attributes,
- const ACE_TCHAR *name = 0,
- void *arg = 0);
-
- /// Implicitly destroy the condition variable.
- ~ACE_Condition_Thread_Mutex (void);
-
- /**
- * Explicitly destroy the condition variable. Note that only one
- * thread should call this method since it doesn't protect against
- * race conditions.
- */
- int remove (void);
-
- /**
- * Block on condition, or until absolute time-of-day has passed. If
- * abstime == 0 use "blocking" <wait> semantics. Else, if @a abstime
- * != 0 and the call times out before the condition is signaled
- * <wait> returns -1 and sets errno to ETIME.
- */
- int wait (const ACE_Time_Value *abstime);
-
- /// Block on condition.
- int wait (void);
-
- /**
- * Block on condition or until absolute time-of-day has passed. If
- * abstime == 0 use "blocking" wait() semantics on the <mutex>
- * passed as a parameter (this is useful if you need to store the
- * <Condition> in shared memory). Else, if @a abstime != 0 and the
- * call times out before the condition is signaled <wait> returns -1
- * and sets errno to ETIME.
- */
- int wait (ACE_Thread_Mutex &mutex, const ACE_Time_Value *abstime = 0);
-
- /// Signal one waiting thread.
- int signal (void);
-
- /// Signal *all* waiting threads.
- int broadcast (void);
-
- /// Returns a reference to the underlying mutex;
- ACE_Thread_Mutex &mutex (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Condition variable.
- ACE_cond_t cond_;
-
- /// Reference to mutex lock.
- ACE_Thread_Mutex &mutex_;
-
- /// Keeps track of whether <remove> has been called yet to avoid
- /// multiple <remove> calls, e.g., explicitly and implicitly in the
- /// destructor. This flag isn't protected by a lock, so make sure
- /// that you don't have multiple threads simultaneously calling
- /// <remove> on the same object, which is a bad idea anyway...
- bool removed_;
-
-private:
- // = Prevent assignment and initialization.
- void operator= (const ACE_Condition_Thread_Mutex &);
- ACE_Condition_Thread_Mutex (const ACE_Condition_Thread_Mutex &);
-};
-
-#if 0
-// The following class is commented out since there doesn't
-// appear to be a portable and robust means of implementing this
-// functionality across platforms. If you know of a portable and
-// robust way to implement this functionality please let us know.
-
-/**
- * @class ACE_Process_Condition
- *
- * @brief ACE_Condition variable wrapper that works across processes.
- */
-class ACE_Export ACE_Process_Condition
-{
-public:
- ACE_Process_Condition (MUTEX &m, const ACE_TCHAR *name = 0, void *arg = 0);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // ACE_ALLOC_HOOK_DECLARE;
- // Declare the dynamic allocation hooks.
-};
-#endif /* 0 */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Condition_Thread_Mutex.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* !ACE_HAS_THREADS */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONDITION_THREAD_MUTEX_H */
-
diff --git a/dep/include/ace/Condition_Thread_Mutex.inl b/dep/include/ace/Condition_Thread_Mutex.inl
deleted file mode 100644
index 851269e4af6..00000000000
--- a/dep/include/ace/Condition_Thread_Mutex.inl
+++ /dev/null
@@ -1,74 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Condition_Thread_Mutex.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Condition_Attributes::ACE_Condition_Attributes (int type)
-{
- (void) ACE_OS::condattr_init (this->attributes_, type);
-}
-
-ACE_INLINE
-ACE_Condition_Attributes::~ACE_Condition_Attributes (void)
-{
- ACE_OS::condattr_destroy (this->attributes_);
-}
-
-ACE_INLINE int
-ACE_Condition_Thread_Mutex::remove (void)
-{
-// ACE_TRACE ("ACE_Condition_Thread_Mutex::remove");
-
- // <cond_destroy> is called in a loop if the condition variable is
- // BUSY. This avoids a condition where a condition is signaled and
- // because of some timing problem, the thread that is to be signaled
- // has called the cond_wait routine after the signal call. Since
- // the condition signal is not queued in any way, deadlock occurs.
-
- int result = 0;
-
- if (!this->removed_)
- {
- this->removed_ = true;
-
- while ((result = ACE_OS::cond_destroy (&this->cond_)) == -1
- && errno == EBUSY)
- {
- ACE_OS::cond_broadcast (&this->cond_);
- ACE_OS::thr_yield ();
- }
- }
- return result;
-}
-
-ACE_INLINE ACE_Thread_Mutex &
-ACE_Condition_Thread_Mutex::mutex (void)
-{
-// ACE_TRACE ("ACE_Condition_Thread_Mutex::mutex");
- return this->mutex_;
-}
-
-#if 0
-template <class MUTEX> void
-ACE_Process_Condition<MUTEX>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
-// ACE_TRACE ("ACE_Process_Condition<MUTEX>::dump");
-
- ACE_Condition<MUTEX>::dump ();
-#endif /* ACE_HAS_DUMP */
-}
-
-template <class MUTEX>
-ACE_Process_Condition<MUTEX>::ACE_Process_Condition (MUTEX &m,
- const ACE_TCHAR *name,
- void *arg)
- : ACE_Condition<MUTEX> (m, USYNC_PROCESS, name, arg)
-{
-// ACE_TRACE ("ACE_Process_Condition<MUTEX>::ACE_Process_Condition");
-}
-#endif /* 0 */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Configuration.h b/dep/include/ace/Configuration.h
deleted file mode 100644
index 14972e1eca3..00000000000
--- a/dep/include/ace/Configuration.h
+++ /dev/null
@@ -1,893 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Configuration.h
- *
- * $Id: Configuration.h 82294 2008-07-12 13:03:37Z johnnyw $
- *
- * @author Chris Hafey <chafey@stentor.com>
- *
- * The ACE configuration API provides a portable abstraction for
- * program configuration similar to the Microsoft Windows registry.
- * The API supports a tree based hierarchy of configuration sections. Each
- * section contains other sections or values. Values may contain string,
- * unsigned integer and binary data.
- *
- * @note These classes are not thread safe, if multiple threads use these
- * classes, you are responsible for serializing access.
- *
- * For examples of using this class, see:
- * -# The test code in ACE_wrappers/test
- * -# wxConfigViewer, a Windows like Registry Editor for ACE_Configuration
- * -# TAO's IFR, it makes extensive use of ACE_Configuration
- *
- * @todo Templatize this class with an ACE_LOCK to provide thread safety
- */
-//=============================================================================
-
-#ifndef ACE_CONFIGURATION_H
-#define ACE_CONFIGURATION_H
-#include /**/ "ace/pre.h"
-
-#include "ace/SStringfwd.h"
-#include "ace/Hash_Map_With_Allocator_T.h"
-#include "ace/Malloc_T.h"
-#include "ace/MMAP_Memory_Pool.h"
-#include "ace/Local_Memory_Pool.h"
-#include "ace/Synch_Traits.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// configurable parameters
-
-#if !defined (ACE_CONFIG_SECTION_INDEX)
-# define ACE_CONFIG_SECTION_INDEX "Config_Section_Index"
-#endif /* ! ACE_CONFIG_SECTION_INDEX */
-
-#if !defined (ACE_DEFAULT_CONFIG_SECTION_SIZE)
-#define ACE_DEFAULT_CONFIG_SECTION_SIZE 16
-#endif /* ACE_DEFAULT_CONFIG_SECTION_SIZE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Section_Key_Internal
- *
- * @internal
- *
- * @brief A base class for internal handles to section keys for
- * configuration implementations
- *
- * Implementations subclass this base class to represent a
- * section key.
- */
-class ACE_Export ACE_Section_Key_Internal
-{
-public:
- /// Virtual destructor, make sure descendants are virtual!
- virtual ~ACE_Section_Key_Internal (void);
-
- /// Increment reference count
- virtual int add_ref (void);
-
- /// Decrement reference count. Will delete this if count gets to 0
- virtual int dec_ref (void);
-protected:
- ACE_Section_Key_Internal (void);
- ACE_Section_Key_Internal (const ACE_Section_Key_Internal& rhs);
- ACE_Section_Key_Internal& operator= (ACE_Section_Key_Internal& rhs);
-
- u_int ref_count_;
-};
-
-/**
- * @class ACE_Configuration_Section_Key
- *
- * @brief Reference counted wrapper for ACE_Section_Key_Internal.
- *
- * Reference counted wrapper class for the abstract internal
- * section key. A user gets one of these to represent a section
- * in the configuration database.
- */
-class ACE_Export ACE_Configuration_Section_Key
-{
- friend class ACE_Configuration;
-public:
- /// Default constructor.
- ACE_Configuration_Section_Key (void);
-
- /// Constructor that initializes to a pointer to a concrete internal key.
- /**
- * @param key The section key to reference. Calls add_ref() with @a key.
- */
- explicit ACE_Configuration_Section_Key (ACE_Section_Key_Internal *key);
-
- /// Copy constructor, increments the reference count on the key.
- ACE_Configuration_Section_Key (const ACE_Configuration_Section_Key &rhs);
-
- /// Destructor, decrements reference count on the referenced key.
- ~ACE_Configuration_Section_Key (void);
-
- /// Assignment operator, increments reference count for this object
- /// and decrements it on @a rhs.
- ACE_Configuration_Section_Key &
- operator= (const ACE_Configuration_Section_Key &rhs);
-private:
- ACE_Section_Key_Internal *key_;
-};
-
-/**
- * @class ACE_Configuration
- *
- * @internal
- *
- * @brief Base class for configuration databases
- *
- * This class provides an interface for configuration databases. A concrete
- * class is required that implements the interface.
- *
- * @sa ACE_Configuration_Heap
- * @sa ACE_Configuration_Win32Registry
- */
-class ACE_Export ACE_Configuration
-{
-public:
- /// Enumeration for the various types of values we can store.
- enum VALUETYPE
- {
- STRING,
- INTEGER,
- BINARY,
- INVALID
- };
-
- /// Destructor
- virtual ~ACE_Configuration (void);
-
- /// Obtain a reference to the root section of this configuration.
- /*
- * @return Reference to the configuration's root section. Note that
- * it is a const reference.
- */
- virtual const ACE_Configuration_Section_Key& root_section (void) const;
-
- /**
- * Opens a named section in an existing section.
- *
- * @param base Existing section in which to open the named section.
- * @param sub_section Name of the section to open.
- * @param create If zero, the named section must exist. If non-zero,
- * the named section will be created if it does not exist.
- * @param result Reference; receives the section key for the new
- * section.
- *
- * @retval 0 for success.
- * @retval -1 for error; ACE_OS::last_error() retrieves error code.
- */
- virtual int open_section (const ACE_Configuration_Section_Key &base,
- const ACE_TCHAR *sub_section,
- int create,
- ACE_Configuration_Section_Key& result) = 0;
-
- /// Removes a named section.
- /**
- * @param key Section key to remove the named section from.
- * @param sub_section Name of the section to remove.
- * @param recursive If non zero, any subkeys below @a sub_section are
- * removed as well.
- *
- * @retval 0 for success.
- * @retval -1 for error; ACE_OS::last_error() retrieves error code.
- */
- virtual int remove_section (const ACE_Configuration_Section_Key &key,
- const ACE_TCHAR *sub_section,
- int recursive) = 0;
-
- /**
- * Enumerates through the values in a section.
- *
- * @param key Section key to iterate through.
- * @param index Iteration position. Must be zero on the first call to
- * iterate through @a key. Increment @a index by one on each
- * successive call to this method.
- * @param name Receives the value's name.
- * @param type Receives the value's data type.
- *
- * @note You may not delete or add values while enumerating. If the
- * section is modified during enumeration, results are undefined;
- * you must restart the enumeration from index 0.
- *
- * @retval 0 for success, @a name and @a type are valid.
- * @retval 1 there are no more values in the section.
- * @retval -1 for error; ACE_OS::last_error() retrieves error code.
- */
- virtual int enumerate_values (const ACE_Configuration_Section_Key& key,
- int index,
- ACE_TString& name,
- VALUETYPE& type) = 0;
-
- /**
- * Enumerates through the subsections in a section.
- *
- * @param key Section key to iterate through.
- * @param index Iteration position. Must be zero on the first call to
- * iterate through @a key. Increment @a index by one on each
- * successive call to this method.
- * @param name Receives the subsection's name.
- *
- * @note You may not modify the @a key section while enumerating. If the
- * section is modified during enumeration, results are undefined;
- * you must restart the enumeration from index 0.
- *
- * @retval 0 for success, @a name has a valid name.
- * @retval 1 there are no more subsections in the section.
- * @retval -1 for error; ACE_OS::last_error() retrieves error code.
- */
- virtual int enumerate_sections (const ACE_Configuration_Section_Key& key,
- int index, ACE_TString& name) = 0;
-
- /// Sets a string-typed value.
- /**
- * @param key Configuration section to set the value in.
- * @param name Name of the configuration value to set. If a value with
- * the specified name exists, it is replaced.
- * @param value The string to set the configuration value to.
- *
- * @retval 0 for success.
- * @retval -1 for error; ACE_OS::last_error() retrieves error code.
- */
- virtual int set_string_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- const ACE_TString& value) = 0;
-
- /// Sets a integer-typed value.
- /**
- * @param key Configuration section to set the value in.
- * @param name Name of the configuration value to set. If a value with
- * the specified name exists, it is replaced.
- * @param value The integer to set the configuration value to.
- *
- * @retval 0 for success.
- * @retval -1 for error; ACE_OS::last_error() retrieves error code.
- */
- virtual int set_integer_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- u_int value) = 0;
-
- /// Sets a binary-typed value.
- /**
- * @param key Configuration section to set the value in.
- * @param name Name of the configuration value to set. If a value with
- * the specified name exists, it is replaced.
- * @param data Pointer to the binary data for the value.
- * @param length Number of bytes for the new value.
- *
- * @retval 0 for success.
- * @retval -1 for error; ACE_OS::last_error() retrieves error code.
- */
- virtual int set_binary_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- const void* data,
- size_t length) = 0;
-
- /// Gets a string-typed value.
- /**
- * @param key Configuration section to get the value from.
- * @param name Name of the configuration value to get.
- * @param value Receives the configuration value if it exists and
- * has type STRING.
- *
- * @retval 0 for success.
- * @retval -1 for error; ACE_OS::last_error() retrieves error code.
- */
- virtual int get_string_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- ACE_TString& value) = 0;
-
- /// Gets an integer-typed value.
- /**
- * @param key Configuration section to get the value from.
- * @param name Name of the configuration value to get.
- * @param value Receives the configuration value if it exists and
- * has type INTEGER.
- *
- * @retval 0 for success.
- * @retval -1 for error; ACE_OS::last_error() retrieves error code.
- */
- virtual int get_integer_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- u_int& value) = 0;
-
- /// Gets a binary-typed value.
- /**
- * @param key Configuration section to get the value from.
- * @param name Name of the configuration value to get.
- * @param data Receives a pointer to memory holding the binary data
- * for the value. This method allocates the memory pointed
- * to using operator new[]. The caller is responsible for
- * freeing the memory using operator delete[].
- * @param length Receives the number of bytes in the value.
- *
- * @retval 0 for success; caller is responsible for freeing the
- * returned memory.
- * @retval -1 for error; ACE_OS::last_error() retrieves error code.
- */
- virtual int get_binary_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- void*& data,
- size_t& length) = 0;
-
- /**
- * Retrieves the type of a named configuration value.
- *
- * @param key Configuration section to look up the name in.
- * @param name Name of the configuration value to get the type of.
- * @param type Receives the data type of the named value, if it exists.
- *
- * @retval 0 for success.
- * @retval -1 for error; ACE_OS::last_error() retrieves error code.
- */
- virtual int find_value(const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- VALUETYPE& type) = 0;
-
- /// Removes a named value.
- /**
- * @param key Configuration section to remove the named value from.
- * @param name Name of the configuration value to remove.
- *
- * @retval 0 for success.
- * @retval -1 for error; ACE_OS::last_error() retrieves error code.
- */
- virtual int remove_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name) = 0;
-
- /**
- * Expands @a path_in to @a key_out from @a key. If create is true,
- * the subsections are created. Returns 0 on success, non zero on
- * error The path consists of sections separated by the backslash
- * '\' or forward slash '/'.
- * Returns 0 on success, -1 if <create) is 0 and the path refers
- * a nonexistant section
- */
- int expand_path (const ACE_Configuration_Section_Key& key,
- const ACE_TString& path_in,
- ACE_Configuration_Section_Key& key_out,
- int create = 1);
-
- /**
- * @deprecated Exports the configuration database to filename.
- * If @a filename is already present, it is overwritten. This function is
- * deprecated and will be removed in a future version of ACE. Please use
- * either ACE_Registry_ImpExp or ACE_Ini_ImpExp instead.
- */
- int export_config (const ACE_TCHAR* filename);
-
- /**
- * @deprecated Imports the configuration database from filename. Any
- * existing data is not removed. This function is deprecated and will be
- * removed in a future version of ACE. Please use ACE_Registry_ImpExp
- * or ACE_Ini_ImpExp instead.
- */
- int import_config (const ACE_TCHAR* filename);
-
- /**
- * Determine if the contents of this object is the same as the
- * contents of the object on the right hand side.
- * Returns true if they are equal and false if they are not equal
- */
- bool operator==(const ACE_Configuration& rhs) const;
-
- /**
- * Determine if the contents of this object are different from the
- * contents of the object on the right hand side.
- * Returns false if they are equal and true if they are not equal
- */
- bool operator!=(const ACE_Configuration& rhs) const;
-
- /**
- * * Represents the "NULL" string to simplify the internal logic.
- * */
- static ACE_TCHAR NULL_String_;
-
-protected:
- /// Default ctor
- ACE_Configuration (void);
-
- /// Resolves the internal key from a section key
- ACE_Section_Key_Internal* get_internal_key
- (const ACE_Configuration_Section_Key& key);
-
- /**
- * Tests to see if @a name is valid. @a name must be < 255 characters
- * and not contain the path separator '\', brackets [] or = (maybe
- * just restrict to alphanumeric?) returns non zero if name is not
- * valid. The path separator is allowed, except for the first character,
- * if @a allow_path is true.
- */
- int validate_name (const ACE_TCHAR* name, int allow_path = 0);
-
- /**
- * Test to see if @a name is valid. The default value for a key can be
- * unnamed, which means either @a name is == 0 or @a name == '\0` is
- * valid. Otherwise, it calls validate_name() to test @a name for the
- * same rules that apply to keys.
- */
- int validate_value_name (const ACE_TCHAR* name);
-
- // Not used
- ACE_Configuration (const ACE_Configuration& rhs);
- ACE_Configuration& operator= (const ACE_Configuration& rhs);
-
- ACE_Configuration_Section_Key root_;
-};
-
-#if defined (ACE_WIN32) && !defined (ACE_LACKS_WIN32_REGISTRY)
-
-/**
- * @class ACE_Section_Key_Win32
- *
- * @brief The Win32 registry implementation of an internal section key.
- *
- * Holds the HKEY for a section (registry key).
- */
-class ACE_Export ACE_Section_Key_Win32 : public ACE_Section_Key_Internal
-{
-public:
- /// Constructor based on an HKEY
- ACE_Section_Key_Win32 (HKEY hKey);
-
- HKEY hKey_;
-
-protected:
- /// Destructor - invokes <RegCloseKey>
- virtual ~ACE_Section_Key_Win32 (void);
-
- // Not used
- ACE_Section_Key_Win32 (const ACE_Section_Key_Win32& rhs);
- ACE_Section_Key_Win32& operator= (const ACE_Section_Key_Win32& rhs);
-};
-
-/**
- * @class ACE_Configuration_Win32Registry
- *
- * @brief The win32 registry implementation of a configuration database
- *
- * The win32 implementation basically makes calls through to the
- * registry functions. The API is very similar so very little
- * work must be done
- */
-class ACE_Export ACE_Configuration_Win32Registry : public ACE_Configuration
-{
-public:
-
- /**
- * Constructor for registry configuration database. hKey is the
- * base registry key to attach to. This class takes ownership of
- * hKey, it will invoke <RegCloseKey> on it upon destruction.
- */
- explicit ACE_Configuration_Win32Registry (HKEY hKey);
-
- /// Destructor
- virtual ~ACE_Configuration_Win32Registry (void);
-
- virtual int open_section (const ACE_Configuration_Section_Key& base,
- const ACE_TCHAR* sub_section,
- int create,
- ACE_Configuration_Section_Key& result);
-
- virtual int remove_section (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* sub_section,
- int recursive);
-
- virtual int enumerate_values (const ACE_Configuration_Section_Key& key,
- int index,
- ACE_TString& name,
- VALUETYPE& type);
-
- virtual int enumerate_sections (const ACE_Configuration_Section_Key& key,
- int index,
- ACE_TString& name);
-
- virtual int set_string_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- const ACE_TString& value);
-
- virtual int set_integer_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- u_int value);
-
- virtual int set_binary_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- const void* data,
- size_t length);
-
- virtual int get_string_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- ACE_TString& value);
-
- virtual int get_integer_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- u_int& value);
-
- virtual int get_binary_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- void*& data,
- size_t& length);
-
- virtual int find_value(const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- VALUETYPE& type);
-
- /// Removes the the value @a name from @a key. returns non zero on error
- virtual int remove_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name);
-
- /**
- * This method traverses <path> through <hKey>. It is useful when
- * you want the HKEY for a specific registry key, especially when
- * initializing this implementation. Caller is responsible for
- * closeing this key when it is no longer used. If create is 1
- * (default) the keys are create if they don't already exist.
- * Returns 0 on error
- */
- static HKEY resolve_key (HKEY hKey,
- const ACE_TCHAR* path,
- int create = 1);
- virtual bool operator== (const ACE_Configuration_Win32Registry &rhs) const;
- virtual bool operator!= (const ACE_Configuration_Win32Registry &rhs) const;
-
-protected:
-
- /// Gets the HKEY for a configuration section
- int load_key (const ACE_Configuration_Section_Key& key, HKEY& hKey);
-
- // Not used
- ACE_Configuration_Win32Registry (void);
- ACE_Configuration_Win32Registry (const ACE_Configuration_Win32Registry& rhs);
- ACE_Configuration_Win32Registry& operator= (const ACE_Configuration_Win32Registry& rhs);
-};
-#endif /* ACE_WIN32 && !ACE_LACKS_WIN32_REGISTRY */
-
-// ACE_Allocator version
-
-typedef ACE_Allocator_Adapter <ACE_Malloc <ACE_MMAP_MEMORY_POOL,
- ACE_SYNCH_MUTEX> >
- PERSISTENT_ALLOCATOR;
-typedef ACE_Allocator_Adapter <ACE_Malloc <ACE_LOCAL_MEMORY_POOL,
- ACE_SYNCH_MUTEX> >
- HEAP_ALLOCATOR;
-
-/**
- * @class ACE_Configuration_ExtId
- *
- * @brief External ID for the section and value hash
- *
- * Contains a pointer to the section or value name.
- */
-class ACE_Export ACE_Configuration_ExtId
-{
-public:
- /// Defeault ctor
- ACE_Configuration_ExtId (void);
-
- /// Named constructor
- explicit ACE_Configuration_ExtId (const ACE_TCHAR* name);
-
- /// Copy ctor
- ACE_Configuration_ExtId (const ACE_Configuration_ExtId& rhs);
-
- /// destructor
- ~ACE_Configuration_ExtId (void);
-
- /// Assignment operator
- ACE_Configuration_ExtId& operator= (const ACE_Configuration_ExtId& rhs);
-
- /// Equality comparison operator (must match name_).
- bool operator== (const ACE_Configuration_ExtId &rhs) const;
-
- /// Inequality comparison operator.
- bool operator!= (const ACE_Configuration_ExtId &rhs) const;
-
- /// Frees the name of the value. needed since we don't know the
- /// allocator name_ was created in
- void free (ACE_Allocator *alloc);
-
- /// <hash> function is required in order for this class to be usable by
- /// ACE_Hash_Map_Manager.
- u_long hash (void) const;
-
- // = Data members.
-
- const ACE_TCHAR * name_;
-
- // Accessors
- const ACE_TCHAR *name (void);
-};
-
-typedef ACE_Hash_Map_With_Allocator<ACE_Configuration_ExtId, int>
- SUBSECTION_MAP;
-typedef ACE_Hash_Map_Manager_Ex<ACE_Configuration_ExtId,
- int,
- ACE_Hash<ACE_Configuration_ExtId>,
- ACE_Equal_To<ACE_Configuration_ExtId>,
- ACE_Null_Mutex>
- SUBSECTION_HASH;
-
-/// @deprecated Deprecated typedef. Use the SUBSECTION_HASH::ENTRY trait instead.
-typedef SUBSECTION_HASH::ENTRY SUBSECTION_ENTRY;
-
-/**
- * @class ACE_Configuration_Value_IntId
- *
- * @brief The section hash table internal value class
- *
- * This class is present as the internal portion of a section's
- * value hash table It may store string, integer or binary data.
- */
-class ACE_Export ACE_Configuration_Value_IntId
-{
-public:
- /// Default constructor
- ACE_Configuration_Value_IntId (void);
-
- /// String constructor, takes ownership of string
- explicit ACE_Configuration_Value_IntId (ACE_TCHAR* string);
-
- /// Integer constructor
- explicit ACE_Configuration_Value_IntId (u_int integer);
-
- /// Binary constructor, takes ownership of data
- ACE_Configuration_Value_IntId (void* data, size_t length);
-
- /// Copy ctor
- ACE_Configuration_Value_IntId (const ACE_Configuration_Value_IntId& rhs);
-
- /// Destructor
- ~ACE_Configuration_Value_IntId (void);
-
- /// Assignment operator
- ACE_Configuration_Value_IntId& operator= (
- const ACE_Configuration_Value_IntId& rhs);
-
- void free (ACE_Allocator *alloc);
-
- // = Data members.
-
- /**
- * Points to the string value or binary data or IS the integer
- * Length is only used when type_ == BINARY
- */
- ACE_Configuration::VALUETYPE type_;
- union {
- void * ptr_;
- u_int int_;
- } data_;
- size_t length_;
-};
-
-typedef ACE_Hash_Map_With_Allocator<ACE_Configuration_ExtId,
- ACE_Configuration_Value_IntId>
- VALUE_MAP;
-typedef ACE_Hash_Map_Manager_Ex<ACE_Configuration_ExtId,
- ACE_Configuration_Value_IntId,
- ACE_Hash<ACE_Configuration_ExtId>,
- ACE_Equal_To<ACE_Configuration_ExtId>,
- ACE_Null_Mutex>
- VALUE_HASH;
-
-// Deprecated typedef. Use the VALUE_HASH::ENTRY trait instead.
-typedef VALUE_HASH::ENTRY VALUE_ENTRY;
-
-/**
- * @class ACE_Configuration_Section_IntId
- *
- * @brief The internal ID for a section hash table
- *
- * Contains a hash table containing value name/values
- */
-class ACE_Export ACE_Configuration_Section_IntId
-{
-public:
- /// Default ctor
- ACE_Configuration_Section_IntId (void);
-
- /// Named ctor
- ACE_Configuration_Section_IntId (VALUE_MAP* value_hash_map,
- SUBSECTION_MAP* section_hash_map);
-
- /// Copy ctor
- ACE_Configuration_Section_IntId (const ACE_Configuration_Section_IntId& rhs);
-
- /// Destructor
- ~ACE_Configuration_Section_IntId (void);
-
- /// Assignment operator
- ACE_Configuration_Section_IntId& operator= (
- const ACE_Configuration_Section_IntId& rhs);
-
- /// Frees the hash table and all its values
- void free (ACE_Allocator *alloc);
-
- // = Data Members.
- VALUE_MAP* value_hash_map_;
-
- SUBSECTION_MAP* section_hash_map_;
-};
-
-typedef ACE_Hash_Map_With_Allocator<ACE_Configuration_ExtId,
- ACE_Configuration_Section_IntId>
- SECTION_MAP;
-typedef ACE_Hash_Map_Manager_Ex<ACE_Configuration_ExtId,
- ACE_Configuration_Section_IntId,
- ACE_Hash<ACE_Configuration_ExtId>,
- ACE_Equal_To<ACE_Configuration_ExtId>,
- ACE_Null_Mutex>
- SECTION_HASH;
-
-// Deprecated typedef. Use the SECTION_HASH::ENTRY trait instead.
-typedef SECTION_HASH::ENTRY SECTION_ENTRY;
-
-/**
- * @class ACE_Configuration_Section_Key_Heap
- *
- * @brief Internal section key class for heap based configuration
- * database.
- *
- * Contains a value iterator and full path name of section.
- */
-class ACE_Export ACE_Configuration_Section_Key_Heap
- : public ACE_Section_Key_Internal
-{
-public:
- /// Constructor based on the full path of the section
- ACE_Configuration_Section_Key_Heap (const ACE_TCHAR* path);
-
- /// The path itself
- ACE_TCHAR* path_;
-
- /// The value iterator
- VALUE_HASH::ITERATOR* value_iter_;
-
- /// The sub section iterator
- SUBSECTION_HASH::ITERATOR* section_iter_;
-protected:
- /// Destructor - will delete the iterators
- virtual ~ACE_Configuration_Section_Key_Heap (void);
-
- // Not used
- ACE_Configuration_Section_Key_Heap (const ACE_Configuration_Section_Key_Heap& rhs);
- ACE_Configuration_Section_Key_Heap& operator= (const ACE_Configuration_Section_Key_Heap& rhs);
-};
-
-/**
- * @class ACE_Configuration_Heap
- *
- * @brief The concrete implementation of a allocator based
- * configuration database
- *
- * This class uses ACE's Allocators to manage a memory
- * representation of a configuration database. A persistent heap
- * may be used to store configurations persistently
- *
- * @note Before using this class you must call one of the open methods.
- *
- * @todo
- * - Need to investigate what happens if memory mapped file gets mapped to
- * a location different than it was created with.
- */
-class ACE_Export ACE_Configuration_Heap : public ACE_Configuration
-{
-public:
-
- /// Default ctor
- ACE_Configuration_Heap (void);
-
- /// Destructor
- virtual ~ACE_Configuration_Heap (void);
-
- /// Opens a configuration based on a file name
- int open (const ACE_TCHAR* file_name,
- void* base_address = ACE_DEFAULT_BASE_ADDR,
- size_t default_map_size = ACE_DEFAULT_CONFIG_SECTION_SIZE);
-
- /// Opens a heap based configuration
- int open (size_t default_map_size = ACE_DEFAULT_CONFIG_SECTION_SIZE);
-
- virtual int open_section (const ACE_Configuration_Section_Key& base,
- const ACE_TCHAR* sub_section,
- int create, ACE_Configuration_Section_Key& result);
-
- virtual int remove_section (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* sub_section,
- int recursive);
-
- virtual int enumerate_values (const ACE_Configuration_Section_Key& key,
- int index,
- ACE_TString& name,
- VALUETYPE& type);
-
- virtual int enumerate_sections (const ACE_Configuration_Section_Key& key,
- int index,
- ACE_TString& name);
-
- virtual int set_string_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- const ACE_TString& value);
-
- virtual int set_integer_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- u_int value);
-
- virtual int set_binary_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- const void* data,
- size_t length);
-
- virtual int get_string_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- ACE_TString& value);
-
- virtual int get_integer_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- u_int& value);
-
- virtual int get_binary_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- void* &data,
- size_t &length);
-
- virtual int find_value(const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name,
- VALUETYPE& type);
-
- /// Removes the the value @a name from @a key. returns non zero on error
- virtual int remove_value (const ACE_Configuration_Section_Key& key,
- const ACE_TCHAR* name);
-
-private:
- /// @a sub_section may not contain path separators
- int open_simple_section (const ACE_Configuration_Section_Key &base,
- const ACE_TCHAR *sub_section,
- int create, ACE_Configuration_Section_Key &result);
- /// Adds a new section
- int add_section (const ACE_Configuration_Section_Key &base,
- const ACE_TCHAR *sub_section,
- ACE_Configuration_Section_Key &result);
-
- /// Helper for the <open> method.
- int create_index (void);
-
- /// Helper for create_index() method: places hash table into an
- /// allocated space.
- int create_index_helper (void *buffer);
-
- int value_open_helper (size_t hash_table_size, void *buffer);
-
- int section_open_helper (size_t hash_table_size, void *buffer);
-
- int load_key (const ACE_Configuration_Section_Key& key, ACE_TString& name);
-
- int new_section (const ACE_TString& section,
- ACE_Configuration_Section_Key& result);
-
- ACE_Configuration_Heap (const ACE_Configuration_Heap& rhs);
- ACE_Configuration_Heap& operator= (const ACE_Configuration_Heap& rhs);
-
- ACE_Allocator *allocator_;
- SECTION_MAP *index_;
- size_t default_map_size_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Configuration.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIGURATION_H */
-
diff --git a/dep/include/ace/Configuration.inl b/dep/include/ace/Configuration.inl
deleted file mode 100644
index 19c2c591bf4..00000000000
--- a/dep/include/ace/Configuration.inl
+++ /dev/null
@@ -1,13 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Configuration.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE const ACE_TCHAR*
-ACE_Configuration_ExtId::name (void)
-{
- return name_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Configuration_Import_Export.h b/dep/include/ace/Configuration_Import_Export.h
deleted file mode 100644
index ec47bafa144..00000000000
--- a/dep/include/ace/Configuration_Import_Export.h
+++ /dev/null
@@ -1,216 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Configuration_Import_Export.h
- *
- * $Id: Configuration_Import_Export.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Jerry D. Odenwelder Jr. <jerry.o@mindspring.com>
- * Chris Hafey <chris@stentorsoft.com>
- *
- * Classes defined in this file provide the ability to import and export
- * ACE Configuration objects to/from disk files. The base class
- * ACE_Config_ImpExp_Base provides the common functionality and the derived
- * classes implement the import/export functionality for the specific format.
- *
- * @todo
- * - Add locking for thread safety.
- * - Provide ability to read file in one format and write in another.
- * - See todo's in each class
- */
-//=============================================================================
-
-#ifndef ACE_CONFIGURATION_IMPORT_EXPORT_H
-#define ACE_CONFIGURATION_IMPORT_EXPORT_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Configuration.h"
-#include "ace/SString.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Config_ImpExp_Base
- *
- * @brief Base class for file import/export configuration.
- *
- * This class provides base functionality for configuration objects
- * that are persisted in files. It takes an ACE_Configuration
- * object that it populates with the data read.
- *
- */
-class ACE_Export ACE_Config_ImpExp_Base
-{
-public:
- /// Constructor taking the ACE_Configuration to import/export to
- ACE_Config_ImpExp_Base (ACE_Configuration& config);
-
- /**
- * Destructor
- */
- virtual ~ACE_Config_ImpExp_Base (void);
-
- /**
- * Imports the configuration database from @a filename.
- * No existing data is removed.
- */
- virtual int import_config (const ACE_TCHAR* filename) = 0;
-
- /**
- * This method exports the entire configuration database to @a filename.
- * Once the file is opened this method calls 'export_section' passing
- * the root section.
- */
- virtual int export_config (const ACE_TCHAR* filename) = 0;
-
-protected:
- ACE_Configuration &config_;
-
-private:
- ACE_Config_ImpExp_Base (const ACE_Config_ImpExp_Base&);
- ACE_Config_ImpExp_Base& operator= (const ACE_Config_ImpExp_Base&);
-};
-
-/**
- * @class ACE_Registry_ImpExp
- *
- * @brief Configuration object that imports/exports data to a file formatted
- * using the Win32 Registry file export format. This format looks like
- * [Section]
- * "key"="String Data"
- * "key"=dword: numeric data in hexidecimal format
- * "key"=hex: binary data
- *
- * @todo
- * - Add dynamic buffer when importing. currently it will not allow
- * importing of values greater than a fixed ammount (4096 bytes)
- *
- */
-class ACE_Export ACE_Registry_ImpExp : public ACE_Config_ImpExp_Base
-{
-public:
- /// Construction
- ACE_Registry_ImpExp (ACE_Configuration&);
-
- /// Destruction.
- virtual ~ACE_Registry_ImpExp (void);
-
- /**
- * Imports the configuration database from filename.
- * No existing data is removed.
- */
- virtual int import_config (const ACE_TCHAR* filename);
-
- /**
- * This method exports the entire configuration database to @a filename.
- * Once the file is opened this method calls export_section() passing
- * the root section.
- */
- virtual int export_config (const ACE_TCHAR* filename);
-
-private:
- int export_section (const ACE_Configuration_Section_Key& section,
- const ACE_TString& path,
- FILE* out);
-
- int process_previous_line_format (ACE_TCHAR* buffer,
- ACE_Configuration_Section_Key& section);
-
- ACE_Registry_ImpExp ( const ACE_Registry_ImpExp&);
- ACE_Registry_ImpExp& operator= ( const ACE_Registry_ImpExp&);
-};
-
-/**
- * @class ACE_Ini_ImpExp
- *
- * @brief Imports the configuration database from filename as strings.
- * Allows non-typed values. (no #, dword: hex:, etc. prefixes) and
- * skips whitespace (tabs and spaces) as in standard .ini and .conf
- * files. Values (to right of equal sign) can be double quote
- * delimited to embed tabs and spaces in the string.
- * Caller must convert string to type.
- *
- * This method allows for lines in the .ini or .conf file like this:
- *
- * TimeToLive = 100
- * Delay = FALSE
- * Flags = FF34
- * Heading = "ACE - Adaptive Communication Environment"
- *
- * (note leading whitespace (tabs) in examples below)
- *
- * SeekIndex = 14
- * TraceLevel = 6 # Can comment lines like this
- * Justification = left_justified
- *
- * The caller can then retrieve the string with the regular
- * <get_string_value> function and convert the string to the
- * desired data type.
- *
- * @todo
- * - Strings with embedded newlines cause the import to fail
- * - Strings with embedded quotes " cause the import to fail
- * - Importing/exporting for values in the root section does not work
- * - Add dynamic buffer when importing. currently it will not allow
- * importing of values greater than a fixed ammount (4096 bytes)
-*/
-class ACE_Export ACE_Ini_ImpExp : public ACE_Config_ImpExp_Base
-{
-public:
- /**
- * Construction
- */
- ACE_Ini_ImpExp (ACE_Configuration&);
-
- /**
- * Destructor
- */
- virtual ~ACE_Ini_ImpExp (void);
-
- /**
- * Imports the configuration database from filename.
- * No existing data is removed.
- */
- virtual int import_config (const ACE_TCHAR* filename);
-
- /**
- * This method exports the entire configuration database to @a filename.
- * Once the file is opened this method calls export_section() passing
- * the root section.
- */
- virtual int export_config (const ACE_TCHAR* filename);
-
-private:
- /**
- * Method provided by derived classes in order to write one section
- * to the file specified. Called by export_config() when exporting
- * the entire configuration object.
- */
- int export_section (const ACE_Configuration_Section_Key& section,
- const ACE_TString& path,
- FILE* out);
-
- /**
- * Method to squish leading and trailing whitespaces in a string.
- * Whitespace is defined as: spaces (' '), tabs ('\\t') or cr/lf.
- * Returns a pointer to the first non-whitespace character in the
- * buffer provided, or a pointer to the terminating null if the string
- * is all whitespace. The terminating null is moved forward to the
- * first character past the last non-whitespace.
- */
- ACE_TCHAR *squish (ACE_TCHAR *src);
-
- ACE_Ini_ImpExp (const ACE_Ini_ImpExp&);
- ACE_Ini_ImpExp& operator= (const ACE_Ini_ImpExp&);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIGURATION_IMPORT_EXPORT_H */
-
diff --git a/dep/include/ace/Connection_Recycling_Strategy.h b/dep/include/ace/Connection_Recycling_Strategy.h
deleted file mode 100644
index 0770c3a6c26..00000000000
--- a/dep/include/ace/Connection_Recycling_Strategy.h
+++ /dev/null
@@ -1,64 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Connection_Recycling_Strategy.h
- *
- * $Id: Connection_Recycling_Strategy.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-#ifndef ACE_CONNECTION_RECYCLING_STRATEGY_H
-#define ACE_CONNECTION_RECYCLING_STRATEGY_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Recyclable.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Connection_Recycling_Strategy
- *
- * @brief Defines the interface for a connection recycler.
- */
-class ACE_Export ACE_Connection_Recycling_Strategy
-{
-public:
- /// Virtual Destructor
- virtual ~ACE_Connection_Recycling_Strategy (void);
-
- /// Remove from cache.
- virtual int purge (const void *recycling_act) = 0;
-
- /// Add to cache.
- virtual int cache (const void *recycling_act) = 0;
-
- virtual int recycle_state (const void *recycling_act,
- ACE_Recyclable_State new_state) = 0;
-
- /// Get/Set recycle_state.
- virtual ACE_Recyclable_State recycle_state (const void *recycling_act) const = 0;
-
- /// Mark as closed.
- virtual int mark_as_closed (const void *recycling_act) = 0;
-
- /// Mark as closed.(non-locking version)
- virtual int mark_as_closed_i (const void *recycling_act) = 0;
-
- /// Cleanup hint and reset @a act_holder to zero if @a act_holder != 0.
- virtual int cleanup_hint (const void *recycling_act,
- void **act_holder = 0) = 0;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /*ACE_CONNECTION_RECYCLING_STRATEGY*/
-
diff --git a/dep/include/ace/Connector.h b/dep/include/ace/Connector.h
deleted file mode 100644
index 73689356501..00000000000
--- a/dep/include/ace/Connector.h
+++ /dev/null
@@ -1,564 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Connector.h
- *
- * $Id: Connector.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_CONNECTOR_H
-#define ACE_CONNECTOR_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Service_Object.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Strategies_T.h"
-#include "ace/Synch_Options.h"
-#include "ace/Unbounded_Set.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Connector_Base
- *
- * @brief This base interface allows ACE_NonBlocking_Connect_Handler
- * to only care about the SVC_HANDLER template parameter of the
- * ACE_Connector. Otherwise, ACE_NonBlocking_Connect_Handler would
- * have to be configured with all the template parameters that
- * ACE_Connector is configured with.
- */
-template <class SVC_HANDLER>
-class ACE_Connector_Base
-{
-public:
-
- virtual ~ACE_Connector_Base (void) {}
-
- /// Initialize the Svc_Handler.
- virtual void initialize_svc_handler (ACE_HANDLE handle,
- SVC_HANDLER *svc_handler) = 0;
-
- /// Return the handle set representing the non-blocking connects in
- /// progress.
- virtual ACE_Unbounded_Set<ACE_HANDLE> &non_blocking_handles (void) = 0;
-};
-
-/**
- * @class ACE_NonBlocking_Connect_Handler
- *
- * @brief Performs non-blocking connects on behalf of the Connector.
- */
-template <class SVC_HANDLER>
-class ACE_NonBlocking_Connect_Handler : public ACE_Event_Handler
-{
-public:
-
- /// Constructor.
- ACE_NonBlocking_Connect_Handler (ACE_Connector_Base<SVC_HANDLER> &connector,
- SVC_HANDLER *,
- long timer_id);
-
- /// Close up and return underlying SVC_HANDLER through @c sh.
- /**
- * If the return value is true the close was performed succesfully,
- * implying that this object was removed from the reactor and thereby
- * (by means of reference counting decremented to 0) deleted.
- * If the return value is false, the close was not successful.
- * The @c sh does not have any connection to the return
- * value. The argument will return a valid svc_handler object if a
- * valid one exists within the object. Returning a valid svc_handler
- * pointer also invalidates the svc_handler contained in this
- * object.
- */
- bool close (SVC_HANDLER *&sh);
-
- /// Get SVC_HANDLER.
- SVC_HANDLER *svc_handler (void);
-
- /// Get handle.
- ACE_HANDLE handle (void);
-
- /// Set handle.
- void handle (ACE_HANDLE);
-
- /// Get timer id.
- long timer_id (void);
-
- /// Set timer id.
- void timer_id (long timer_id);
-
- /// Called by ACE_Reactor when asynchronous connections fail.
- virtual int handle_input (ACE_HANDLE);
-
- /// Called by ACE_Reactor when asynchronous connections succeed.
- virtual int handle_output (ACE_HANDLE);
-
- /// Called by ACE_Reactor when asynchronous connections suceeds (on
- /// some platforms only).
- virtual int handle_exception (ACE_HANDLE fd);
-
- /// This method is called if a connection times out before
- /// completing.
- virtual int handle_timeout (const ACE_Time_Value &tv, const void *arg);
-
- /// Should Reactor resume us if we have been suspended before the upcall?
- virtual int resume_handler (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-
- /// Connector base.
- ACE_Connector_Base<SVC_HANDLER> &connector_;
-
- /// Associated SVC_HANDLER.
- SVC_HANDLER *svc_handler_;
-
- /// Associated timer id.
- long timer_id_;
-};
-
-/**
- * @class ACE_Connector
- *
- * @brief Generic factory for actively connecting clients and creating
- * service handlers (SVC_HANDLERs).
- *
- * Implements the strategy for actively establishing connections with
- * clients. An ACE_Connector is parameterized by concrete types that
- * conform to the interfaces of PEER_CONNECTOR and SVC_HANDLER. The
- * PEER_CONNECTOR is instantiated with a transport mechanism that
- * actively establishes connections. The SVC_HANDLER is instantiated
- * with a concrete type that performs the application-specific
- * service. Both blocking and non-blocking connects are supported.
- * Further, non-blocking connects support timeouts.
- */
-template <class SVC_HANDLER, ACE_PEER_CONNECTOR_1>
-class ACE_Connector : public ACE_Connector_Base<SVC_HANDLER>, public ACE_Service_Object
-{
-public:
-
- // Useful STL-style traits.
- typedef typename SVC_HANDLER::addr_type addr_type;
- typedef ACE_PEER_CONNECTOR connector_type;
- typedef SVC_HANDLER handler_type;
- typedef typename SVC_HANDLER::stream_type stream_type;
- typedef typename ACE_PEER_CONNECTOR::PEER_ADDR peer_addr_type;
- typedef ACE_PEER_CONNECTOR_ADDR ACE_PEER_ADDR_TYPEDEF;
-
- /**
- * Initialize a connector. @a flags indicates how SVC_HANDLER's
- * should be initialized prior to being activated. Right now, the
- * only flag that is processed is ACE_NONBLOCK, which enabled
- * non-blocking I/O on the SVC_HANDLER when it is opened.
- */
- ACE_Connector (ACE_Reactor *r = ACE_Reactor::instance (),
- int flags = 0);
-
- /**
- * Initialize a connector. @a flags indicates how SVC_HANDLER's
- * should be initialized prior to being activated. Right now, the
- * only flag that is processed is ACE_NONBLOCK, which enabled
- * non-blocking I/O on the SVC_HANDLER when it is opened.
- */
- virtual int open (ACE_Reactor *r = ACE_Reactor::instance (),
- int flags = 0);
-
- /// Shutdown a connector and release resources.
- virtual ~ACE_Connector (void);
-
- // = Connection establishment methods.
-
- /**
- * Initiate connection of @a svc_handler to peer at @a remote_addr
- * using @a synch_options. If the caller wants to designate the
- * selected @a local_addr they can (and can also insist that the
- * @a local_addr be reused by passing a value @a reuse_addr ==
- * 1). @a flags and @a perms can be used to pass any flags that are
- * needed to perform specific operations such as opening a file
- * within connect with certain permissions. If the connection fails
- * the <close> hook on the <svc_handler> will be called
- * automatically to prevent resource leaks.
- */
- virtual int connect (SVC_HANDLER *&svc_handler,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- const ACE_Synch_Options &synch_options = ACE_Synch_Options::defaults,
- const ACE_PEER_CONNECTOR_ADDR &local_addr
- = (peer_addr_type &) ACE_PEER_CONNECTOR_ADDR_ANY,
- int reuse_addr = 0,
- int flags = O_RDWR,
- int perms = 0);
-
- /**
- * This is a variation on the previous <connect> method. On cached
- * connectors the @a svc_handler_hint variable can be used as a hint
- * for future lookups. Since this variable is modified in the
- * context of the internal cache its use is thread-safe. But the
- * actual svc_handler for the current connection is returned in the
- * second parameter @a svc_handler. If the connection fails the
- * <close> hook on the <svc_handler> will be called automatically to
- * prevent resource leaks.
- */
- virtual int connect (SVC_HANDLER *&svc_handler_hint,
- SVC_HANDLER *&svc_handler,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- const ACE_Synch_Options &synch_options = ACE_Synch_Options::defaults,
- const ACE_PEER_CONNECTOR_ADDR &local_addr
- = (peer_addr_type &) ACE_PEER_CONNECTOR_ADDR_ANY,
- int reuse_addr = 0,
- int flags = O_RDWR,
- int perms = 0);
-
- /**
- * Initiate connection of @a n @a svc_handlers to peers at
- * @a remote_addrs using @a synch_options. Returns -1 if failure
- * occurs and 0 otherwise. If @a failed_svc_handlers is non-NULL, a
- * 1 is placed in the corresponding index of @a failed_svc_handlers
- * for each <svc_handlers[i]> that failed to connect, else a 0 is
- * placed in that index.
- */
- virtual int connect_n (size_t n,
- SVC_HANDLER *svc_handlers[],
- ACE_PEER_CONNECTOR_ADDR remote_addrs[],
- ACE_TCHAR *failed_svc_handlers = 0,
- const ACE_Synch_Options &synch_options =
- ACE_Synch_Options::defaults);
-
- /**
- * Cancel the @a svc_handler that was started asynchronously. Note that
- * this is the only case when the Connector does not actively close
- * the @a svc_handler. It is left up to the caller of <cancel> to
- * decide the fate of the @a svc_handler.
- */
- virtual int cancel (SVC_HANDLER *svc_handler);
-
- /// Close down the Connector. All pending non-blocking connects are
- /// canceled and the corresponding svc_handler is closed.
- virtual int close (void);
-
- /// Return the underlying PEER_CONNECTOR object.
- virtual ACE_PEER_CONNECTOR &connector (void) const;
-
- /// Initialize Svc_Handler.
- virtual void initialize_svc_handler (ACE_HANDLE handle,
- SVC_HANDLER *svc_handler);
-
- /// Set Reactor.
- virtual void reactor (ACE_Reactor *reactor);
-
- /// Get Reactor.
- virtual ACE_Reactor *reactor (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- // = Helpful typedefs.
- typedef ACE_NonBlocking_Connect_Handler<SVC_HANDLER> NBCH;
-
- // = The following two methods define the Connector's strategies for
- // creating, connecting, and activating SVC_HANDLER's, respectively.
-
- /**
- * Bridge method for creating a SVC_HANDLER. The default is to
- * create a new SVC_HANDLER only if @a sh == 0, else @a sh is
- * unchanged. However, subclasses can override this policy to
- * perform SVC_HANDLER creation in any way that they like (such as
- * creating subclass instances of SVC_HANDLER, using a singleton,
- * dynamically linking the handler, etc.). Returns -1 if failure,
- * else 0.
- */
- virtual int make_svc_handler (SVC_HANDLER *&sh);
-
- /**
- * Bridge method for connecting the @a svc_handler to the
- * @a remote_addr. The default behavior delegates to the
- * <PEER_CONNECTOR::connect>.
- */
- virtual int connect_svc_handler (SVC_HANDLER *&svc_handler,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- ACE_Time_Value *timeout,
- const ACE_PEER_CONNECTOR_ADDR &local_addr,
- int reuse_addr,
- int flags,
- int perms);
- virtual int connect_svc_handler (SVC_HANDLER *&svc_handler,
- SVC_HANDLER *&sh_copy,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- ACE_Time_Value *timeout,
- const ACE_PEER_CONNECTOR_ADDR &local_addr,
- int reuse_addr,
- int flags,
- int perms);
-
- /**
- * Bridge method for activating a @a svc_handler with the appropriate
- * concurrency strategy. The default behavior of this method is to
- * activate the SVC_HANDLER by calling its <open> method (which
- * allows the SVC_HANDLER to define its own concurrency strategy).
- * However, subclasses can override this strategy to do more
- * sophisticated concurrency activations (such as creating the
- * SVC_HANDLER as an "active object" via multi-threading or
- * multi-processing).
- */
- virtual int activate_svc_handler (SVC_HANDLER *svc_handler);
-
- /// Creates and registers ACE_NonBlocking_Connect_Handler.
- int nonblocking_connect (SVC_HANDLER *,
- const ACE_Synch_Options &);
-
- /// Implementation of the connect methods.
- virtual int connect_i (SVC_HANDLER *&svc_handler,
- SVC_HANDLER **sh_copy,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- const ACE_Synch_Options &synch_options,
- const ACE_PEER_CONNECTOR_ADDR &local_addr,
- int reuse_addr,
- int flags,
- int perms);
-
- /// Return the handle set representing the non-blocking connects in
- /// progress.
- ACE_Unbounded_Set<ACE_HANDLE> &non_blocking_handles (void);
-
- // = Dynamic linking hooks.
- /// Default version does no work and returns -1. Must be overloaded
- /// by application developer to do anything meaningful.
- virtual int init (int argc, ACE_TCHAR *argv[]);
-
- /// Calls handle_close() to shutdown the Connector gracefully.
- virtual int fini (void);
-
- /// Default version returns address info in @a buf.
- virtual int info (ACE_TCHAR **strp, size_t length) const;
-
- // = Service management hooks.
- /// Default version does no work and returns -1. Must be overloaded
- /// by application developer to do anything meaningful.
- virtual int suspend (void);
-
- /// Default version does no work and returns -1. Must be overloaded
- /// by application developer to do anything meaningful.
- virtual int resume (void);
-
-private:
- /// This is the peer connector factory.
- ACE_PEER_CONNECTOR connector_;
-
- /**
- * Flags that indicate how SVC_HANDLER's should be initialized
- * prior to being activated. Right now, the only flag that is
- * processed is ACE_NONBLOCK, which enabled non-blocking I/O on
- * the SVC_HANDLER when it is opened.
- */
- int flags_;
-
- /// Pointer to the Reactor.
- ACE_Reactor *reactor_;
-
- /// Handle set representing the non-blocking connects in progress.
- ACE_Unbounded_Set<ACE_HANDLE> non_blocking_handles_;
-
-};
-
-/**
- * @class ACE_Strategy_Connector
- *
- * @brief Abstract factory for creating a service handler
- * (SVC_HANDLER), connecting the SVC_HANDLER, and activating the
- * SVC_HANDLER.
- *
- * Implements a flexible and extensible set of strategies for
- * actively establishing connections with clients. There are
- * three main strategies: (1) creating a SVC_HANDLER, (2)
- * actively initiating a new connection from the client,
- * and (3) activating the SVC_HANDLER with a
- * particular concurrency mechanism after the connection is established.
- */
-template <class SVC_HANDLER, ACE_PEER_CONNECTOR_1>
-class ACE_Strategy_Connector
- : public ACE_Connector <SVC_HANDLER, ACE_PEER_CONNECTOR_2>
-{
-public:
-
- // Useful STL-style traits.
- typedef ACE_Creation_Strategy<SVC_HANDLER>
- creation_strategy_type;
- typedef ACE_Connect_Strategy<SVC_HANDLER, ACE_PEER_CONNECTOR_2>
- connect_strategy_type;
- typedef ACE_Concurrency_Strategy<SVC_HANDLER>
- concurrency_strategy_type;
- typedef ACE_Connector <SVC_HANDLER, ACE_PEER_CONNECTOR_2>
- base_type;
-
- // = Define some useful (old style) traits.
- typedef ACE_Creation_Strategy<SVC_HANDLER>
- CREATION_STRATEGY;
- typedef ACE_Connect_Strategy<SVC_HANDLER, ACE_PEER_CONNECTOR_2>
- CONNECT_STRATEGY;
- typedef ACE_Concurrency_Strategy<SVC_HANDLER>
- CONCURRENCY_STRATEGY;
- typedef ACE_Connector <SVC_HANDLER, ACE_PEER_CONNECTOR_2>
- SUPER;
-
- /**
- * Initialize a connector. @a flags indicates how <SVC_HANDLER>'s
- * should be initialized prior to being activated. Right now, the
- * only flag that is processed is ACE_NONBLOCK, which enabled
- * non-blocking I/O on the SVC_HANDLER when it is opened.
- */
- ACE_Strategy_Connector (ACE_Reactor *r = ACE_Reactor::instance (),
- ACE_Creation_Strategy<SVC_HANDLER> * = 0,
- ACE_Connect_Strategy<SVC_HANDLER, ACE_PEER_CONNECTOR_2> * = 0,
- ACE_Concurrency_Strategy<SVC_HANDLER> * = 0,
- int flags = 0);
-
- /**
- * Initialize a connector. @a flags indicates how SVC_HANDLER's
- * should be initialized prior to being activated. Right now, the
- * only flag that is processed is ACE_NONBLOCK, which enabled
- * non-blocking I/O on the SVC_HANDLER when it is opened.
- * Default strategies would be created and used.
- */
- virtual int open (ACE_Reactor *r,
- int flags);
-
- /**
- * Initialize a connector. @a flags indicates how SVC_HANDLER's
- * should be initialized prior to being activated. Right now, the
- * only flag that is processed is ACE_NONBLOCK, which enabled
- * non-blocking I/O on the SVC_HANDLER when it is opened.
- */
- virtual int open (ACE_Reactor *r = ACE_Reactor::instance (),
- ACE_Creation_Strategy<SVC_HANDLER> * = 0,
- ACE_Connect_Strategy<SVC_HANDLER, ACE_PEER_CONNECTOR_2> * = 0,
- ACE_Concurrency_Strategy<SVC_HANDLER> * = 0,
- int flags = 0);
-
- /// Shutdown a connector and release resources.
- virtual ~ACE_Strategy_Connector (void);
-
- /// Close down the Connector
- virtual int close (void);
-
- // = Strategies accessors
- virtual ACE_Creation_Strategy<SVC_HANDLER> *creation_strategy (void) const;
- virtual ACE_Connect_Strategy<SVC_HANDLER, ACE_PEER_CONNECTOR_2> *connect_strategy (void) const;
- virtual ACE_Concurrency_Strategy<SVC_HANDLER> *concurrency_strategy (void) const;
-
-protected:
- // = The following three methods define the <Connector>'s strategies
- // for creating, connecting, and activating SVC_HANDLER's,
- // respectively.
-
- /**
- * Bridge method for creating a SVC_HANDLER. The strategy for
- * creating a SVC_HANDLER are configured into the Connector via
- * it's <creation_strategy_>. The default is to create a new
- * SVC_HANDLER only if @a sh == 0, else @a sh is unchanged.
- * However, subclasses can override this policy to perform
- * SVC_HANDLER creation in any way that they like (such as
- * creating subclass instances of SVC_HANDLER, using a singleton,
- * dynamically linking the handler, etc.). Returns -1 if failure,
- * else 0.
- */
- virtual int make_svc_handler (SVC_HANDLER *&sh);
-
- /**
- * Bridge method for connecting the new connection into the
- * SVC_HANDLER. The default behavior delegates to the
- * <PEER_CONNECTOR::connect> in the <Connect_Strategy>.
- */
- virtual int connect_svc_handler (SVC_HANDLER *&sh,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- ACE_Time_Value *timeout,
- const ACE_PEER_CONNECTOR_ADDR &local_addr,
- int reuse_addr,
- int flags,
- int perms);
-
- /**
- * Bridge method for connecting the new connection into the
- * SVC_HANDLER. The default behavior delegates to the
- * <PEER_CONNECTOR::connect> in the <Connect_Strategy>.
- * @a sh_copy is used to obtain a copy of the @a sh pointer, but that
- * can be kept in the stack; the motivation is a bit too long to
- * include here, but basically we want to modify @a sh safely, using
- * the internal locks in the Connect_Strategy, while saving a TSS
- * copy in @a sh_copy, usually located in the stack.
- */
- virtual int connect_svc_handler (SVC_HANDLER *&sh,
- SVC_HANDLER *&sh_copy,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- ACE_Time_Value *timeout,
- const ACE_PEER_CONNECTOR_ADDR &local_addr,
- int reuse_addr,
- int flags,
- int perms);
-
- /**
- * Bridge method for activating a SVC_HANDLER with the appropriate
- * concurrency strategy. The default behavior of this method is to
- * activate the SVC_HANDLER by calling its <open> method (which
- * allows the SVC_HANDLER to define its own concurrency strategy).
- * However, subclasses can override this strategy to do more
- * sophisticated concurrency activations (such as creating the
- * SVC_HANDLER as an "active object" via multi-threading or
- * multi-processing).
- */
- virtual int activate_svc_handler (SVC_HANDLER *svc_handler);
-
- // = Strategy objects.
-
- /// Creation strategy for an Connector.
- CREATION_STRATEGY *creation_strategy_;
-
- /// true if Connector created the creation strategy and thus should
- /// delete it, else false.
- bool delete_creation_strategy_;
-
- /// Connect strategy for a Connector.
- CONNECT_STRATEGY *connect_strategy_;
-
- /// true if Connector created the connect strategy and thus should
- /// delete it, else false.
- bool delete_connect_strategy_;
-
- /// Concurrency strategy for an <Connector>.
- CONCURRENCY_STRATEGY *concurrency_strategy_;
-
- /// true if Connector created the concurrency strategy and thus should
- /// delete it, else false.
- bool delete_concurrency_strategy_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Connector.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Connector.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CONNECTOR_H */
-
diff --git a/dep/include/ace/Containers.h b/dep/include/ace/Containers.h
deleted file mode 100644
index f6f1d35bb60..00000000000
--- a/dep/include/ace/Containers.h
+++ /dev/null
@@ -1,72 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Containers.h
- *
- * $Id: Containers.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_CONTAINERS_H
-#define ACE_CONTAINERS_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class T> class ACE_Double_Linked_List;
-template <class T> class ACE_Double_Linked_List_Iterator_Base;
-template <class T> class ACE_Double_Linked_List_Iterator;
-template <class T> class ACE_Double_Linked_List_Reverse_Iterator;
-
-/**
- * @class ACE_DLList_Node
- *
- * @brief Base implementation of element in a DL list. Needed for
- * ACE_Double_Linked_List.
- */
-class ACE_Export ACE_DLList_Node
-{
-public:
- friend class ACE_Double_Linked_List<ACE_DLList_Node>;
- friend class ACE_Double_Linked_List_Iterator_Base<ACE_DLList_Node>;
- friend class ACE_Double_Linked_List_Iterator<ACE_DLList_Node>;
- friend class ACE_Double_Linked_List_Reverse_Iterator<ACE_DLList_Node>;
-
- ACE_DLList_Node (void *i,
- ACE_DLList_Node *n = 0,
- ACE_DLList_Node *p = 0);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- void *item_;
-
- ACE_DLList_Node *next_;
- ACE_DLList_Node *prev_;
-
-protected:
- ACE_DLList_Node (void);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Containers.inl"
-#endif /* __ACE_INLINE__ */
-
-#include "ace/Containers_T.h"
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CONTAINERS_H */
-
diff --git a/dep/include/ace/Containers.inl b/dep/include/ace/Containers.inl
deleted file mode 100644
index 8094672a8f6..00000000000
--- a/dep/include/ace/Containers.inl
+++ /dev/null
@@ -1,25 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Containers.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_DLList_Node::ACE_DLList_Node (void)
- : item_ (0),
- next_ (0),
- prev_ (0)
-{
-}
-
-ACE_INLINE
-ACE_DLList_Node::ACE_DLList_Node (void *i,
- ACE_DLList_Node *n,
- ACE_DLList_Node *p)
- : item_ (i),
- next_ (n),
- prev_ (p)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Containers_T.h b/dep/include/ace/Containers_T.h
deleted file mode 100644
index d8ba71c64a6..00000000000
--- a/dep/include/ace/Containers_T.h
+++ /dev/null
@@ -1,2065 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Containers_T.h
- *
- * $Id: Containers_T.h 82588 2008-08-11 13:37:41Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_CONTAINERS_T_H
-#define ACE_CONTAINERS_T_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// Need by ACE_DLList_Node.
-#include "ace/Containers.h"
-
-// Shared with "ace/Unbounded_Set.h"
-#include "ace/Node.h"
-
-// Backwards compatibility, please include "ace/Array_Base.h" directly.
-#include "ace/Array_Base.h"
-
-// Backwards compatibility, please include "ace/Unbounded_Set.h" directly.
-#include "ace/Unbounded_Set.h"
-
-// Backwards compatibility, please include "ace/Unbounded_Queue.h" directly.
-#include "ace/Unbounded_Queue.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Allocator;
-
-/**
- * @class ACE_Bounded_Stack
- *
- * @brief Implement a generic LIFO abstract data type.
- *
- * This implementation of a Stack uses a bounded array
- * that is allocated dynamically. The Stack interface
- * provides the standard constant time push, pop, and top
- * operations.
- *
- * <b> Requirements and Performance Characteristics</b>
- * - Internal Structure
- * Dynamic array
- * - Duplicates allowed?
- * Yes
- * - Random access allowed?
- * No
- * - Search speed
- * N/A
- * - Insert/replace speed
- * N/A
- * - Iterator still valid after change to container?
- * N/A
- * - Frees memory for removed elements?
- * No
- * - Items inserted by
- * Value
- * - Requirements for contained type
- * -# Default constructor
- * -# Copy constructor
- * -# operator=
- *
- */
-template <class T>
-class ACE_Bounded_Stack
-{
-public:
- // = Initialization, assignment, and termination methods.
-
- /// Initialize a new empty stack with the provided size..
- /**
- * Initialize and allocate space for a new Bounded_Stack with the provided
- * size.
- */
- ACE_Bounded_Stack (size_t size);
-
- /// Initialize the stack to be a copy of the stack provided.
- /**
- * Initialize the stack to be an exact copy of the Bounded_Stack provided
- * as a parameter.
- */
- ACE_Bounded_Stack (const ACE_Bounded_Stack<T> &s);
-
- /// Assignment operator
- /**
- * Perform a deep copy operation using the Bounded_Stack parameter. If the
- * capacity of the lhs isn't sufficient for the rhs, then the underlying data
- * structure will be reallocated to accomadate the larger number of elements.
- */
- void operator= (const ACE_Bounded_Stack<T> &s);
-
- /// Perform actions needed when stack goes out of scope.
- /**
- * Deallocate the memory used by the Bounded_Stack.
- */
- ~ACE_Bounded_Stack (void);
-
- // = Classic Stack operations.
-
- ///Add an element to the top of the stack.
- /**
- * Place a new item on top of the stack. Returns -1 if the stack
- * is already full, 0 if the stack is not already full, and -1 if
- * failure occurs.
- */
- int push (const T &new_item);
-
- ///Remove an item from the top of stack.
- /**
- * Remove and return the top stack item. Returns -1 if the stack is
- * already empty, 0 if the stack is not already empty, and -1 if
- * failure occurs.
- */
- int pop (T &item);
-
- ///Examine the contents of the top of stack.
- /**
- * Return top stack item without removing it. Returns -1 if the
- * stack is already empty, 0 if the stack is not already empty, and
- * -1 if failure occurs.
- */
- int top (T &item) const;
-
- // = Check boundary conditions.
-
- /// Returns 1 if the container is empty, otherwise returns 0.
- /**
- * Performs constant time check to determine if the stack is empty.
- */
- int is_empty (void) const;
-
- /// Returns 1 if the container is full, otherwise returns 0.
- /**
- * Performs constant time check to determine if the stack is at capacity.
- */
- int is_full (void) const;
-
- /// The number of items in the stack.
- /**
- * Return the number of items currently in the stack.
- */
- size_t size (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Size of the dynamically allocated data.
- size_t size_;
-
- /// Keeps track of the current top of stack.
- size_t top_;
-
- /// Holds the stack's contents.
- T *stack_;
-};
-
-//----------------------------------------
-
-/**
- * @class ACE_Fixed_Stack
- *
- * @brief Implement a generic LIFO abstract data type.
- *
- * This implementation of a Stack uses a fixed array
- * with the size fixed at instantiation time.
- *
- * <b> Requirements and Performance Characteristics</b>
- * - Internal Structure
- * Fixed array
- * - Duplicates allowed?
- * Yes
- * - Random access allowed?
- * No
- * - Search speed
- * N/A
- * - Insert/replace speed
- * N/A
- * - Iterator still valid after change to container?
- * N/A
- * - Frees memory for removed elements?
- * No
- * - Items inserted by
- * Value
- * - Requirements for contained type
- * -# Default constructor
- * -# Copy constructor
- * -# operator=
- *
- */
-template <class T, size_t ACE_SIZE>
-class ACE_Fixed_Stack
-{
-public:
- // = Initialization, assignment, and termination methods.
- /// Initialize a new stack so that it is empty.
- /**
- * Initialize an empty stack.
- */
- ACE_Fixed_Stack (void);
-
- /// The copy constructor (performs initialization).
- /**
- * Initialize the stack and copy the provided stack into the current stack.
- */
- ACE_Fixed_Stack (const ACE_Fixed_Stack<T, ACE_SIZE> &s);
-
- /// Assignment operator (performs assignment).
- /**
- * Perform a deep copy of the provided stack.
- */
- void operator= (const ACE_Fixed_Stack<T, ACE_SIZE> &s);
-
- /// Perform actions needed when stack goes out of scope.
- /**
- * Destroy the stack.
- */
- ~ACE_Fixed_Stack (void);
-
- // = Classic Stack operations.
-
- ///Constant time placement of element on top of stack.
- /**
- * Place a new item on top of the stack. Returns -1 if the stack
- * is already full, 0 if the stack is not already full, and -1 if
- * failure occurs.
- */
- int push (const T &new_item);
-
- ///Constant time removal of top of stack.
- /**
- * Remove and return the top stack item. Returns -1 if the stack is
- * already empty, 0 if the stack is not already empty, and -1 if
- * failure occurs.
- */
- int pop (T &item);
-
- ///Constant time examination of top of stack.
- /**
- * Return top stack item without removing it. Returns -1 if the
- * stack is already empty, 0 if the stack is not already empty, and
- * -1 if failure occurs.
- */
- int top (T &item) const;
-
- // = Check boundary conditions.
-
- /// Returns 1 if the container is empty, otherwise returns 0.
- /**
- * Performs constant time check to see if stack is empty.
- */
- int is_empty (void) const;
-
- /// Returns 1 if the container is full, otherwise returns 0.
- /**
- * Performs constant time check to see if stack is full.
- */
- int is_full (void) const;
-
- /// The number of items in the stack.
- /**
- * Constant time access to the current size of the stack.
- */
- size_t size (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Size of the allocated data.
- size_t size_;
-
- /// Keeps track of the current top of stack.
- size_t top_;
-
- /// Holds the stack's contents.
- T stack_[ACE_SIZE];
-};
-
-//----------------------------------------
-
-template<class T> class ACE_Ordered_MultiSet;
-template<class T> class ACE_Ordered_MultiSet_Iterator;
-
-/**
- * @class ACE_DNode
- *
- * @brief Implementation element in a bilinked list.
- */
-template<class T>
-class ACE_DNode
-{
- friend class ACE_Ordered_MultiSet<T>;
- friend class ACE_Ordered_MultiSet_Iterator<T>;
-
-public:
-
- /// This isn't necessary, but it keeps some compilers happy.
- ~ACE_DNode (void);
-
-private:
-
- // = Initialization methods
- ACE_DNode (const T &i, ACE_DNode<T> *n = 0, ACE_DNode<T> *p = 0);
-
- /// Pointer to next element in the list of {ACE_DNode}s.
- ACE_DNode<T> *next_;
-
- /// Pointer to previous element in the list of {ACE_DNode}s.
- ACE_DNode<T> *prev_;
-
- /// Current value of the item in this node.
- T item_;
-};
-
-/**
- * @class ACE_Unbounded_Stack
- *
- * @brief Implement a generic LIFO abstract data type.
- *
- * This implementation of an unbounded Stack uses a linked list.
- * If you use the {insert} or {remove} methods you should keep
- * in mind that duplicate entries aren't allowed. In general,
- * therefore, you should avoid the use of these methods since
- * they aren't really part of the ADT stack. The stack is implemented
- * as a doubly linked list.
- *
- * <b> Requirements and Performance Characteristics</b>
- * - Internal Structure
- * Double linked list
- * - Duplicates allowed?
- * No
- * - Random access allowed?
- * No
- * - Search speed
- * Linear
- * - Insert/replace speed
- * Linear
- * - Iterator still valid after change to container?
- * Yes
- * - Frees memory for removed elements?
- * Yes
- * - Items inserted by
- * Value
- * - Requirements for contained type
- * -# Default constructor
- * -# Copy constructor
- * -# operator=
- *
- */
-template <class T>
-class ACE_Unbounded_Stack
-{
-public:
- friend class ACE_Unbounded_Stack_Iterator<T>;
-
- // Trait definition.
- typedef ACE_Unbounded_Stack_Iterator<T> ITERATOR;
-
- // = Initialization, assignment, and termination methods.
- /// Initialize a new stack so that it is empty. Use user defined
- /// allocation strategy if specified.
- /**
- * Initialize an empty stack using the user specified allocation strategy
- * if provided.
- */
- ACE_Unbounded_Stack (ACE_Allocator *the_allocator = 0);
-
- /// The copy constructor (performs initialization).
- /**
- * Initialize this stack to be an exact copy of {s}.
- */
- ACE_Unbounded_Stack (const ACE_Unbounded_Stack<T> &s);
-
- /// Assignment operator (performs assignment).
- /**
- * Perform a deep copy of the rhs into the lhs.
- */
- void operator= (const ACE_Unbounded_Stack<T> &s);
-
- /// Perform actions needed when stack goes out of scope.
- /**
- * Destroy the underlying list for the stack.
- */
- ~ACE_Unbounded_Stack (void);
-
- // = Classic Stack operations.
-
- ///Push an element onto the top of stack.
- /**
- * Place a new item on top of the stack. Returns -1 if the stack
- * is already full, 0 if the stack is not already full, and -1 if
- * failure occurs.
- */
- int push (const T &new_item);
-
- ///Pop the top element of the stack.
- /**
- * Remove and return the top stack item. Returns -1 if the stack is
- * already empty, 0 if the stack is not already empty, and -1 if
- * failure occurs.
- */
- int pop (T &item);
-
- ///Examine the top of the stack.
- /**
- * Return top stack item without removing it. Returns -1 if the
- * stack is already empty, 0 if the stack is not already empty, and
- * -1 if failure occurs.
- */
- int top (T &item) const;
-
- // = Check boundary conditions.
-
- /// Returns 1 if the container is empty, otherwise returns 0.
- /**
- * Constant time check to see if the stack is empty.
- */
- int is_empty (void) const;
-
- /// Returns 1 if the container is full, otherwise returns 0.
- /**
- * Always resturns 0 since the stack is unbounded.
- */
- int is_full (void) const;
-
- // = Auxiliary methods (not strictly part of the Stack ADT).
-
- ///Linear Insert of an item.
- /**
- * Insert {new_item} into the Stack at the head (but doesn't allow
- * duplicates). Returns -1 if failures occur, 1 if item is already
- * present (i.e., no duplicates are allowed), else 0.
- */
- int insert (const T &new_item);
-
- /// Remove @a item from the Stack. Returns 0 if it removes the item,
- /// -1 if it can't find the item, and -1 if a failure occurs.
- /**
- * Linear remove operation.
- */
- int remove (const T &item);
-
- /// Finds if @a item occurs the set. Returns 0 if finds, else -1.
- /**
- * Linear find operation.
- */
- int find (const T &item) const;
-
- /// The number of items in the stack.
- /**
- * Constant time access to the current stack size.
- */
- size_t size (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Delete all the nodes in the stack.
- void delete_all_nodes (void);
-
- /// Copy all nodes from {s} to {this}.
- void copy_all_nodes (const ACE_Unbounded_Stack<T> &s);
-
- /// Head of the linked list of Nodes.
- ACE_Node<T> *head_;
-
- /// Current size of the stack.
- size_t cur_size_;
-
- /// Allocation strategy of the stack.
- ACE_Allocator *allocator_;
-};
-
-/**
- * @class ACE_Unbounded_Stack_Iterator
- *
- * @brief Implement an iterator over an unbounded Stack.
- */
-template <class T>
-class ACE_Unbounded_Stack_Iterator
-{
-public:
- // = Initialization method.
- /// Move to the first element in the {stack}.
- ACE_Unbounded_Stack_Iterator (ACE_Unbounded_Stack<T> &stack);
-
- // = Iteration methods.
-
- /// Pass back the @a next_item that hasn't been seen in the Stack.
- /// Returns 0 when all items have been seen, else 1.
- int next (T *&next_item);
-
- /// Move forward by one element in the Stack. Returns 0 when all the
- /// items in the Stack have been seen, else 1.
- int advance (void);
-
- /// Move to the first element in the Stack. Returns 0 if the
- /// Stack is empty, else 1.
- int first (void);
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Pointer to the current node in the iteration.
- ACE_Node<T> *current_;
-
- /// Pointer to the Stack we're iterating over.
- ACE_Unbounded_Stack<T> &stack_;
-};
-
-template <class T>
-class ACE_Double_Linked_List;
-
-/**
- * @class ACE_Double_Linked_List_Iterator_Base
- *
- * @brief Implements a common base class for iterators for a double
- * linked list ADT
- */
-template <class T>
-class ACE_Double_Linked_List_Iterator_Base
-{
-public:
- // = Iteration methods.
-
- /// Passes back the {entry} under the iterator. Returns 0 if the
- /// iteration has completed, otherwise 1
- int next (T *&) const;
-
- /**
- * @deprecated Return the address of next (current) unvisited item in
- * the list. 0 if there is no more element available.
- */
- T *next (void) const;
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// STL-like iterator dereference operator: returns a reference
- /// to the node underneath the iterator.
- T & operator* (void) const ;
-
- /**
- * Retasks the iterator to iterate over a new
- * Double_Linked_List. This allows clients to reuse an iterator
- * without incurring the constructor overhead. If you do use this,
- * be aware that if there are more than one reference to this
- * iterator, the other "clients" may be very bothered when their
- * iterator changes. @@ Here be dragons. Comments?
- */
- void reset (ACE_Double_Linked_List<T> &);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- // = Initialization methods.
-
- /// Constructor
- ACE_Double_Linked_List_Iterator_Base (const ACE_Double_Linked_List<T> &);
-
- /// Copy constructor.
- ACE_Double_Linked_List_Iterator_Base (const
- ACE_Double_Linked_List_Iterator_Base<T>
- &iter);
-
- // = Iteration methods.
- /**
- * Move to the first element of the list. Returns 0 if the list is
- * empty, else 1.
- * @note the head of the ACE_DLList is actually a null entry, so the
- * first element is actually the 2n'd entry
- */
- int go_head (void);
-
- /// Move to the last element of the list. Returns 0 if the list is
- /// empty, else 1.
- int go_tail (void);
-
- /**
- * Check if we reach the end of the list. Can also be used to get
- * the *current* element in the list. Return the address of the
- * current item if there are still elements left , 0 if we run out
- * of element.
- */
- T *not_done (void) const ;
-
- /// Advance to the next element in the list. Return the address of the
- /// next element if there are more, 0 otherwise.
- T *do_advance (void);
-
- /// Retreat to the previous element in the list. Return the address
- /// of the previous element if there are more, 0 otherwise.
- T *do_retreat (void);
-
- /// Dump the state of an object.
- void dump_i (void) const;
-
- /// Remember where we are.
- T *current_;
-
- const ACE_Double_Linked_List<T> *dllist_;
-};
-
-/**
- * @class ACE_Double_Linked_List_Iterator
- *
- * @brief Implements an iterator for a double linked list ADT
- *
- * Iterate thru the double-linked list. This class provides
- * an interface that let users access the internal element
- * addresses directly. Notice {class T} must declare
- * ACE_Double_Linked_List&lt;T&gt;,
- * ACE_Double_Linked_List_Iterator_Base &lt;T&gt; and
- * ACE_Double_Linked_List_Iterator as friend classes and class T
- * should also have data members T* next_ and T* prev_.
- */
-template <class T>
-class ACE_Double_Linked_List_Iterator : public ACE_Double_Linked_List_Iterator_Base <T>
-{
-public:
- // = Initialization method.
- ACE_Double_Linked_List_Iterator (const ACE_Double_Linked_List<T> &);
-
- /**
- * Retasks the iterator to iterate over a new
- * Double_Linked_List. This allows clients to reuse an iterator
- * without incurring the constructor overhead. If you do use this,
- * be aware that if there are more than one reference to this
- * iterator, the other "clients" may be very bothered when their
- * iterator changes.
- * @@ Here be dragons. Comments?
- */
- void reset (ACE_Double_Linked_List<T> &);
-
- /// Move to the first element in the list. Returns 0 if the
- /// list is empty, else 1.
- int first (void);
-
- /// Move forward by one element in the list. Returns 0 when all the
- /// items in the list have been seen, else 1.
- int advance (void);
-
- /**
- * Advance the iterator while removing the original item from the
- * list. Return a pointer points to the original (removed) item.
- * If @a dont_remove equals false, this function behaves like {advance}
- * but return 0 (NULL) instead.
- */
- T* advance_and_remove (bool dont_remove);
-
- // = STL-style iteration methods
-
- /// Prefix advance.
- ACE_Double_Linked_List_Iterator<T> & operator++ (void);
-
- /// Postfix advance.
- ACE_Double_Linked_List_Iterator<T> operator++ (int);
-
- /// Prefix reverse.
- ACE_Double_Linked_List_Iterator<T> & operator-- (void);
-
- /// Postfix reverse.
- ACE_Double_Linked_List_Iterator<T> operator-- (int);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-/**
- * @class ACE_Double_Linked_List_Reverse_Iterator
- *
- * @brief Implements a reverse iterator for a double linked list ADT
- *
- * Iterate backwards over the double-linked list. This class
- * provide an interface that let users access the internal
- * element addresses directly, which seems to break the
- * encapsulation. Notice {class T} must declare
- * ACE_Double_Linked_List&lt;T&gt;,
- * ACE_Double_Linked_List_Iterator_Base &lt;T&gt; and
- * ACE_Double_Linked_List_Iterator as friend classes and class T
- * should also have data members T* next_ and T* prev_.
- */
-template <class T>
-class ACE_Double_Linked_List_Reverse_Iterator : public ACE_Double_Linked_List_Iterator_Base <T>
-{
-public:
- // = Initialization method.
- ACE_Double_Linked_List_Reverse_Iterator (ACE_Double_Linked_List<T> &);
-
- /**
- * Retasks the iterator to iterate over a new
- * Double_Linked_List. This allows clients to reuse an iterator
- * without incurring the constructor overhead. If you do use this,
- * be aware that if there are more than one reference to this
- * iterator, the other "clients" may be very bothered when their
- * iterator changes.
- * @@ Here be dragons. Comments?
- */
- void reset (ACE_Double_Linked_List<T> &);
-
- /// Move to the first element in the list. Returns 0 if the
- /// list is empty, else 1.
- int first (void);
-
- /// Move forward by one element in the list. Returns 0 when all the
- /// items in the list have been seen, else 1.
- int advance (void);
-
- /**
- * Advance the iterator while removing the original item from the
- * list. Return a pointer points to the original (removed) item.
- * If @a dont_remove equals false, this function behaves like {advance}
- * but return 0 (NULL) instead.
- */
- T* advance_and_remove (bool dont_remove);
-
- // = STL-style iteration methods
-
- /// Prefix advance.
- ACE_Double_Linked_List_Reverse_Iterator<T> & operator++ (void);
-
- /// Postfix advance.
- ACE_Double_Linked_List_Reverse_Iterator<T> operator++ (int);
-
- /// Prefix reverse.
- ACE_Double_Linked_List_Reverse_Iterator<T> & operator-- (void);
-
- /// Postfix reverse.
- ACE_Double_Linked_List_Reverse_Iterator<T> operator-- (int);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-/**
- * @class ACE_Double_Linked_List
- *
- * @brief A double-linked list implementation.
- *
- * This implementation of an unbounded double-linked list uses a
- * circular linked list with a dummy node. It is pretty much
- * like the {ACE_Unbounded_Queue} except that it allows removing
- * of a specific element from a specific location.
- * Notice that this class is an implementation of a very simple
- * data structure. This is *NOT* a container class. You can use the
- * class to implement other contains classes but it is *NOT* a
- * general purpose container class.
- * The parameter class *MUST* have members T* prev and T* next
- * and users of this class are responsible to follow the general
- * rules of using double-linked lists to maintaining the list
- * integrity.
- * If you need a double linked container class, use the DLList
- * class which is a container but delegates to the Double_Linked_List
- * class.
- *
- * <b> Requirements and Performance Characteristics</b>
- * - Internal Structure
- * Double Linked List
- * - Duplicates allowed?
- * Yes
- * - Random access allowed?
- * No
- * - Search speed
- * N/A
- * - Insert/replace speed
- * Linear
- * - Iterator still valid after change to container?
- * Yes
- * - Frees memory for removed elements?
- * No
- * - Items inserted by
- * Value
- * - Requirements for contained type
- * -# Default constructor
- * -# Copy constructor
- * -# operator=
- *
- */
-template <class T>
-class ACE_Double_Linked_List
-{
-public:
- friend class ACE_Double_Linked_List_Iterator_Base<T>;
- friend class ACE_Double_Linked_List_Iterator<T>;
- friend class ACE_Double_Linked_List_Reverse_Iterator<T>;
-
- // Trait definition.
- typedef ACE_Double_Linked_List_Iterator<T> ITERATOR;
- typedef ACE_Double_Linked_List_Reverse_Iterator<T> REVERSE_ITERATOR;
-
- // = Initialization and termination methods.
- /// construction. Use user specified allocation strategy
- /// if specified.
- /**
- * Initialize an empy list using the allocation strategy specified by the user.
- * If none is specified, then use default allocation strategy.
- */
- ACE_Double_Linked_List (ACE_Allocator *the_allocator = 0);
-
- /// Copy constructor.
- /**
- * Create a double linked list that is a copy of the provided
- * parameter.
- */
- ACE_Double_Linked_List (const ACE_Double_Linked_List<T> &);
-
- /// Assignment operator.
- /**
- * Perform a deep copy of the provided list by first deleting the nodes of the
- * lhs and then copying the nodes of the rhs.
- */
- void operator= (const ACE_Double_Linked_List<T> &);
-
- /// Destructor.
- /**
- * Clean up the memory allocated for the nodes of the list.
- */
- ~ACE_Double_Linked_List (void);
-
- // = Check boundary conditions.
-
- /// Returns 1 if the container is empty, 0 otherwise.
- /**
- * Performs constant time check to determine if the list is empty.
- */
- int is_empty (void) const;
-
- /// The list is unbounded, so this always returns 0.
- /**
- * Since the list is unbounded, the method simply returns 0.
- */
- int is_full (void) const;
-
- // = Classic queue operations.
-
- /// Adds @a new_item to the tail of the list. Returns the new item
- /// that was inserted.
- /**
- * Provides constant time insertion at the end of the list structure.
- */
- T *insert_tail (T *new_item);
-
- /// Adds @a new_item to the head of the list.Returns the new item that
- /// was inserted.
- /**
- * Provides constant time insertion at the head of the list.
- */
- T *insert_head (T *new_item);
-
- /// Removes the head of the list and returns a pointer to that item.
- /**
- * Removes and returns the first {item} in the list. Returns
- * internal node's address on success, 0 if the queue was empty.
- * This method will *not* free the internal node.
- */
- T* delete_head (void);
-
- /// Removes the tail of the list and returns a pointer to that item.
- /**
- * Removes and returns the last {item} in the list. Returns
- * internal nodes's address on success, 0 if the queue was
- * empty. This method will *not* free the internal node.
- */
- T *delete_tail (void);
-
- // = Additional utility methods.
-
- ///Empty the list.
- /**
- * Reset the {ACE_Double_Linked_List} to be empty.
- * Notice that since no one is interested in the items within,
- * This operation will delete all items.
- */
- void reset (void);
-
- /// Get the {slot}th element in the set. Returns -1 if the element
- /// isn't in the range {0..{size} - 1}, else 0.
- /**
- * Iterates through the list to the desired index and assigns the provides pointer
- * with the address of the node occupying that index.
- */
- int get (T *&item, size_t slot = 0);
-
- /// The number of items in the queue.
- /**
- * Constant time call to return the current size of the list.
- */
- size_t size (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Use DNode address directly.
- /**
- * Constant time removal of an item from the list using it's address.
- */
- int remove (T *n);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Delete all the nodes in the list.
- /**
- * Removes and deallocates memory for all of the list nodes.
- */
- void delete_nodes (void);
-
- /// Copy nodes from {rhs} into this list.
- /**
- * Copy the elements of the provided list by allocated new nodes and assigning
- * them with the proper data.
- */
- void copy_nodes (const ACE_Double_Linked_List<T> &rhs);
-
- /// Setup header pointer. Called after we create the head node in ctor.
- /**
- * Initialize the head pointer so that the list has a dummy node.
- */
- void init_head (void);
-
- ///Constant time insert a new item into the list structure.
- /**
- * Insert a @a new_item into the list. It will be added before
- * or after @a old_item. Default is to insert the new item *after*
- * {head_}. Return 0 if succeed, -1 if error occured.
- */
- int insert_element (T *new_item,
- int before = 0,
- T *old_item = 0);
-
- ///Constant time delete an item from the list structure.
- /**
- * Remove @a item from the list. Return 0 if succeed, -1 otherwise.
- * Notice that this function checks if item is {head_} and either its
- * {next_} or {prev_} is NULL. The function resets item's {next_} and
- * {prev_} to 0 to prevent clobbering the double-linked list if a user
- * tries to remove the same node again.
- */
- int remove_element (T *item);
-
- /// Head of the circular double-linked list.
- T *head_;
-
- /// Size of this list.
- size_t size_;
-
- /// Allocation Strategy of the queue.
- ACE_Allocator *allocator_;
-};
-
-template <class T> class ACE_DLList;
-template <class T> class ACE_DLList_Iterator;
-template <class T> class ACE_DLList_Reverse_Iterator;
-
-typedef ACE_Double_Linked_List<ACE_DLList_Node> ACE_DLList_Base;
-
-//typedef ACE_Double_Linked_List_Iterator <ACE_DLList_Node>
-// ACE_DLList_Iterator_Base;
-//typedef ACE_Double_Linked_List_Reverse_Iterator <ACE_DLList_Node>
-// ACE_DLList_Reverse_Iterator_Base;
-//@@ These two typedefs (inherited from James Hu's original design)
-// have been removed because Sun CC 4.2 had problems with it. I guess
-// having the DLList_Iterators inheriting from a class which is
-// actually a typedef leads to problems. #define'ing rather than
-// typedef'ing worked, but as per Carlos's reccomendation, I'm just
-// replacing all references to the base classes with their actual
-// type. Matt Braun (6/15/99)
-
-/**
- * @class ACE_DLList
- *
- * @brief A double-linked list container class.
- *
- * ACE_DLList is a simple, unbounded container implemented using a
- * double-linked list. It is critical to remember that ACE_DLList inherits
- * from ACE_Double_Linked_List, wrapping each T pointer in a ACE_DLList_Node
- * object which satisfies the next/prev pointer requirements imposed by
- * ACE_Double_Linked_List.
- *
- * Each item inserted to an ACE_DLList is a pointer to a T object. The
- * caller is responsible for lifetime of the T object. ACE_DLList takes no
- * action on the T object; it is not copied on insertion and it is not
- * deleted on removal from the ACE_DLList.
- */
-template <class T>
-class ACE_DLList : public ACE_DLList_Base
-{
- friend class ACE_DLList_Node;
- friend class ACE_Double_Linked_List_Iterator<T>;
- friend class ACE_DLList_Iterator<T>;
- friend class ACE_DLList_Reverse_Iterator<T>;
-
-public:
-
- /// Delegates to ACE_Double_Linked_List.
- void operator= (const ACE_DLList<T> &l);
-
- /**
- * @name Queue-like insert and delete methods
- */
- //@{
-
- /**
- * Insert pointer for a new item at the tail of the list.
- *
- * @return Pointer to item inserted; 0 on error.
- */
- T *insert_tail (T *new_item);
-
- /**
- * Insert pointer for a new item at the head of the list.
- *
- * @return Pointer to item inserted; 0 on error.
- */
- T *insert_head (T *new_item);
-
- /**
- * Removes the item at the head of the list and returns its pointer.
- *
- * @return Pointer to previously inserted item; 0 if the list is empty,
- * an error occurred, or the original pointer inserted was 0.
- */
- T *delete_head (void);
-
- /**
- * Removes the item at the tail of the list and returns its pointer.
- *
- * @return Pointer to previously inserted item; 0 if the list is empty,
- * an error occurred, or the original pointer inserted was 0.
- */
- T *delete_tail (void);
- //@}
-
- /**
- * Provide random access to any item in the list.
- *
- * @param item Receives a pointer to the T object pointer held at the
- * specified position in the list.
- * @param slot Position in the list to access. The first position is 0.
- *
- * @retval 0 Success; T pointer returned in item.
- * @retval -1 Error, most likely slot is outside the range of the list.
- */
- int get (T *&item, size_t slot = 0);
-
- /// Delegates to ACE_Double_Linked_List.
- void dump (void) const;
-
- /// Delegates to ACE_Double_Linked_List.
- int remove (ACE_DLList_Node *n);
-
- /**
- * Constructor.
- *
- * @param the_allocator Allocator to use for allocating ACE_DLList_Node
- * objects that wrap T objects for inclusion in the
- * list. If 0, ACE_Allocator::instance() is used.
- */
- ACE_DLList (ACE_Allocator *the_allocator = 0);
-
- /// Delegates to ACE_Double_Linked_List.
- ACE_DLList (const ACE_DLList<T> &l);
-
- /**
- * Deletes all ACE_DLList_Node objects in the list starting from the head.
- * No T objects referred to by the deleted ACE_DLList_Node objects are
- * modified or freed. If you desire all of the T objects in the list to
- * be deleted as well, code such as this should be used prior to destroying
- * the ACE_DLList:
- * @code
- ACE_DLList<Item> list;
- ... // insert dynamically allocated Items...
- Item *p;
- while ((p = list.delete_head()) != 0)
- delete *p;
- @endcode
- */
- ~ACE_DLList (void);
-};
-
-/**
- * @class ACE_DLList_Iterator
- *
- * @brief A double-linked list container class iterator.
- *
- * This implementation uses ACE_Double_Linked_List_Iterator to
- * perform the logic behind this container class. It delegates
- * all of its calls to ACE_Double_Linked_List_Iterator.
- */
-template <class T>
-class ACE_DLList_Iterator : public ACE_Double_Linked_List_Iterator <ACE_DLList_Node>
-{
-
- friend class ACE_DLList<T>;
- friend class ACE_DLList_Node;
-
-public:
-
- // = Initialization method.
- ACE_DLList_Iterator (ACE_DLList<T> &l);
-
- /**
- * Retasks the iterator to iterate over a new
- * Double_Linked_List. This allows clients to reuse an iterator
- * without incurring the constructor overhead. If you do use this,
- * be aware that if there are more than one reference to this
- * iterator, the other "clients" may be very bothered when their
- * iterator changes.
- * @@ Here be dragons. Comments?
- */
- void reset (ACE_DLList<T> &l);
-
- // = Iteration methods.
- /// Move forward by one element in the list. Returns 0 when all the
- /// items in the list have been seen, else 1.
- int advance (void);
-
- /// Pass back the {next_item} that hasn't been seen in the list.
- /// Returns 0 when all items have been seen, else 1.
- int next (T *&);
-
- /**
- * @deprecated Delegates to ACE_Double_Linked_List_Iterator, except that
- * whereas the Double_Linked_List version of next returns the node, this next
- * returns the contents of the node
- */
- T *next (void) const;
-
- /**
- * Removes the current item (i.e., {next}) from the list.
- * Note that DLList iterators do not support {advance_and_remove}
- * directly (defined in its base class) and you will need to
- * release the element returned by it.
- */
- int remove (void);
-
- /// Delegates to ACE_Double_Linked_List_Iterator.
- void dump (void) const;
-
-private:
- ACE_DLList<T> *list_;
-};
-
-/**
- * @class ACE_DLList_Reverse_Iterator
- *
- * @brief A double-linked list container class iterator.
- *
- * This implementation uses ACE_Double_Linked_List_Iterator to
- * perform the logic behind this container class. It delegates
- * all of its calls to ACE_Double_Linked_List_Iterator.
- */
-template <class T>
-class ACE_DLList_Reverse_Iterator : public ACE_Double_Linked_List_Reverse_Iterator <ACE_DLList_Node>
-{
-
- friend class ACE_DLList<T>;
- friend class ACE_DLList_Node;
-
-public:
-
- // = Initialization method.
- ACE_DLList_Reverse_Iterator (ACE_DLList<T> &l);
-
- /**
- * Retasks the iterator to iterate over a new
- * Double_Linked_List. This allows clients to reuse an iterator
- * without incurring the constructor overhead. If you do use this,
- * be aware that if there are more than one reference to this
- * iterator, the other "clients" may be very bothered when their
- * iterator changes.
- * @@ Here be dragons. Comments?
- */
- void reset (ACE_DLList<T> &l);
-
- // = Iteration methods.
- /// Move forward by one element in the list. Returns 0 when all the
- /// items in the list have been seen, else 1.
- int advance (void);
-
- /// Pass back the {next_item} that hasn't been seen in the list.
- /// Returns 0 when all items have been seen, else 1.
- int next (T *&);
-
- /// @deprecated Delegates to ACE_Double_Linked_List_Iterator.
- T *next (void) const;
-
- /// Removes the current item (i.e., {next}) from the list.
- /// Note that DLList iterators do not support {advance_and_remove}
- /// directly (defined in its base class) and you will need to
- /// release the element returned by it.
- int remove (void);
-
- /// Delegates to ACE_Double_Linked_List_Iterator.
- void dump (void) const;
-
-private:
- ACE_DLList<T> *list_;
-};
-
-// Forward declaration.
-template <class T, size_t ACE_SIZE>
-class ACE_Fixed_Set;
-
-/**
- * @class ACE_Fixed_Set_Iterator_Base
- *
- * @brief Implements a common base class for iterators for a unordered set.
- */
-template <class T, size_t ACE_SIZE>
-class ACE_Fixed_Set_Iterator_Base
-{
-public:
- // = Iteration methods.
-
- /// Pass back the {next_item} that hasn't been seen in the Set.
- /// Returns 0 when all items have been seen, else 1.
- int next (T *&next_item);
-
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Move to the first element in the set. Returns 0 if the
- /// set is empty, else 1.
- int first (void);
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- // = Initialization method.
- ACE_Fixed_Set_Iterator_Base (ACE_Fixed_Set<T, ACE_SIZE> &s);
-
- /// Set we are iterating over.
- ACE_Fixed_Set<T, ACE_SIZE> &s_;
-
- /// How far we've advanced over the set.
- ssize_t next_;
-
- /// The number of non free items that the iterator had pointed at.
- size_t iterated_items_;
-
- /// Dump the state of an object.
- void dump_i (void) const;
-
- /// Pass back the {next_item} that hasn't been seen in the Set.
- /// Returns 0 when all items have been seen, else 1.
- int next_i (T *&next_item);
-};
-
-/**
- * @class ACE_Fixed_Set_Iterator
- *
- * @brief Iterates through an unordered set.
- *
- * This implementation of an unordered set uses a fixed array.
- * Allows deletions while iteration is occurring.
- */
-template <class T, size_t ACE_SIZE>
-class ACE_Fixed_Set_Iterator : public ACE_Fixed_Set_Iterator_Base <T, ACE_SIZE>
-{
-public:
- // = Initialization method.
- ACE_Fixed_Set_Iterator (ACE_Fixed_Set<T, ACE_SIZE> &s);
-
- // = Iteration methods.
-
- /// Pass back the {next_item} that hasn't been seen in the Set.
- /// Returns 0 when all items have been seen, else 1.
- int next (T *&next_item);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Remove the item where the itearetor is located at.
- /// Returns 1 if it removes a item, else 0.
- /// Pass back the removed {item}.
- int remove (T *&item);
-
- /// STL-like iterator dereference operator: returns a reference
- /// to the node underneath the iterator.
- T & operator* (void);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-/**
- * @class ACE_Fixed_Set_Const_Iterator
- *
- * @brief Iterates through a const unordered set.
- *
- * This implementation of an unordered set uses a fixed array.
- */
-template <class T, size_t ACE_SIZE>
-class ACE_Fixed_Set_Const_Iterator : public ACE_Fixed_Set_Iterator_Base <T, ACE_SIZE>
-{
-public:
- // = Initialization method.
- ACE_Fixed_Set_Const_Iterator (const ACE_Fixed_Set<T, ACE_SIZE> &s);
-
- // = Iteration methods.
-
- /// Pass back the {next_item} that hasn't been seen in the Set.
- /// Returns 0 when all items have been seen, else 1.
- int next (const T *&next_item);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// STL-like iterator dereference operator: returns a reference
- /// to the node underneath the iterator.
- const T & operator* (void) const ;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-/**
- * @class ACE_Fixed_Set
- *
- * @brief Implement a simple unordered set of {T} with maximum {ACE_SIZE}.
- *
- * This implementation of an unordered set uses a fixed array.
- * It does not allow duplicate members. The set provides linear insertion/deletion
- * operations.
- *
- * <b> Requirements and Performance Characteristics</b>
- * - Internal Structure
- * Fixed array
- * - Duplicates allowed?
- * No
- * - Random access allowed?
- * No
- * - Search speed
- * Linear
- * - Insert/replace speed
- * Linear
- * - Iterator still valid after change to container?
- * Yes
- * - Frees memory for removed elements?
- * No
- * - Items inserted by
- * Value
- * - Requirements for contained type
- * -# Default constructor
- * -# Copy constructor
- * -# operator=
- * -# operator==
- *
- */
-template <class T, size_t ACE_SIZE>
-class ACE_Fixed_Set
-{
-public:
- friend class ACE_Fixed_Set_Iterator_Base<T, ACE_SIZE>;
- friend class ACE_Fixed_Set_Iterator<T, ACE_SIZE>;
- friend class ACE_Fixed_Set_Const_Iterator<T, ACE_SIZE>;
-
- // Trait definitions.
- typedef ACE_Fixed_Set_Iterator<T, ACE_SIZE> ITERATOR;
- typedef ACE_Fixed_Set_Const_Iterator<T, ACE_SIZE> CONST_ITERATOR;
-
- // = Initialization and termination methods.
- /// Default Constructor.
- /**
- * Creates an empy set
- */
- ACE_Fixed_Set (void);
-
- /// Copy constructor.
- /**
- * Initializes a set to be a copy of the set parameter.
- */
- ACE_Fixed_Set (const ACE_Fixed_Set<T, ACE_SIZE> &);
-
- /// Assignment operator.
- /**
- * Deep copy of one set to another.
- */
- void operator= (const ACE_Fixed_Set<T, ACE_SIZE> &);
-
- /// Destructor.
- /**
- * Destroys a set.
- */
- ~ACE_Fixed_Set (void);
-
- // = Check boundary conditions.
-
- /// Returns 1 if the container is empty, otherwise returns 0.
- /**
- * Performs constant time check to determine if a set is empty.
- */
- int is_empty (void) const;
-
- /// Returns 1 if the container is full, otherwise returns 0.
- /**
- * Performs a constant time check to see if the set is full.
- */
- int is_full (void) const;
-
- // = Classic unordered set operations.
-
- ///Linear time insertion of an item unique to the set.
- /**
- * Insert @a new_item into the set (doesn't allow duplicates).
- * Returns -1 if failures occur, 1 if item is already present, else
- * 0.
- */
- int insert (const T &new_item);
-
- ///Linear time removal operation of an item.
- /**
- * Remove first occurrence of {item} from the set. Returns 0 if
- * it removes the item, -1 if it can't find the item, and -1 if a
- * failure occurs. Removal doesn't reclaim memory for the @a item.
- */
- int remove (const T &item);
-
- /// Finds if @a item occurs in the set. Returns 0 if finds, else -1.
- /**
- * Performs a linear find operation for the specified @a item.
- */
- int find (const T &item) const;
-
- /// Size of the set.
- /**
- * Returns the current size of the set.
- */
- size_t size (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Holds the contents of the set.
- struct
- {
- /// Item in the set.
- T item_;
-
- /// Keeps track of whether this item is in use or not.
- int is_free_;
- } search_structure_[ACE_SIZE];
-
- /// Current size of the set.
- size_t cur_size_;
-
- /// Maximum size of the set.
- size_t max_size_;
-};
-
-// Forward declaration.
-template <class T>
-class ACE_Bounded_Set;
-
-/**
- * @class ACE_Bounded_Set_Iterator
- *
- * @brief Iterates through an unordered set.
- *
- * This implementation of an unordered set uses a Bounded array.
- * Allows deletions while iteration is occurring.
- */
-template <class T>
-class ACE_Bounded_Set_Iterator
-{
-public:
- // = Initialization method.
- ACE_Bounded_Set_Iterator (ACE_Bounded_Set<T> &s);
-
- // = Iteration methods.
-
- /// Pass back the {next_item} that hasn't been seen in the Set.
- /// Returns 0 when all items have been seen, else 1.
- int next (T *&next_item);
-
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Move to the first element in the set. Returns 0 if the
- /// set is empty, else 1.
- int first (void);
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Set we are iterating over.
- ACE_Bounded_Set<T> &s_;
-
- /// How far we've advanced over the set.
- ssize_t next_;
-};
-
-/**
- * @class ACE_Bounded_Set
- *
- * @brief Implement a simple unordered set of {T} with maximum
- * set at creation time.
- *
- * This implementation of an unordered set uses a Bounded array.
- * This implementation does not allow duplicates. It provides
- * linear insert/remove/find operations. Insertion/removal does not
- * invalidate iterators, but caution should be taken to ensure
- * expected behavior. Once initialized, the object has a maximum size
- * which can only be increased by the assignment of another larger Bounded_Set.
- *
- * <b> Requirements and Performance Characteristics</b>
- * - Internal Structure
- * Bounded array which can grow via assignment
- * - Duplicates allowed?
- * No
- * - Random access allowed?
- * No
- * - Search speed
- * Linear
- * - Insert/replace speed
- * Linear
- * - Iterator still valid after change to container?
- * Yes
- * - Frees memory for removed elements?
- * No
- * - Items inserted by
- * Value
- * - Requirements for contained type
- * -# Default constructor
- * -# Copy constructor
- * -# operator=
- * -# operator==
- *
- */
-template <class T>
-class ACE_Bounded_Set
-{
-public:
- friend class ACE_Bounded_Set_Iterator<T>;
-
- // Trait definition.
- typedef ACE_Bounded_Set_Iterator<T> ITERATOR;
-
- enum
- {
- DEFAULT_SIZE = 10
- };
-
- // = Initialization and termination methods.
- /// Construct a Bounded_Set using the default size.
- /**
- * The default constructor initializes the Bounded_Set to a maximum size
- * specified by the DEFAULT_SIZE.
- */
- ACE_Bounded_Set (void);
-
- /// Construct a Bounded_Set with the provided sizeB.
- /**
- * Initialize the Bounded_Set to have a maximum size equal to the size
- * parameter specified.
- */
- ACE_Bounded_Set (size_t size);
-
- /// Construct a Bounded_Set that is a copy of the provides Bounded_Set.
- /**
- * Initialize the Bounded_Set to be a copy of the Bounded_Set parameter.
- */
- ACE_Bounded_Set (const ACE_Bounded_Set<T> &);
-
- /// Assignment operator.
- /**
- * The assignment will make a deep copy of the Bounded_Set provided. If the
- * rhs has more elements than the capacity of the lhs, then the lhs will be
- * deleted and reallocated to accomadate the larger number of elements.
- */
- void operator= (const ACE_Bounded_Set<T> &);
-
- /// Destructor
- /**
- * Clean up the underlying dynamically allocated memory that is used by
- * the Bounded_Set.
- */
- ~ACE_Bounded_Set (void);
-
- // = Check boundary conditions.
-
- /// Returns 1 if the container is empty, otherwise returns 0.
- /**
- * A constant time check is performed to determine if the Bounded_Set is
- * empty.
- */
- int is_empty (void) const;
-
- /// Returns 1 if the container is full, otherwise returns 0.
- /**
- * Performs a constant time check to determine if the Bounded_Set is at
- * capacity.
- */
- int is_full (void) const;
-
- // = Classic unordered set operations.
-
- ///Inserts a new element unique to the set.
- /**
- * Insert @a new_item into the set (doesn't allow duplicates) in linear
- * time.
- * Returns -1 if failures occur, 1 if item is already present, else
- * 0.
- */
- int insert (const T &new_item);
-
- ///Finds the specified element and removes it from the set.
- /**
- * Remove first occurrence of @a item from the set. Returns 0 if it
- * removes the item, -1 if it can't find the item, and -1 if a
- * failure occurs. The linear remove operation does not reclaim the
- * memory associated with the removed item.
- */
- int remove (const T &item);
-
- /// Finds if @a item occurs in the set. Returns 0 if finds, else -1.
- /**
- * find preforms a linear search for {item} and returns 0 on successful
- * find and -1 otherwise.
- */
- int find (const T &item) const;
-
- /// Size of the set.
- /**
- * Returns a size_t representing the current size of the set.
- */
- size_t size (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- struct Search_Structure
- {
- /// Item in the set.
- T item_;
-
- /// Keeps track of whether this item is in use or not.
- int is_free_;
- };
-
- /// Holds the contents of the set.
- Search_Structure *search_structure_;
-
- /// Current size of the set.
- size_t cur_size_;
-
- /// Maximum size of the set.
- size_t max_size_;
-};
-
-/**
- * @class ACE_Ordered_MultiSet_Iterator
- *
- * @brief Implement a bidirectional iterator over an ordered multiset.
- * This class template requires that < operator semantics be
- * defined for the parameterized type {T}, but does not impose
- * any restriction on how that ordering operator is implemented.
- */
-template <class T>
-class ACE_Ordered_MultiSet_Iterator
-{
-public:
- friend class ACE_Ordered_MultiSet<T>;
-
- // = Initialization method.
- ACE_Ordered_MultiSet_Iterator (ACE_Ordered_MultiSet<T> &s);
-
- // = Iteration methods.
-
- /// Pass back the {next_item} that hasn't been seen in the ordered multiset.
- /// Returns 0 when all items have been seen, else 1.
- int next (T *&next_item) const;
-
- /// Repositions the iterator at the first item in the ordered multiset
- /// Returns 0 if the list is empty else 1.
- int first (void);
-
- /// Repositions the iterator at the last item in the ordered multiset
- /// Returns 0 if the list is empty else 1.
- int last (void);
-
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Move backward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int retreat (void);
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Returns a reference to the internal element {this} is pointing to.
- T& operator* (void);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-
- /// Pointer to the current node in the iteration.
- ACE_DNode<T> *current_;
-
- /// Pointer to the set we're iterating over.
- ACE_Ordered_MultiSet<T> &set_;
-};
-
-/**
- * @class ACE_Ordered_MultiSet
- *
- * @brief Implement a simple ordered multiset of {T} of unbounded size
- * that allows duplicates. This class template requires that <
- * operator semantics be defined for the parameterized type {T}, but
- * does not impose any restriction on how that ordering operator is
- * implemented. The set is implemented as a linked list.
- *
- *
- * <b> Requirements and Performance Characteristics</b>
- * - Internal Structure
- * Double linked list
- * - Duplicates allowed?
- * Yes
- * - Random access allowed?
- * No
- * - Search speed
- * Linear
- * - Insert/replace speed
- * Linear
- * - Iterator still valid after change to container?
- * Yes
- * - Frees memory for removed elements?
- * Yes
- * - Items inserted by
- * Value
- * - Requirements for contained type
- * -# Default constructor
- * -# Copy constructor
- * -# operator=
- * -# operator==
- * -# operator<
- *
- *
- */
-template <class T>
-class ACE_Ordered_MultiSet
-{
-public:
- friend class ACE_Ordered_MultiSet_Iterator<T>;
-
- // Trait definition.
- typedef ACE_Ordered_MultiSet_Iterator<T> ITERATOR;
-
- // = Initialization and termination methods.
- /// Constructor. Use user specified allocation strategy
- /// if specified.
- /**
- * Initialize the set using the allocation strategy specified. If none, use the
- * default strategy.
- */
- ACE_Ordered_MultiSet (ACE_Allocator *the_allocator = 0);
-
- /// Copy constructor.
- /**
- * Initialize the set to be a copy of the provided set.
- */
- ACE_Ordered_MultiSet (const ACE_Ordered_MultiSet<T> &);
-
- /// Destructor.
- /**
- * Delete the nodes of the set.
- */
- ~ACE_Ordered_MultiSet (void);
-
- /// Assignment operator.
- /**
- * Delete the nodes in lhs, and copy the nodes from the rhs.
- */
- void operator= (const ACE_Ordered_MultiSet<T> &);
-
- // = Check boundary conditions.
-
- /// Returns 1 if the container is empty, otherwise returns 0.
- /**
- * Constant time check to determine if the set is empty.
- */
- int is_empty (void) const;
-
- /// Size of the set.
- /**
- * Constant time check to determine the size of the set.
- */
- size_t size (void) const;
-
- // = Classic unordered set operations.
-
- /// Insert @a new_item into the ordered multiset.
- /// Returns -1 if failures occur, else 0.
- /**
- * Linear time, order preserving insert into the set beginning at the head.
- */
- int insert (const T &new_item);
-
- ///Linear time insert beginning at the point specified by the provided iterator.
- /**
- * Insert @a new_item into the ordered multiset, starting its search at
- * the node pointed to by the iterator, and if insertion was successful,
- * updates the iterator to point to the newly inserted node.
- * Returns -1 if failures occur, else 0.
- */
- int insert (const T &new_item, ITERATOR &iter);
-
- /// Remove first occurrence of @a item from the set. Returns 0 if
- /// it removes the item, -1 if it can't find the item.
- /**
- * Linear time search operation which removes the item from the set if found .
- */
- int remove (const T &item);
-
- ///Linear find operation.
- /**
- * Finds first occurrence of @a item in the multiset, using the iterator's
- * current position as a hint to improve performance. If find succeeds,
- * it positions the iterator at that node and returns 0, or if it cannot
- * locate the node, it leaves the iterator alone and just returns -1.
- */
- int find (const T &item, ITERATOR &iter) const;
-
- /// Reset the ACE_Ordered_MultiSet to be empty.
- /**
- * Delete the nodes inside the set.
- */
- void reset (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-
- /**
- * Insert @a item, starting its search at the position given,
- * and if successful updates the passed pointer to point to
- * the newly inserted item's node.
- */
- int insert_from (const T &item, ACE_DNode<T> *start_position,
- ACE_DNode<T> **new_position);
-
- /**
- * Looks for first occurance of @a item in the ordered set, using the
- * passed starting position as a hint: if there is such an instance, it
- * updates the new_position pointer to point to this node and returns 0;
- * if there is no such node, then if there is a node before where the
- * item would have been, it updates the new_position pointer to point
- * to this node and returns -1; if there is no such node, then if there
- * is a node after where the item would have been, it updates the
- * new_position pointer to point to this node (or 0 if there is no such
- * node) and returns 1;
- */
- int locate (const T &item, ACE_DNode<T> *start_position,
- ACE_DNode<T> *&new_position) const;
-
- /// Delete all the nodes in the Set.
- void delete_nodes (void);
-
- /// Copy nodes into this set.
- void copy_nodes (const ACE_Ordered_MultiSet<T> &);
-
- /// Head of the bilinked list of Nodes.
- ACE_DNode<T> *head_;
-
- /// Head of the bilinked list of Nodes.
- ACE_DNode<T> *tail_;
-
- /// Current size of the set.
- size_t cur_size_;
-
- /// Allocation strategy of the set.
- ACE_Allocator *allocator_;
-};
-
-// ****************************************************************
-
-/**
- * @class ACE_Array
- *
- * @brief A dynamic array class.
- *
- * This class extends ACE_Array_Base, adding comparison operators.
- *
- * <b> Requirements and Performance Characteristics</b>
- * - Internal Structure
- * Dynamic array
- * - Duplicates allowed?
- * Yes
- * - Random access allowed?
- * Yes
- * - Search speed
- * N/A
- * - Insert/replace speed
- * O(1)
- * - Iterator still valid after change to container?
- * - In general, yes.
- * - If array size is changed during iteration, no.
- * - Frees memory for removed elements?
- * No
- * - Items inserted by
- * Value
- * - Requirements for contained type
- * -# Default constructor
- * -# Copy constructor
- * -# operator=
- * -# operator!=
- *
- * @sa ACE_Array_Base. This class inherits its operations and requirements.
- */
-template <class T>
-class ACE_Array : public ACE_Array_Base<T>
-{
-public:
- // Define a "trait"
- typedef T TYPE;
-
- typedef ACE_Array_Iterator<T> ITERATOR;
-
- // = Exceptions.
-
- // = Initialization and termination methods.
-
- /// Dynamically create an uninitialized array.
- /**
- * Initialize an empty array of the specified size using the provided
- * allocation strategy.
- */
- ACE_Array (size_t size = 0,
- ACE_Allocator* alloc = 0);
-
- /// Dynamically initialize the entire array to the {default_value}.
- /**
- * Initialize an array the given size placing the default_value in each index.
- */
- ACE_Array (size_t size,
- const T &default_value,
- ACE_Allocator* alloc = 0);
-
- ///Copy constructor.
- /**
- * The copy constructor performs initialization by making an exact
- * copy of the contents of parameter {s}, i.e., *this == s will
- * return true.
- */
- ACE_Array (const ACE_Array<T> &s);
-
- ///Assignment operator
- /**
- * Assignment operator performs an assignment by making an exact
- * copy of the contents of parameter {s}, i.e., *this == s will
- * return true. Note that if the {max_size_} of {array_} is >= than
- * {s.max_size_} we can copy it without reallocating. However, if
- * {max_size_} is < {s.max_size_} we must delete the {array_},
- * reallocate a new {array_}, and then copy the contents of {s}.
- */
- void operator= (const ACE_Array<T> &s);
-
- // = Compare operators
-
- ///Equality comparison operator.
- /**
- * Compare this array with {s} for equality. Two arrays are equal
- * if their {size}'s are equal and all the elements from 0 .. {size}
- * are equal.
- */
- bool operator== (const ACE_Array<T> &s) const;
-
- ///Inequality comparison operator.
- /**
- * Compare this array with {s} for inequality such that {*this} !=
- * {s} is always the complement of the boolean return value of
- * {*this} == {s}.
- */
- bool operator!= (const ACE_Array<T> &s) const;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Containers_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Containers_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Containers_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CONTAINERS_T_H */
-
diff --git a/dep/include/ace/Containers_T.inl b/dep/include/ace/Containers_T.inl
deleted file mode 100644
index b387061ac80..00000000000
--- a/dep/include/ace/Containers_T.inl
+++ /dev/null
@@ -1,473 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Containers_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class T> ACE_INLINE int
-ACE_Bounded_Stack<T>::is_empty (void) const
-{
- ACE_TRACE ("ACE_Bounded_Stack<T>::is_empty");
- return this->top_ == 0;
-}
-
-template <class T> ACE_INLINE int
-ACE_Bounded_Stack<T>::is_full (void) const
-{
- ACE_TRACE ("ACE_Bounded_Stack<T>::is_full");
- return this->top_ >= this->size_;
-}
-
-template <class T> ACE_INLINE int
-ACE_Bounded_Stack<T>::push (const T &new_item)
-{
- ACE_TRACE ("ACE_Bounded_Stack<T>::push");
- if (this->is_full () == 0)
- {
- this->stack_[this->top_++] = new_item;
- return 0;
- }
- else
- return -1;
-}
-
-template <class T> ACE_INLINE int
-ACE_Bounded_Stack<T>::pop (T &item)
-{
- ACE_TRACE ("ACE_Bounded_Stack<T>::pop");
- if (this->is_empty () == 0)
- {
- item = this->stack_[--this->top_];
- return 0;
- }
- else
- return -1;
-}
-
-template <class T> ACE_INLINE int
-ACE_Bounded_Stack<T>::top (T &item) const
-{
- ACE_TRACE ("ACE_Bounded_Stack<T>::top");
- if (this->is_empty () == 0)
- {
- item = this->stack_[this->top_ - 1];
- return 0;
- }
- else
- return -1;
-}
-
-template <class T> ACE_INLINE size_t
-ACE_Bounded_Stack<T>::size (void) const
-{
- return this->size_;
-}
-
-//----------------------------------------
-
-template <class T, size_t ACE_SIZE> ACE_INLINE int
-ACE_Fixed_Stack<T, ACE_SIZE>::is_empty (void) const
-{
- ACE_TRACE ("ACE_Fixed_Stack<T, ACE_SIZE>::is_empty");
- return this->top_ == 0;
-}
-
-template <class T, size_t ACE_SIZE> ACE_INLINE int
-ACE_Fixed_Stack<T, ACE_SIZE>::is_full (void) const
-{
- ACE_TRACE ("ACE_Fixed_Stack<T, ACE_SIZE>::is_full");
- return this->top_ >= this->size_;
-}
-
-template <class T, size_t ACE_SIZE> ACE_INLINE int
-ACE_Fixed_Stack<T, ACE_SIZE>::push (const T &new_item)
-{
- ACE_TRACE ("ACE_Fixed_Stack<T, ACE_SIZE>::push");
- if (this->is_full () == 0)
- {
- this->stack_[this->top_++] = new_item;
- return 0;
- }
- else
- return -1;
-}
-
-template <class T, size_t ACE_SIZE> ACE_INLINE int
-ACE_Fixed_Stack<T, ACE_SIZE>::pop (T &item)
-{
- ACE_TRACE ("ACE_Fixed_Stack<T, ACE_SIZE>::pop");
- if (this->is_empty () == 0)
- {
- item = this->stack_[--this->top_];
- return 0;
- }
- else
- return -1;
-}
-
-template <class T, size_t ACE_SIZE> ACE_INLINE int
-ACE_Fixed_Stack<T, ACE_SIZE>::top (T &item) const
-{
- ACE_TRACE ("ACE_Fixed_Stack<T, ACE_SIZE>::top");
- if (this->is_empty () == 0)
- {
- item = this->stack_[this->top_ - 1];
- return 0;
- }
- else
- return -1;
-}
-
-template <class T, size_t ACE_SIZE> ACE_INLINE size_t
-ACE_Fixed_Stack<T, ACE_SIZE>::size (void) const
-{
- return this->size_;
-}
-
-template <class T> ACE_INLINE int
-ACE_Unbounded_Stack<T>::is_empty (void) const
-{
- // ACE_TRACE ("ACE_Unbounded_Stack<T>::is_empty");
- return this->head_ == this->head_->next_;
-}
-
-template <class T> ACE_INLINE int
-ACE_Unbounded_Stack<T>::top (T &item) const
-{
- ACE_TRACE ("ACE_Unbounded_Stack<T>::top");
- if (this->is_empty () == 0)
- {
- item = this->head_->next_->item_;
- return 0;
- }
- else
- return -1;
-}
-
-template <class T> ACE_INLINE int
-ACE_Unbounded_Stack<T>::is_full (void) const
-{
- ACE_TRACE ("ACE_Unbounded_Stack<T>::is_full");
- return 0; // ???
-}
-
-template <class T> ACE_INLINE size_t
-ACE_Unbounded_Stack<T>::size (void) const
-{
- return this->cur_size_;
-}
-
-// ---
-
-// ---
-
-template <class T, size_t ACE_SIZE> ACE_INLINE int
-ACE_Fixed_Set<T, ACE_SIZE>::is_empty (void) const
-{
- ACE_TRACE ("ACE_Fixed_Set<T>::is_empty");
- return this->cur_size_ == 0;
-}
-
-template <class T, size_t ACE_SIZE> ACE_INLINE int
-ACE_Fixed_Set<T, ACE_SIZE>::is_full (void) const
-{
- ACE_TRACE ("ACE_Fixed_Set<T, ACE_SIZE>::is_full");
- return this->cur_size_ == this->max_size_;
-}
-
-// ---
-
-template <class T> ACE_INLINE int
-ACE_Bounded_Set<T>::is_empty (void) const
-{
- ACE_TRACE ("ACE_Bounded_Set<T>::is_empty");
- return this->cur_size_ == 0;
-}
-
-template <class T> ACE_INLINE int
-ACE_Bounded_Set<T>::is_full (void) const
-{
- ACE_TRACE ("ACE_Bounded_Set<T>::is_full");
- return this->cur_size_ == this->max_size_;
-}
-
-// --
-
-template <class T> ACE_INLINE int
-ACE_Ordered_MultiSet_Iterator<T>::first (void)
-{
- ACE_TRACE ("ACE_Ordered_MultiSet_Iterator<T>::first");
- current_ = set_.head_;
-
- return (current_ ? 1 : 0);
-}
-
-template <class T> ACE_INLINE int
-ACE_Ordered_MultiSet_Iterator<T>::last (void)
-{
- ACE_TRACE ("ACE_Ordered_MultiSet_Iterator<T>::last");
- current_ = set_.tail_;
-
- return (current_ ? 1 : 0);
-}
-
-template <class T> ACE_INLINE int
-ACE_Ordered_MultiSet_Iterator<T>::advance (void)
-{
- ACE_TRACE ("ACE_Ordered_MultiSet_Iterator<T>::advance");
-
- current_ = current_ ? current_->next_ : 0;
-
- return (current_ ? 1 : 0);
-}
-
-template <class T> ACE_INLINE int
-ACE_Ordered_MultiSet_Iterator<T>::retreat (void)
-{
- ACE_TRACE ("ACE_Ordered_MultiSet_Iterator<T>::retreat");
-
- current_ = current_ ? current_->prev_ : 0;
-
- return (current_ ? 1 : 0);
-}
-
-template <class T> ACE_INLINE int
-ACE_Ordered_MultiSet_Iterator<T>::done (void) const
-{
- ACE_TRACE ("ACE_Ordered_MultiSet_Iterator<T>::done");
-
- return (current_ ? 0 : 1);
-}
-
-template <class T> ACE_INLINE void
-ACE_Ordered_MultiSet_Iterator<T>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
-// ACE_TRACE ("ACE_Ordered_MultiSet_Iterator<T>::dump");
-#endif /* ACE_HAS_DUMP */
-}
-
-// --
-
-template <class T> ACE_INLINE int
-ACE_Ordered_MultiSet<T>::is_empty (void) const
-{
- ACE_TRACE ("ACE_Ordered_MultiSet<T>::is_empty");
- return this->cur_size_ > 0 ? 0 : 1;
-}
-
-template <class T> ACE_INLINE size_t
-ACE_Ordered_MultiSet<T>::size (void) const
-{
-// ACE_TRACE ("ACE_Ordered_MultiSet<T>::size");
- return this->cur_size_;
-}
-
-// ****************************************************************
-
-template <class T> ACE_INLINE
-ACE_Array<T>::ACE_Array (size_t size,
- ACE_Allocator *alloc)
- : ACE_Array_Base<T> (size, alloc)
-{
-}
-
-template <class T> ACE_INLINE
-ACE_Array<T>::ACE_Array (size_t size,
- const T &default_value,
- ACE_Allocator *alloc)
- : ACE_Array_Base<T> (size, default_value, alloc)
-{
-}
-
-// The copy constructor (performs initialization).
-
-template <class T> ACE_INLINE
-ACE_Array<T>::ACE_Array (const ACE_Array<T> &s)
- : ACE_Array_Base<T> (s)
-{
-}
-
-// Assignment operator (performs assignment).
-
-template <class T> ACE_INLINE void
-ACE_Array<T>::operator= (const ACE_Array<T> &s)
-{
- // Check for "self-assignment".
-
- if (this != &s)
- this->ACE_Array_Base<T>::operator= (s);
-}
-
-// Compare this array with <s> for inequality.
-
-template <class T> ACE_INLINE bool
-ACE_Array<T>::operator!= (const ACE_Array<T> &s) const
-{
- return !(*this == s);
-}
-
-// ****************************************************************
-
-// ****************************************************************
-
-template <class T> ACE_INLINE void
-ACE_DLList<T>::operator= (const ACE_DLList<T> &l)
-{
- *(ACE_DLList_Base *) this = l;
-}
-
-template <class T> ACE_INLINE int
-ACE_DLList<T>::get (T *&item, size_t index)
-{
- ACE_DLList_Node *node;
- int result = ACE_DLList_Base::get (node, index);
- if (result != -1)
- item = (T *) node->item_;
- return result;
-}
-
-template <class T> ACE_INLINE void
-ACE_DLList<T>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_DLList_Base::dump ();
-#endif /* ACE_HAS_DUMP */
-}
-
-template <class T> ACE_INLINE int
-ACE_DLList<T>::remove (ACE_DLList_Node *n)
-{
- int result = ACE_DLList_Base::remove (n);
- ACE_DES_FREE (n,
- this->allocator_->free,
- ACE_DLList_Node);
- return result;
-}
-
-template <class T> ACE_INLINE
-ACE_DLList<T>::ACE_DLList (ACE_Allocator *alloc)
- : ACE_DLList_Base (alloc)
-{
-}
-
-template <class T> ACE_INLINE
-ACE_DLList<T>::ACE_DLList (const ACE_DLList<T> &l)
- : ACE_DLList_Base ((ACE_DLList<T> &) l)
-{
-}
-
-template <class T> ACE_INLINE
-ACE_DLList<T>::~ACE_DLList (void)
-{
- while (this->delete_head ()) ;
-}
-
-template <class T> ACE_INLINE int
-ACE_DLList_Iterator<T>::remove (void)
-{
- ACE_DLList_Node *temp = this->ACE_Double_Linked_List_Iterator <ACE_DLList_Node>::next ();
- this->ACE_Double_Linked_List_Iterator <ACE_DLList_Node>::advance ();
- return list_->remove (temp);
-}
-
-template <class T> ACE_INLINE
-ACE_DLList_Iterator<T>::ACE_DLList_Iterator (ACE_DLList<T> &l)
- : ACE_Double_Linked_List_Iterator <ACE_DLList_Node> ((ACE_DLList_Base &)l),
- list_ (&l)
-{
-}
-
-template <class T> ACE_INLINE void
-ACE_DLList_Iterator<T>::reset (ACE_DLList<T> &l)
-{
- list_ = &l;
- this->ACE_Double_Linked_List_Iterator <ACE_DLList_Node>::reset ((ACE_DLList_Base &)l);
-}
-
-template <class T> ACE_INLINE int
-ACE_DLList_Iterator<T>::next (T *&ptr)
-{
- ACE_DLList_Node *temp =
- ACE_Double_Linked_List_Iterator <ACE_DLList_Node>::next ();
- if (temp)
- ptr = (T *) temp->item_;
- return temp ? 1 : 0;
-}
-
-template <class T> ACE_INLINE T *
-ACE_DLList_Iterator<T>::next (void) const
-{
- ACE_DLList_Node *temp = ACE_Double_Linked_List_Iterator <ACE_DLList_Node>::next ();
- return (T *) (temp ? temp->item_ : 0);
-}
-
-template <class T> ACE_INLINE int
-ACE_DLList_Iterator<T>::advance (void)
-{
- return this->ACE_Double_Linked_List_Iterator <ACE_DLList_Node>::advance ();
-}
-
-template <class T> ACE_INLINE void
-ACE_DLList_Iterator<T>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_Double_Linked_List_Iterator <ACE_DLList_Node>::dump ();
-#endif /* ACE_HAS_DUMP */
-}
-
-template <class T> ACE_INLINE int
-ACE_DLList_Reverse_Iterator<T>::remove (void)
-{
- ACE_DLList_Node *temp = ACE_Double_Linked_List_Reverse_Iterator <ACE_DLList_Node>::next ();
- this->ACE_Double_Linked_List_Reverse_Iterator <ACE_DLList_Node>::advance ();
- return list_->remove (temp);
-}
-
-template <class T> ACE_INLINE
-ACE_DLList_Reverse_Iterator<T>::ACE_DLList_Reverse_Iterator (ACE_DLList<T> &l)
- : ACE_Double_Linked_List_Reverse_Iterator <ACE_DLList_Node> ((ACE_DLList_Base &)l),
- list_ (&l)
-{
-}
-
-template <class T> ACE_INLINE void
-ACE_DLList_Reverse_Iterator<T>::reset (ACE_DLList<T> &l)
-{
- list_ = &l;
- this->ACE_Double_Linked_List_Reverse_Iterator <ACE_DLList_Node>::reset ((ACE_DLList_Base &)l);
-}
-
-template <class T> ACE_INLINE int
-ACE_DLList_Reverse_Iterator<T>::advance (void)
-{
- return ACE_Double_Linked_List_Reverse_Iterator <ACE_DLList_Node>::advance ();
-}
-
-template <class T> ACE_INLINE int
-ACE_DLList_Reverse_Iterator<T>::next (T *&ptr)
-{
- ACE_DLList_Node *temp =
- ACE_Double_Linked_List_Reverse_Iterator <ACE_DLList_Node>::next ();
- if (temp == 0)
- return 0;
- ptr = (T *) temp->item_;
- return 1;
-}
-
-template <class T> ACE_INLINE T *
-ACE_DLList_Reverse_Iterator<T>::next (void) const
-{
- ACE_DLList_Node *temp = ACE_Double_Linked_List_Reverse_Iterator <ACE_DLList_Node>::next ();
- return (T *) (temp ? temp->item_ : 0);
-}
-
-template <class T> ACE_INLINE void
-ACE_DLList_Reverse_Iterator<T>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_Double_Linked_List_Reverse_Iterator <ACE_DLList_Node>::dump ();
-#endif /* ACE_HAS_DUMP */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Copy_Disabled.h b/dep/include/ace/Copy_Disabled.h
deleted file mode 100644
index 4dd6c2216b5..00000000000
--- a/dep/include/ace/Copy_Disabled.h
+++ /dev/null
@@ -1,66 +0,0 @@
-// -*- C++ -*-
-
-//===========================================================================
-/**
- * @file Copy_Disabled.h
- *
- * $Id: Copy_Disabled.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Carlos O'Ryan <coryan@uci.edu>
- */
-//===========================================================================
-
-#ifndef ACE_COPY_DISABLED_H
-#define ACE_COPY_DISABLED_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Copy_Disabled
- *
- * @brief Helper class to disable copy construction and assignment
- *
- * Classes used to control OS and other resources are not "canonical",
- * i.e. they have their copy constructor and assignment operators
- * disabled.
- * This is often done by making the copy constructor and assignment
- * operators private, effectively disallowing copying by clients of
- * the class (including derived classes). If the copy constructor and
- * assingment operators are left unimplemented then the class itself
- * cannot make any copies of its instances, because it would result in
- * link errors.
- *
- * To use this class simply use private inheritance:
- *
- * class Foo : private ACE_Copy_Disabled
- * {
- * // code here
- * };
- *
- */
-class ACE_Export ACE_Copy_Disabled
-{
-public:
-
- /// Default constructor
- ACE_Copy_Disabled (void);
-
-private:
- ACE_Copy_Disabled (const ACE_Copy_Disabled &);
- ACE_Copy_Disabled &operator= (const ACE_Copy_Disabled &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_COPY_DISABLED_H */
-
diff --git a/dep/include/ace/Countdown_Time.h b/dep/include/ace/Countdown_Time.h
deleted file mode 100644
index cc76bed02f4..00000000000
--- a/dep/include/ace/Countdown_Time.h
+++ /dev/null
@@ -1,81 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Countdown_Time.h
- *
- * $Id: Countdown_Time.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_COUNTDOWN_TIME_H
-#define ACE_COUNTDOWN_TIME_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Time_Value.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Countdown_Time
- *
- * @brief Keeps track of the amount of elapsed time.
- *
- * This class has a side-effect on the @c max_wait_time -- every
- * time the stop() method is called the @c max_wait_time is
- * updated.
- */
-class ACE_Export ACE_Countdown_Time
-{
-public:
- /// Cache the @a max_wait_time and call @c start().
- ACE_Countdown_Time (ACE_Time_Value *max_wait_time);
-
- /// Destructor, makes sure the max_wait_time that got passed as pointer
- /// to the constructor is updated with the time elapsed.
- ~ACE_Countdown_Time (void);
-
- /// Cache the current time and enter a start state.
- void start (void);
-
- /// Subtract the elapsed time from max_wait_time_ and enter a stopped
- /// state.
- void stop (void);
-
- /// Calls stop and then start. max_wait_time_ is modified by the
- /// call to stop.
- void update (void);
-
- /// Returns true if we've already been stopped, else false.
- bool stopped (void) const;
-
-private:
- /// Maximum time we were willing to wait.
- ACE_Time_Value *max_wait_time_;
-
- /// Beginning of the start time.
- ACE_Time_Value start_time_;
-
- /// Keeps track of whether we've already been stopped.
- bool stopped_;
-
- // Prevent copying
- ACE_Countdown_Time (const ACE_Countdown_Time &);
- ACE_Countdown_Time &operator= (const ACE_Countdown_Time &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_COUNTDOWN_TIME_H */
-
diff --git a/dep/include/ace/DEV.h b/dep/include/ace/DEV.h
deleted file mode 100644
index 21b4783ca4a..00000000000
--- a/dep/include/ace/DEV.h
+++ /dev/null
@@ -1,78 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file DEV.h
- *
- * $Id: DEV.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Gerhard Lenzer
- */
-//=============================================================================
-
-#ifndef ACE_DEV_H
-#define ACE_DEV_H
-#include /**/ "ace/pre.h"
-
-#include "ace/IO_SAP.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/DEV_Addr.h"
-
-// The following is necessary since many C++ compilers don't support
-// typedef'd types inside of classes used as formal template
-// arguments... ;-(. Luckily, using the C++ preprocessor I can hide
-// most of this nastiness!
-
-#if defined (ACE_HAS_TEMPLATE_TYPEDEFS)
-#define ACE_DEV_CONNECTOR ACE_DEV_Connector
-#define ACE_DEV_STREAM ACE_DEV_IO
-#else /* TEMPLATES are broken (must be a cfront-based compiler...) */
-#define ACE_DEV_CONNECTOR ACE_DEV_Connector, ACE_DEV_Addr
-#define ACE_DEV_STREAM ACE_DEV_IO, ACE_DEV_Addr
-#endif /* ACE_TEMPLATE_TYPEDEFS */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_DEV
- *
- * @brief Defines the member functions for the base class of the
- * ACE_DEV abstraction.
- */
-class ACE_Export ACE_DEV : public ACE_IO_SAP
-{
-public:
- /// Close down the DEVICE
- int close (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /**
- * Disable signal @a signum
- * This is here to prevent Win32 from
- * disabling SPIPE using socket calls
- */
- int disable (int signum) const ;
-
-protected:
- /// Ensure that this class is an abstract base class
- ACE_DEV (void);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/DEV.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_DEV_H */
-
diff --git a/dep/include/ace/DEV.inl b/dep/include/ace/DEV.inl
deleted file mode 100644
index 4d97a73d8e8..00000000000
--- a/dep/include/ace/DEV.inl
+++ /dev/null
@@ -1,18 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: DEV.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_DEV::disable (int signum) const
-{
-#if defined (ACE_WIN32)
- ACE_UNUSED_ARG (signum) ;
- return 0 ;
-#else /* ACE_WIN32 */
- return ACE_IO_SAP::disable (signum) ;
-#endif /* ACE_WIN32 */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/DEV_Addr.h b/dep/include/ace/DEV_Addr.h
deleted file mode 100644
index f658cb0207d..00000000000
--- a/dep/include/ace/DEV_Addr.h
+++ /dev/null
@@ -1,91 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file DEV_Addr.h
- *
- * $Id: DEV_Addr.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Gerhard Lenzer and Douglas C. Schmidt
- */
-//==========================================================================
-
-#ifndef ACE_DEV_ADDR_H
-#define ACE_DEV_ADDR_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Addr.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_dirent.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_DEV_Addr
- *
- * @brief Defines device address family address format.
- */
-class ACE_Export ACE_DEV_Addr : public ACE_Addr
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_DEV_Addr (void);
-
- /// Copy constructor.
- ACE_DEV_Addr (const ACE_DEV_Addr &sa);
-
- /// Acts like a copy constructor.
- int set (const ACE_DEV_Addr &sa);
-
- /// Create a ACE_DEV_Addr from a device name.
- explicit ACE_DEV_Addr (const ACE_TCHAR *devname);
-
- /// Create a ACE_Addr from a ACE_DEV pathname.
- void set (const ACE_TCHAR *devname);
-
- /// Assignment operator.
- ACE_DEV_Addr &operator= (const ACE_DEV_Addr &);
-
- /// Return a pointer to the address.
- virtual void *get_addr (void) const;
-
- /// Transform the current address into string format.
- virtual int addr_to_string (ACE_TCHAR *addr, size_t) const;
-
- /// Compare two addresses for equality.
- bool operator == (const ACE_DEV_Addr &SAP) const;
-
- /// Compare two addresses for inequality.
- bool operator != (const ACE_DEV_Addr &SAP) const;
-
- /// Return the path name used for the rendezvous point.
- const ACE_TCHAR *get_path_name (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- enum { DEVNAME_LENGTH = MAXPATHLEN + 1 };
- /// Name of the device.
- ACE_TCHAR devname_[DEVNAME_LENGTH];
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/DEV_Addr.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_DEV_ADDR_H */
-
diff --git a/dep/include/ace/DEV_Addr.inl b/dep/include/ace/DEV_Addr.inl
deleted file mode 100644
index 5c1da68d7e7..00000000000
--- a/dep/include/ace/DEV_Addr.inl
+++ /dev/null
@@ -1,51 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: DEV_Addr.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_string.h"
-#include "ace/Global_Macros.h"
-#include "ace/os_include/sys/os_socket.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE void
-ACE_DEV_Addr::set (const ACE_TCHAR *devname)
-{
- ACE_TRACE ("ACE_DEV_Addr::set");
-
- this->ACE_Addr::base_set
- (AF_DEV, static_cast<int> (ACE_OS::strlen (devname)));
- ACE_OS::strsncpy (this->devname_, devname, ACE_DEV_Addr::DEVNAME_LENGTH);
-}
-
-// Compare two addresses for equality.
-
-ACE_INLINE bool
-ACE_DEV_Addr::operator == (const ACE_DEV_Addr &sap) const
-{
- ACE_TRACE ("ACE_DEV_Addr::operator ==");
-
- return ACE_OS::strcmp (this->devname_, sap.devname_) == 0;
-}
-
-// Compare two addresses for inequality.
-
-ACE_INLINE bool
-ACE_DEV_Addr::operator != (const ACE_DEV_Addr &sap) const
-{
- ACE_TRACE ("ACE_DEV_Addr::operator !=");
-
- return !((*this) == sap); // This is lazy, of course... ;-).
-}
-
-// Return the path name used for the rendezvous point.
-
-ACE_INLINE const ACE_TCHAR *
-ACE_DEV_Addr::get_path_name (void) const
-{
- ACE_TRACE ("ACE_DEV_Addr::get_path_name");
-
- return this->devname_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/DEV_Connector.h b/dep/include/ace/DEV_Connector.h
deleted file mode 100644
index 9a949ed92d7..00000000000
--- a/dep/include/ace/DEV_Connector.h
+++ /dev/null
@@ -1,110 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file DEV_Connector.h
- *
- * $Id: DEV_Connector.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Gerhard Lenzer and Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_DEV_CONNECTOR_H
-#define ACE_DEV_CONNECTOR_H
-#include /**/ "ace/pre.h"
-
-#include "ace/DEV_IO.h"
-#include "ace/Log_Msg.h"
-#include "ace/os_include/os_fcntl.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_DEV_Connector
- *
- * @brief Defines an active connection factory for the ACE_DEV wrappers.
- */
-class ACE_Export ACE_DEV_Connector
-{
-public:
- /// Default constructor.
- ACE_DEV_Connector (void);
-
- /**
- * Actively connect and produce a @a new_io if things go well.
- * The @a remote_sap is the address that we are trying to connect
- * with. The @a timeout is the amount of time to wait to connect.
- * If it's 0 then we block indefinitely. If *timeout == {0, 0} then
- * the connection is done using non-blocking mode. In this case, if
- * the connection can't be made immediately the value of -1 is
- * returned with @c errno == EWOULDBLOCK. If *timeout > {0, 0} then
- * this is the maximum amount of time to wait before timing out. If the
- * time expires before the connection is made @c errno == ETIME. The
- * @a local_sap is the value of local address to bind to. If it's
- * the default value of ACE_Addr::sap_any then the user is letting
- * the OS do the binding. If @a reuse_addr == 1 then the
- * <local_addr> is reused, even if it hasn't been cleanedup yet.
- * The @a flags and @a perms arguments are passed down to the <open>
- * method.
- */
- ACE_DEV_Connector (ACE_DEV_IO &new_io,
- const ACE_DEV_Addr &remote_sap,
- ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = O_RDWR,
- int perms = 0);
-
- /**
- * Actively connect and produce a @a new_io if things go well.
- * The @a remote_sap is the address that we are trying to connect
- * with. The @a timeout is the amount of time to wait to connect.
- * If it's 0 then we block indefinitely. If *timeout == {0, 0} then
- * the connection is done using non-blocking mode. In this case, if
- * the connection can't be made immediately the value of -1 is
- * returned with @c errno == EWOULDBLOCK. If *timeout > {0, 0} then
- * this is the maximum amount of time to wait before timing out. If the
- * time expires before the connection is made @c errno == ETIME. The
- * @a local_sap is the value of local address to bind to. If it's
- * the default value of ACE_Addr::sap_any then the user is letting
- * the OS do the binding. If @a reuse_addr == 1 then the
- * <local_addr> is reused, even if it hasn't been cleanedup yet.
- * The @a flags and @a perms arguments are passed down to the <open>
- * method.
- */
- int connect (ACE_DEV_IO &new_io,
- const ACE_DEV_Addr &remote_sap,
- ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = O_RDWR,
- int perms = 0);
-
- /// Resets any event associations on this handle
- int reset_new_handle (ACE_HANDLE handle);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- // = Meta-type info
- typedef ACE_DEV_Addr PEER_ADDR;
- typedef ACE_DEV_IO PEER_STREAM;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/DEV_Connector.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_DEV_CONNECTOR_H */
-
diff --git a/dep/include/ace/DEV_Connector.inl b/dep/include/ace/DEV_Connector.inl
deleted file mode 100644
index 924a4254791..00000000000
--- a/dep/include/ace/DEV_Connector.inl
+++ /dev/null
@@ -1,34 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: DEV_Connector.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Creates a Local ACE_DEV.
-
-ACE_INLINE
-ACE_DEV_Connector::ACE_DEV_Connector (ACE_DEV_IO &new_io,
- const ACE_DEV_Addr &remote_sap,
- ACE_Time_Value *timeout,
- const ACE_Addr &local_sap,
- int reuse_addr,
- int flags,
- int perms)
-{
- ACE_TRACE ("ACE_DEV_Connector::ACE_DEV_Connector");
- if (this->connect (new_io, remote_sap, timeout, local_sap,
- reuse_addr, flags, perms) == ACE_IO_SAP::INVALID_HANDLE
- && timeout != 0 && !(errno == EWOULDBLOCK || errno == ETIME))
- ACE_ERROR ((LM_ERROR, ACE_TEXT ("address %s, %p\n"),
- remote_sap.get_path_name (), ACE_TEXT ("ACE_DEV_IO")));
-}
-
-ACE_INLINE int
-ACE_DEV_Connector::reset_new_handle (ACE_HANDLE handle)
-{
- ACE_UNUSED_ARG (handle);
- // Nothing to do here since the handle is not a socket
- return 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/DEV_IO.h b/dep/include/ace/DEV_IO.h
deleted file mode 100644
index e19cfd35603..00000000000
--- a/dep/include/ace/DEV_IO.h
+++ /dev/null
@@ -1,186 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file DEV_IO.h
- *
- * $Id: DEV_IO.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Gerhard Lenzer
- * @author Douglas C. Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_DEV_IO_H
-#define ACE_DEV_IO_H
-#include /**/ "ace/pre.h"
-
-#include "ace/DEV.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_STREAM_PIPES)
-# include "ace/OS_NS_stropts.h"
-#endif /* ACE_HAS_STREAM_PIPES */
-
-#include "ace/os_include/os_stdio.h"
-#include "ace/os_include/sys/os_uio.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-/**
- * @class ACE_DEV_IO
- *
- * @brief Read/Write operations on Devices.
- */
-class ACE_Export ACE_DEV_IO : public ACE_DEV
-{
-public:
- friend class ACE_DEV_Connector;
-
- /// Default constructor.
- ACE_DEV_IO (void);
-
- // = Various send operations.
- /// send upto @a n bytes in @a buf.
- ssize_t send (const void *buf, size_t n) const;
-
- /// Recv upto @a n bytes in @a buf.
- ssize_t recv (void *buf, size_t n) const;
-
- /// Send n bytes, keep trying until n are sent.
- ssize_t send_n (const void *buf,
- size_t n) const;
-
- /**
- * @name I/O operations
- *
- * Notes on common parameters:
- *
- * @a buf is the buffer to write from or receive into.
- *
- * @a len is the number of bytes to transfer.
- *
- * The @a timeout parameter in the following methods indicates how
- * long to blocking trying to transfer data. If @a timeout == 0,
- * then the call behaves as a normal send/recv call, i.e., for
- * blocking sockets, the call will block until action is possible;
- * for non-blocking sockets, EWOULDBLOCK will be returned if no
- * action is immediately possible.
- *
- * If @a timeout != 0, the call will wait until the relative time
- * specified in *@a timeout elapses.
- *
- * The "_n()" I/O methods keep looping until all the data has been
- * transferred. These methods also work for sockets in non-blocking
- * mode i.e., they keep looping on EWOULDBLOCK. @a timeout is used
- * to make sure we keep making progress, i.e., the same timeout
- * value is used for every I/O operation in the loop and the timeout
- * is not counted down.
- *
- * The return values for the "*_n()" methods match the return values
- * from the non "_n()" methods and are specified as follows:
- *
- * - On complete transfer, the number of bytes transferred is returned.
- * - On timeout, -1 is returned, errno == ETIME.
- * - On error, -1 is returned, errno is set to appropriate error.
- * - On EOF, 0 is returned, errno is irrelevant.
- *
- * On partial transfers, i.e., if any data is transferred before
- * timeout/error/EOF, @a bytes_transferred will contain the number of
- * bytes transferred.
- */
- ssize_t recv_n (void *buf,
- size_t n,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
-#if defined (ACE_HAS_STREAM_PIPES)
- /// Recv bytes via STREAM pipes using "band" mode.
- ssize_t recv (ACE_Str_Buf *cntl,
- ACE_Str_Buf *data,
- int *band,
- int *flags) const;
-
- /// Send bytes via STREAM pipes using "band" mode.
- ssize_t send (const ACE_Str_Buf *cntl,
- const ACE_Str_Buf *data,
- int band,
- int flags) const;
-
- /// Recv @a cntl and @a data via STREAM pipes.
- ssize_t recv (ACE_Str_Buf *cntl,
- ACE_Str_Buf *data,
- int *flags) const;
-
- /// Send @a cntl and @a data via STREAM pipes.
- ssize_t send (const ACE_Str_Buf *cntl,
- const ACE_Str_Buf *data,
- int flags = 0) const;
-#endif /* ACE_HAS_STREAM_PIPES */
-
- /// Send iovecs via <::writev>.
- ssize_t send (const iovec iov[], size_t n) const;
-
- /// Recv iovecs via <::readv>.
- ssize_t recv (iovec iov[], size_t n) const;
-
- /**
- * Send N char *ptrs and int lengths. Note that the char *'s
- * precede the ints (basically, an varargs version of writev). The
- * count N is the *total* number of trailing arguments, *not* a
- * couple of the number of tuple pairs!
- */
- ssize_t send (size_t n, ...) const;
-
- /**
- * This is an interface to ::readv, that doesn't use the struct
- * iovec explicitly. The ... can be passed as an arbitrary number
- * of (char *ptr, int len) tuples. However, the count N is the
- * *total* number of trailing arguments, *not* a couple of the
- * number of tuple pairs!
- */
- ssize_t recv (size_t n, ...) const;
-
- /// Send @a n bytes via Win32 WriteFile using overlapped I/O.
- ssize_t send (const void *buf, size_t n, ACE_OVERLAPPED *overlapped) const;
-
- /// Recv @a n bytes via Win32 ReadFile using overlapped I/O.
- ssize_t recv (void *buf, size_t n, ACE_OVERLAPPED *overlapped) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = The following two methods are no-ops to keep the
- // ACE_Connector happy.
- /// Return the local endpoint address.
- int get_local_addr (ACE_DEV_Addr &) const;
-
- /// Return the address of the remotely connected peer (if there is
- /// one).
- int get_remote_addr (ACE_DEV_Addr &) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- // = Meta-type info
- typedef ACE_DEV_Addr PEER_ADDR;
-
-private:
- /// Address of device we are connected to.
- ACE_DEV_Addr addr_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/DEV_IO.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_DEV_IO_H */
-
diff --git a/dep/include/ace/DEV_IO.inl b/dep/include/ace/DEV_IO.inl
deleted file mode 100644
index 796d24e114a..00000000000
--- a/dep/include/ace/DEV_IO.inl
+++ /dev/null
@@ -1,126 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: DEV_IO.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_sys_uio.h"
-#include "ace/OS_NS_unistd.h"
-#include "ace/OS_Memory.h"
-
-#include "ace/ACE.h"
-
-// Send exactly N bytes from BUF to this device. Keeping trying until
-// this many bytes are sent.
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ssize_t
-ACE_DEV_IO::send_n (const void *buf, size_t n) const
-{
- ACE_TRACE ("ACE_DEV_IO::send_n");
- return ACE::write_n (this->get_handle (), buf, n);
-}
-
-// Receive exactly N bytes from this file into BUF. Keep trying until
-// this many bytes are received.
-
-ACE_INLINE ssize_t
-ACE_DEV_IO::recv_n (void *buf,
- size_t n,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred) const
-{
- ACE_TRACE ("ACE_DEV_IO::recv_n");
-#if defined (ACE_WIN32)
- ACE_UNUSED_ARG (timeout);
-
- return ACE::read_n (this->get_handle (),
- buf,
- n,
- bytes_transferred);
-#else
- return ACE::recv_n (this->get_handle (),
- buf,
- n,
- timeout,
- bytes_transferred);
-#endif /*ACE_WIN32*/
-}
-
-ACE_INLINE ssize_t
-ACE_DEV_IO::send (const void *buf, size_t n) const
-{
- ACE_TRACE ("ACE_DEV_IO::send");
- return ACE_OS::write (this->get_handle (), (const char *) buf, n);
-}
-
-ACE_INLINE ssize_t
-ACE_DEV_IO::recv (void *buf, size_t n) const
-{
- ACE_TRACE ("ACE_DEV_IO::recv");
- return ACE_OS::read (this->get_handle (), (char *) buf, n);
-}
-
-ACE_INLINE ssize_t
-ACE_DEV_IO::send (const iovec iov[], size_t n) const
-{
- ACE_TRACE ("ACE_DEV_IO::send");
- return ACE_OS::writev (this->get_handle (), iov, static_cast<int> (n));
-}
-
-ACE_INLINE ssize_t
-ACE_DEV_IO::recv (iovec iov[], size_t n) const
-{
- ACE_TRACE ("ACE_DEV_IO::recv");
- return ACE_OS::readv (this->get_handle (), iov, static_cast<int> (n));
-}
-
-ACE_INLINE ssize_t
-ACE_DEV_IO::send (const void *buf, size_t n,
- ACE_OVERLAPPED *overlapped) const
-{
- ACE_TRACE ("ACE_DEV_IO::send");
- return ACE_OS::write (this->get_handle (),
- (const char *) buf, n,
- overlapped);
-}
-
-ACE_INLINE ssize_t
-ACE_DEV_IO::recv (void *buf, size_t n,
- ACE_OVERLAPPED *overlapped) const
-{
- ACE_TRACE ("ACE_DEV_IO::recv");
- return ACE_OS::read (this->get_handle (), (char *) buf, n,
- overlapped);
-}
-
-#if defined (ACE_HAS_STREAM_PIPES)
-ACE_INLINE ssize_t
-ACE_DEV_IO::recv (ACE_Str_Buf *cntl, ACE_Str_Buf *data, int *band, int *flags) const
-{
- ACE_TRACE ("ACE_DEV_IO::recv");
- return ACE_OS::getpmsg (this->get_handle (), (strbuf *) cntl, (strbuf *) data, band, flags);
-}
-
-ACE_INLINE ssize_t
-ACE_DEV_IO::send (const ACE_Str_Buf *cntl, const ACE_Str_Buf *data, int band, int flags) const
-{
- ACE_TRACE ("ACE_DEV_IO::send");
- return ACE_OS::putpmsg (this->get_handle (), (strbuf *) cntl, (strbuf *) data, band, flags);
-}
-
-ACE_INLINE ssize_t
-ACE_DEV_IO::recv (ACE_Str_Buf *cntl, ACE_Str_Buf *data, int *flags) const
-{
- ACE_TRACE ("ACE_DEV_IO::recv");
- return ACE_OS::getmsg (this->get_handle (), (strbuf *) cntl, (strbuf *) data, flags);
-}
-
-ACE_INLINE ssize_t
-ACE_DEV_IO::send (const ACE_Str_Buf *cntl, const ACE_Str_Buf *data, int flags) const
-{
- ACE_TRACE ("ACE_DEV_IO::send");
- return ACE_OS::putmsg (this->get_handle (), (strbuf *) cntl, (strbuf *) data, flags);
-}
-#endif /* ACE_HAS_STREAM_PIPES */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/DLL.h b/dep/include/ace/DLL.h
deleted file mode 100644
index afd309d02c4..00000000000
--- a/dep/include/ace/DLL.h
+++ /dev/null
@@ -1,195 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file DLL.h
- *
- * $Id: DLL.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Kirthika Parameswaran <kirthika@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_DLL_H
-#define ACE_DLL_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Global_Macros.h"
-#include "ace/os_include/os_dlfcn.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_DLL_Handle;
-
-/**
- * @class ACE_DLL
- *
- * @brief Provides an abstract interface for handling various DLL
- * operations.
- *
- * This class is a wrapper over the various methods for utilizing
- * a dynamically linked library (DLL), which is called a shared
- * library on some platforms. Operations @c open(), @c close(), and
- * @c symbol() have been implemented to help opening/closing and
- * extracting symbol information from a DLL, respectively.
- */
-class ACE_Export ACE_DLL
-{
-public:
- // = Initialization and termination methods.
-
- /**
- * Default constructor. By default, the close() operation on the
- * object will be invoked before it is destroyed.
- * @param close_handle_on_destruction Indicates whether or not the
- * close() method will be called to close an open DLL when this
- * object is destroyed. By default, close() will be called.
- * Set this parameter to 0 for situations where the DLL's lifetime
- * is controlled in a scope other than that of this ACE_DLL object.
- * For example, termination by ACE_DLL_Manager via ACE::fini().
- */
- explicit ACE_DLL (bool close_handle_on_destruction = true);
-
- /// Allow assignment
- ACE_DLL& operator= (const ACE_DLL &rhs);
-
- /**
- * This constructor performs the actions of open() during construction.
- * @param dll_name The name or path of the DLL to load.
- * @param open_mode Flags to alter the actions taken when loading the DLL.
- * The possible values are:
- * @li @c RTLD_LAZY (this the default): loads identifier symbols but
- * not the symbols for functions, which are loaded dynamically
- * on-demand.
- * @li @c RTLD_NOW: performs all necessary relocations when
- * @a dll_name is first loaded
- * @li RTLD_GLOBAL: makes symbols available for relocation
- * processing of any other DLLs.
- * @param close_handle_on_destruction Indicates whether or not the
- * close() method will be called to close an open DLL when this
- * object is destroyed. By default, close() will be called.
- * Set this parameter to 0 for situations where the DLL's lifetime
- * is controlled in a scope other than that of this ACE_DLL object.
- * For example, termination by ACE_DLL_Manager via ACE::fini().
- */
- explicit ACE_DLL (const ACE_TCHAR *dll_name,
- int open_mode = ACE_DEFAULT_SHLIB_MODE,
- bool close_handle_on_destruction = true);
-
- /// Copy constructor.
- ACE_DLL (const ACE_DLL &);
-
- /**
- * This method opens and dynamically links a specified DLL.
- * @param dll_name The filename or path of the DLL to load.
- * If a filename is given to @c open(), the @c ACE::ldfind() is used
- * to locate DLLs via the following algorithms: (1) DLL filename
- * expansion: @c ACE::ldfind() determines the name of the DLL by
- * adding the appropriate prefix and suffix, e.g., it adds the @c lib
- * prefix and @c .so suffix for Solaris and the @c .dll suffix for
- * Windows and (2) DLL search path: @c ACE::ldfind() will also search
- * for the designated DLL using the platform's DLL search path
- * environment variable, e.g., it searches for DLLs using @c
- * LD_LIBRARY_PATH on many UNIX systems and @c PATH on Windows.
- * @param open_mode Flags to alter the actions taken when loading the DLL.
- * The possible values are:
- * @li @c RTLD_LAZY (this the default): loads identifier symbols but
- * not the symbols for functions, which are loaded dynamically
- * on-demand.
- * @li @c RTLD_NOW: performs all necessary relocations when
- * @a dll_name is first loaded
- * @li RTLD_GLOBAL: makes symbols available for relocation
- * processing of any other DLLs.
- * @param close_handle_on_destruction Indicates whether or not the
- * close() method will be called to close an open DLL when this
- * object is destroyed. By default, close() will be called.
- * Set this parameter to 0 for situations where the DLL's lifetime
- * is controlled in a scope other than that of this ACE_DLL object.
- * For example, termination by ACE_DLL_Manager via ACE::fini().
- * @retval -1 On failure
- * @retval 0 On success.
- */
- int open (const ACE_TCHAR *dll_name,
- int open_mode = ACE_DEFAULT_SHLIB_MODE,
- bool close_handle_on_destruction = true);
-
- /// Call to close the DLL object.
- int close (void);
-
- /**
- * Called when the DLL object is destroyed -- invokes close() if the
- * @a close_handle_on_destruction flag was set to non-zero in the
- * constructor or open() method.
- */
- ~ACE_DLL (void);
-
- /**
- * Look up a named symbol in the DLL. DLL must be successfully opened
- * before calling symbol().
- * @param symbol_name The symbol name to look up.
- * @param ignore_errors If set to 1, allows you to probe a dll without
- * generating error messages in the log. Handy for determining
- * the capabilities of a library.
- * @return Returns the value of @a symbol_name if it is a valid symbol
- * in the DLL. Otherwise, returns 0.
- */
- void *symbol (const ACE_TCHAR *symbol_name, int ignore_errors = 0);
-
- /// Returns a pointer to a string explaining that an error occured. You
- /// will need to consult the error log for the actual error string
- /// returned by the OS.
- ACE_TCHAR *error (void) const;
-
- /**
- * Return the handle to the caller. If @a become_owner is non-0 then
- * caller assumes ownership of the handle and the ACE_DLL object
- * won't call close() when it goes out of scope, even if
- * <close_handle_on_destruction> is set.
- */
- ACE_SHLIB_HANDLE get_handle (int become_owner = 0) const;
-
- /// Set the handle for the DLL object. By default, the close()
- //operation on / the object will be invoked before it is destroyed.
- int set_handle (ACE_SHLIB_HANDLE handle,
- bool close_handle_on_destruction = true);
-
-private:
-
- int open_i (const ACE_TCHAR *dll_name,
- int open_mode = ACE_DEFAULT_SHLIB_MODE,
- bool close_handle_on_destruction = true,
- ACE_SHLIB_HANDLE handle = 0);
-
- //private:
-public:
-
- /// Open mode.
- int open_mode_;
-
- /// Keep track of the name of the loaded dll, so it can be used
- /// to remove framework components, singletons that live in the dll,
- /// prior to unloading the dll in the close() method.
- ACE_TCHAR *dll_name_;
-
- /// This flag keeps track of whether we should close the handle
- /// automatically when the object is destroyed.
- bool close_handle_on_destruction_;
-
- ACE_DLL_Handle *dll_handle_;
-
- /// Flag to record if the last operation had an error.
- bool error_;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_DLL_H */
-
diff --git a/dep/include/ace/DLL_Manager.h b/dep/include/ace/DLL_Manager.h
deleted file mode 100644
index 9b63c7ead5b..00000000000
--- a/dep/include/ace/DLL_Manager.h
+++ /dev/null
@@ -1,269 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file DLL_Manager.h
- *
- * $Id: DLL_Manager.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@ieee.org>
- */
-//=============================================================================
-
-#ifndef ACE_DLL_MANAGER_H
-#define ACE_DLL_MANAGER_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Auto_Ptr.h"
-#include "ace/Containers_T.h"
-#include "ace/SStringfwd.h"
-#include "ace/os_include/os_dlfcn.h"
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
-# include "ace/Thread_Mutex.h"
-#endif /* ACE_MT_SAFE */
-
-#define ACE_DEFAULT_DLL_MANAGER_SIZE 1024
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_DLL_Handle
- *
- * @brief Provides an abstract interface for handling various DLL
- * operations.
- *
- * This class is an wrapper over the various methods for utilizing a
- * dynamically linked library (DLL), which is called a shared library
- * on some platforms. It is refcounted and managed by
- * ACE_DLL_Manager, so there will only be a single instance of this
- * class for each dll loaded, no matter how many instances of ACE_DLL
- * an application has open. Operations <open>, <close>, and <symbol>
- * have been implemented to help opening/closing and extracting symbol
- * information from a DLL, respectively.
- *
- * Most of this class came from the original ACE_DLL class. ACE_DLL
- * is now just an interface that passed all it's calls either directly
- * or via ACE_DLL_Manager to this class for execution.
- *
- */
-class ACE_Export ACE_DLL_Handle
-{
-public:
-
- /// Default construtor.
- ACE_DLL_Handle (void);
-
- /// Destructor.
- ~ACE_DLL_Handle (void);
-
- /// Returns the name of the shared library (without prefixes or suffixes).
- const ACE_TCHAR *dll_name () const;
-
- /**
- * This method opens and dynamically links @a dll_name. The default
- * mode is <RTLD_LAZY>, which loads identifier symbols but not the
- * symbols for functions, which are loaded dynamically on-demand.
- * Other supported modes include: <RTLD_NOW>, which performs all
- * necessary relocations when @a dll_name is first loaded and
- * <RTLD_GLOBAL>, which makes symbols available for relocation
- * processing of any other DLLs. Returns -1 on failure and 0 on
- * success.
- */
- int open (const ACE_TCHAR *dll_name,
- int open_mode,
- ACE_SHLIB_HANDLE handle);
-
- /// Call to close the DLL object. If unload = 0, it only decrements
- /// the refcount, but if unload = 1, then it will actually unload
- /// the library when the refcount == 0;
- int close (int unload = 0);
-
- /// Return the current refcount.
- sig_atomic_t refcount (void) const;
-
- /// If @a symbol_name is in the symbol table of the DLL a pointer to
- /// the @a symbol_name is returned. Otherwise, returns 0. Set the
- /// ignore_errors flag to supress logging errors if symbol_name isn't
- /// found. This is nice if you just want to probe a dll to see what's
- /// available, since missing functions in that case aren't really errors.
- void *symbol (const ACE_TCHAR *symbol_name, int ignore_errors = 0);
-
- /**
- * Return the handle to the caller. If @a become_owner is non-0 then
- * caller assumes ownership of the handle so we decrement the retcount.
- */
- ACE_SHLIB_HANDLE get_handle (int become_owner = 0);
-
-private:
-
- /// Returns a pointer to a string explaining why <symbol> or <open>
- /// failed. This is used internal to print out the error to the log,
- /// but since this object is shared, we can't store or return the error
- /// to the caller.
- auto_ptr <ACE_TString> error (void);
-
- // Builds array of DLL names to try to dlopen, based on platform
- // and configured DLL prefixes/suffixes.
- // Returns the array of names to try in try_names.
- void get_dll_names (const ACE_TCHAR *dll_name,
- ACE_Array<ACE_TString> &try_names);
-
- // Disallow copying and assignment since we don't handle them.
- ACE_DLL_Handle (const ACE_DLL_Handle &);
- void operator= (const ACE_DLL_Handle &);
-
-private:
-
- // Keep track of how many ACE_DLL objects have a reference to this
- // dll.
- sig_atomic_t refcount_;
-
- /// Name of the shared library.
- ACE_TCHAR *dll_name_;
-
- /// Handle to the actual library loaded by the OS.
- ACE_SHLIB_HANDLE handle_;
-
- /// Keeps track of whether or not open() has ever been called. This
- /// helps get around problem on Linux, and perhaps other OS's, that
- /// seg-fault if dlerror() is called before the ld library has been
- /// initialized by a call to dlopen().
- static sig_atomic_t open_called_;
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
- /// Synchronization variable for the MT_SAFE Repository
- ACE_Thread_Mutex lock_;
-#endif /* ACE_MT_SAFE */
-};
-
-class ACE_Framework_Repository;
-
-/**
- * @class ACE_DLL_Manager
- *
- * @brief This class is a singleton and serves as a factory and
- * repository for instances of ACE_DLL_Handle.
- *
- * This class is a singleton whose lifetime is managed by the
- * ACE_Framework_Repository. Although it is normally meant to be
- * used directly only by ACE_DLL, applications can call the unload_policy()
- * methods in order get/set the the dll unload policy. Unload policies include
- * per_process/per-dll and eager/lazy. Dlls can export set their own policy
- * by using the ACE_DLL_UNLOAD_POLICY macro found in config-all.h. If a dll
- * choses to set an unload policy, it will be used when the per-dll policy
- * (the default) is in effect. If the per-dll policy is in effect and a dll
- * has not chosen to set a policy, the current per-process policy will be
- * used.
- *
- * The following policy macros are provided in config-all.h:
- *
- * ACE_DLL_UNLOAD_POLICY_PER_PROCESS - Per-process policy that unloads dlls
- * eagerly.
- *
- * ACE_DLL_UNLOAD_POLICY_PER_DLL - Apply policy on a per-dll basis. If the
- * dll doesn't use one of the macros below, the current per-process policy
- * will be used.
- *
- * ACE_DLL_UNLOAD_POLICY_LAZY - Don't unload dll when refcount reaches
- * zero, i.e., wait for either an explicit unload request or program exit.
- *
- * ACE_DLL_UNLOAD_POLICY_DEFAULT - Default policy allows dlls to control
- * their own destinies, but will unload those that don't make a choice eagerly.
- *
- */
-class ACE_Export ACE_DLL_Manager
-{
-public:
- friend class ACE_Framework_Repository;
- friend class ACE_Object_Manager;
-
- enum
- {
- DEFAULT_SIZE = ACE_DEFAULT_DLL_MANAGER_SIZE
- };
-
- /// Return a unique instance
- static ACE_DLL_Manager *instance (int size = ACE_DLL_Manager::DEFAULT_SIZE);
-
- /// Factory for ACE_DLL_Handle objects. If one already exits,
- /// its refcount is incremented.
- ACE_DLL_Handle *open_dll (const ACE_TCHAR *dll_name,
- int openmode,
- ACE_SHLIB_HANDLE handle);
-
- /// Close the underlying dll. Decrements the refcount.
- int close_dll (const ACE_TCHAR *dll_name);
-
- /// Returns the current per-process UNLOAD_POLICY.
- u_long unload_policy (void) const;
-
- /// Set the per-process UNLOAD_POLICY. If the policy is changed from
- /// LAZY to EAGER, then it will also unload any dlls with zero
- /// refcounts.
- void unload_policy (u_long unload_policy);
-
-protected:
-
- /// Default constructor.
- ACE_DLL_Manager (int size = ACE_DLL_Manager::DEFAULT_SIZE);
-
- /// Destructor.
- ~ACE_DLL_Manager (void);
-
- // Allocate handle_vector_.
- int open (int size);
-
- // Close all open dlls and deallocate memory.
- int close (void);
-
- // Find dll in handle_vector_.
- ACE_DLL_Handle *find_dll (const ACE_TCHAR *dll_name) const;
-
- // Applies strategy for unloading dll.
- int unload_dll (ACE_DLL_Handle *dll_handle, int force_unload = 0);
-
-private:
-
- /// Close the singleton instance.
- static void close_singleton (void);
-
- // Disallow copying and assignment since we don't handle these.
- ACE_DLL_Manager (const ACE_DLL_Manager &);
- void operator= (const ACE_DLL_Manager &);
-
-private:
-
- /// Vector containing all loaded handle objects.
- ACE_DLL_Handle **handle_vector_;
-
- /// Current number of handles.
- int current_size_;
-
- /// Maximum number of handles.
- int total_size_;
-
- /// Unload strategy.
- u_long unload_policy_;
-
- /// Pointer to a process-wide ACE_DLL_Manager.
- static ACE_DLL_Manager *instance_;
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
- /// Synchronization variable for the MT_SAFE Repository
- ACE_Thread_Mutex lock_;
-#endif /* ACE_MT_SAFE */
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_DLL_MANAGER_H */
-
diff --git a/dep/include/ace/Date_Time.h b/dep/include/ace/Date_Time.h
deleted file mode 100644
index 7e91549d2a5..00000000000
--- a/dep/include/ace/Date_Time.h
+++ /dev/null
@@ -1,126 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Date_Time.h
- *
- * $Id: Date_Time.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Tim Harrison (harrison@cs.wustl.edu) (and he's darn proud of this ;-))
- *
- */
-//==========================================================================
-
-#ifndef ACE_DATE_TIME_H
-#define ACE_DATE_TIME_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-/**
- * @class ACE_Date_Time
- *
- * @brief System independent representation of date and time.
- */
-class ACE_Export ACE_Date_Time
-{
-public:
- /// Constructor initializes current time/date info.
- ACE_Date_Time (void);
-
- /// Constructor initializes with the given ACE_Time_Value
- explicit ACE_Date_Time (const ACE_Time_Value& timevalue);
-
- /// Constructor with init values, no check for validy
- /// Set/get portions of ACE_Date_Time, no check for validity.
- ACE_Date_Time (long day,
- long month = 0,
- long year = 0,
- long hour = 0,
- long minute = 0,
- long second = 0,
- long microsec = 0,
- long wday = 0);
-
- /// Update to the current time/date.
- void update (void);
-
- /// Update to the given ACE_Time_Value
- void update (const ACE_Time_Value& timevalue);
-
- /// Get day.
- long day (void) const;
-
- /// Set day.
- void day (long day);
-
- /// Get month.
- long month (void) const;
-
- /// Set month.
- void month (long month);
-
- /// Get year.
- long year (void) const;
-
- /// Set year.
- void year (long year);
-
- /// Get hour.
- long hour (void) const;
-
- /// Set hour.
- void hour (long hour);
-
- /// Get minute.
- long minute (void) const;
-
- /// Set minute.
- void minute (long minute);
-
- /// Get second.
- long second (void) const;
-
- /// Set second.
- void second (long second);
-
- /// Get microsec.
- long microsec (void) const;
-
- /// Set microsec.
- void microsec (long microsec);
-
- /// Get weekday.
- long weekday (void) const;
-
- /// Set weekday.
- void weekday (long wday);
-
-private:
- long day_;
- long month_;
- long year_;
- long hour_;
- long minute_;
- long second_;
- long microsec_;
- long wday_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Date_Time.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_DATE_TIME_H */
-
diff --git a/dep/include/ace/Date_Time.inl b/dep/include/ace/Date_Time.inl
deleted file mode 100644
index d34807d83a4..00000000000
--- a/dep/include/ace/Date_Time.inl
+++ /dev/null
@@ -1,219 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Date_Time.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Global_Macros.h"
-#include "ace/Time_Value.h"
-#include "ace/OS_NS_sys_time.h"
-#include "ace/OS_NS_time.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE void
-ACE_Date_Time::update (const ACE_Time_Value& timevalue)
-{
-#if defined (ACE_HAS_WINCE)
- // CE doesn't do localtime().
- FILETIME file_time = timevalue;
- FILETIME local_file_time;
- SYSTEMTIME sys_time;
- ::FileTimeToLocalFileTime (&file_time, &local_file_time);
- ::FileTimeToSystemTime (&local_file_time, &sys_time);
- this->day_ = sys_time.wDay;
- this->month_ = sys_time.wMonth;
- this->year_ = sys_time.wYear;
- this->hour_ = sys_time.wHour;
- this->minute_ = sys_time.wMinute;
- this->second_ = sys_time.wSecond;
- this->microsec_ = sys_time.wMilliseconds * 1000;
- this->wday_ = sys_time.wDayOfWeek;
-#else
- time_t time = timevalue.sec ();
- struct tm tm_time;
- ACE_OS::localtime_r (&time, &tm_time);
- this->day_ = tm_time.tm_mday;
- this->month_ = tm_time.tm_mon + 1; // localtime's months are 0-11
- this->year_ = tm_time.tm_year + 1900; // localtime reports years since 1900
- this->hour_ = tm_time.tm_hour;
- this->minute_ = tm_time.tm_min;
- this->second_ = tm_time.tm_sec;
- this->microsec_ = timevalue.usec ();
- this->wday_ = tm_time.tm_wday;
-#endif /* ACE_HAS_WINCE */
-}
-
-ACE_INLINE void
-ACE_Date_Time::update (void)
-{
- ACE_TRACE ("ACE_Date_Time::update");
-
- update(ACE_OS::gettimeofday ());
-}
-
-ACE_INLINE
-ACE_Date_Time::ACE_Date_Time (void)
-{
- ACE_TRACE ("ACE_Date_Time::ACE_Date_Time");
- this->update ();
-}
-
-ACE_INLINE
-ACE_Date_Time::ACE_Date_Time (const ACE_Time_Value& timevalue)
-{
- ACE_TRACE ("ACE_Date_Time::ACE_Date_Time: timevalue");
- this->update (timevalue);
-}
-
-// Constructor with init values, no check for validy
-ACE_INLINE
-ACE_Date_Time::ACE_Date_Time (long day,
- long month,
- long year,
- long hour,
- long minute,
- long second,
- long microsec,
- long wday)
- : day_ (day),
- month_ (month),
- year_ (year),
- hour_ (hour),
- minute_ (minute),
- second_ (second),
- microsec_ (microsec),
- wday_ (wday)
-{
- ACE_TRACE ("ACE_Date_Time::ACE_Date_Time");
-}
-
-// set/get portions of ACE_Date_Time, no check for validy
-
-// get day
-ACE_INLINE long
-ACE_Date_Time::day (void) const
-{
- ACE_TRACE ("ACE_Date_Time::day");
- return day_;
-}
-
-// set day
-ACE_INLINE void
-ACE_Date_Time::day (long day)
-{
- ACE_TRACE ("ACE_Date_Time::day");
- day_ = day;
-}
-
-// get month
-ACE_INLINE long
-ACE_Date_Time::month (void) const
-{
- ACE_TRACE ("ACE_Date_Time::month");
- return month_;
-}
-
-// set month
-ACE_INLINE void
-ACE_Date_Time::month (long month)
-{
- ACE_TRACE ("ACE_Date_Time::month");
- month_ = month;
-}
-
-// get year
-ACE_INLINE long
-ACE_Date_Time::year (void) const
-{
- ACE_TRACE ("ACE_Date_Time::year");
- return year_;
-}
-
-// set year
-ACE_INLINE void
-ACE_Date_Time::year (long year)
-{
- ACE_TRACE ("ACE_Date_Time::year");
- year_ = year;
-}
-
-// get hour
-ACE_INLINE long
-ACE_Date_Time::hour (void) const
-{
- ACE_TRACE ("ACE_Date_Time::hour");
- return hour_;
-}
-
-// set hour
-ACE_INLINE void
-ACE_Date_Time::hour (long hour)
-{
- ACE_TRACE ("ACE_Date_Time::hour");
- hour_ = hour;
-}
-
-// get minute
-ACE_INLINE long
-ACE_Date_Time::minute (void) const
-{
- ACE_TRACE ("ACE_Date_Time::minute");
- return minute_;
-}
-
-// set minute
-ACE_INLINE void
-ACE_Date_Time::minute (long minute)
-{
- ACE_TRACE ("ACE_Date_Time::minute");
- minute_ = minute;
-}
-
-// get second
-ACE_INLINE long
-ACE_Date_Time::second (void) const
-{
- ACE_TRACE ("ACE_Date_Time::second");
- return second_;
-}
-
-// set second
-ACE_INLINE void
-ACE_Date_Time::second (long second)
-{
- ACE_TRACE ("ACE_Date_Time::second");
- second_ = second;
-}
-
-// get microsec
-ACE_INLINE long
-ACE_Date_Time::microsec (void) const
-{
- ACE_TRACE ("ACE_Date_Time::microsec");
- return microsec_;
-}
-
-// set microsec
-ACE_INLINE void
-ACE_Date_Time::microsec (long microsec)
-{
- ACE_TRACE ("ACE_Date_Time::microsec");
- microsec_ = microsec;
-}
-
-// get wday
-ACE_INLINE long
-ACE_Date_Time::weekday (void) const
-{
- ACE_TRACE ("ACE_Date_Time::weekday");
- return wday_;
-}
-
-// set wday
-ACE_INLINE void
-ACE_Date_Time::weekday (long wday)
-{
- ACE_TRACE ("ACE_Date_Time::weekday");
- wday_ = wday;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Default_Constants.h b/dep/include/ace/Default_Constants.h
deleted file mode 100644
index 9eefd496b9b..00000000000
--- a/dep/include/ace/Default_Constants.h
+++ /dev/null
@@ -1,574 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Default_Constants.h
- *
- * $Id: Default_Constants.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * This one is split from the famous OS.h
- */
-//=============================================================================
-
-#ifndef ACE_DEFAULT_CONSTANTS_H
-#define ACE_DEFAULT_CONSTANTS_H
-#include /**/ "ace/pre.h"
-
-// Included just keep compilers that see #pragma dierctive first
-// happy.
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// Define the default constants for ACE. Many of these are used for
-// the ACE tests and applications. You can change these values by
-// defining the macros in your config.h file.
-# if !defined (ACE_DEFAULT_CLOSE_ALL_HANDLES)
-# define ACE_DEFAULT_CLOSE_ALL_HANDLES true
-# endif /* ACE_DEFAULT_CLOSE_ALL_HANDLES */
-
-// The maximum length for a fully qualified Internet name.
-# if !defined(ACE_MAX_FULLY_QUALIFIED_NAME_LEN)
-# define ACE_MAX_FULLY_QUALIFIED_NAME_LEN 256
-# endif /* ACE_MAX_FULLY_QUALIFIED_NAME_LEN */
-
-#if !defined (ACE_DEFAULT_PAGEFILE_POOL_BASE)
-#define ACE_DEFAULT_PAGEFILE_POOL_BASE (void *) 0
-#endif /* ACE_DEFAULT_PAGEFILE_POOL_BASE */
-
-#if !defined (ACE_DEFAULT_PAGEFILE_POOL_SIZE)
-#define ACE_DEFAULT_PAGEFILE_POOL_SIZE (size_t) 0x01000000
-#endif /* ACE_DEFAULT_PAGEFILE_POOL_SIZE */
-
-#if !defined (ACE_DEFAULT_PAGEFILE_POOL_CHUNK)
-#define ACE_DEFAULT_PAGEFILE_POOL_CHUNK (size_t) 0x00010000
-#endif /* ACE_DEFAULT_PAGEFILE_POOL_CHUNK */
-
-#if !defined (ACE_DEFAULT_PAGEFILE_POOL_NAME)
-#define ACE_DEFAULT_PAGEFILE_POOL_NAME ACE_TEXT ("Default_ACE_Pagefile_Memory_Pool")
-#endif /* ACE_DEFAULT_PAGEFILE_POOL_NAME */
-
-#if !defined (ACE_DEFAULT_MESSAGE_BLOCK_PRIORITY)
-#define ACE_DEFAULT_MESSAGE_BLOCK_PRIORITY 0
-#endif /* ACE_DEFAULT_MESSAGE_BLOCK_PRIORITY */
-
-#if !defined (ACE_DEFAULT_SERVICE_REPOSITORY_SIZE)
-#define ACE_DEFAULT_SERVICE_REPOSITORY_SIZE 1024
-#endif /* ACE_DEFAULT_SERVICE_REPOSITORY_SIZE */
-
-#if !defined (ACE_REACTOR_NOTIFICATION_ARRAY_SIZE)
-#define ACE_REACTOR_NOTIFICATION_ARRAY_SIZE 1024
-#endif /* ACE_REACTOR_NOTIFICATION_ARRAY_SIZE */
-
-# if !defined (ACE_DEFAULT_TIMEOUT)
-# define ACE_DEFAULT_TIMEOUT 5
-# endif /* ACE_DEFAULT_TIMEOUT */
-
-# if !defined (ACE_DEFAULT_BACKLOG)
-# define ACE_DEFAULT_BACKLOG 5
-# endif /* ACE_DEFAULT_BACKLOG */
-
-# if !defined (ACE_DEFAULT_ASYNCH_BACKLOG)
-# define ACE_DEFAULT_ASYNCH_BACKLOG 5
-# endif /* ACE_DEFAULT_ASYNCH_BACKLOG */
-
-# if !defined (ACE_DEFAULT_THREADS)
-# define ACE_DEFAULT_THREADS 1
-# endif /* ACE_DEFAULT_THREADS */
-
-// The following 3 defines are used in the IP multicast and broadcast tests.
-# if !defined (ACE_DEFAULT_BROADCAST_PORT)
-# define ACE_DEFAULT_BROADCAST_PORT 20000
-# endif /* ACE_DEFAULT_BROADCAST_PORT */
-
-# if !defined (ACE_DEFAULT_MULTICAST_PORT)
-# define ACE_DEFAULT_MULTICAST_PORT 20001
-# endif /* ACE_DEFAULT_MULTICAST_PORT */
-
-# if !defined (ACE_DEFAULT_MULTICAST_ADDR)
-// This address MUST be within the range for host group addresses:
-// 224.0.0.0 to 239.255.255.255.
-# define ACE_DEFAULT_MULTICAST_ADDR "224.9.9.2"
-# endif /* ACE_DEFAULT_MULTICAST_ADDR */
-
-# if defined (ACE_HAS_IPV6)
-# if !defined (ACE_DEFAULT_MULTICASTV6_ADDR)
-// This address should be within the range for site-local addresses:
-// ff05::0/16 .
-# define ACE_DEFAULT_MULTICASTV6_ADDR "ff05:0::ff01:1"
-# endif /* ACE_DEFAULT_MULTICASTV6_ADDR */
-# endif
-
-// Default port number for HTTP.
-# if !defined (ACE_DEFAULT_HTTP_SERVER_PORT)
-# define ACE_DEFAULT_HTTP_SERVER_PORT 80
-# endif /* ACE_DEFAULT_HTTP_SERVER_PORT */
-
-// Used in many IPC_SAP tests
-# if !defined (ACE_DEFAULT_SERVER_PORT)
-# define ACE_DEFAULT_SERVER_PORT 20002
-# endif /* ACE_DEFAULT_SERVER_PORT */
-
-# if !defined (ACE_DEFAULT_HTTP_PORT)
-# define ACE_DEFAULT_HTTP_PORT 80
-# endif /* ACE_DEFAULT_HTTP_PORT */
-
-# if !defined (ACE_DEFAULT_MAX_SOCKET_BUFSIZ)
-# define ACE_DEFAULT_MAX_SOCKET_BUFSIZ 65536
-# endif /* ACE_DEFAULT_MAX_SOCKET_BUFSIZ */
-
-# if !defined (ACE_DEFAULT_SERVER_PORT_STR)
-# define ACE_DEFAULT_SERVER_PORT_STR ACE_TEXT("20002")
-# endif /* ACE_DEFAULT_SERVER_PORT_STR */
-
-// Used for the Service_Directory test
-# if !defined (ACE_DEFAULT_SERVICE_PORT)
-# define ACE_DEFAULT_SERVICE_PORT 20003
-# endif /* ACE_DEFAULT_SERVICE_PORT */
-
-// Used for the ACE_Thread_Spawn test
-# if !defined (ACE_DEFAULT_THR_PORT )
-# define ACE_DEFAULT_THR_PORT 20004
-# endif /* ACE_DEFAULT_THR_PORT */
-
-// Used for <SOCK_Connect::connect> tests
-# if !defined (ACE_DEFAULT_LOCAL_PORT)
-# define ACE_DEFAULT_LOCAL_PORT 20005
-# endif /* ACE_DEFAULT_LOCAL_PORT */
-
-// Used for Connector tests
-# if !defined (ACE_DEFAULT_LOCAL_PORT_STR)
-# define ACE_DEFAULT_LOCAL_PORT_STR "20005"
-# endif /* ACE_DEFAULT_LOCAL_PORT_STR */
-
-// Used for the name server.
-# if !defined (ACE_DEFAULT_NAME_SERVER_PORT)
-# define ACE_DEFAULT_NAME_SERVER_PORT 20006
-# endif /* ACE_DEFAULT_NAME_SERVER_PORT */
-
-# if !defined (ACE_DEFAULT_NAME_SERVER_PORT_STR)
-# define ACE_DEFAULT_NAME_SERVER_PORT_STR "20006"
-# endif /* ACE_DEFAULT_NAME_SERVER_PORT_STR */
-
-// Used for the token server.
-# if !defined (ACE_DEFAULT_TOKEN_SERVER_PORT)
-# define ACE_DEFAULT_TOKEN_SERVER_PORT 20007
-# endif /* ACE_DEFAULT_TOKEN_SERVER_PORT */
-
-# if !defined (ACE_DEFAULT_TOKEN_SERVER_PORT_STR)
-# define ACE_DEFAULT_TOKEN_SERVER_PORT_STR "20007"
-# endif /* ACE_DEFAULT_TOKEN_SERVER_PORT_STR */
-
-// Used for the logging server.
-# if !defined (ACE_DEFAULT_LOGGING_SERVER_PORT)
-# define ACE_DEFAULT_LOGGING_SERVER_PORT 20008
-# endif /* ACE_DEFAULT_LOGGING_SERVER_PORT */
-
-# if !defined (ACE_DEFAULT_LOGGING_SERVER_PORT_STR)
-# define ACE_DEFAULT_LOGGING_SERVER_PORT_STR "20008"
-# endif /* ACE_DEFAULT_LOGGING_SERVER_PORT_STR */
-
-// Used for the logging server.
-# if !defined (ACE_DEFAULT_THR_LOGGING_SERVER_PORT)
-# define ACE_DEFAULT_THR_LOGGING_SERVER_PORT 20008
-# endif /* ACE_DEFAULT_THR_LOGGING_SERVER_PORT */
-
-# if !defined (ACE_DEFAULT_THR_LOGGING_SERVER_PORT_STR)
-# define ACE_DEFAULT_THR_LOGGING_SERVER_PORT_STR "20008"
-# endif /* ACE_DEFAULT_THR_LOGGING_SERVER_PORT_STR */
-
-// Used for the time server.
-# if !defined (ACE_DEFAULT_TIME_SERVER_PORT)
-# define ACE_DEFAULT_TIME_SERVER_PORT 20009
-# endif /* ACE_DEFAULT_TIME_SERVER_PORT */
-
-# if !defined (ACE_DEFAULT_TIME_SERVER_PORT_STR)
-# define ACE_DEFAULT_TIME_SERVER_PORT_STR "20009"
-# endif /* ACE_DEFAULT_TIME_SERVER_PORT_STR */
-
-# if !defined (ACE_DEFAULT_TIME_SERVER_STR)
-# define ACE_DEFAULT_TIME_SERVER_STR "ACE_TS_TIME"
-# endif /* ACE_DEFAULT_TIME_SERVER_STR */
-
-// Used by the FIFO tests and the Client_Logging_Handler netsvc.
-# if !defined (ACE_DEFAULT_RENDEZVOUS)
-# if defined (ACE_HAS_STREAM_PIPES)
-# define ACE_DEFAULT_RENDEZVOUS ACE_TEXT("/tmp/fifo.ace")
-# else
-# define ACE_DEFAULT_RENDEZVOUS ACE_TEXT("localhost:20010")
-# endif /* ACE_HAS_STREAM_PIPES */
-# endif /* ACE_DEFAULT_RENDEZVOUS */
-
-// Used for the UNIX syslog logging interface to ACE_Log_Msg.
-# ifndef ACE_DEFAULT_SYSLOG_FACILITY
-# define ACE_DEFAULT_SYSLOG_FACILITY LOG_USER
-# endif /* ACE_DEFAULT_SYSLOG_FACILITY */
-
-# if !defined (ACE_DEFAULT_LOGGER_KEY)
-
-# if defined (ACE_HAS_STREAM_PIPES)
-# define ACE_DEFAULT_LOGGER_KEY ACE_TEXT ("/tmp/server_daemon")
-# else
-# define ACE_DEFAULT_LOGGER_KEY ACE_TEXT ("localhost:20012")
-# endif /* ACE_HAS_STREAM_PIPES */
-# endif /* ACE_DEFAULT_LOGGER_KEY */
-
-// The way to specify the local host for loopback IP. This is usually
-// "localhost" but it may need changing on some platforms.
-# if !defined (ACE_LOCALHOST)
-# define ACE_LOCALHOST ACE_TEXT ("localhost")
-# endif
-
-// This specification for an IPv6 localhost should work on all platforms
-// supporting IPv6
-# if defined (ACE_HAS_IPV6)
-# if !defined (ACE_IPV6_LOCALHOST)
-# define ACE_IPV6_LOCALHOST ACE_TEXT ("::1")
-# endif /* ACE_IPV6_LOCALHOST*/
-#endif /* ACE_HAS_IPV6 */
-
-// This specification for an IPv6 ANY address should work on all platforms
-// supporting IPv6
-# if defined (ACE_HAS_IPV6)
-# if !defined (ACE_IPV6_ANY)
-# define ACE_IPV6_ANY ACE_TEXT ("::")
-# endif /* ACE_IPV6_ANY*/
-#endif /* ACE_HAS_IPV6 */
-
-# if !defined (ACE_DEFAULT_SERVER_HOST)
-# if defined (ACE_HAS_IPV6)
-# define ACE_DEFAULT_SERVER_HOST ACE_IPV6_LOCALHOST
-# else /*ACE_HAS_IPV6*/
-# define ACE_DEFAULT_SERVER_HOST ACE_LOCALHOST
-# endif /*ACE_HAS_IPV6*/
-# endif /* ACE_DEFAULT_SERVER_HOST */
-
-// Default shared memory key
-# if !defined (ACE_DEFAULT_SHM_KEY)
-# define ACE_DEFAULT_SHM_KEY 1234
-# endif /* ACE_DEFAULT_SHM_KEY */
-
-// Default address for shared memory mapped files and SYSV shared memory
-// (defaults to 64 M).
-# if !defined (ACE_DEFAULT_BASE_ADDR)
-# define ACE_DEFAULT_BASE_ADDR ((char *) (64 * 1024 * 1024))
-# endif /* ACE_DEFAULT_BASE_ADDR */
-
-// Default segment size used by SYSV shared memory (128 K)
-# if !defined (ACE_DEFAULT_SEGMENT_SIZE)
-# define ACE_DEFAULT_SEGMENT_SIZE 1024 * 128
-# endif /* ACE_DEFAULT_SEGMENT_SIZE */
-
-// Maximum number of SYSV shared memory segments
-// (does anyone know how to figure out the right values?!)
-# if !defined (ACE_DEFAULT_MAX_SEGMENTS)
-# define ACE_DEFAULT_MAX_SEGMENTS 6
-# endif /* ACE_DEFAULT_MAX_SEGMENTS */
-
-// Name of the map that's stored in shared memory.
-# if !defined (ACE_NAME_SERVER_MAP)
-# define ACE_NAME_SERVER_MAP "Name Server Map"
-# endif /* ACE_NAME_SERVER_MAP */
-
-// Default file permissions.
-# if !defined (ACE_DEFAULT_FILE_PERMS)
-# if defined (ACE_VXWORKS)
-# define ACE_DEFAULT_FILE_PERMS (S_IRUSR | S_IWUSR| S_IRGRP| S_IROTH)
-# else
-# define ACE_DEFAULT_FILE_PERMS 0644
-# endif /* ACE_VXWORKS */
-# endif /* ACE_DEFAULT_FILE_PERMS */
-
-// Default directory permissions.
-# if !defined (ACE_DEFAULT_DIR_PERMS)
-# define ACE_DEFAULT_DIR_PERMS 0755
-# endif /* ACE_DEFAULT_DIR_PERMS */
-
-# if !defined (ACE_DEFAULT_TIMEPROBE_TABLE_SIZE)
-# define ACE_DEFAULT_TIMEPROBE_TABLE_SIZE 8 * 1024
-# endif /* ACE_DEFAULT_TIMEPROBE_TABLE_SIZE */
-
-// Default size of the ACE Map_Manager.
-# if !defined (ACE_DEFAULT_MAP_SIZE)
-# define ACE_DEFAULT_MAP_SIZE 1024
-# endif /* ACE_DEFAULT_MAP_SIZE */
-
-// Defaults for ACE Timer Wheel
-# if !defined (ACE_DEFAULT_TIMER_WHEEL_SIZE)
-# define ACE_DEFAULT_TIMER_WHEEL_SIZE 1024
-# endif /* ACE_DEFAULT_TIMER_WHEEL_SIZE */
-
-# if !defined (ACE_DEFAULT_TIMER_WHEEL_RESOLUTION)
-# define ACE_DEFAULT_TIMER_WHEEL_RESOLUTION 100
-# endif /* ACE_DEFAULT_TIMER_WHEEL_RESOLUTION */
-
-// Default size for ACE Timer Hash table
-# if !defined (ACE_DEFAULT_TIMER_HASH_TABLE_SIZE)
-# define ACE_DEFAULT_TIMER_HASH_TABLE_SIZE 1024
-# endif /* ACE_DEFAULT_TIMER_HASH_TABLE_SIZE */
-
-// Defaults for the ACE Free List
-# if !defined (ACE_DEFAULT_FREE_LIST_PREALLOC)
-# define ACE_DEFAULT_FREE_LIST_PREALLOC 0
-# endif /* ACE_DEFAULT_FREE_LIST_PREALLOC */
-
-# if !defined (ACE_DEFAULT_FREE_LIST_LWM)
-# define ACE_DEFAULT_FREE_LIST_LWM 0
-# endif /* ACE_DEFAULT_FREE_LIST_LWM */
-
-# if !defined (ACE_DEFAULT_FREE_LIST_HWM)
-# define ACE_DEFAULT_FREE_LIST_HWM 25000
-# endif /* ACE_DEFAULT_FREE_LIST_HWM */
-
-# if !defined (ACE_DEFAULT_FREE_LIST_INC)
-# define ACE_DEFAULT_FREE_LIST_INC 100
-# endif /* ACE_DEFAULT_FREE_LIST_INC */
-
-# if !defined (ACE_UNIQUE_NAME_LEN)
-# define ACE_UNIQUE_NAME_LEN 100
-# endif /* ACE_UNIQUE_NAME_LEN */
-
-# if !defined (ACE_MAX_DGRAM_SIZE)
- // This is just a guess. 8k is the normal limit on
- // most machines because that's what NFS expects.
-# define ACE_MAX_DGRAM_SIZE 8192
-# endif /* ACE_MAX_DGRAM_SIZE */
-
-# if !defined (ACE_DEFAULT_ARGV_BUFSIZ)
-# define ACE_DEFAULT_ARGV_BUFSIZ 1024 * 4
-# endif /* ACE_DEFAULT_ARGV_BUFSIZ */
-
-// A free list which create more elements when there aren't enough
-// elements.
-# define ACE_FREE_LIST_WITH_POOL 1
-
-// A simple free list which doen't allocate/deallocate elements.
-# define ACE_PURE_FREE_LIST 2
-
-# if defined (ACE_WIN32)
-
-// This is necessary to work around bugs with Win32 non-blocking
-// connects...
-# if !defined (ACE_NON_BLOCKING_BUG_DELAY)
-# define ACE_NON_BLOCKING_BUG_DELAY 35000
-# endif /* ACE_NON_BLOCKING_BUG_DELAY */
-# endif /*ACE_WIN32*/
-
-// Max size of an ACE Log Record data buffer. This can be reset in
-// the config.h file if you'd like to increase or decrease the size.
-# if !defined (ACE_MAXLOGMSGLEN)
-# define ACE_MAXLOGMSGLEN 4 * 1024
-# endif /* ACE_MAXLOGMSGLEN */
-
-// Max size of an ACE Token.
-# define ACE_MAXTOKENNAMELEN 40
-
-// Max size of an ACE Token client ID.
-# define ACE_MAXCLIENTIDLEN MAXHOSTNAMELEN + 20
-
-/// Max udp packet size
-#if !defined (ACE_MAX_UDP_PACKET_SIZE)
-#define ACE_MAX_UDP_PACKET_SIZE 65536
-#endif
-
-/**
- * @name Default values to control CDR classes memory allocation strategies
- */
-//@{
-
-/// Control the initial size of all CDR buffers, application
-/// developers may want to optimize this value to fit their request
-/// size
-#if !defined (ACE_DEFAULT_CDR_BUFSIZE)
-# define ACE_DEFAULT_CDR_BUFSIZE 512
-#endif /* ACE_DEFAULT_CDR_BUFSIZE */
-
-#if (ACE_DEFAULT_CDR_BUFSIZE == 0)
-# error: ACE_DEFAULT_CDR_BUFSIZE should be bigger then 0
-#endif
-
-/// Stop exponential growth of CDR buffers to avoid overallocation
-#if !defined (ACE_DEFAULT_CDR_EXP_GROWTH_MAX)
-# define ACE_DEFAULT_CDR_EXP_GROWTH_MAX 65536
-#endif /* ACE_DEFAULT_CDR_EXP_GROWTH_MAX */
-
-/// Control CDR buffer growth after maximum exponential growth is
-/// reached
-#if !defined (ACE_DEFAULT_CDR_LINEAR_GROWTH_CHUNK)
-# define ACE_DEFAULT_CDR_LINEAR_GROWTH_CHUNK 65536
-#endif /* ACE_DEFAULT_CDR_LINEAR_GROWTH_CHUNK */
-//@}
-
-/// Control the zero-copy optimizations for octet sequences
-/**
- * Large octet sequences can be sent without any copies by chaining
- * them in the list of message blocks that represent a single CDR
- * stream. However, if the octet sequence is too small the zero copy
- * optimizations actually hurt performance. Octet sequences smaller
- * than this value will be copied.
- */
-#if !defined (ACE_DEFAULT_CDR_MEMCPY_TRADEOFF)
-#define ACE_DEFAULT_CDR_MEMCPY_TRADEOFF 256
-#endif /* ACE_DEFAULT_CDR_MEMCPY_TRADEOFF */
-
-#if defined (ACE_WIN32)
- // Define the pathname separator characters for Win32 (ugh).
-# define ACE_DIRECTORY_SEPARATOR_STR_A "\\"
-# define ACE_DIRECTORY_SEPARATOR_CHAR_A '\\'
-#else
- // Define the pathname separator characters for UNIX.
-# define ACE_DIRECTORY_SEPARATOR_STR_A "/"
-# define ACE_DIRECTORY_SEPARATOR_CHAR_A '/'
-#endif /* ACE_WIN32 */
-
-// Define the Wide character and normal versions of some of the string macros
-#if defined (ACE_HAS_WCHAR)
-# define ACE_DIRECTORY_SEPARATOR_STR_W ACE_TEXT_WIDE(ACE_DIRECTORY_SEPARATOR_STR_A)
-# define ACE_DIRECTORY_SEPARATOR_CHAR_W ACE_TEXT_WIDE(ACE_DIRECTORY_SEPARATOR_CHAR_A)
-#endif /* ACE_HAS_WCHAR */
-
-#define ACE_DIRECTORY_SEPARATOR_STR ACE_TEXT (ACE_DIRECTORY_SEPARATOR_STR_A)
-#define ACE_DIRECTORY_SEPARATOR_CHAR ACE_TEXT (ACE_DIRECTORY_SEPARATOR_CHAR_A)
-
-#if !defined (ACE_DEFAULT_THREAD_PRIORITY)
-# define ACE_DEFAULT_THREAD_PRIORITY (-0x7fffffffL - 1L)
-#endif /* ACE_DEFAULT_THREAD_PRIORITY */
-
-#if !defined (ACE_DEFAULT_THREAD_STACKSIZE)
-# define ACE_DEFAULT_THREAD_STACKSIZE 0
-#endif /* ACE_DEFAULT_THREAD_STACKSIZE */
-
-#if !defined (ACE_MAX_DEFAULT_PORT)
-# define ACE_MAX_DEFAULT_PORT 65535
-#endif /* ACE_MAX_DEFAULT_PORT */
-
-// Default number of ACE_Event_Handlers supported by
-// ACE_Timer_Heap.
-# if !defined (ACE_DEFAULT_TIMERS)
-# define ACE_DEFAULT_TIMERS _POSIX_TIMER_MAX
-# endif /* ACE_DEFAULT_TIMERS */
-
-#if defined (ACE_WIN32)
-# define ACE_PLATFORM_A "Win32"
-# define ACE_PLATFORM_EXE_SUFFIX_A ".exe"
-#elif defined (ACE_VXWORKS)
-# define ACE_PLATFORM_A "VxWorks"
-# if defined (__RTP__)
-# define ACE_PLATFORM_EXE_SUFFIX_A ".vxe"
-# else
-# define ACE_PLATFORM_EXE_SUFFIX_A ".out"
-# endif
-#else /* !ACE_WIN32 && !ACE_VXWORKS */
-# define ACE_PLATFORM_A "UNIX"
-# define ACE_PLATFORM_EXE_SUFFIX_A ""
-#endif /* ACE_WIN32 */
-
-// Define the Wide character and normal versions of some of the string macros
-#if defined (ACE_HAS_WCHAR)
-# define ACE_PLATFORM_W ACE_TEXT_WIDE(ACE_PLATFORM_A)
-# define ACE_PLATFORM_EXE_SUFFIX_W ACE_TEXT_WIDE(ACE_PLATFORM_EXE_SUFFIX_A)
-#endif /* ACE_HAS_WCHAR */
-
-#define ACE_PLATFORM ACE_TEXT (ACE_PLATFORM_A)
-#define ACE_PLATFORM_EXE_SUFFIX ACE_TEXT (ACE_PLATFORM_EXE_SUFFIX_A)
-
-#if defined (ACE_WIN32)
-# define ACE_LD_SEARCH_PATH ACE_TEXT ("PATH")
-# define ACE_LD_SEARCH_PATH_SEPARATOR_STR ACE_TEXT (";")
-# define ACE_DLL_SUFFIX ACE_TEXT (".dll")
-# if defined (__MINGW32__)
-# define ACE_DLL_PREFIX ACE_TEXT ("lib")
-# else /* __MINGW32__ */
-# define ACE_DLL_PREFIX ACE_TEXT ("")
-# endif /* __MINGW32__ */
-#else /* !ACE_WIN32 */
-# if !defined (ACE_LD_SEARCH_PATH)
-# define ACE_LD_SEARCH_PATH ACE_TEXT ("LD_LIBRARY_PATH")
-# endif /* ACE_LD_SEARCH_PATH */
-# if !defined (ACE_LD_SEARCH_PATH_SEPARATOR_STR)
-# define ACE_LD_SEARCH_PATH_SEPARATOR_STR ACE_TEXT (":")
-# endif /* ACE_LD_SEARCH_PATH_SEPARATOR_STR */
-#endif /* ACE_WIN32 */
-
-#if !defined (ACE_DLL_SUFFIX)
-# define ACE_DLL_SUFFIX ACE_TEXT (".so")
-#endif /* ACE_DLL_SUFFIX */
-
-#if !defined (ACE_DLL_PREFIX)
-# define ACE_DLL_PREFIX ACE_TEXT ("lib")
-#endif /* ACE_DLL_PREFIX */
-
-#if defined (ACE_WIN32)
-// Used for dynamic linking
-# if !defined (ACE_DEFAULT_SVC_CONF)
-# if (ACE_USES_CLASSIC_SVC_CONF == 1)
-# define ACE_DEFAULT_SVC_CONF ACE_TEXT (".\\svc.conf")
-# else
-# define ACE_DEFAULT_SVC_CONF ACE_TEXT (".\\svc.conf.xml")
-# endif /* ACE_USES_CLASSIC_SVC_CONF ==1 */
-# endif /* ACE_DEFAULT_SVC_CONF */
-#endif /* ACE_WIN32 */
-
- // Used for dynamic linking.
-#if !defined (ACE_DEFAULT_SVC_CONF)
-# if (ACE_USES_CLASSIC_SVC_CONF == 1)
-# define ACE_DEFAULT_SVC_CONF ACE_TEXT ("./svc.conf")
-# else
-# define ACE_DEFAULT_SVC_CONF ACE_TEXT ("./svc.conf.xml")
-# endif /* ACE_USES_CLASSIC_SVC_CONF ==1 */
-#endif /* ACE_DEFAULT_SVC_CONF */
-
-#if !defined (ACE_LOGGER_KEY)
-# define ACE_LOGGER_KEY ACE_TEXT ("/tmp/server_daemon")
-#endif /* ACE_LOGGER_KEY */
-
-// Theses defines are used by the ACE Name Server.
-#if !defined (ACE_DEFAULT_LOCALNAME_A)
-# define ACE_DEFAULT_LOCALNAME_A "localnames"
-#endif /* ACE_DEFAULT_LOCALNAME_A */
-#if !defined (ACE_DEFAULT_GLOBALNAME_A)
-# define ACE_DEFAULT_GLOBALNAME_A "globalnames"
-#endif /* ACE_DEFAULT_GLOBALNAME_A */
-
-// ACE_DEFAULT_NAMESPACE_DIR is for legacy mode apps. A better
-// way of doing this is something like ACE_Lib_Find::get_temp_dir, since
-// this directory may not exist
-#if defined (ACE_LEGACY_MODE)
-# if defined (ACE_WIN32)
-# define ACE_DEFAULT_NAMESPACE_DIR_A "C:\\temp"
-# else /* ACE_WIN32 */
-# define ACE_DEFAULT_NAMESPACE_DIR_A "/tmp"
-# endif /* ACE_WIN32 */
-# if defined (ACE_HAS_WCHAR)
-# define ACE_DEFAULT_NAMESPACE_DIR_W ACE_TEXT_WIDE(ACE_DEFAULT_NAMESPACE_DIR_A)
-# endif /* ACE_HAS_WCHAR */
-# define ACE_DEFAULT_NAMESPACE_DIR ACE_TEXT(ACE_DEFAULT_NAMESPACE_DIR_A)
-#endif /* ACE_LEGACY_MODE */
-
-#if defined (ACE_HAS_WCHAR)
-# define ACE_DEFAULT_LOCALNAME_W ACE_TEXT_WIDE(ACE_DEFAULT_LOCALNAME_A)
-# define ACE_DEFAULT_GLOBALNAME_W ACE_TEXT_WIDE(ACE_DEFAULT_GLOBALNAME_A)
-#endif /* ACE_HAS_WCHAR */
-
-#define ACE_DEFAULT_LOCALNAME ACE_TEXT (ACE_DEFAULT_LOCALNAME_A)
-#define ACE_DEFAULT_GLOBALNAME ACE_TEXT (ACE_DEFAULT_GLOBALNAME_A)
-
-# if defined (ACE_WIN32)
- // The "null" device on Win32.
-# define ACE_DEV_NULL "nul"
-# define ACE_SYSCALL_FAILED 0xFFFFFFFF
-# else /* !ACE_WIN32 */
- // The "null" device on UNIX.
-# define ACE_DEV_NULL "/dev/null"
-# define ACE_SYSCALL_FAILED -1
-# endif /* ACE_WIN32 */
-
-#include /**/ "ace/post.h"
-#endif /*ACE_DEFAULT_CONSTANTS_H*/
-
diff --git a/dep/include/ace/Dev_Poll_Reactor.h b/dep/include/ace/Dev_Poll_Reactor.h
deleted file mode 100644
index 6118d8e0a38..00000000000
--- a/dep/include/ace/Dev_Poll_Reactor.h
+++ /dev/null
@@ -1,1250 +0,0 @@
-// -*- C++ -*-
-
-// =========================================================================
-/**
- * @file Dev_Poll_Reactor.h
- *
- * $Id: Dev_Poll_Reactor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @c /dev/poll (or Linux @c sys_epoll) based Reactor implementation.
- *
- * @author Ossama Othman <ossama@dre.vanderbilt.edu>
- */
-// =========================================================================
-
-#ifndef ACE_DEV_POLL_REACTOR_H
-#define ACE_DEV_POLL_REACTOR_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_EVENT_POLL) && defined (ACE_HAS_DEV_POLL)
-# error ACE_HAS_EVENT_POLL and ACE_HAS_DEV_POLL are mutually exclusive.
-#endif /* ACE_HAS_EVENT_POLL && defined ACE_HAS_DEV_POLL */
-
-#if defined (ACE_HAS_EVENT_POLL) || defined (ACE_HAS_DEV_POLL)
-
-#include "ace/Pipe.h"
-#include "ace/Lock_Adapter_T.h"
-#include "ace/Reactor_Impl.h"
-#include "ace/Reactor_Token_T.h"
-#include "ace/Token.h"
-
-#if defined (ACE_HAS_REACTOR_NOTIFICATION_QUEUE)
-# include "ace/Notification_Queue.h"
-#endif /* ACE_HAS_REACTOR_NOTIFICATION_QUEUE */
-
-#if defined (ACE_HAS_DEV_POLL)
-struct pollfd;
-#elif defined (ACE_HAS_EVENT_POLL)
-struct epoll_event;
-#endif
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declarations
-class ACE_Sig_Handler;
-class ACE_Dev_Poll_Reactor;
-
-/**
- * @class ACE_Dev_Poll_Event_Tuple
- *
- * @brief Class that associates specific event mask with a given event
- * handler.
- *
- * This class merely provides a means to associate an event mask
- * with an event handler. Such an association is needed since it is
- * not possible to retrieve the event mask from the "interest set"
- * stored in the `/dev/poll' or `/dev/epoll' driver. Without this
- * external association, it would not be possible keep track of the
- * event mask for a given event handler when suspending it or resuming
- * it.
- *
- * @note An ACE_Handle_Set is not used since the number of handles may
- * exceed its capacity (ACE_DEFAULT_SELECT_REACTOR_SIZE).
- */
-class ACE_Dev_Poll_Event_Tuple
-{
-public:
-
- /// Constructor.
- ACE_Dev_Poll_Event_Tuple (void);
-
-public:
-
- /// The event handler.
- ACE_Event_Handler *event_handler;
-
- /// The event mask for the above event handler.
- ACE_Reactor_Mask mask;
-
- /// Flag that states whether or not the event handler is suspended.
- char suspended;
-};
-
-// ---------------------------------------------------------------------
-
-#if 0
-/**
- * @class ACE_Dev_Poll_Ready_Set
- *
- * @brief Class that contains the list of "ready" file descriptors.
- *
- * This class points to an array of pollfd structures corresponding to
- * "ready" file descriptors, such as those corresponding to event
- * handlers that request an additional callback after being initially
- * dispatched (i.e. return a value greater than zero).
- * @par
- * The idea is to store the "ready" set in an existing area of memory
- * that already contains pollfd instances. Doing so is safe since the
- * "ready" set is dispatched before polling for additional events,
- * thus avoiding being potentially overwritten during the event poll.
- * @par
- * When the "ready" set is dispatched, all that needs to be done is to
- * iterate over the contents of the array. There is no need to "walk"
- * the array in search of ready file descriptors since the array by
- * design only contains ready file descriptors. As such, this
- * implementation of a ready set is much more efficient in the
- * presence of a large number of file descriptors in terms of both
- * time and space than the one used in the Select_Reactor, for
- * example.
- */
-class ACE_Dev_Poll_Ready_Set
-{
-public:
-
- /// Constructor.
- ACE_Dev_Poll_Ready_Set (void);
-
-public:
-
- /// The array containing the pollfd structures corresponding to the
- /// "ready" file descriptors.
- struct pollfd *pfds;
-
- /// The number of "ready" file descriptors in the above array.
- int nfds;
-
-};
-#endif /* 0 */
-
-// ---------------------------------------------------------------------
-
-/**
- * @class ACE_Dev_Poll_Reactor_Notify
- *
- * @brief Event handler used for unblocking the ACE_Dev_Poll_Reactor
- * from its event loop.
- *
- * This event handler is used internally by the ACE_Dev_Poll_Reactor
- * as a means to allow a thread other then the one running the event
- * loop to unblock the event loop.
- */
-class ACE_Dev_Poll_Reactor_Notify : public ACE_Reactor_Notify
-{
-public:
-
- /// Constructor
- ACE_Dev_Poll_Reactor_Notify (void);
-
- /**
- * @name Initialization and Termination Methods
- *
- * Methods called when initializing and terminating this event
- * handler.
- */
- virtual int open (ACE_Reactor_Impl *,
- ACE_Timer_Queue *timer_queue = 0,
- int disable_notify = 0);
- virtual int close (void);
-
- /**
- * Called by a thread when it wants to unblock the Reactor_Impl.
- * This wakes up the Reactor_Impl if currently blocked. Pass over
- * both the Event_Handler and the mask to allow the caller to
- * dictate which Event_Handler method the Reactor_Impl will
- * invoke. The ACE_Time_Value indicates how long to block
- * trying to notify the Reactor_Impl. If timeout == 0, the
- * caller will block until action is possible, else will wait until
- * the relative time specified in *timeout elapses).
- */
- virtual int notify (ACE_Event_Handler *eh = 0,
- ACE_Reactor_Mask mask = ACE_Event_Handler::EXCEPT_MASK,
- ACE_Time_Value *timeout = 0);
-
- /// Unimplemented method required by pure virtual method in abstract
- /// base class.
- /**
- * This method's interface is not very compatibile with this
- * Reactor's design. It's not clear why this method is pure virtual
- * either.
- */
- virtual int dispatch_notifications (int &number_of_active_handles,
- ACE_Handle_Set &rd_mask);
-
- /// Returns the ACE_HANDLE of the notify pipe on which the reactor
- /// is listening for notifications so that other threads can unblock
- /// the Reactor_Impl.
- virtual ACE_HANDLE notify_handle (void);
-
- /// Verify whether the buffer has dispatchable info or not.
- virtual int is_dispatchable (ACE_Notification_Buffer &buffer);
-
- /// Handle one notify call represented in @a buffer. This could be
- /// because of a thread trying to unblock the Reactor_Impl.
- virtual int dispatch_notify (ACE_Notification_Buffer &buffer);
-
- /// Read one notify call on the handle into @a buffer.
- /// This could be because of a thread trying to unblock the Reactor_Impl.
- virtual int read_notify_pipe (ACE_HANDLE handle,
- ACE_Notification_Buffer &buffer);
-
- /// Called back by the ACE_Dev_Poll_Reactor when a thread wants to
- /// unblock us.
- virtual int handle_input (ACE_HANDLE handle);
-
- /**
- * Set the maximum number of times that the handle_input method
- * will iterate and dispatch the ACE_Event_Handlers that are
- * passed in via the notify queue before breaking out of the event
- * loop. By default, this is set to -1, which means "iterate until
- * the queue is empty." Setting this to a value like "1 or 2" will
- * increase "fairness" (and thus prevent starvation) at the expense
- * of slightly higher dispatching overhead.
- */
- virtual void max_notify_iterations (int);
-
- /**
- * Get the maximum number of times that the handle_input method
- * will iterate and dispatch the ACE_Event_Handlers that are
- * passed in via the notify queue before breaking out of its event
- * loop.
- */
- virtual int max_notify_iterations (void);
-
- /**
- * Purge any notifications pending in this reactor for the specified
- * ACE_Event_Handler object. Returns the number of notifications
- * purged. Returns -1 on error.
- */
- virtual int purge_pending_notifications (
- ACE_Event_Handler * = 0,
- ACE_Reactor_Mask = ACE_Event_Handler::ALL_EVENTS_MASK);
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
-protected:
-
- /**
- * Keep a back pointer to the ACE_Dev_Poll_Reactor. If this value
- * if NULL then the ACE_Dev_Poll_Reactor has been initialized with
- * disable_notify_pipe.
- */
- ACE_Dev_Poll_Reactor *dp_reactor_;
-
- /**
- * Contains the ACE_HANDLE the ACE_Dev_Poll_Reactor is listening
- * on, as well as the ACE_HANDLE that threads wanting the attention
- * of the ACE_Dev_Poll_Reactor will write to.
- */
- ACE_Pipe notification_pipe_;
-
- /**
- * Keeps track of the maximum number of times that the
- * ACE_Dev_Poll_Reactor_Notify::handle_input method will iterate and
- * dispatch the ACE_Event_Handlers that are passed in via the
- * notify pipe before breaking out of its recv loop. By default,
- * this is set to -1, which means "iterate until the pipe is empty."
- */
- int max_notify_iterations_;
-
-#if defined (ACE_HAS_REACTOR_NOTIFICATION_QUEUE)
- /**
- * @brief A user-space queue to store the notifications.
- *
- * The notification pipe has OS-specific size restrictions. That
- * is, no more than a certain number of bytes may be stored in the
- * pipe without blocking. This limit may be too small for certain
- * applications. In this case, ACE can be configured to store all
- * the events in user-space. The pipe is still needed to wake up
- * the reactor thread, but only one event is sent through the pipe
- * at a time.
- */
- ACE_Notification_Queue notification_queue_;
-#endif /* ACE_HAS_REACTOR_NOTIFICATION_QUEUE */
-
-};
-
-// ---------------------------------------------------------------------
-
-/**
- * @class ACE_Dev_Poll_Reactor_Handler_Repository
- *
- * @internal
-
- * @brief Used to map ACE_HANDLEs onto the appropriate
- * ACE_Event_Handler *.
- *
- *
- * This class is simply a container that maps a handle to its
- * corresponding event handler. It is not meant for use outside of
- * the Dev_Poll_Reactor.
- */
-class ACE_Dev_Poll_Reactor_Handler_Repository
-{
-public:
-
- /// Constructor.
- ACE_Dev_Poll_Reactor_Handler_Repository (void);
-
- /// Initialize a repository of the appropriate @a size.
- int open (size_t size);
-
- /// Close down the repository.
- int close (void);
-
- /**
- * @name Repository Manipulation Operations
- *
- * Methods used to search and modify the handler repository.
- */
- //@{
-
- /**
- * Return the @c ACE_Event_Handler associated with @c ACE_HANDLE. If
- * @a index_p is non-zero, then return the index location of the
- * handle, if found.
- */
- ACE_Event_Handler *find (ACE_HANDLE handle, size_t *index_p = 0);
-
- /// Set the event mask for event handler associated with the given
- /// handle.
- void mask (ACE_HANDLE handle, ACE_Reactor_Mask mask);
-
- /// Retrieve the event mask for the event handler associated with
- /// the given handle.
- ACE_Reactor_Mask mask (ACE_HANDLE handle);
-
- /// Mark the event handler associated with the given handle as
- /// "suspended."
- void suspend (ACE_HANDLE handle);
-
- /// Mark the event handler associated with the given handle as
- /// "resumed."
- void resume (ACE_HANDLE handle);
-
- /// Is the event handler for the given handle suspended?
- int suspended (ACE_HANDLE handle) const;
-
- /// Bind the ACE_Event_Handler to the @c ACE_HANDLE with the
- /// appropriate ACE_Reactor_Mask settings.
- int bind (ACE_HANDLE handle,
- ACE_Event_Handler *handler,
- ACE_Reactor_Mask mask);
-
- /// Remove the binding for @c ACE_HANDLE; optionally decrement the associated
- /// handler's reference count.
- int unbind (ACE_HANDLE handle, bool decr_refcnt = true);
-
- /// Remove all the (@c ACE_HANDLE, @c ACE_Event_Handler) tuples.
- int unbind_all (void);
-
- /**
- * @name Sanity Checking
- *
- * Methods used to prevent "out-of-range" errors when indexing the
- * underlying handler array.
- */
- //@{
-
- // Check the @a handle to make sure it's a valid @c ACE_HANDLE that
- // within the range of legal handles (i.e., greater than or equal to
- // zero and less than @c max_size_).
- int invalid_handle (ACE_HANDLE handle) const;
-
- // Check the handle to make sure it's a valid @c ACE_HANDLE that is
- // within the range of currently registered handles (i.e., greater
- // than or equal to zero and less than @c max_handlep1_).
- int handle_in_range (ACE_HANDLE handle) const;
-
- //@}
-
- /// Returns the current table size.
- size_t size (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-
- /// Maximum number of handles.
- int max_size_;
-
- /// The underlying array of event handlers.
- /**
- * The array of event handlers is directly indexed directly using
- * an @c ACE_HANDLE value. This is Unix-specific.
- */
- ACE_Dev_Poll_Event_Tuple *handlers_;
-
-};
-
-// ---------------------------------------------------------------------
-
-/**
- * @class ACE_Dev_Poll_Reactor
- *
- * @brief A `/dev/poll' or `/dev/epoll' based Reactor implemenatation.
- *
- * @attention The Linux epoll implementation works quite well and is
- * fully supported; however, the /dev/poll implementation is @em experimental.
- *
- * The ACE_Dev_Poll_Reactor uses the `/dev/poll' or '/dev/epoll'
- * character devices to demultiplex events on a given set of file
- * descriptors. Unlike @c select(), `/dev/poll' and `/dev/epoll' have
- * no hard-coded limit on the number of file descriptors that may be
- * handled at any given time. As such, the ACE_Dev_Poll_Reactor can
- * generally handle a much larger number of file descriptors than
- * @c select() -based reactors. Furthermore, since `/dev/poll' and
- * `/dev/epoll' both return a set of file descriptors that are active,
- * there is no need to "walk" the set of file descriptors to determine
- * which ones are active, such as what is done with the @c select() and
- * @c poll() system calls. All returned file descriptors are active.
- * This makes event dispatching very efficient.
- *
- * @note In general, this reactor may only be used to demultiplex
- * events on sockets. Demultiplexing events on pipes, for
- * example may not work. This is due to a limitation in the
- * underlying `/dev/poll' device driver.
- *
- * @note It is only possible to achieve millisecond timeout
- * resolutions with the @c ACE_Dev_Poll_Reactor. However, the
- * timeout resolution for timers is independent of the reactors
- * timeout resolution. As such, it may be possible to achieve
- * sub-millisecond timeout resolutions for timers but that is
- * entirely platform dependent.
- */
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
-typedef ACE_Token ACE_DEV_POLL_TOKEN;
-#else
-typedef ACE_Noop_Token ACE_DEV_POLL_TOKEN;
-#endif /* ACE_MT_SAFE && ACE_MT_SAFE != 0 */
-typedef ACE_Reactor_Token_T<ACE_DEV_POLL_TOKEN> ACE_Dev_Poll_Reactor_Token;
-
-class ACE_Export ACE_Dev_Poll_Reactor : public ACE_Reactor_Impl
-{
-public:
-
- /// Initialize @c ACE_Dev_Poll_Reactor with the default size.
- /**
- * The default size for the @c ACE_Dev_Poll_Reactor is the maximum
- * number of open file descriptors for the process.
- */
- ACE_Dev_Poll_Reactor (ACE_Sig_Handler * = 0,
- ACE_Timer_Queue * = 0,
- int disable_notify_pipe = 0,
- ACE_Reactor_Notify *notify = 0,
- int mask_signals = 1,
- int s_queue = ACE_DEV_POLL_TOKEN::FIFO);
-
- /// Initialize ACE_Dev_Poll_Reactor with size @a size.
- /**
- * @note On Unix platforms, the @a size parameter should be as large
- * as the maximum number of file descriptors allowed for a
- * given process. This is necessary since a file descriptor
- * is used to directly index the array of event handlers
- * maintained by the Reactor's handler repository. Direct
- * indexing is used for efficiency reasons. If the size
- * parameter is less than the process maximum, the process
- * maximum will be decreased in order to prevent potential
- * access violations.
- */
- ACE_Dev_Poll_Reactor (size_t size,
- int restart = 0,
- ACE_Sig_Handler * = 0,
- ACE_Timer_Queue * = 0,
- int disable_notify_pipe = 0,
- ACE_Reactor_Notify *notify = 0,
- int mask_signals = 1,
- int s_queue = ACE_DEV_POLL_TOKEN::FIFO);
-
- /// Close down and release all resources.
- virtual ~ACE_Dev_Poll_Reactor (void);
-
- /// Initialization.
- virtual int open (size_t size,
- int restart = 0,
- ACE_Sig_Handler * = 0,
- ACE_Timer_Queue * = 0,
- int disable_notify_pipe = 0,
- ACE_Reactor_Notify * = 0);
-
- /**
- * @param handle allows the reactor to check if the caller is
- * valid.
- *
- * @return 0 if the size of the current message has been put in
- * size. -1 if not.
- */
- virtual int current_info (ACE_HANDLE handle, size_t & /* size */);
-
- /// Use a user specified signal handler instead.
- virtual int set_sig_handler (ACE_Sig_Handler *signal_handler);
-
- /// Set a user-specified timer queue.
- virtual int timer_queue (ACE_Timer_Queue *tq);
-
- /// Get the timer queue
- /// @return The current @c ACE_Timer_Queue.
- virtual ACE_Timer_Queue *timer_queue (void) const;
-
- /// Close down and release all resources.
- virtual int close (void);
-
- // = Event loop drivers.
- /**
- * Returns non-zero if there are I/O events "ready" for dispatching,
- * but does not actually dispatch the event handlers. By default,
- * don't block while checking this, i.e., "poll".
- *
- * @note It is only possible to achieve millisecond timeout
- * resolutions with the @c ACE_Dev_Poll_Reactor.
- */
- virtual int work_pending (
- const ACE_Time_Value &max_wait_time = ACE_Time_Value::zero);
-
- /**
- * This event loop driver blocks for up to @a max_wait_time before
- * returning. It will return earlier if events occur. Note that
- * @a max_wait_time can be 0, in which case this method blocks
- * indefinitely until events occur.
- * @par
- * @a max_wait_time is decremented to reflect how much time this
- * call took. For instance, if a time value of 3 seconds is passed
- * to @c handle_events() and an event occurs after 2 seconds,
- * @a max_wait_time will equal 1 second. This can be used if an
- * application wishes to handle events for some fixed amount of
- * time.
- * @par
- * The only difference between @c alertable_handle_events() and
- * handle_events() is that in the alertable case, the event loop
- * will return when the system queues an I/O completion routine or
- * an Asynchronous Procedure Call.
- *
- * @return The total number of @c ACE_Event_Handlers that were
- * dispatched, 0 if the @a max_wait_time elapsed without
- * dispatching any handlers, or -1 if an error occurs.
-
- * @note It is only possible to achieve millisecond timeout
- * resolutions with the @c ACE_Dev_Poll_Reactor.
- */
- virtual int handle_events (ACE_Time_Value *max_wait_time = 0);
- virtual int alertable_handle_events (ACE_Time_Value *max_wait_time = 0);
-
- /**
- * This method is just like the one above, except the
- * @a max_wait_time value is a reference and can therefore never be
- * @c NULL.
- *
- * @note It is only possible to achieve millisecond timeout
- * resolutions with the @c ACE_Dev_Poll_Reactor.
- */
- virtual int handle_events (ACE_Time_Value &max_wait_time);
- virtual int alertable_handle_events (ACE_Time_Value &max_wait_time);
-
- // = Event handling control.
-
- /**
- * @return The status of Reactor. If this function returns 0, the
- * reactor is actively handling events. If it returns
- * non-zero, @c handle_events() and
- * @c handle_alertable_events() return -1 immediately.
- */
- virtual int deactivated (void);
-
- /**
- * Control whether the Reactor will handle any more incoming events
- * or not. If @a do_stop == 1, the Reactor will be disabled. By
- * default, a reactor is in active state and can be
- * deactivated/reactived as desired.
- */
- virtual void deactivate (int do_stop);
-
- // = Register and remove Handlers.
-
- /// Register @a event_handler with @a mask. The I/O handle will
- /// always come from get_handle on the event_handler.
- virtual int register_handler (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask);
-
- /// Register @a event_handler with @a mask. The I/O handle is
- /// provided through the @a io_handle parameter.
- virtual int register_handler (ACE_HANDLE io_handle,
- ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask);
-
- /**
- * Register an @a event_handler that will be notified when
- * @a event_handle is signaled. @a mask specifies the network
- * events that the @a event_handler is interested in.
- */
- virtual int register_handler (ACE_HANDLE event_handle,
- ACE_HANDLE io_handle,
- ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask);
-
- /// Register @a event_handler> with all the @a handles> in the @c
- /// Handle_Set.
- virtual int register_handler (const ACE_Handle_Set &handles,
- ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask);
-
- /**
- * Register @a new_sh to handle the signal @a signum using the
- * @a new_disp. Returns the @a old_sh that was previously
- * registered (if any), along with the @a old_disp of the signal
- * handler.
- */
- virtual int register_handler (int signum,
- ACE_Event_Handler *new_sh,
- ACE_Sig_Action *new_disp = 0,
- ACE_Event_Handler **old_sh = 0,
- ACE_Sig_Action *old_disp = 0);
-
- /// Registers <new_sh> to handle a set of signals <sigset> using the
- /// <new_disp>.
- virtual int register_handler (const ACE_Sig_Set &sigset,
- ACE_Event_Handler *new_sh,
- ACE_Sig_Action *new_disp = 0);
-
- /// Removes @a event_handler.
- /**
- * @note The I/O handle will be obtained using @c get_handle()
- * method of @a event_handler . If @a mask ==
- * @c ACE_Event_Handler::DONT_CALL then the @c handle_close()
- * method of the @a event_handler is not invoked.
- */
- virtual int remove_handler (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask);
-
- /**
- * Removes @a handle. If @a mask == ACE_Event_Handler::DONT_CALL
- * then the <handle_close> method of the associated <event_handler>
- * is not invoked.
- */
- virtual int remove_handler (ACE_HANDLE handle,
- ACE_Reactor_Mask mask);
-
- /**
- * Removes all handles in <handle_set>. If @a mask ==
- * ACE_Event_Handler::DONT_CALL then the <handle_close> method of
- * the associated <event_handler>s is not invoked.
- */
- virtual int remove_handler (const ACE_Handle_Set &handle_set,
- ACE_Reactor_Mask mask);
-
- /**
- * Remove the ACE_Event_Handler currently associated with @a signum.
- * Install the new disposition (if given) and return the previous
- * disposition (if desired by the caller). Returns 0 on success and
- * -1 if @a signum is invalid.
- */
- virtual int remove_handler (int signum,
- ACE_Sig_Action *new_disp,
- ACE_Sig_Action *old_disp = 0,
- int sigkey = -1);
-
- /// Calls <remove_handler> for every signal in <sigset>.
- virtual int remove_handler (const ACE_Sig_Set &sigset);
-
- // = Suspend and resume Handlers.
-
- /// Suspend event_handler temporarily. Use
- /// ACE_Event_Handler::get_handle() to get the handle.
- virtual int suspend_handler (ACE_Event_Handler *event_handler);
-
- /// Suspend handle temporarily.
- virtual int suspend_handler (ACE_HANDLE handle);
-
- /// Suspend all handles in handle set temporarily.
- virtual int suspend_handler (const ACE_Handle_Set &handles);
-
- /// Suspend all handles temporarily.
- virtual int suspend_handlers (void);
-
- /// Resume event_handler. Use ACE_Event_Handler::get_handle() to
- /// get the handle.
- virtual int resume_handler (ACE_Event_Handler *event_handler);
-
- /// Resume handle.
- virtual int resume_handler (ACE_HANDLE handle);
-
- /// Resume all handles in handle set.
- virtual int resume_handler (const ACE_Handle_Set &handles);
-
- /// Resume all handles.
- virtual int resume_handlers (void);
-
- /// Does the reactor allow the application to resume the handle on
- /// its own, i.e., can it pass on the control of handle resumption to
- /// the application.
- virtual int resumable_handler (void);
-
- /// Return 1 if we any event associations were made by the reactor
- /// for the handles that it waits on, 0 otherwise.
- virtual int uses_event_associations (void);
-
- // = Timer management.
-
- /**
- * Schedule an ACE_Event_Handler that will expire after an amount
- * of time. The return value of this method, a timer_id value,
- * uniquely identifies the event_handler in the ACE_Reactor's
- * internal list of timers.
- * This timer_id value can be used to cancel the timer
- * with the cancel_timer() call.
- *
- * @see cancel_timer()
- * @see reset_timer_interval()
- *
- * @param event_handler event handler to schedule on reactor
- * @param arg argument passed to the handle_timeout() method of
- * event_handler.
- * @param delay time interval after which the timer will expire.
- * @param interval time interval for which the timer will be
- * automatically rescheduled.
- * @return -1 on failure, a timer_id value on success
- */
- virtual long schedule_timer (ACE_Event_Handler *event_handler,
- const void *arg,
- const ACE_Time_Value &delay,
- const ACE_Time_Value &interval = ACE_Time_Value::zero);
-
- /**
- * Resets the interval of the timer represented by @a timer_id to
- * @a interval, which is specified in relative time to the current
- * <gettimeofday>. If @a interval is equal to
- * ACE_Time_Value::zero, the timer will become a non-rescheduling
- * timer. Returns 0 if successful, -1 if not.
- */
- virtual int reset_timer_interval (long timer_id,
- const ACE_Time_Value &interval);
-
- /// Cancel all Event_Handlers that match the address of
- /// @a event_handler. Returns number of handlers cancelled.
- virtual int cancel_timer (ACE_Event_Handler *event_handler,
- int dont_call_handle_close = 1);
-
- /**
- * Cancel the single event handler that matches the @a timer_id value
- * (which was returned from the schedule method). If @a arg is
- * non-NULL then it will be set to point to the ``magic cookie''
- * argument passed in when the event handler was registered. This
- * makes it possible to free up the memory and avoid memory leaks.
- * Returns 1 if cancellation succeeded and 0 if the @a timer_id
- * wasn't found.
- */
- virtual int cancel_timer (long timer_id,
- const void **arg = 0,
- int dont_call_handle_close = 1);
-
- // = High-level event handler scheduling operations
-
- /// Add @a masks_to_be_added to the @a event_handler's entry.
- /// @a event_handler must already have been registered.
- virtual int schedule_wakeup (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask masks_to_be_added);
-
- /// Add @a masks_to_be_added to the @a handle's entry. <event_handler>
- /// associated with @a handle must already have been registered.
- virtual int schedule_wakeup (ACE_HANDLE handle,
- ACE_Reactor_Mask masks_to_be_added);
-
- /// Clear @a masks_to_be_cleared from the @a event_handler's entry.
- virtual int cancel_wakeup (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask masks_to_be_cleared);
-
- /// Clear @a masks_to_be_cleared from the @a handle's entry.
- virtual int cancel_wakeup (ACE_HANDLE handle,
- ACE_Reactor_Mask masks_to_be_cleared);
-
- // = Notification methods.
-
- /**
- * Notify @a event_handler of @a mask event. The ACE_Time_Value
- * indicates how long to blocking trying to notify. If @a timeout ==
- * 0, the caller will block until action is possible, else will wait
- * until the relative time specified in @a timeout elapses).
- */
- virtual int notify (ACE_Event_Handler *event_handler = 0,
- ACE_Reactor_Mask mask = ACE_Event_Handler::EXCEPT_MASK,
- ACE_Time_Value * = 0);
-
- /**
- * Set the maximum number of times that ACE_Reactor_Impl will
- * iterate and dispatch the <ACE_Event_Handlers> that are passed in
- * via the notify queue before breaking out of its
- * <ACE_Message_Queue::dequeue> loop. By default, this is set to
- * -1, which means "iterate until the queue is empty." Setting this
- * to a value like "1 or 2" will increase "fairness" (and thus
- * prevent starvation) at the expense of slightly higher dispatching
- * overhead.
- */
- virtual void max_notify_iterations (int);
-
- /**
- * Get the maximum number of times that the ACE_Reactor_Impl will
- * iterate and dispatch the <ACE_Event_Handlers> that are passed in
- * via the notify queue before breaking out of its
- * <ACE_Message_Queue::dequeue> loop.
- */
- virtual int max_notify_iterations (void);
-
- /**
- * Purge any notifications pending in this reactor for the specified
- * ACE_Event_Handler object. Returns the number of notifications
- * purged. Returns -1 on error.
- */
- virtual int purge_pending_notifications (ACE_Event_Handler * = 0,
- ACE_Reactor_Mask = ACE_Event_Handler::ALL_EVENTS_MASK);
-
- /**
- * Return the Event_Handler associated with @a handle. Return 0 if
- * @a handle is not registered.
- */
- virtual ACE_Event_Handler *find_handler (ACE_HANDLE handle);
-
- /**
- * Check to see if @a handle is associated with a valid Event_Handler
- * bound to @a mask. Return the @a event_handler associated with this
- * @c handler if @a event_handler != 0.
- */
- virtual int handler (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- ACE_Event_Handler **event_handler = 0);
-
- /**
- * Check to see if @a signum is associated with a valid Event_Handler
- * bound to a signal. Return the @a event_handler associated with
- * this @c handler if @a event_handler != 0.
- */
- virtual int handler (int signum,
- ACE_Event_Handler ** = 0);
-
- /// Returns true if Reactor has been successfully initialized, else
- /// false.
- virtual bool initialized (void);
-
- /// Returns the current size of the Reactor's internal descriptor
- /// table.
- virtual size_t size (void) const;
-
- /// Returns a reference to the Reactor's internal lock.
- virtual ACE_Lock &lock (void);
-
- /// Wake up all threads waiting in the event loop.
- virtual void wakeup_all_threads (void);
-
- /// Transfers ownership of Reactor_Impl to the new_owner.
- /**
- * @note There is no need to set the owner of the event loop for the
- * ACE_Dev_Poll_Reactor. Multiple threads may invoke the
- * event loop simulataneously. As such, this method is a
- * no-op.
- */
- virtual int owner (ACE_thread_t new_owner, ACE_thread_t *old_owner = 0);
-
- /// Return the ID of the "owner" thread.
- /**
- * @note There is no need to set the owner of the event loop for the
- * ACE_Dev_Poll_Reactor. Multiple threads may invoke the
- * event loop simulataneously. As such, this method is a
- * no-op.
- */
- virtual int owner (ACE_thread_t *owner);
-
- /// Get the existing restart value.
- virtual int restart (void);
-
- /// Set a new value for restart and return the original value.
- /**
- * @param r If zero, then the event loop will not be automatically
- * restarted if the underlying poll is interrupted via the
- * INTR (interrupt) signal.
- *
- * @return Returns the previous "restart" value.
- */
- virtual int restart (int r);
-
- /// Set position of the owner thread.
- /**
- * @note This is currently a no-op.
- */
- virtual void requeue_position (int);
-
- /// Get position of the owner thread.
- /**
- * @note This is currently a no-op.
- */
- virtual int requeue_position (void);
-
- /**
- * @name Low-level wait_set mask manipulation methods
- *
- * Low-level methods to manipulate the event/reactor mask associated
- * with a handle and event handler when polling for events.
- * @par
- * The "interest set," i.e. the wait set, can be directly
- * manipulated with these methods.
- */
- //@{
-
- /// GET/SET/ADD/CLR the dispatch mask "bit" bound with the
- /// event_handler and mask.
- /**
- * @return Old mask on success, -1 on error.
- */
- virtual int mask_ops (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask,
- int ops);
-
- /// GET/SET/ADD/CLR the dispatch MASK "bit" bound with the handle
- /// and mask.
- /**
- * @return Old mask on success, -1 on error.
- */
- virtual int mask_ops (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- int ops);
-
- //@}
-
- /**
- * @name Low-level ready_set mask manipulation methods
- *
- * These methods are unimplemented.
- */
- //@{
-
- /// GET/SET/ADD/CLR the ready "bit" bound with the event_handler
- /// and mask.
- virtual int ready_ops (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask,
- int ops);
-
- /// GET/SET/ADD/CLR the ready "bit" bound with the handle and mask.
- virtual int ready_ops (ACE_HANDLE handle,
- ACE_Reactor_Mask,
- int ops);
-
- //@}
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
-
- class Token_Guard;
-
- /// Non-locking version of wait_pending().
- /**
- * Returns non-zero if there are I/O events "ready" for dispatching,
- * but does not actually dispatch the event handlers. By default,
- * don't block while checking this, i.e., "poll".
- *
- * @note It is only possible to achieve millisecond timeout
- * resolutions with the ACE_Dev_Poll_Reactor.
- */
- int work_pending_i (ACE_Time_Value *max_wait_time);
-
- /// Poll for events and return the number of event handlers that
- /// were dispatched.
- /**
- * This is a helper method called by all handle_events() methods.
- */
- int handle_events_i (ACE_Time_Value *max_wait_time, Token_Guard &guard);
-
- /// Perform the upcall with the given event handler method.
- int upcall (ACE_Event_Handler *event_handler,
- int (ACE_Event_Handler::*callback)(ACE_HANDLE),
- ACE_HANDLE handle);
-
- /**
- * Dispatch ACE_Event_Handlers for time events, I/O events, and
- * signal events. Returns the total number of ACE_Event_Handlers
- * that were dispatched or -1 if something goes wrong.
- */
- int dispatch (Token_Guard &guard);
-
- /// Dispatch a single timer, if ready.
- /// Returns: 0 if no timers ready (token still held),
- /// 1 if a timer was expired (token released),
- /// -1 on error (token still held).
- int dispatch_timer_handler (Token_Guard &guard);
-
- /// Dispatch an IO event to the corresponding event handler. Returns
- /// Returns: 0 if no events ready (token still held),
- /// 1 if an event was expired (token released),
- /// -1 on error (token still held).
- int dispatch_io_event (Token_Guard &guard);
-
- /// Register the given event handler with the reactor.
- int register_handler_i (ACE_HANDLE handle,
- ACE_Event_Handler *eh,
- ACE_Reactor_Mask mask);
-
- /// Remove the event handler associated with the given handle and
- /// event mask from the "interest set."
- int remove_handler_i (ACE_HANDLE handle, ACE_Reactor_Mask mask);
-
- /// Temporarily remove the given handle from the "interest set."
- int suspend_handler_i (ACE_HANDLE handle);
-
- /// Place the given handle that was temporarily removed from the
- /// "interest set," i.e that was suspended, back in to the interest
- /// set. The given handle will once again be polled for events.
- int resume_handler_i (ACE_HANDLE handle);
-
- /// GET/SET/ADD/CLR the dispatch MASK "bit" bound with the handle
- /// and mask. This internal helper method acquires no lock.
- /**
- * @return Old mask on success, -1 on error.
- */
- int mask_ops_i (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- int ops);
-
- /// Convert a reactor mask to its corresponding poll() event mask.
- short reactor_mask_to_poll_event (ACE_Reactor_Mask mask);
-
-protected:
-
- /// Has the reactor been initialized.
- bool initialized_;
-
- /// The file descriptor associated with the open `/dev/poll' or
- /// `/dev/epoll' device.
- /**
- * All interactions with the `/dev/poll' or `/dev/epoll' device are
- * done through this file descriptor.
- */
- ACE_HANDLE poll_fd_;
-
- /// The maximum number of file descriptors over which demultiplexing
- /// will occur.
- size_t size_;
-
- /// Track HANDLES we are interested in for various events that must
- /// be dispatched *without* polling.
- /// ACE_Dev_Poll_Ready_Set ready_set_;
-
-#if defined (ACE_HAS_EVENT_POLL)
- /// Table of event structures to be filled by epoll_wait:
- struct epoll_event *events_;
-
- /// Pointer to the next epoll_event array element that contains the next
- /// event to be dispatched.
- struct epoll_event *start_pevents_;
-
- /// The last element in the event array plus one.
- /**
- * The loop that dispatches IO events stops when this->start_pevents_ ==
- * this->end_pevents_.
- */
- struct epoll_event *end_pevents_;
-
-#else
- /// The pollfd array that `/dev/poll' will feed its results to.
- struct pollfd *dp_fds_;
-
- /// Pointer to the next pollfd array element that contains the next
- /// event to be dispatched.
- struct pollfd *start_pfds_;
-
- /// The last element in the pollfd array plus one.
- /**
- * The loop that dispatches IO events stops when this->start_pfds ==
- * this->end_pfds_.
- */
- struct pollfd *end_pfds_;
-#endif /* ACE_HAS_EVENT_POLL */
-
- /// This flag is used to keep track of whether we are actively handling
- /// events or not.
- sig_atomic_t deactivated_;
-
- /// Lock used for synchronization of reactor state.
- ACE_Dev_Poll_Reactor_Token token_;
-
- /// Adapter used to return internal lock to outside world.
- ACE_Lock_Adapter<ACE_Dev_Poll_Reactor_Token> lock_adapter_;
-
- /// The repository that contains all registered event handlers.
- ACE_Dev_Poll_Reactor_Handler_Repository handler_rep_;
-
- /// Defined as a pointer to allow overriding by derived classes...
- ACE_Timer_Queue *timer_queue_;
-
- /// Keeps track of whether we should delete the timer queue (if we
- /// didn't create it, then we don't delete it).
- bool delete_timer_queue_;
-
- /// Handle signals without requiring global/static variables.
- ACE_Sig_Handler *signal_handler_;
-
- /// Keeps track of whether we should delete the signal handler (if we
- /// didn't create it, then we don't delete it).
- bool delete_signal_handler_;
-
- /// Callback object that unblocks the <ACE_Select_Reactor> if it's
- /// sleeping.
- ACE_Reactor_Notify *notify_handler_;
-
- /// Keeps track of whether we need to delete the notify handler (if
- /// we didn't create it, then we don't delete it).
- bool delete_notify_handler_;
-
- /// Flag that determines if signals are masked during event
- /// dispatching.
- /**
- * If 0 then the Reactor will not mask the signals during the event
- * dispatching. This is useful for applications that do not
- * register any signal handlers and want to reduce the overhead
- * introduce by the kernel level locks required to change the mask.
- */
- int mask_signals_;
-
- /// Restart the handle_events event loop method automatically when
- /// polling function in use (ioctl() in this case) is interrupted
- /// via an EINTR signal.
- int restart_;
-
-protected:
-
- /**
- * @class Token_Guard
- *
- * @brief A helper class that helps grabbing, releasing and waiting
- * on tokens for a thread that needs access to the reactor's token.
- */
- class ACE_Export Token_Guard
- {
- public:
-
- /// Constructor that will grab the token for us
- Token_Guard (ACE_Dev_Poll_Reactor_Token &token);
-
- /// Destructor. This will release the token if it hasn't been
- /// released till this point
- ~Token_Guard (void);
-
- /// Release the token ..
- void release_token (void);
-
- /// Returns whether the thread that created this object owns the
- /// token or not.
- int is_owner (void);
-
- /// A helper method that acquires the token 1) at a low priority, and
- /// 2) wait quietly for the token, not waking another thread. This
- /// is appropriate for cases where a thread wants to wait for and
- /// dispatch an event, not causing an existing waiter to relinquish the
- /// token, and also queueing up behind other threads waiting to modify
- /// event records.
- int acquire_quietly (ACE_Time_Value *max_wait = 0);
-
- /// A helper method that acquires the token at a high priority, and
- /// does wake the current token holder.
- int acquire (ACE_Time_Value *max_wait = 0);
-
- private:
-
- Token_Guard (void);
-
- private:
-
- /// The Reactor token.
- ACE_Dev_Poll_Reactor_Token &token_;
-
- /// Flag that indicate whether the thread that created this object
- /// owns the token or not. A value of 0 indicates that this class
- /// hasn't got the token (and hence the thread) and a value of 1
- /// vice-versa.
- int owner_;
-
- };
-
-};
-
-/**
- * @class ACE_Dev_Poll_Handler_Guard
- *
- * @brief Class used to make event handler reference count
- * manipulation exception-safe.
- *
- * This class makes the reference count manipulation that occurs
- * during an upcall exception-safe. Prior to dispatching the event
- * handler, the reference count is increased. Once the upcall for the
- * given event handler is complete, its reference count will be decreased.
- */
-class ACE_Dev_Poll_Handler_Guard
-{
-public:
-
- /// Constructor
- /**
- * The constructor checks to see if @a eh is a reference-counted handler and
- * remember that for later. If @a eh is reference counted, its reference
- * count is incremented unless @a do_incr is false.
- * @a do_incr should be false if the reference count was incremented
- * independently of this guard, for example, on a notify handler since
- * the reference count is incremented when the notify is queued.
- */
- ACE_Dev_Poll_Handler_Guard (ACE_Event_Handler *eh, bool do_incr = true);
-
- /// Destructor
- /**
- * The destructor decrements the reference count on the event
- * handler corresponding to the given handle.
- */
- ~ACE_Dev_Poll_Handler_Guard (void);
-
- /// Release the event handler from this guard; when the destructor is
- /// called, the handler's reference count will not be decremented.
- void release (void);
-
-private:
-
- /// The event handler being managed.
- ACE_Event_Handler *eh_;
-
- /// true if eh_ is a reference-counted handler.
- bool refcounted_;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-# include "ace/Dev_Poll_Reactor.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_EVENT_POLL || ACE_HAS_DEV_POLL */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_DEV_POLL_REACTOR_H */
-
diff --git a/dep/include/ace/Dev_Poll_Reactor.inl b/dep/include/ace/Dev_Poll_Reactor.inl
deleted file mode 100644
index 98761f63220..00000000000
--- a/dep/include/ace/Dev_Poll_Reactor.inl
+++ /dev/null
@@ -1,227 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Dev_Poll_Reactor.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Log_Msg.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Dev_Poll_Event_Tuple::ACE_Dev_Poll_Event_Tuple (void)
- : event_handler (0),
- mask (ACE_Event_Handler::NULL_MASK),
- suspended (0)
-{
-}
-
-// ---------------------------------------------------------------------
-
-#if 0
-ACE_INLINE
-ACE_Dev_Poll_Ready_Set::ACE_Dev_Poll_Ready_Set (void)
- : pfds (0),
- nfds (0)
-{
-}
-#endif /* 0 */
-
-// ---------------------------------------------------------------------
-
-ACE_INLINE void
-ACE_Dev_Poll_Reactor_Handler_Repository::mask (ACE_HANDLE handle,
- ACE_Reactor_Mask mask)
-{
- ACE_TRACE ("ACE_Dev_Poll_Reactor_Handler_Repository::mask");
-
- // Only bother to search for the handle if it's in range.
- if (this->handle_in_range (handle))
- this->handlers_[handle].mask = mask;
-}
-
-ACE_INLINE ACE_Reactor_Mask
-ACE_Dev_Poll_Reactor_Handler_Repository::mask (ACE_HANDLE handle)
-{
- ACE_TRACE ("ACE_Dev_Poll_Reactor_Handler_Repository::mask");
-
- ACE_Reactor_Mask mask = ACE_Event_Handler::NULL_MASK;
-
- // Only bother to search for the handle if it's in range.
- if (this->handle_in_range (handle))
- mask = this->handlers_[handle].mask;
-
- if (mask == ACE_Event_Handler::NULL_MASK)
- errno = ENOENT;
-
- return mask;
-}
-
-ACE_INLINE void
-ACE_Dev_Poll_Reactor_Handler_Repository::suspend (ACE_HANDLE handle)
-{
- ACE_TRACE ("ACE_Dev_Poll_Reactor_Handler_Repository::suspend");
-
- // Only bother to search for the handle if it's in range.
- if (this->handle_in_range (handle))
- this->handlers_[handle].suspended = 1;
-}
-
-ACE_INLINE void
-ACE_Dev_Poll_Reactor_Handler_Repository::resume (ACE_HANDLE handle)
-{
- ACE_TRACE ("ACE_Dev_Poll_Reactor_Handler_Repository::resume");
-
- // Only bother to search for the handle if it's in range.
- if (this->handle_in_range (handle))
- this->handlers_[handle].suspended = 0;
-}
-
-ACE_INLINE int
-ACE_Dev_Poll_Reactor_Handler_Repository::suspended (ACE_HANDLE handle) const
-{
- ACE_TRACE ("ACE_Dev_Poll_Reactor_Handler_Repository::suspended");
-
- if (this->handle_in_range (handle))
- return this->handlers_[handle].suspended;
-
- return -1;
-}
-
-ACE_INLINE size_t
-ACE_Dev_Poll_Reactor_Handler_Repository::size (void) const
-{
- ACE_TRACE ("ACE_Dev_Poll_Reactor_Handler_Repository::size");
-
- return this->max_size_;
-}
-
-// -----------------------------------------------------------------
-
-ACE_INLINE
-ACE_Dev_Poll_Handler_Guard::ACE_Dev_Poll_Handler_Guard
- (ACE_Event_Handler *eh,
- bool do_incr)
- : eh_ (eh),
- refcounted_ (false)
-{
- if (eh == 0)
- return;
-
- this->refcounted_ =
- eh->reference_counting_policy ().value () ==
- ACE_Event_Handler::Reference_Counting_Policy::ENABLED;
-
- if (do_incr && this->refcounted_)
- eh->add_reference ();
-
- /**
- * The below comments were here when I replaced the old refcount
- * scheme was replaced. They may still need addressing. -Steve Huston
- */
-
- /**
- * @todo Suspend the handler so that other threads will not cause
- * an event that is already in an upcall from being dispatched
- * again.
- *
- * @note The naive approach would be to simply call
- * suspend_handler_i() on the reactor. However, that would
- * cause a system call (write()) to occur. Obviously this
- * can potentially have an adverse affect on performance.
- * Ideally, the handler would only be marked as "suspended" in
- * the handler repository. If an event arrives for a
- * suspended handler that event can be "queued" in a
- * "handle readiness queue." "Queued" is quoted since a real
- * queue need not be used since duplicate events can be
- * coalesced, thus avoiding unbounded queue growth. Event
- * coalescing is already done by Linux's event poll driver
- * (/dev/epoll) so Solaris' poll driver (/dev/poll) is the
- * main concern here. The largest the queue can be is the
- * same size as the number of handlers stored in the handler
- * repository.
- */
-}
-
-ACE_INLINE
-ACE_Dev_Poll_Handler_Guard::~ACE_Dev_Poll_Handler_Guard (void)
-{
- if (this->refcounted_ && this->eh_ != 0)
- this->eh_->remove_reference ();
-
- /**
- * The below comments were here when I replaced the old refcount
- * scheme was replaced. They may still need addressing. -Steve Huston
- */
- /**
- * @todo Resume the handler so that other threads will be allowed to
- * dispatch the handler.
- */
-}
-
-ACE_INLINE void
-ACE_Dev_Poll_Handler_Guard::release (void)
-{
- this->eh_ = 0;
-}
-
-// ---------------------------------------------------------------------
-
-ACE_INLINE int
-ACE_Dev_Poll_Reactor::upcall (ACE_Event_Handler *event_handler,
- int (ACE_Event_Handler::*callback)(ACE_HANDLE),
- ACE_HANDLE handle)
-{
- // If the handler returns positive value (requesting a reactor
- // callback) just call back as many times as the handler requests
- // it. Other threads are off handling other things.
- int status = 0;
-
- do
- {
- status = (event_handler->*callback) (handle);
- }
- while (status > 0);
-
- return status;
-}
-
-/************************************************************************/
-// Methods for ACE_Dev_Poll_Reactor::Token_Guard
-/************************************************************************/
-
-ACE_INLINE
-ACE_Dev_Poll_Reactor::Token_Guard::Token_Guard (ACE_Dev_Poll_Reactor_Token &token)
-
- : token_ (token),
- owner_ (0)
-{
-}
-
-ACE_INLINE
-ACE_Dev_Poll_Reactor::Token_Guard::~Token_Guard (void)
-{
- if (this->owner_ == 1)
- {
- ACE_MT (this->token_.release ());
- this->owner_ = 0;
- }
-}
-
-ACE_INLINE void
-ACE_Dev_Poll_Reactor::Token_Guard::release_token (void)
-{
- if (this->owner_)
- {
- ACE_MT (this->token_.release ());
-
- // We are not the owner anymore..
- this->owner_ = 0;
- }
-}
-
-ACE_INLINE int
-ACE_Dev_Poll_Reactor::Token_Guard::is_owner (void)
-{
- return this->owner_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Dirent.h b/dep/include/ace/Dirent.h
deleted file mode 100644
index 036a942c611..00000000000
--- a/dep/include/ace/Dirent.h
+++ /dev/null
@@ -1,123 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Dirent.h
- *
- * $Id: Dirent.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Define a portable C++ interface to ACE_OS_Dirent directory-entry
- * manipulation.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_DIRENT_H
-#define ACE_DIRENT_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/OS_NS_dirent.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Dirent
- *
- * @brief Define a portable C++ directory-entry iterator based on the POSIX API.
- */
-class ACE_Export ACE_Dirent
-{
-public:
- // = Initialization and termination methods.
- /// Default constructor.
- ACE_Dirent (void);
-
- /// Constructor calls <opendir>
- explicit ACE_Dirent (const ACE_TCHAR *dirname);
-
- /// Opens the directory named by filename and associates a directory
- /// stream with it.
- int open (const ACE_TCHAR *filename);
-
- /// Destructor calls <closedir>.
- ~ACE_Dirent (void);
-
- /// Closes the directory stream and frees the <ACE_DIR> structure.
- void close (void);
-
- // = Iterator methods.
- /**
- * Returns a pointer to a structure representing the directory entry
- * at the current position in the directory stream to which dirp
- * refers, and positions the directory stream at the next entry,
- * except on read-only filesystems. It returns a NULL pointer upon
- * reaching the end of the directory stream, or upon detecting an
- * invalid location in the directory. <readdir> shall not return
- * directory entries containing empty names. It is unspecified
- * whether entries are returned for dot or dot-dot. The pointer
- * returned by <readdir> points to data that may be overwritten by
- * another call to <readdir> on the same directory stream. This
- * data shall not be overwritten by another call to <readdir> on a
- * different directory stream. <readdir> may buffer several
- * directory entries per actual read operation; <readdir> marks for
- * update the st_atime field of the directory each time the
- * directory is actually read.
- */
- ACE_DIRENT *read (void);
-
- /**
- * Has the equivalent functionality as <readdir> except that an
- * @a entry and @a result buffer must be supplied by the caller to
- * store the result.
- */
- int read (struct ACE_DIRENT *entry,
- struct ACE_DIRENT **result);
-
- // = Manipulators.
- /// Returns the current location associated with the directory
- /// stream.
- long tell (void);
-
- /**
- * Sets the position of the next <readdir> operation on the
- * directory stream. The new position reverts to the position
- * associated with the directory stream at the time the <telldir>
- * operation that provides loc was performed. Values returned by
- * <telldir> are good only for the lifetime of the <ACE_DIR> pointer from
- * which they are derived. If the directory is closed and then
- * reopened, the <telldir> value may be invalidated due to
- * undetected directory compaction. It is safe to use a previous
- * <telldir> value immediately after a call to <opendir> and before
- * any calls to readdir.
- */
- void seek (long loc);
-
- /**
- * Resets the position of the directory stream to the beginning of
- * the directory. It also causes the directory stream to refer to
- * the current state of the corresponding directory, as a call to
- * <opendir> would.
- */
- void rewind (void);
-
-private:
- /// Pointer to the directory stream.
- ACE_DIR *dirp_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Dirent.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_DIRENT_H */
-
diff --git a/dep/include/ace/Dirent.inl b/dep/include/ace/Dirent.inl
deleted file mode 100644
index 01ce3a96c4b..00000000000
--- a/dep/include/ace/Dirent.inl
+++ /dev/null
@@ -1,99 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Dirent.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Log_Msg.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_Dirent::open (const ACE_TCHAR *dirname)
-{
- // If the directory stream is already open, close it to prevent
- // possible resource leaks.
-
- if (this->dirp_ != 0)
- {
- ACE_OS::closedir (this->dirp_);
- this->dirp_ = 0;
- }
-
- this->dirp_ = ACE_OS::opendir (dirname);
-
- if (this->dirp_ == 0)
- return -1;
- else
- return 0;
-}
-
-ACE_INLINE
-ACE_Dirent::ACE_Dirent (void)
- : dirp_ (0)
-{
-}
-
-ACE_INLINE
-ACE_Dirent::ACE_Dirent (const ACE_TCHAR *dirname)
- : dirp_ (0)
-{
- if (this->open (dirname) == -1)
- ACE_ERROR ((LM_ERROR,
- ACE_TEXT ("%p\n"),
- ACE_TEXT ("ACE_Dirent::ACE_Dirent")));
-}
-
-ACE_INLINE
-ACE_Dirent::~ACE_Dirent (void)
-{
- if (this->dirp_ != 0)
- ACE_OS::closedir (this->dirp_);
-}
-
-ACE_INLINE ACE_DIRENT *
-ACE_Dirent::read (void)
-{
- return this->dirp_ ? ACE_OS::readdir (this->dirp_) : 0;
-}
-
-ACE_INLINE int
-ACE_Dirent::read (struct ACE_DIRENT *entry,
- struct ACE_DIRENT **result)
-{
- return this->dirp_
- ? ACE_OS::readdir_r (this->dirp_, entry, result)
- : 0;
-}
-
-ACE_INLINE void
-ACE_Dirent::close (void)
-{
- if (this->dirp_ != 0)
- {
- ACE_OS::closedir (this->dirp_);
-
- // Prevent double closure
- this->dirp_ = 0;
- }
-}
-
-ACE_INLINE void
-ACE_Dirent::rewind (void)
-{
- if (this->dirp_)
- ACE_OS::rewinddir (this->dirp_);
-}
-
-ACE_INLINE void
-ACE_Dirent::seek (long loc)
-{
- if (this->dirp_)
- ACE_OS::seekdir (this->dirp_, loc);
-}
-
-ACE_INLINE long
-ACE_Dirent::tell (void)
-{
- return this->dirp_ ? ACE_OS::telldir (this->dirp_) : 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Dirent_Selector.h b/dep/include/ace/Dirent_Selector.h
deleted file mode 100644
index 3356f18723d..00000000000
--- a/dep/include/ace/Dirent_Selector.h
+++ /dev/null
@@ -1,76 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Dirent_Selector.h
- *
- * $Id: Dirent_Selector.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Define a portable C++ interface to the <ACE_OS_Dirent::scandir> method.
- *
- * @author Rich Newman <RNewman@directv.com>
- */
-//=============================================================================
-
-#ifndef ACE_DIRENT_SELECTOR_H
-#define ACE_DIRENT_SELECTOR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/OS_NS_dirent.h" /* Need ACE_SCANDIR_SELECTOR, COMPARATOR */
-#include "ace/os_include/os_dirent.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Dirent_Selector
- *
- * @brief Define a portable C++ directory-entry iterator based on the
- * POSIX scandir API.
- */
-class ACE_Export ACE_Dirent_Selector
-{
-public:
- /// Constructor
- ACE_Dirent_Selector (void);
-
- /// Destructor.
- virtual ~ACE_Dirent_Selector (void);
-
- /// Return the length of the list of matching directory entries.
- int length (void) const;
-
- /// Return the entry at @a index.
- ACE_DIRENT *operator[] (const int index) const;
-
- /// Free up resources.
- int close (void);
-
- /// Open the directory @a dir and populate the current list of names with
- /// directory entries that match the @a selector and @a comparator.
- int open (const ACE_TCHAR *dir,
- ACE_SCANDIR_SELECTOR selector = 0,
- ACE_SCANDIR_COMPARATOR comparator = 0);
-
-protected:
- /// Ptr to the namelist array.
- ACE_DIRENT **namelist_;
-
- /// Number of entries in the array.
- int n_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Dirent_Selector.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_DIRENT_SELECTOR_H */
-
diff --git a/dep/include/ace/Dirent_Selector.inl b/dep/include/ace/Dirent_Selector.inl
deleted file mode 100644
index 15f804704bf..00000000000
--- a/dep/include/ace/Dirent_Selector.inl
+++ /dev/null
@@ -1,19 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Dirent_Selector.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_Dirent_Selector::length (void) const
-{
- return n_;
-}
-
-ACE_INLINE ACE_DIRENT *
-ACE_Dirent_Selector::operator[] (const int n) const
-{
- return this->namelist_[n];
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Dump.h b/dep/include/ace/Dump.h
deleted file mode 100644
index d94a740bce7..00000000000
--- a/dep/include/ace/Dump.h
+++ /dev/null
@@ -1,172 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Dump.h
- *
- * $Id: Dump.h 80826 2008-03-04 14:51:23Z wotte $
- *
- *
- * A prototype mechanism that allow all ACE objects to be registered
- * with a central in-memory "database" that can dump the state of all
- * live ACE objects (e.g., from within a debugger).
- *
- * The macros which allow easy registration and removal of objects to be
- * dumped (ACE_REGISTER_OBJECT and ACE_REMOVE_OBJECT) are turned into
- * no-ops by compiling with the ACE_NDEBUG macro defined. This allows
- * usage to be removed in "release mode" builds without changing code.
- *
- * There are several interesting aspects to this design:
- *
- * 1. It uses the External Polymorphism pattern to avoid having to
- * derive all ACE classes from a common base class that has virtual
- * methods (this is crucial to avoid unnecessary overhead). In
- * addition, there is no additional space added to ACE objects
- * (this is crucial to maintain binary layout compatibility).
- *
- * 2. This mechanism can be conditionally compiled in order to
- * completely disable this feature entirely. Moreover, by
- * using macros there are relatively few changes to ACE code.
- *
- * 3. This mechanism copes with single-inheritance hierarchies of
- * dumpable classes. In such cases we typically want only one
- * dump, corresponding to the most derived instance. Thanks to
- * Christian Millour (chris@etca.fr) for illustrating how to do
- * this. Note, however, that this scheme doesn't generalize to
- * work with multiple-inheritance or virtual base classes.
- *
- * Future work includes:
- *
- * 1. Using a dynamic object table rather than a static table
- *
- * 2. Adding support to allow particular classes of objects to
- * be selectively dumped.
- *
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_DUMP_H
-#define ACE_DUMP_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Dumpable
- *
- * @brief Base class that defines a uniform interface for all object
- * dumping.
- */
-class ACE_Export ACE_Dumpable
-{
-public:
- friend class ACE_ODB;
- friend class ACE_Dumpable_Ptr;
-
- /// Constructor.
- ACE_Dumpable (const void *);
-
- /// This pure virtual method must be filled in by a subclass.
- virtual void dump (void) const = 0;
-
-protected:
- virtual ~ACE_Dumpable (void);
-
-private:
- /// Pointer to the object that is being stored.
- const void *this_;
-};
-
-/**
- * @class ACE_Dumpable_Ptr
- *
- * @brief A smart pointer stored in the in-memory object database
- * ACE_ODB. The pointee (if any) is deleted when reassigned.
- */
-class ACE_Export ACE_Dumpable_Ptr
-{
-public:
- ACE_Dumpable_Ptr (const ACE_Dumpable *dumper = 0);
- const ACE_Dumpable *operator->() const;
- void operator= (const ACE_Dumpable *dumper) const;
-
-private:
- /// "Real" pointer to the underlying abstract base class
- /// pointer that does the real work.
- const ACE_Dumpable *dumper_;
-};
-
-/**
- * @class ACE_ODB
- *
- * @brief This is the object database (ODB) that keeps track of all
- * live ACE objects.
- */
-class ACE_Export ACE_ODB
-{
-public:
- /// @todo This is clearly inadequate and should be dynamic...
- enum {MAX_TABLE_SIZE = 100000};
-
- /// Iterates through the entire set of registered objects and
- /// dumps their state.
- void dump_objects (void);
-
- /// Add the tuple <dumper, this_> to the list of registered ACE objects.
- void register_object (const ACE_Dumpable *dumper);
-
- /// Use <this_> to locate and remove the associated <dumper> from the
- /// list of registered ACE objects.
- void remove_object (const void *this_);
-
- /// Interface to the Singleton instance of the object database.
- static ACE_ODB *instance (void);
-
-private:
- ACE_ODB (void); // Ensure we have a Singleton...
-
- struct Tuple
- {
- /// Pointer to the object that is registered.
- const void *this_;
-
- /// Smart pointer to the ACE_Dumpable object associated with this_.
- /// This uses an ACE_Dumpable_Ptr, instead of a bare pointer, to
- /// cope with hierarchies of dumpable classes. In such cases we
- /// typically want only one dump, corresponding to the most derived
- /// instance. To achieve this, the handle registered for the
- /// subobject corresponding to the base class is destroyed (hence
- /// on destruction of the subobject its handle won't exist anymore
- /// and we'll have to check for that).
- const ACE_Dumpable_Ptr dumper_;
-
- Tuple (void) : dumper_(0) {}
- };
-
- /// Singleton instance of this class.
- static ACE_ODB *instance_;
-
- /// The current implementation is very simple-minded and will be
- /// changed to be dynamic.
- Tuple object_table_[ACE_ODB::MAX_TABLE_SIZE];
-
- /// Current size of <object_table_>.
- int current_size_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// Include the templates classes at this point.
-#include "ace/Dump_T.h"
-
-#include /**/ "ace/post.h"
-#endif /* ACE_DUMP_H */
-
diff --git a/dep/include/ace/Dump_T.h b/dep/include/ace/Dump_T.h
deleted file mode 100644
index fe18af0cdcf..00000000000
--- a/dep/include/ace/Dump_T.h
+++ /dev/null
@@ -1,82 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Dump_T.h
- *
- * $Id: Dump_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_DUMP_T_H
-#define ACE_DUMP_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Dump.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Dumpable_Adapter
- *
- * @brief This class inherits the interface of the abstract ACE_Dumpable
- * class and is instantiated with the implementation of the
- * concrete component class <class Concrete>.
- *
- * This design is similar to the Adapter and Decorator patterns
- * from the ``Gang of Four'' book. Note that <class Concrete>
- * need not inherit from a common class since ACE_Dumpable
- * provides the uniform virtual interface!
- */
-template <class Concrete>
-class ACE_Dumpable_Adapter : public ACE_Dumpable
-{
-public:
- // = Initialization and termination methods.
- ACE_Dumpable_Adapter (const Concrete *t);
- ~ACE_Dumpable_Adapter (void);
-
- /// Concrete dump method (simply delegates to the <dump> method of
- /// <class Concrete>).
- virtual void dump (void) const;
-
- /// Delegate to methods in the Concrete class.
- Concrete *operator->() const;
-
-private:
- /// Pointer to @c this of <class Concrete>.
- const Concrete *this_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// Some useful macros for conditionally compiling this feature...
-#if defined (ACE_NDEBUG)
-#define ACE_REGISTER_OBJECT(CLASS)
-#define ACE_REMOVE_OBJECT
-#else
-#define ACE_REGISTER_OBJECT(CLASS) \
- ACE_ODB::instance ()->register_object \
- (new ACE_Dumpable_Adapter<CLASS> (this));
-#define ACE_REMOVE_OBJECT \
- ACE_ODB::instance ()->remove_object \
- ((void *) this);
-#endif /* ACE_NDEBUG */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Dump_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Dump_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_DUMP_T_H */
-
diff --git a/dep/include/ace/Dynamic.h b/dep/include/ace/Dynamic.h
deleted file mode 100644
index 6906ebf1267..00000000000
--- a/dep/include/ace/Dynamic.h
+++ /dev/null
@@ -1,76 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Dynamic.h
- *
- * $Id: Dynamic.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- * @author Irfan Pyarali.
- */
-//==========================================================================
-
-#ifndef ACE_DYNAMIC_H
-#define ACE_DYNAMIC_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Dynamic
- *
- * @brief Checks to see if an object was dynamically allocated.
- *
- * This class holds the pointer in a thread-safe manner between
- * the call to operator new and the call to the constructor.
- */
-class ACE_Export ACE_Dynamic
-{
-public:
- // = Initialization and termination method.
- /// Constructor.
- ACE_Dynamic (void);
-
- /// Destructor.
- ~ACE_Dynamic (void);
-
- /**
- * Sets a flag that indicates that the object was dynamically
- * created. This method is usually called in operator new and then
- * checked and reset in the constructor.
- */
- void set (void);
-
- /// @c true if we were allocated dynamically, else @c false.
- bool is_dynamic (void);
-
- /// Resets state flag.
- void reset (void);
-
- static ACE_Dynamic *instance (void);
-
-private:
- /**
- * Flag that indicates that the object was dynamically created. This
- * method is usually called in operator new and then checked and
- * reset in the constructor.
- */
- bool is_dynamic_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Dynamic.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_DYNAMIC_H */
-
diff --git a/dep/include/ace/Dynamic.inl b/dep/include/ace/Dynamic.inl
deleted file mode 100644
index 1e8e968f898..00000000000
--- a/dep/include/ace/Dynamic.inl
+++ /dev/null
@@ -1,34 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Dynamic.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Dynamic::~ACE_Dynamic (void)
-{
- // ACE_TRACE ("ACE_Dynamic::~ACE_Dynamic");
-}
-
-ACE_INLINE void
-ACE_Dynamic::set (void)
-{
- // ACE_TRACE ("ACE_Dynamic::set");
- this->is_dynamic_ = true;
-}
-
-ACE_INLINE bool
-ACE_Dynamic::is_dynamic (void)
-{
- // ACE_TRACE ("ACE_Dynamic::is_dynamic");
- return this->is_dynamic_;
-}
-
-ACE_INLINE void
-ACE_Dynamic::reset (void)
-{
- // ACE_TRACE ("ACE_Dynamic::reset");
- this->is_dynamic_ = false;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Dynamic_Message_Strategy.h b/dep/include/ace/Dynamic_Message_Strategy.h
deleted file mode 100644
index db6a51bb70e..00000000000
--- a/dep/include/ace/Dynamic_Message_Strategy.h
+++ /dev/null
@@ -1,218 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Dynamic_Message_Strategy.h
- *
- * $Id: Dynamic_Message_Strategy.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_DYNAMIC_MESSAGE_STRATEGY_H
-#define ACE_DYNAMIC_MESSAGE_STRATEGY_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Message_Block.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Dynamic_Message_Strategy
- *
- * @brief An abstract base class which provides dynamic priority
- * evaluation methods for use by the ACE_Dynamic_Message_Queue
- * class or any other class which needs to manage the priorities
- * of a collection of ACE_Message_Blocks dynamically.
- *
- * Methods for deadline and laxity based priority evaluation are
- * provided. These methods assume a specific partitioning of
- * the message priority number into a higher order dynamic bit
- * field and a lower order static priority bit field. The
- * default partitioning assumes an unsigned dynamic message
- * priority field of 22 bits and an unsigned static message
- * priority field of 10 bits. This corresponds to the initial
- * values of the static class members. To provide a different
- * partitioning, assign a different set of values to the static
- * class memebers before using the static member functions.
- */
-class ACE_Export ACE_Dynamic_Message_Strategy
-{
-public:
-
- // = Message priority status
-
- // Values are defined as bit flags so that status combinations may
- // be specified easily.
-
- enum Priority_Status
- {
- /// Message can still make its deadline
- PENDING = 0x01,
- /// Message cannot make its deadline
- LATE = 0x02,
- /// Message is so late its priority is undefined
- BEYOND_LATE = 0x04,
- /// Mask to match any priority status
- ANY_STATUS = 0x07
- };
-
- /// Constructor.
- ACE_Dynamic_Message_Strategy (unsigned long static_bit_field_mask,
- unsigned long static_bit_field_shift,
- unsigned long dynamic_priority_max,
- unsigned long dynamic_priority_offset);
-
- /// Virtual destructor.
- virtual ~ACE_Dynamic_Message_Strategy (void);
-
- /// Updates the message's priority and returns its priority status.
- Priority_Status priority_status (ACE_Message_Block &mb,
- const ACE_Time_Value &tv);
-
- /// Get static bit field mask.
- unsigned long static_bit_field_mask (void) const;
-
- /// Set static bit field mask.
- void static_bit_field_mask (unsigned long);
-
- /// Get left shift value to make room for static bit field.
- unsigned long static_bit_field_shift (void) const;
-
- /// Set left shift value to make room for static bit field.
- void static_bit_field_shift (unsigned long);
-
- /// Get maximum supported priority value.
- unsigned long dynamic_priority_max (void) const;
-
- /// Set maximum supported priority value.
- void dynamic_priority_max (unsigned long);
-
- /// Get offset to boundary between signed range and unsigned range.
- unsigned long dynamic_priority_offset (void) const;
-
- /// Set offset to boundary between signed range and unsigned range.
- void dynamic_priority_offset (unsigned long);
-
- /// Dump the state of the strategy.
- virtual void dump (void) const;
-
-protected:
- /// Hook method for dynamic priority conversion.
- virtual void convert_priority (ACE_Time_Value &priority,
- const ACE_Message_Block &mb) = 0;
-
- /// This is a bit mask with all ones in the static bit field.
- unsigned long static_bit_field_mask_;
-
- /**
- * This is a left shift value to make room for static bit field:
- * this value should be the logarithm base 2 of
- * (static_bit_field_mask_ + 1).
- */
- unsigned long static_bit_field_shift_;
-
- /// Maximum supported priority value.
- unsigned long dynamic_priority_max_;
-
- /// Offset to boundary between signed range and unsigned range.
- unsigned long dynamic_priority_offset_;
-
- /// Maximum late time value that can be represented.
- ACE_Time_Value max_late_;
-
- /// Minimum pending time value that can be represented.
- ACE_Time_Value min_pending_;
-
- /// Time value by which to shift pending priority.
- ACE_Time_Value pending_shift_;
-};
-
-/**
- * @class ACE_Deadline_Message_Strategy
- *
- * @brief Deadline based message priority strategy.
- *
- * Assigns dynamic message priority according to time to deadline. The
- * message priority is divided into high and low order bit fields. The
- * high order bit field is used for dynamic message priority, which is
- * updated whenever the convert_priority() method is called. The
- * low order bit field is used for static message priority and is left
- * unchanged. The partitioning of the priority value into high and low
- * order bit fields is done according to the arguments passed to the
- * strategy object's constructor.
- */
-class ACE_Export ACE_Deadline_Message_Strategy : public ACE_Dynamic_Message_Strategy
-{
-public:
- /// Ctor, with all arguments defaulted.
- ACE_Deadline_Message_Strategy (unsigned long static_bit_field_mask = 0x3FFUL, // 2^(10) - 1
- unsigned long static_bit_field_shift = 10, // 10 low order bits
- unsigned long dynamic_priority_max = 0x3FFFFFUL, // 2^(22)-1
- unsigned long dynamic_priority_offset = 0x200000UL); // 2^(22-1)
-
- /// Virtual dtor.
- virtual ~ACE_Deadline_Message_Strategy (void);
-
- /// Dynamic priority conversion function based on time to deadline.
- virtual void convert_priority (ACE_Time_Value &priority,
- const ACE_Message_Block &mb);
-
- /// Dump the state of the strategy.
- virtual void dump (void) const;
-};
-
-/**
- * @class ACE_Laxity_Message_Strategy
- *
- * @brief Laxity based message priority strategy.
- *
- * Assigns dynamic message priority according to laxity (time to
- * deadline minus worst case execution time). The message priority is
- * divided into high and low order bit fields. The high order
- * bit field is used for dynamic message priority, which is
- * updated whenever the convert_priority() method is called. The
- * low order bit field is used for static message priority and is left
- * unchanged. The partitioning of the priority value into high and low
- * order bit fields is done according to the arguments passed to the
- * strategy object's constructor.
- */
-class ACE_Export ACE_Laxity_Message_Strategy : public ACE_Dynamic_Message_Strategy
-{
-public:
- /// Ctor, with all arguments defaulted.
- ACE_Laxity_Message_Strategy (unsigned long static_bit_field_mask = 0x3FFUL, // 2^(10) - 1
- unsigned long static_bit_field_shift = 10, // 10 low order bits
- unsigned long dynamic_priority_max = 0x3FFFFFUL, // 2^(22)-1
- unsigned long dynamic_priority_offset = 0x200000UL); // 2^(22-1)
-
- /// virtual dtor.
- virtual ~ACE_Laxity_Message_Strategy (void);
-
- /// Dynamic priority conversion function based on laxity.
- virtual void convert_priority (ACE_Time_Value &priority,
- const ACE_Message_Block &mb);
-
- /// Dump the state of the strategy.
- virtual void dump (void) const;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Dynamic_Message_Strategy.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_DYNAMIC_MESSAGE_STRATEGY_H */
-
diff --git a/dep/include/ace/Dynamic_Message_Strategy.inl b/dep/include/ace/Dynamic_Message_Strategy.inl
deleted file mode 100644
index 9742a07fd88..00000000000
--- a/dep/include/ace/Dynamic_Message_Strategy.inl
+++ /dev/null
@@ -1,75 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Dynamic_Message_Strategy.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE unsigned long
-ACE_Dynamic_Message_Strategy::static_bit_field_mask (void) const
-{
- return static_bit_field_mask_;
-}
- // get static bit field mask
-
-ACE_INLINE void
-ACE_Dynamic_Message_Strategy::static_bit_field_mask (unsigned long ul)
-{
- static_bit_field_mask_ = ul;
-}
- // set static bit field mask
-
-ACE_INLINE unsigned long
-ACE_Dynamic_Message_Strategy::static_bit_field_shift (void) const
-{
- return static_bit_field_shift_;
-}
- // get left shift value to make room for static bit field
-
-ACE_INLINE void
-ACE_Dynamic_Message_Strategy::static_bit_field_shift (unsigned long ul)
-{
- static_bit_field_shift_ = ul;
-}
- // set left shift value to make room for static bit field
-
-ACE_INLINE unsigned long
-ACE_Dynamic_Message_Strategy::dynamic_priority_max (void) const
-{
- return dynamic_priority_max_;
-}
- // get maximum supported priority value
-
-ACE_INLINE void
-ACE_Dynamic_Message_Strategy::dynamic_priority_max (unsigned long ul)
-{
- // pending_shift_ depends on dynamic_priority_max_: for performance
- // reasons, the value in pending_shift_ is (re)calculated only when
- // dynamic_priority_max_ is initialized or changes, and is stored
- // as a class member rather than being a derived value.
- dynamic_priority_max_ = ul;
- pending_shift_ = ACE_Time_Value (0, ul);
-}
- // set maximum supported priority value
-
-ACE_INLINE unsigned long
-ACE_Dynamic_Message_Strategy::dynamic_priority_offset (void) const
-{
- return dynamic_priority_offset_;
-}
- // get offset for boundary between signed range and unsigned range
-
-ACE_INLINE void
-ACE_Dynamic_Message_Strategy::dynamic_priority_offset (unsigned long ul)
-{
- // max_late_ and min_pending_ depend on dynamic_priority_offset_:
- // for performance reasons, the values in max_late_ and min_pending_
- // are (re)calculated only when dynamic_priority_offset_ is
- // initialized or changes, and are stored as a class member rather
- // than being derived each time one of their values is needed.
- dynamic_priority_offset_ = ul;
- max_late_ = ACE_Time_Value (0, ul - 1);
- min_pending_ = ACE_Time_Value (0, ul);
-}
- // set offset for boundary between signed range and unsigned range
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Dynamic_Service.h b/dep/include/ace/Dynamic_Service.h
deleted file mode 100644
index fb2469c5418..00000000000
--- a/dep/include/ace/Dynamic_Service.h
+++ /dev/null
@@ -1,90 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Dynamic_Service.h
- *
- * $Id: Dynamic_Service.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Prashant Jain <pjain@cs.wustl.edu>
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_DYNAMIC_SERVICE_H
-#define ACE_DYNAMIC_SERVICE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-#include "ace/Global_Macros.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Dynamic_Service_Base.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Service_Object;
-
-/**
- * @class ACE_Dynamic_Service
- *
- * @brief Provides a general interface to retrieve arbitrary objects
- * from the ACE service repository.
- *
- * Uses "name" for lookup in the ACE service repository. Obtains
- * the object and returns it as the appropriate type.
- */
-template <class TYPE>
-class ACE_Dynamic_Service : public ACE_Dynamic_Service_Base
-{
-public:
- /// Return instance using @a name to search the Service_Repository.
- static TYPE* instance (const ACE_TCHAR *name);
- static TYPE* instance (const ACE_TCHAR *name, bool no_global);
-
- static TYPE* instance (const ACE_Service_Gestalt* repo,
- const ACE_TCHAR *name);
- static TYPE* instance (const ACE_Service_Gestalt* repo,
- const ACE_TCHAR *name, bool no_global);
-
-#if defined (ACE_USES_WCHAR)
-
- /// Return instance using @a name to search the Service_Repository.
- static TYPE* instance (const ACE_ANTI_TCHAR *name);
-
- static TYPE* instance (const ACE_ANTI_TCHAR *name, bool no_global);
-
- static TYPE* instance (const ACE_Service_Gestalt* repo,
- const ACE_ANTI_TCHAR *name);
- static TYPE* instance (const ACE_Service_Gestalt* repo,
- const ACE_ANTI_TCHAR *name, bool no_global);
-#endif // ACE_USES_WCHAR
-
-private:
- ACE_UNIMPLEMENTED_FUNC (ACE_Dynamic_Service ())
- ACE_UNIMPLEMENTED_FUNC (ACE_Dynamic_Service (const ACE_Dynamic_Service&))
- ACE_UNIMPLEMENTED_FUNC (ACE_Dynamic_Service& operator= (const ACE_Dynamic_Service&))
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Dynamic_Service.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-# include "ace/Dynamic_Service.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-# pragma implementation ("Dynamic_Service.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_DYNAMIC_SERVICE_H */
-
diff --git a/dep/include/ace/Dynamic_Service.inl b/dep/include/ace/Dynamic_Service.inl
deleted file mode 100644
index 31324bf535b..00000000000
--- a/dep/include/ace/Dynamic_Service.inl
+++ /dev/null
@@ -1,39 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Dynamic_Service.inl 81318 2008-04-10 10:12:05Z johnnyw $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_USES_WCHAR)
-
-template <class TYPE> ACE_INLINE TYPE *
-ACE_Dynamic_Service<TYPE>::instance (const ACE_ANTI_TCHAR *name)
-{
- return instance (ACE_TEXT_CHAR_TO_TCHAR (name),false);
-}
-
-template <class TYPE> ACE_INLINE TYPE *
-ACE_Dynamic_Service<TYPE>::instance (const ACE_ANTI_TCHAR *name,
- bool no_global)
-{
- return instance (ACE_TEXT_CHAR_TO_TCHAR (name),no_global);
-}
-
-template <class TYPE> ACE_INLINE TYPE *
-ACE_Dynamic_Service<TYPE>::instance (const ACE_Service_Gestalt* repo,
- const ACE_ANTI_TCHAR *name)
-{
- return instance (repo, ACE_TEXT_CHAR_TO_TCHAR (name),false);
-}
-
-template <class TYPE> ACE_INLINE TYPE *
-ACE_Dynamic_Service<TYPE>::instance (const ACE_Service_Gestalt* repo,
- const ACE_ANTI_TCHAR *name,
- bool no_global)
-{
- return instance (repo, ACE_TEXT_CHAR_TO_TCHAR (name),no_global);
-}
-
-#endif // ACE_USES_WCHAR
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Dynamic_Service_Base.h b/dep/include/ace/Dynamic_Service_Base.h
deleted file mode 100644
index 4491a9407d8..00000000000
--- a/dep/include/ace/Dynamic_Service_Base.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Dynamic_Service_Base.h
- *
- * $Id: Dynamic_Service_Base.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Prashant Jain <pjain@cs.wustl.edu>
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_DYNAMIC_SERVICE_BASE_H
-#define ACE_DYNAMIC_SERVICE_BASE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Service_Gestalt;
-class ACE_Service_Type;
-
-/**
- * @class ACE_Dynamic_Service_Base
- *
- * @brief Base class for all ACE_Dynamic_Service instantiations.
- *
- * Factors out common code shared by all ACE_Dynamic_Service
- * instantiations, this avoid code bloat.
- */
-class ACE_Export ACE_Dynamic_Service_Base
-{
-
-public:
- /// Dump the current static of the object
- void dump (void) const;
-
-protected:
- /// Perform the default repo search, but optionally skip searching the global
- /// repo.
- static void* instance (const ACE_TCHAR *name, bool no_global = false);
-
- static void* instance (const ACE_Service_Gestalt* repo,
- const ACE_TCHAR *name,
- bool no_global = false);
-
- /// No need to create, or assign instances of this class
- ACE_Dynamic_Service_Base (void);
- ~ACE_Dynamic_Service_Base (void);
- const ACE_Dynamic_Service_Base& operator= (const ACE_Dynamic_Service_Base&);
-
-private:
- /// Implement the service search policy, i.e. "look for the service first
- /// locally and then globally"
- static const ACE_Service_Type *find_i (const ACE_Service_Gestalt* &repo,
- const ACE_TCHAR *name,
- bool no_global);
-
- /// The dependency declaration class needs access to the service search
- /// policy, implemented by find_i()
- friend class ACE_Dynamic_Service_Dependency;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_DYNAMIC_SERVICE_BASE_H */
-
diff --git a/dep/include/ace/Dynamic_Service_Dependency.h b/dep/include/ace/Dynamic_Service_Dependency.h
deleted file mode 100644
index 21e63bb9411..00000000000
--- a/dep/include/ace/Dynamic_Service_Dependency.h
+++ /dev/null
@@ -1,69 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Dynamic_Service_Dependency.h
- *
- * $Id: Dynamic_Service_Dependency.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Iliyan Jeliazkov <iliyan@ociweb.com>
- */
-//=============================================================================
-
-#ifndef ACE_DYNAMIC_SERVICE_DEPENDENCY_H
-#define ACE_DYNAMIC_SERVICE_DEPENDENCY_H
-
-#include /**/ "ace/pre.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Dynamic_Service_Base.h"
-#include "ace/Service_Object.h"
-#include "ace/DLL.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Dynamic_Service_Dependency
- *
- * @brief Provides a way to declare dependency on specific service,
- * thus helping to avoid order of initialization issues with instances
- * of an objects whose implementation code resides in dynamically loaded
- * services.
- *
- * It is disastrous to have dynamically loadable services create and give away
- * ownership of objects and then ending up being unloaded before all those
- * instances have been deleted. Normally the code for such objects classes
- * resides within the TEXT segment of the DLL, which implements the service.
- * If a service gets removed, its DLL may be unmapped from memory and then
- * any attempt to invoke a method on the said objects will cause SEGV.
- *
- * Such instances must contain a member of ACE_Dynamic_Service_Dependency
- * initialized with the service they depend on.
- * ACE_Dynamic_Service_Dependency's constructor and destructor are
- * "magical" - they work by maintaining the underlying dynamic service's
- * DLL reference count.
- */
-class ACE_Export ACE_Dynamic_Service_Dependency
-{
-public:
- ACE_Dynamic_Service_Dependency (const ACE_Service_Gestalt *cfg,
- const ACE_TCHAR *principal);
- ACE_Dynamic_Service_Dependency (const ACE_TCHAR *principal);
- ~ACE_Dynamic_Service_Dependency (void);
-
-private:
- void init (const ACE_Service_Gestalt *cfg, const ACE_TCHAR *principal);
-
-private:
- ACE_DLL tracker_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_DYNAMIC_SERVICE_DEPENDENCY_H */
-
diff --git a/dep/include/ace/Encoding_Converter.h b/dep/include/ace/Encoding_Converter.h
deleted file mode 100644
index 8833d3fced8..00000000000
--- a/dep/include/ace/Encoding_Converter.h
+++ /dev/null
@@ -1,71 +0,0 @@
-// -*- C++ -*-
-
-//=========================================================================
-/**
- * @file Encoding_Converter.h
- *
- * $Id: Encoding_Converter.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * This class is the base class for all encoding converters that convert
- * to and from UTF-8.
- *
- * @author Chad Elliott <elliott_c@ociweb.com>
- */
-//=========================================================================
-
-#ifndef ACE_ENCODING_CONVERTER_H
-#define ACE_ENCODING_CONVERTER_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Basic_Types.h"
-
-#if defined (ACE_USES_WCHAR)
-#include /**/ "ace/ACE_export.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/** The base class for all ACE UTF Encoding Converters.
- * This class provides a generic interface that is used to implement
- * various UTF encoding conversion classes.
- */
-class ACE_Export ACE_Encoding_Converter
-{
-public:
- /// This enum describes the various states that can be returned
- /// from the to_utf8() and from_utf8() methods which depends on
- /// both the source buffer and the size of the target buffer.
- enum Result {CONVERSION_OK,
- SOURCE_EXHAUSTED,
- TARGET_EXHAUSTED,
- SOURCE_ILLEGAL
- };
-
- /// This destructor is here (and virtual) because we have virtual
- /// functions.
- virtual ~ACE_Encoding_Converter (void);
-
- /// Convert the source (which can be in any encoding) to UTF-8 and
- /// store it in the provided target buffer.
- virtual Result to_utf8 (const void* source,
- size_t source_size,
- ACE_Byte* target,
- size_t target_size,
- bool strict = true) = 0;
-
- /// Convert the UTF-8 source into an alternate encoding and store it
- /// in the provided target buffer.
- virtual Result from_utf8 (const ACE_Byte* source,
- size_t source_size,
- void* target,
- size_t target_size,
- bool strict = true) = 0;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-#endif /* ACE_USES_WCHAR */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_ENCODING_CONVERTER_H */
-
diff --git a/dep/include/ace/Encoding_Converter_Factory.h b/dep/include/ace/Encoding_Converter_Factory.h
deleted file mode 100644
index c1311451db5..00000000000
--- a/dep/include/ace/Encoding_Converter_Factory.h
+++ /dev/null
@@ -1,55 +0,0 @@
-// -*- C++ -*-
-
-//=========================================================================
-/**
- * @file Encoding_Converter_Factory.h
- *
- * $Id: Encoding_Converter_Factory.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * This class can be used to create encoding converters of various types.
- *
- * @author Chad Elliott <elliott_c@ociweb.com>
- */
-//=========================================================================
-
-#ifndef ACE_ENCODING_CONVERTER_FACTORY_H
-#define ACE_ENCODING_CONVERTER_FACTORY_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Basic_Types.h"
-
-#if defined (ACE_USES_WCHAR)
-#include /**/ "ace/ACE_export.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Encoding_Converter;
-
-/** Create an encoding converter based on the source or hint.
- * This class allows users to avoid knowing any concrete converter types.
- */
-class ACE_Export ACE_Encoding_Converter_Factory
-{
-public:
- /// This enum is used to tell what type of converter to create.
- enum Encoding_Hint { ACE_UTF_32BE, ACE_UTF_32LE,
- ACE_UTF_16BE, ACE_UTF_16LE,
- ACE_UTF_8, ACE_NONE
- };
-
- /// Create an encoding converter based on the source. If a hint is
- /// given, it just creates the specified type of converter without looking
- /// at the source.
- static ACE_Encoding_Converter* create (const ACE_Byte* source,
- size_t source_size,
- Encoding_Hint hint = ACE_NONE);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-#endif /* ACE_USES_WCHAR */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_ENCODING_CONVERTER_FACTORY_H */
-
diff --git a/dep/include/ace/Env_Value_T.h b/dep/include/ace/Env_Value_T.h
deleted file mode 100644
index 05b4706c122..00000000000
--- a/dep/include/ace/Env_Value_T.h
+++ /dev/null
@@ -1,167 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Env_Value_T.h
- *
- * $Id: Env_Value_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Template to encapsulate getting a value from an environment variable
- * and using a supplied default value if not in the environment.
- *
- *
- * @author Chris Cleeland (derived from work by Carlos O'Ryan)
- */
-//=============================================================================
-
-#ifndef ACE_ENV_VALUE_T_H
-#define ACE_ENV_VALUE_T_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-#include "ace/Global_Macros.h"
-#include "ace/OS_NS_stdlib.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Env_Value
- *
- * @brief Environment Variable Value
- *
- * Reads a variable from the user environment, providing a default
- * value.
- */
-template <class T>
-class ACE_Env_Value
-{
-public:
- /**
- * Default constructor which isn't bound to a specific environment
- * variable name or a default value. Before being useful it must
- * <open>'d.
- */
- ACE_Env_Value (void);
-
- /// Constructor that calls <open>.
- ACE_Env_Value (const ACE_TCHAR *varname,
- const T &vardefault);
-
- /// Destroy the value.
- ~ACE_Env_Value (void);
-
- /// Returns the value as type T.
- operator T (void);
-
- /// The constructor, read @a varname from the environment, using
- /// @a defval as its value if it is not defined.
- void open (const ACE_TCHAR *varname, const T &defval);
-
- /// Returns the name of the variable being tracked.
- const ACE_TCHAR *varname (void) const;
-
-private:
- /// Disallow copying and assignment.
- ACE_UNIMPLEMENTED_FUNC (ACE_Env_Value(const ACE_Env_Value<T> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Env_Value<T> operator=(const ACE_Env_Value<T> &))
-
- void fetch_value (void);
-
- const ACE_TCHAR *varname_;
- T value_;
-};
-
-/// Function to convert a string @a s into type @c T.
-template <class T> void ACE_Convert (const ACE_TCHAR *s, T &t);
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Env_Value_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Env_Value_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <> inline void
-ACE_Convert (const ACE_TCHAR *s, ACE_TCHAR *&v)
-{
- v = (ACE_TCHAR *) s;
-}
-
-template <> inline void
-ACE_Convert (const ACE_TCHAR *s, const ACE_TCHAR *&v)
-{
- v = (const ACE_TCHAR *) s;
-}
-
-template <> inline void
-ACE_Convert (const ACE_TCHAR *s, short &si)
-{
- si = static_cast<short> (ACE_OS::strtol (s, 0, 10));
-}
-
-template <> inline void
-ACE_Convert (const ACE_TCHAR *s, u_short &us)
-{
- us = static_cast <u_short> (ACE_OS::strtol (s, 0, 10));
-}
-
-template <> inline void
-ACE_Convert (const ACE_TCHAR *s, u_int &i)
-{
- i = static_cast<u_int> (ACE_OS::strtol (s, 0, 10));
-}
-
-template <> inline void
-ACE_Convert (const ACE_TCHAR *s, long &l)
-{
- l = ACE_OS::strtol (s, 0, 10);
-}
-
-template <> inline void
-ACE_Convert (const ACE_TCHAR *s, int &i)
-{
- i = static_cast<int> (ACE_OS::strtol (s, 0, 10));
-}
-
-template <> inline void
-ACE_Convert (const ACE_TCHAR *s, u_long &ul)
-{
- ul = ACE_OS::strtoul (s, 0, 10);
-}
-
-template <> inline void
-ACE_Convert (const ACE_TCHAR *s, double &d)
-{
- d = ACE_OS::strtod (s, 0);
-}
-
-// Default calls a CTOR on type T of the form 'T::T(const char*)', but
-// users can feel free to create their own specialized conversion
-// functions if necessary, as shown above. Note that for 'char*' the
-// default is used because a simple cast will be performed and no
-// conversion will be necessary.
-template <class T> inline void
-ACE_Convert (const ACE_TCHAR *s, T &t)
-{
- t = T (s);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Env_Value_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_ENV_VALUE_T_H */
-
diff --git a/dep/include/ace/Env_Value_T.inl b/dep/include/ace/Env_Value_T.inl
deleted file mode 100644
index d9af1b03164..00000000000
--- a/dep/include/ace/Env_Value_T.inl
+++ /dev/null
@@ -1,60 +0,0 @@
-// $Id: Env_Value_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class T> ACE_INLINE
-ACE_Env_Value<T>::operator T (void)
-{
- return value_;
-}
-
-template <class T> ACE_INLINE
-ACE_Env_Value<T>::ACE_Env_Value (void)
- : varname_ (0)
-{
-}
-
-template <class T> ACE_INLINE
-ACE_Env_Value<T>::ACE_Env_Value (const ACE_TCHAR *varname,
- const T &defval)
- : varname_ (varname),
- value_(defval)
-{
- this->fetch_value ();
-}
-
-template <class T> ACE_INLINE void
-ACE_Env_Value<T>::open (const ACE_TCHAR *varname,
- const T &defval)
-{
- this->varname_ = varname;
- this->value_ = defval;
- this->fetch_value ();
-}
-
-template <class T> ACE_INLINE void
-ACE_Env_Value<T>::fetch_value (void)
-{
-#if defined (ACE_WIN32)
- const ACE_TCHAR *env = ACE_OS::getenv (this->varname_);
- if (env != 0)
- ACE_Convert (env, value_);
-#else
- char *nenv = ACE_OS::getenv (ACE_TEXT_ALWAYS_CHAR (this->varname_));
- if (nenv != 0)
- ACE_Convert (ACE_TEXT_CHAR_TO_TCHAR (nenv), this->value_);
-#endif
-}
-
-template <class T> ACE_INLINE const ACE_TCHAR*
-ACE_Env_Value<T>::varname (void) const
-{
- return this->varname_;
-}
-
-template <class T> ACE_INLINE
-ACE_Env_Value<T>::~ACE_Env_Value (void)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Event.h b/dep/include/ace/Event.h
deleted file mode 100644
index 69d819b3978..00000000000
--- a/dep/include/ace/Event.h
+++ /dev/null
@@ -1,144 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Event.h
- *
- * $Id: Event.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_EVENT_H
-#define ACE_EVENT_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/OS_NS_Thread.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Event
- *
- * @brief A wrapper around the Win32 event locking mechanism.
- *
- * Portable implementation of an Event mechanism, which is native to
- * Win32, but must be emulated on UNIX. All platforms support
- * process-scope locking support. However, only Win32 platforms
- * support global naming and system-scope locking support.
- */
-class ACE_Export ACE_Event
-{
-public:
- /// Constructor that creates event.
- ACE_Event (int manual_reset = 0,
- int initial_state = 0,
- int type = USYNC_THREAD,
- const ACE_TCHAR *name = 0,
- void *arg = 0,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- /// Implicitly destroy the event variable.
- ~ACE_Event (void);
-
- /**
- * Explicitly destroy the event variable. Note that only one thread
- * should call this method since it doesn't protect against race
- * conditions.
- */
- int remove (void);
-
- /// Underlying handle to event.
- ACE_event_t handle (void) const;
-
- /**
- * Set the underlying handle to event. Note that this method assumes
- * ownership of the <handle> and will close it down in <remove>. If
- * you want the <handle> to stay open when <remove> is called make
- * sure to call <dup> on the <handle> before closing it. You are
- * responsible for the closing the existing <handle> before
- * overwriting it.
- */
- void handle (ACE_event_t new_handle);
-
- /**
- * if MANUAL reset
- * sleep till the event becomes signaled
- * event remains signaled after wait() completes.
- * else AUTO reset
- * sleep till the event becomes signaled
- * event resets wait() completes.
- */
- int wait (void);
-
- /// Same as wait() above, but this one can be timed
- /// @a abstime is absolute time-of-day if if @a use_absolute_time
- /// is non-0, else it is relative time.
- int wait (const ACE_Time_Value *abstime,
- int use_absolute_time = 1);
-
- /**
- * if MANUAL reset
- * wake up all waiting threads
- * set to signaled state
- * else AUTO reset
- * if no thread is waiting, set to signaled state
- * if thread(s) are waiting, wake up one waiting thread and
- * reset event
- */
- int signal (void);
-
- /**
- * if MANUAL reset
- * wakeup all waiting threads and
- * reset event
- * else AUTO reset
- * wakeup one waiting thread (if present) and
- * reset event
- */
- int pulse (void);
-
- /// Set to nonsignaled state.
- int reset (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// The underlying handle.
- ACE_event_t handle_;
-
- /// Keeps track of whether <remove> has been called yet to avoid
- /// multiple <remove> calls, e.g., explicitly and implicitly in the
- /// destructor. This flag isn't protected by a lock, so make sure
- /// that you don't have multiple threads simultaneously calling
- /// <remove> on the same object, which is a bad idea anyway...
- bool removed_;
-
-private:
- // = Prevent copying.
- ACE_Event (const ACE_Event& event);
- const ACE_Event &operator= (const ACE_Event &rhs);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Event.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_EVENT_H */
-
diff --git a/dep/include/ace/Event.inl b/dep/include/ace/Event.inl
deleted file mode 100644
index ae0805c95f0..00000000000
--- a/dep/include/ace/Event.inl
+++ /dev/null
@@ -1,18 +0,0 @@
-// -*- C++ -*-
-// $Id: Event.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ACE_event_t
-ACE_Event::handle (void) const
-{
- return this->handle_;
-}
-
-ACE_INLINE void
-ACE_Event::handle (ACE_event_t new_handle)
-{
- this->handle_ = new_handle;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Event_Handler.h b/dep/include/ace/Event_Handler.h
deleted file mode 100644
index e97cca48a46..00000000000
--- a/dep/include/ace/Event_Handler.h
+++ /dev/null
@@ -1,389 +0,0 @@
-/* -*- C++ -*- */
-
-//==========================================================================
-/**
- * @file Event_Handler.h
- *
- * $Id: Event_Handler.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_EVENT_HANDLER_H
-#define ACE_EVENT_HANDLER_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_signal.h"
-#include "ace/Atomic_Op.h"
-#include "ace/Synch_Traits.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declaration.
-class ACE_Message_Block;
-class ACE_Reactor;
-class ACE_Reactor_Timer_Interface;
-class ACE_Thread_Manager;
-class ACE_Process;
-
-typedef unsigned long ACE_Reactor_Mask;
-
-/**
- * @class ACE_Event_Handler
- *
- * @brief Provides an abstract interface for handling various types of
- * I/O, timer, and signal events.
- *
- * Subclasses read/write input/output on an I/O descriptor,
- * handle an exception raised on an I/O descriptor, handle a
- * timer's expiration, or handle a signal.
- */
-class ACE_Export ACE_Event_Handler
-{
-public:
- enum
- {
- LO_PRIORITY = 0,
- HI_PRIORITY = 10,
- NULL_MASK = 0,
-#if defined (ACE_USE_POLL)
- READ_MASK = POLLIN,
- WRITE_MASK = POLLOUT,
- EXCEPT_MASK = POLLPRI,
-#else /* USE SELECT */
- READ_MASK = (1 << 0),
- WRITE_MASK = (1 << 1),
- EXCEPT_MASK = (1 << 2),
-#endif /* ACE_USE_POLL */
- ACCEPT_MASK = (1 << 3),
- CONNECT_MASK = (1 << 4),
- TIMER_MASK = (1 << 5),
- QOS_MASK = (1 << 6),
- GROUP_QOS_MASK = (1 << 7),
- SIGNAL_MASK = (1 << 8),
- ALL_EVENTS_MASK = READ_MASK |
- WRITE_MASK |
- EXCEPT_MASK |
- ACCEPT_MASK |
- CONNECT_MASK |
- TIMER_MASK |
- QOS_MASK |
- GROUP_QOS_MASK |
- SIGNAL_MASK,
- RWE_MASK = READ_MASK |
- WRITE_MASK |
- EXCEPT_MASK,
- DONT_CALL = (1 << 9)
- };
-
- /// Destructor is virtual to enable proper cleanup.
- virtual ~ACE_Event_Handler (void);
-
- /// Get the I/O handle.
- virtual ACE_HANDLE get_handle (void) const;
-
- /// Set the I/O handle.
- virtual void set_handle (ACE_HANDLE);
-
- // = Get/set priority
-
- // Priorities run from MIN_PRIORITY (which is the "lowest priority")
- // to MAX_PRIORITY (which is the "highest priority").
- /// Get the priority of the Event_Handler.
- virtual int priority (void) const;
-
- /// Set the priority of the Event_Handler.
- virtual void priority (int priority);
-
- /// Called when input events occur (e.g., connection or data).
- virtual int handle_input (ACE_HANDLE fd = ACE_INVALID_HANDLE);
-
- /// Called when output events are possible (e.g., when flow control
- /// abates or non-blocking connection completes).
- virtual int handle_output (ACE_HANDLE fd = ACE_INVALID_HANDLE);
-
- /// Called when an exceptional events occur (e.g., SIGURG).
- virtual int handle_exception (ACE_HANDLE fd = ACE_INVALID_HANDLE);
-
- /**
- * Called when timer expires. @a current_time represents the current
- * time that the <Event_Handler> was selected for timeout
- * dispatching and @a act is the asynchronous completion token that
- * was passed in when <schedule_timer> was invoked.
- */
- virtual int handle_timeout (const ACE_Time_Value &current_time,
- const void *act = 0);
-
- /// Called when a process exits.
- virtual int handle_exit (ACE_Process *);
-
- /// Called when a <handle_*()> method returns -1 or when the
- /// <remove_handler> method is called on an ACE_Reactor. The
- /// @a close_mask indicates which event has triggered the
- /// <handle_close> method callback on a particular @a handle.
- virtual int handle_close (ACE_HANDLE handle,
- ACE_Reactor_Mask close_mask);
-
- /// Called when object is signaled by OS (either via UNIX signals or
- /// when a Win32 object becomes signaled).
- virtual int handle_signal (int signum, siginfo_t * = 0, ucontext_t * = 0);
-
- enum
- {
- /// The handler is not resumed at all. Could lead to deadlock..
- ACE_EVENT_HANDLER_NOT_RESUMED = -1,
- /// The reactor takes responsibility of resuming the handler and
- /// is the default
- ACE_REACTOR_RESUMES_HANDLER = 0,
- /// The application takes responsibility of resuming the handler
- ACE_APPLICATION_RESUMES_HANDLER
- };
- /**
- * Called to figure out whether the handler needs to resumed by the
- * reactor or the application can take care of it. The default
- * value of 0 would be returned which would allow the reactor to
- * take care of resumption of the handler. The application can
- * return a value more than zero and decide to resume the handler
- * themseleves.
- *
- * @note This method is only useful for the ACE_TP_Reactor. Sad
- * that we have to have this method in a class that is supposed to
- * be used across different components in ACE.
- */
- virtual int resume_handler (void);
-
- virtual int handle_qos (ACE_HANDLE = ACE_INVALID_HANDLE);
- virtual int handle_group_qos (ACE_HANDLE = ACE_INVALID_HANDLE);
-
- // = Accessors to set/get the various event demultiplexors.
- /// Set the event demultiplexors.
- virtual void reactor (ACE_Reactor *reactor);
-
- /// Get the event demultiplexors.
- virtual ACE_Reactor *reactor (void) const;
-
- /// Get only the reactor's timer related interface.
- virtual ACE_Reactor_Timer_Interface *reactor_timer_interface (void) const;
-
- /**
- * Used to read from non-socket ACE_HANDLEs in our own thread to
- * work around Win32 limitations that don't allow us to <select> on
- * non-sockets (such as ACE_STDIN). This is commonly used in
- * situations where the Reactor is used to demultiplex read events
- * on ACE_STDIN on UNIX. Note that @a event_handler must be a
- * subclass of ACE_Event_Handler. If the <get_handle> method of
- * this event handler returns <ACE_INVALID_HANDLE> we default to
- * reading from ACE_STDIN.
- */
- static ACE_THR_FUNC_RETURN read_adapter (void *event_handler);
-
- /**
- * Abstracts away from the differences between Win32 and ACE with
- * respect to reading from ACE_STDIN, which is non-<select>'able on
- * Win32.
- */
- static int register_stdin_handler (ACE_Event_Handler *eh,
- ACE_Reactor *reactor,
- ACE_Thread_Manager *thr_mgr,
- int flags = THR_DETACHED);
-
- /// Performs the inverse of the <register_stdin_handler> method.
- static int remove_stdin_handler (ACE_Reactor *reactor,
- ACE_Thread_Manager *thr_mgr);
-
- /// Reference count type.
- typedef long Reference_Count;
-
- /// Increment reference count on the handler.
- /**
- * This method is called when the handler is registered with the
- * Reactor and when the Reactor makes an upcall on the handler.
- * Reference count is 1 when the handler is created.
- *
- * @return Current reference count.
- */
- virtual Reference_Count add_reference (void);
-
- /// Decrement reference count on the handler.
- /**
- * This method is called when the handler is removed from the
- * Reactor and when an upcall made on the handler by the Reactor
- * completes. Handler is deleted when the reference count reaches
- * 0.
- *
- * @return Current reference count.
- */
- virtual Reference_Count remove_reference (void);
-
- /**
- * @class Policy
- *
- * @brief Base class for all handler policies.
- */
- class ACE_Export Policy
- {
-
- public:
-
- /// Virtual destructor.
- virtual ~Policy (void);
- };
-
- /**
- * @class Reference_Counting_Policy
- *
- * @brief This policy dictates the reference counting requirements
- * for the handler.
- *
- * This policy allows applications to configure whether it wants the
- * Reactor to call add_reference() and remove_reference() during
- * registrations, removals, and upcalls.
- *
- * <B>Default:</B> DISABLED.
- */
- class ACE_Export Reference_Counting_Policy : public Policy
- {
- /// This policy can only be created by the handler.
- friend class ACE_Event_Handler;
-
- public:
-
- enum Value
- {
- /// Perform reference counting.
- ENABLED,
- /// Don't perform reference counting.
- DISABLED
- };
-
- /// Current Reference_Counting_Policy.
- Value value (void) const;
-
- /// Update Reference_Counting_Policy.
- void value (Value value);
-
- private:
-
- /// Private constructor.
- Reference_Counting_Policy (Value value);
-
- /// The value of the policy.
- Value value_;
- };
-
- /// Current Reference_Counting_Policy.
- Reference_Counting_Policy &reference_counting_policy (void);
-
-protected:
- /// Force ACE_Event_Handler to be an abstract base class.
- ACE_Event_Handler (ACE_Reactor * = 0,
- int priority = ACE_Event_Handler::LO_PRIORITY);
-
- /// Typedef for implementation of reference counting.
- typedef ACE_Atomic_Op<ACE_SYNCH_MUTEX, Reference_Count> Atomic_Reference_Count;
-
- /// Reference count.
- Atomic_Reference_Count reference_count_;
-
-private:
-
- /// Priority of this Event_Handler.
- int priority_;
-
- /// Pointer to the various event demultiplexors.
- ACE_Reactor *reactor_;
-
- /// Reference counting requirements.
- Reference_Counting_Policy reference_counting_policy_;
-};
-
-/**
- * @class ACE_Event_Handler_var
- *
- * @brief Auto pointer like class for Event Handlers.
- *
- * Used to manage lifecycle of handlers. This class calls
- * ACE_Event_Handler::remove_reference() in its destructor.
- */
-class ACE_Export ACE_Event_Handler_var
-{
-
-public:
-
- /// Default constructor.
- ACE_Event_Handler_var (void);
-
- /// Construct with a handler.
- ACE_Event_Handler_var (ACE_Event_Handler *p);
-
- /// Copy constructor.
- ACE_Event_Handler_var (const ACE_Event_Handler_var &b);
-
- /// Destructor.
- ~ACE_Event_Handler_var (void);
-
- /// Assignment to a handler.
- ACE_Event_Handler_var &operator= (ACE_Event_Handler *p);
-
- /// Assignment to a ACE_Event_Handler_var.
- ACE_Event_Handler_var &operator= (const ACE_Event_Handler_var &b);
-
- /// Overloaded "->".
- ACE_Event_Handler *operator-> () const;
-
- /// Access the handler.
- ACE_Event_Handler *handler (void) const;
-
- /// Release the handler.
- ACE_Event_Handler *release (void);
-
- /// Reset the handler.
- void reset (ACE_Event_Handler *p = 0);
-
-private:
-
- /// Handler.
- ACE_Event_Handler *ptr_;
-};
-
-/**
- * @class ACE_Notification_Buffer
- *
- * @brief Simple wrapper for passing <ACE_Event_Handler *>s and
- * ACE_Reactor_Masks between threads.
- */
-class ACE_Export ACE_Notification_Buffer
-{
-public:
- ACE_Notification_Buffer (void);
-
- ACE_Notification_Buffer (ACE_Event_Handler *eh,
- ACE_Reactor_Mask mask);
-
- /// Default dtor.
- ~ACE_Notification_Buffer (void);
-
- /// Pointer to the Event_Handler that will be dispatched
- /// by the main event loop.
- ACE_Event_Handler *eh_;
-
- /// Mask that indicates which method to call.
- ACE_Reactor_Mask mask_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Event_Handler.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_EVENT_HANDLER_H */
-
diff --git a/dep/include/ace/Event_Handler.inl b/dep/include/ace/Event_Handler.inl
deleted file mode 100644
index d97c45466ae..00000000000
--- a/dep/include/ace/Event_Handler.inl
+++ /dev/null
@@ -1,12 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Event_Handler.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Notification_Buffer::~ACE_Notification_Buffer (void)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Event_Handler_T.h b/dep/include/ace/Event_Handler_T.h
deleted file mode 100644
index 47cc5fd56bf..00000000000
--- a/dep/include/ace/Event_Handler_T.h
+++ /dev/null
@@ -1,192 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Event_Handler_T.h
- *
- * $Id: Event_Handler_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_EVENT_HANDLER_T_H
-#define ACE_EVENT_HANDLER_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Event_Handler.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_TEMPLATE_TYPEDEFS)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Event_Handler_T
- *
- * @brief Enable a class that doesn't inherit from the
- * ACE_Event_Handler to be incorporated into the ACE_Reactor
- * framework. Thanks to Greg Lavender (g.lavender@isode.com)
- * for sharing this idea.
- *
- * It is sometimes the case that an application has a hierarchy
- * of operation dispatcher classes that have their own
- * inheritance hierarchy but also would like to integrate with
- * the ACE_Reactor. Rather than adopt a "mixin" approach, it is
- * often cleaner to define a template as a subclass of
- * ACE_Event_Handler and paramterize it with an operation
- * dispatcher type.
- * When constructing an instantiation of the ACE_Event_Handler_T
- * object, a set of pointers to member functions must be
- * provided so that when one of the handle_* methods is called
- * by the ACE_Reactor, the appropriate method is called on the
- * underlying operations object. This is done since in some
- * cases it is useful to map any event that happens to the same
- * method on an object.
- * The ACE_Event_Handler_T template is instantiated by an
- * operations object and registered with the ACE_Reactor, and it
- * then calls the appropriate op_handler. So, it's basically
- * just another level of indirection in event dispatching. The
- * coupling betweent the ultimate handler of the event and the
- * ACE_Event_Handler class is relaxed a bit by have this
- * intermediate <op_handler_> object of type <T> around. The
- * client object can then dynamically change the bindings for
- * the various handlers so that during the life of one of the
- * operation objects, it can change how it wants events to be
- * handled. It just instantiates a new instance of the template
- * with different bindings and reregisters this new object with
- * the ACE_Reactor.
- */
-template <class T>
-class ACE_Event_Handler_T : public ACE_Event_Handler
-{
-public:
- // = Typedefs to simplify pointer-to-member-function registration.
-
- // Get/set the underlying handle.
- typedef ACE_HANDLE (T::*GET_HANDLE) (void) const;
- typedef void (T::*SET_HANDLE) (ACE_HANDLE);
-
- /// Handle I/O events.
- typedef int (T::*IO_HANDLER) (ACE_HANDLE);
-
- /// Handle timeout events.
- typedef int (T::*TO_HANDLER) (const ACE_Time_Value &, const void *);
-
- /// Handle close events.
- typedef int (T::*CL_HANDLER) (ACE_HANDLE, ACE_Reactor_Mask);
-
- /// = Initialization and termination methods.
- typedef int (T::*SIG_HANDLER) (int, siginfo_t*, ucontext_t*);
-
- /// Initialize the op_handler.
- ACE_Event_Handler_T (T *op_handler,
- int delete_handler,
- GET_HANDLE get_handle = 0,
- IO_HANDLER input = 0,
- CL_HANDLER close = 0,
- SIG_HANDLER sig = 0,
- TO_HANDLER timeout = 0,
- IO_HANDLER output = 0,
- SET_HANDLE set_handle = 0,
- IO_HANDLER except = 0);
-
- /// Close down and delete the <op_handler>
- ~ACE_Event_Handler_T (void);
-
- // = Override all the ACE_Event_Handler methods.
-
- // These methods all delegate down to the <T> operations handler.
- virtual ACE_HANDLE get_handle (void) const;
- virtual void set_handle (ACE_HANDLE);
- virtual int handle_input (ACE_HANDLE fd = ACE_INVALID_HANDLE);
- virtual int handle_output (ACE_HANDLE fd = ACE_INVALID_HANDLE);
- virtual int handle_exception (ACE_HANDLE fd = ACE_INVALID_HANDLE);
- virtual int handle_timeout (const ACE_Time_Value &tv, const void *arg = 0);
- virtual int handle_close (ACE_HANDLE fd, ACE_Reactor_Mask close_mask);
- virtual int handle_signal (int signum, siginfo_t * = 0, ucontext_t * = 0);
-
- // = Get/set the operations handler.
- T *op_handler (void);
- void op_handler (T *);
-
- // = Get/set the target pointer-to-method used for dispatching.
-
- GET_HANDLE handle_get (void);
- void handle_get (GET_HANDLE);
-
- SET_HANDLE handle_set (void);
- void handle_set (SET_HANDLE);
-
- IO_HANDLER input_handler (void);
- void input_handler (IO_HANDLER);
-
- IO_HANDLER output_handler (void);
- void output_handler (IO_HANDLER);
-
- IO_HANDLER except_handler (void);
- void except_handler (IO_HANDLER);
-
- TO_HANDLER to_handler (void);
- void to_handler (TO_HANDLER);
-
- CL_HANDLER cl_handler (void);
- void cl_handler (CL_HANDLER);
-
- SIG_HANDLER sig_handler (void);
- void sig_handler (SIG_HANDLER);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Pointer to the object that handles all the delegated operations.
- T *op_handler_;
-
- // = Handle input, output, and exception events.
- IO_HANDLER input_handler_;
- IO_HANDLER output_handler_;
- IO_HANDLER except_handler_;
-
- /// Handle timeout events.
- TO_HANDLER to_handler_;
-
- /// Handle close events.
- CL_HANDLER cl_handler_;
-
- /// Handle signal events.
- SIG_HANDLER sig_handler_;
-
- /// Keeps track of whether we need to delete the handler in the
- /// destructor.
- int delete_handler_;
-
- // = Get/set underlying handle.
- SET_HANDLE set_handle_;
- GET_HANDLE get_handle_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Event_Handler_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Event_Handler_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Event_Handler_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#endif /* ACE_HAS_TEMPLATE_TYPEDEFS */
-#include /**/ "ace/post.h"
-#endif /* ACE_EVENT_HANDLER_H */
-
diff --git a/dep/include/ace/Event_Handler_T.inl b/dep/include/ace/Event_Handler_T.inl
deleted file mode 100644
index 40db43e8e23..00000000000
--- a/dep/include/ace/Event_Handler_T.inl
+++ /dev/null
@@ -1,135 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Event_Handler_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Global_Macros.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template<class T> ACE_INLINE void
-ACE_Event_Handler_T<T>::op_handler (T *op)
-{
- ACE_TRACE ("ACE_Event_Handler_T<T>::op_handler");
- this->op_handler_ = op;
-}
-
-template<class T> ACE_INLINE T *
-ACE_Event_Handler_T<T>::op_handler (void)
-{
- ACE_TRACE ("ACE_Event_Handler_T<T>::op_handler");
- return this->op_handler_;
-}
-
-template<class T> ACE_INLINE typename ACE_Event_Handler_T<T>::GET_HANDLE
-ACE_Event_Handler_T<T>::handle_get (void)
-{
- ACE_TRACE ("ACE_Event_Handler_T<T>::handle_get");
- return this->get_handle_;
-}
-
-template<class T> ACE_INLINE void
-ACE_Event_Handler_T<T>::handle_get (typename ACE_Event_Handler_T<T>::GET_HANDLE h)
-{
- ACE_TRACE ("ACE_Event_Handler_T<T>::handle_get");
- this->get_handle_ = h;
-}
-
-template<class T> ACE_INLINE typename ACE_Event_Handler_T<T>::SET_HANDLE
-ACE_Event_Handler_T<T>::handle_set (void)
-{
- ACE_TRACE ("ACE_Event_Handler_T<T>::handle_set");
- return this->set_handle_;
-}
-
-template<class T> ACE_INLINE void
-ACE_Event_Handler_T<T>::handle_set (typename ACE_Event_Handler_T<T>::SET_HANDLE h)
-{
- ACE_TRACE ("ACE_Event_Handler_T<T>::handle_set");
- this->set_handle_ = h;
-}
-
-template<class T> ACE_INLINE typename ACE_Event_Handler_T<T>::IO_HANDLER
-ACE_Event_Handler_T<T>::input_handler (void)
-{
- ACE_TRACE ("ACE_Event_Handler_T<T>::input_handler");
- return this->input_handler_;
-}
-
-template<class T> ACE_INLINE void
-ACE_Event_Handler_T<T>::input_handler (typename ACE_Event_Handler_T<T>::IO_HANDLER h)
-{
- ACE_TRACE ("ACE_Event_Handler_T<T>::input_handler");
- this->input_handler_ = h;
-}
-
-template<class T> ACE_INLINE typename ACE_Event_Handler_T<T>::IO_HANDLER
-ACE_Event_Handler_T<T>::output_handler (void)
-{
- ACE_TRACE ("ACE_Event_Handler_T<T>::output_handler");
- return this->output_handler_;
-}
-
-template<class T> ACE_INLINE void
-ACE_Event_Handler_T<T>::output_handler (typename ACE_Event_Handler_T<T>::IO_HANDLER h)
-{
- ACE_TRACE ("ACE_Event_Handler_T<T>::output_handler");
- this->output_handler_ = h;
-}
-
-template<class T> ACE_INLINE typename ACE_Event_Handler_T<T>::IO_HANDLER
-ACE_Event_Handler_T<T>::except_handler (void)
-{
- ACE_TRACE ("ACE_Event_Handler_T<T>::except_handler");
- return this->except_handler_;
-}
-
-template<class T> ACE_INLINE void
-ACE_Event_Handler_T<T>::except_handler (typename ACE_Event_Handler_T<T>::IO_HANDLER h)
-{
- ACE_TRACE ("ACE_Event_Handler_T<T>::except_handler");
- this->except_handler_ = h;
-}
-
-template<class T> ACE_INLINE typename ACE_Event_Handler_T<T>::TO_HANDLER
-ACE_Event_Handler_T<T>::to_handler (void)
-{
- ACE_TRACE ("ACE_Event_Handler_T<T>::to_handler");
- return this->to_handler_;
-}
-
-template<class T> ACE_INLINE void
-ACE_Event_Handler_T<T>::to_handler (typename ACE_Event_Handler_T<T>::TO_HANDLER h)
-{
- ACE_TRACE ("ACE_Event_Handler_T<T>::to_handler");
- this->to_handler_ = h;
-}
-
-template<class T> ACE_INLINE typename ACE_Event_Handler_T<T>::CL_HANDLER
-ACE_Event_Handler_T<T>::cl_handler (void)
-{
- ACE_TRACE ("ACE_Event_Handler_T<T>::cl_handler");
- return this->cl_handler_;
-}
-
-template<class T> ACE_INLINE void
-ACE_Event_Handler_T<T>::cl_handler (typename ACE_Event_Handler_T<T>::CL_HANDLER h)
-{
- ACE_TRACE ("ACE_Event_Handler_T<T>::cl_handler");
- this->cl_handler_ = h;
-}
-
-template<class T> ACE_INLINE typename ACE_Event_Handler_T<T>::SIG_HANDLER
-ACE_Event_Handler_T<T>::sig_handler (void)
-{
- ACE_TRACE ("ACE_Event_Handler_T<T>::sig_handler");
- return this->sig_handler_;
-}
-
-template<class T> ACE_INLINE void
-ACE_Event_Handler_T<T>::sig_handler (typename ACE_Event_Handler_T<T>::SIG_HANDLER h)
-{
- ACE_TRACE ("ACE_Event_Handler_T<T>::sig_handler");
- this->sig_handler_ = h;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Exception_Macros.h b/dep/include/ace/Exception_Macros.h
deleted file mode 100644
index 32805184d04..00000000000
--- a/dep/include/ace/Exception_Macros.h
+++ /dev/null
@@ -1,56 +0,0 @@
-// -*- C++ -*-
-
-// ============================================================================
-/**
- * @file Exception_Macros.h
- *
- * $Id: Exception_Macros.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Writing code that is portable between platforms with or without
- * native C++ exceptions is hard. The following macros offer some
- * help on this task.
- *
- * @author Nanbor Wang <nanbor@cs.wustl.edu>
- * @author Aniruddha Gokhale <gokhale@sahyadri.research.bell-labs.com>
- * @author Carlos O'Ryan <coryan@uci.edu>
- * @author Krishnakumar B <kitty@cs.wustl.edu>, et al.
- */
-// ============================================================================
-
-// Macros for handling exceptions.
-
-#ifndef ACE_EXCEPTION_MACROS_H
-#define ACE_EXCEPTION_MACROS_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// By default, if the compiler supports native exception handling, assume
-// CORBA also support native exception handling. But it can be disabled by
-// defining ACE_CORBA_HAS_EXCEPTIONS=0. If the compiler does not support
-// exceptions handling, make sure native exception handling is disabled.
-#if defined (ACE_HAS_EXCEPTIONS)
-# if defined (ACE_CORBA_HAS_EXCEPTIONS)
-# if (ACE_CORBA_HAS_EXCEPTIONS == 0)
-# undef ACE_USES_NATIVE_EXCEPTIONS
-# else /* ACE_CORBA_HAS_EXCEPTIONS != 0 */
-# define ACE_USES_NATIVE_EXCEPTIONS
-# endif /* ACE_CORBA_HAS_EXCEPTIONS == 0 */
-# else
-# define ACE_USES_NATIVE_EXCEPTIONS
-# define ACE_CORBA_HAS_EXCEPTIONS
-# endif /* ACE_CORBA_HAS_EXCEPTIONS */
-#else /* ! ACE_HAS_EXCEPTIONS */
-# undef ACE_CORBA_HAS_EXCEPTIONS
-# undef ACE_USES_NATIVE_EXCEPTIONS
-#endif /* ACE_HAS_EXCEPTIONS */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_EXCEPTION_MACROS_H */
-
diff --git a/dep/include/ace/FIFO.h b/dep/include/ace/FIFO.h
deleted file mode 100644
index 76090778e8f..00000000000
--- a/dep/include/ace/FIFO.h
+++ /dev/null
@@ -1,85 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file FIFO.h
- *
- * $Id: FIFO.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//==========================================================================
-
-#ifndef ACE_FIFO_H
-#define ACE_FIFO_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/IPC_SAP.h"
-#include "ace/os_include/os_limits.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_FIFO
- *
- * @brief Abstract base class for UNIX FIFOs
- *
- * UNIX FIFOs are also known Named Pipes, which are totally
- * unrelated to Win32 Named Pipes. If you want to use a local
- * IPC mechanism that will be portable to both UNIX and Win32,
- * take a look at the <ACE_SPIPE_*> classes.
- */
-class ACE_Export ACE_FIFO : public ACE_IPC_SAP
-{
-public:
- /// Open up the named pipe on the <rendezvous> in accordance with the
- /// flags.
- int open (const ACE_TCHAR *rendezvous, int flags, mode_t perms,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- /// Close down the ACE_FIFO without removing the rendezvous point.
- int close (void);
-
- /// Close down the ACE_FIFO and remove the rendezvous point from the
- /// file system.
- int remove (void);
-
- /// Return the local address of this endpoint.
- int get_local_addr (const ACE_TCHAR *&rendezvous) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- // = Make these protected to ensure that the class is "abstract."
- /// Default constructor.
- ACE_FIFO (void);
-
- /// Open up the named pipe on the <rendezvous> in accordance with the
- /// flags.
- ACE_FIFO (const ACE_TCHAR *rendezvous, int flags, mode_t perms,
- LPSECURITY_ATTRIBUTES sa = 0);
-
-private:
- /// Rendezvous point in the file system.
- ACE_TCHAR rendezvous_[MAXPATHLEN + 1];
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/FIFO.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_FIFO_H */
-
diff --git a/dep/include/ace/FIFO.inl b/dep/include/ace/FIFO.inl
deleted file mode 100644
index 05cc030a917..00000000000
--- a/dep/include/ace/FIFO.inl
+++ /dev/null
@@ -1,25 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: FIFO.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_unistd.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_FIFO::get_local_addr (const ACE_TCHAR *&r) const
-{
- ACE_TRACE ("ACE_FIFO::get_local_addr");
- r = this->rendezvous_;
- return 0;
-}
-
-ACE_INLINE int
-ACE_FIFO::remove (void)
-{
- ACE_TRACE ("ACE_FIFO::remove");
- int const result = this->close ();
- return ACE_OS::unlink (this->rendezvous_) == -1 || result == -1 ? -1 : 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/FIFO_Recv.h b/dep/include/ace/FIFO_Recv.h
deleted file mode 100644
index 482b9a1f283..00000000000
--- a/dep/include/ace/FIFO_Recv.h
+++ /dev/null
@@ -1,85 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file FIFO_Recv.h
- *
- * $Id: FIFO_Recv.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//==========================================================================
-
-#ifndef ACE_FIFO_RECV_H
-#define ACE_FIFO_RECV_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/FIFO.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_fcntl.h"
-#include "ace/Default_Constants.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_FIFO_Recv
- *
- * @brief Receiver side of the bytestream C++ wrapper for UNIX
- * FIFOs.
- */
-class ACE_Export ACE_FIFO_Recv : public ACE_FIFO
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_FIFO_Recv (void);
-
- /// Open up a bytestream named pipe for reading.
- ACE_FIFO_Recv (const ACE_TCHAR *rendezvous,
- int flags = O_CREAT | O_RDONLY,
- mode_t perms = ACE_DEFAULT_FILE_PERMS,
- int persistent = 1,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- /// Open up a bytestream named pipe for reading.
- int open (const ACE_TCHAR *rendezvous,
- int flags = O_CREAT | O_RDONLY,
- mode_t perms = ACE_DEFAULT_FILE_PERMS,
- int persistent = 1,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- /// Close down the named pipe.
- int close (void);
-
- /// Recv @a buf of up to @a len bytes.
- ssize_t recv (void *buf, size_t len);
-
- /// Recv @a buf of exactly @a len bytes (block until done).
- ssize_t recv_n (void *buf, size_t len);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Auxiliary handle that is used to implement persistent FIFOs.
- ACE_HANDLE aux_handle_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/FIFO_Recv.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_FIFO_RECV_H */
-
diff --git a/dep/include/ace/FIFO_Recv.inl b/dep/include/ace/FIFO_Recv.inl
deleted file mode 100644
index d4c3fee4326..00000000000
--- a/dep/include/ace/FIFO_Recv.inl
+++ /dev/null
@@ -1,24 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: FIFO_Recv.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/ACE.h"
-#include "ace/OS_NS_unistd.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ssize_t
-ACE_FIFO_Recv::recv (void *buf, size_t len)
-{
- ACE_TRACE ("ACE_FIFO_Recv::recv");
- return ACE_OS::read (this->get_handle (), (char *) buf, len);
-}
-
-ACE_INLINE ssize_t
-ACE_FIFO_Recv::recv_n (void *buf, size_t n)
-{
- ACE_TRACE ("ACE_FIFO_Recv::recv_n");
- return ACE::recv_n (this->get_handle (), buf, n);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/FIFO_Recv_Msg.h b/dep/include/ace/FIFO_Recv_Msg.h
deleted file mode 100644
index c9ce36a1523..00000000000
--- a/dep/include/ace/FIFO_Recv_Msg.h
+++ /dev/null
@@ -1,138 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file FIFO_Recv_Msg.h
- *
- * $Id: FIFO_Recv_Msg.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_FIFO_RECV_MSG_H
-#define ACE_FIFO_RECV_MSG_H
-#include /**/ "ace/pre.h"
-
-#include "ace/FIFO_Recv.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decls
-class ACE_Str_Buf;
-
-/**
- * @class ACE_FIFO_Recv_Msg
- *
- * @brief Receiver side for the record oriented C++ wrapper for UNIX FIFOs.
- *
- * This method works slightly differently on platforms with the
- * @c ACE_HAS_STREAM_PIPES configuration setting than those without.
- * With ACE_HAS_STREAM_PIPES, the @c getmsg() system function is used
- * and it preserves message boundaries internally. Without
- * @c ACE_HAS_STREAM_PIPES, the message boundaries are emulated by
- * this class and ACE_FIFO_Send_Msg cooperating. The sending class
- * first writes an integer number of bytes in the message, then the
- * message. ACE_FIFO_Recv_Msg reads the count, then the data.
- * The operational differences occur primarily when a message is larger
- * than what a caller of this class requests. See recv() for details.
- */
-class ACE_Export ACE_FIFO_Recv_Msg : public ACE_FIFO_Recv
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_FIFO_Recv_Msg (void);
-
- /// Open up a record-oriented named pipe for reading.
- ACE_FIFO_Recv_Msg (const ACE_TCHAR *rendezvous,
- int flags = O_CREAT | O_RDONLY,
- mode_t perms = ACE_DEFAULT_FILE_PERMS,
- int persistent = 1,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- /// Open up a record-oriented named pipe for reading.
- int open (const ACE_TCHAR *rendezvous,
- int flags = O_CREAT | O_RDONLY,
- mode_t perms = ACE_DEFAULT_FILE_PERMS,
- int persistent = 1,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- /// Receive a message based on attributes in an ACE_Str_Buf.
- /**
- * @param msg Reference to an ACE_Str_Buf whose @c buf member points
- * to the memory to receive the data and @c maxlen member
- * contains the maximum number of bytes to receive.
- * On return after successfully reading data, the
- * @c len member contains the number of bytes received and
- * placed in the buffer pointed to by @c msg.buf.
- *
- * @retval -1 Error; consult @c errno for specific error number.
- * @return If the @c ACE_HAS_STREAM_PIPES configuration setting is
- * defined, the return value is the number of bytes received
- * in the message and will be the same as @c buf.len.
- * The return value from the @c getmsg() system function
- * is discarded.
- * If @c ACE_HAS_STREAM_PIPES is not defined, the number
- * of bytes in the message read from the FIFO is returned.
- * If the message is larger than the maximum length
- * requested in @c msg.maxlen, the return value reflects
- * the entire message length, and the @c msg.len member
- * reflects how many bytes were actually placed in the
- * caller's buffer. Any part of the message longer than
- * @c msg.maxlen is discarded.
- */
- ssize_t recv (ACE_Str_Buf &msg);
-
- /// Receive a message based on buffer pointer and maximum size.
- /**
- * @param buf Pointer to the memory to receive the data.
- * @param len The maximum number of bytes to receive.
- *
- * @retval -1 Error; consult @c errno for specific error number.
- * @return The number of bytes received in the message. For messages
- * that are larger than the requested maximum size, the
- * behavior is different depending on the @c ACE_HAS_STREAM_PIPES
- * configuration setting. With @c ACE_HAS_STREAM_PIPES,
- * the return value will be the same as @arg len (this is
- * also possible if the message is exactly the same length
- * as @arg len, and the two cases are indistinguishable).
- * Without @c ACE_HAS_STREAM_PIPES, the return value is
- * the total length of the message, including bytes in
- * excess of @arg len. The excess bytes are discarded.
- */
- ssize_t recv (void *buf, size_t len);
-
-#if defined (ACE_HAS_STREAM_PIPES)
- /// Recv <data> and <cntl> message via Stream pipes.
- ssize_t recv (ACE_Str_Buf *data,
- ACE_Str_Buf *cntl,
- int *flags);
-
- /// Recv <data> and <cntl> message via Stream pipes in "band" mode.
- ssize_t recv (int *band,
- ACE_Str_Buf *data,
- ACE_Str_Buf *cntl,
- int *flags);
-#endif /* ACE_HAS_STREAM_PIPES */
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/FIFO_Recv_Msg.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_FIFO_RECV_MSG_H */
-
diff --git a/dep/include/ace/FIFO_Recv_Msg.inl b/dep/include/ace/FIFO_Recv_Msg.inl
deleted file mode 100644
index 3055892172b..00000000000
--- a/dep/include/ace/FIFO_Recv_Msg.inl
+++ /dev/null
@@ -1,137 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: FIFO_Recv_Msg.inl 82559 2008-08-07 20:23:07Z parsons $
-
-#include "ace/Min_Max.h"
-#include "ace/OS_NS_stropts.h"
-#include "ace/Truncate.h"
-
-#if !defined (ACE_HAS_STREAM_PIPES)
-#include "ace/OS_NS_unistd.h"
-#endif
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ssize_t
-ACE_FIFO_Recv_Msg::recv (ACE_Str_Buf &recv_msg)
-{
- ACE_TRACE ("ACE_FIFO_Recv_Msg::recv");
-#if defined (ACE_HAS_STREAM_PIPES)
- int i = 0;
- if (ACE_OS::getmsg (this->get_handle (),
- (strbuf *) 0,
- (strbuf *) &recv_msg,
- &i) == -1)
- {
- return -1;
- }
- else
- {
- return recv_msg.len;
- }
-#else /* Do the ol' 2-read trick... */
- if (ACE_OS::read (this->get_handle (),
- (char *) &recv_msg.len,
- sizeof recv_msg.len) != sizeof recv_msg.len)
- {
- return -1;
- }
- else
- {
- size_t remaining = static_cast<size_t> (recv_msg.len);
- size_t requested = static_cast<size_t> (recv_msg.maxlen);
- ssize_t recv_len = ACE_OS::read (this->get_handle (),
- (char *) recv_msg.buf,
- ACE_MIN (remaining, requested));
-
- if (recv_len == -1)
- {
- return -1;
- }
-
- // Tell caller what's really in the buffer.
- recv_msg.len = static_cast<int> (recv_len);
-
- // If there are more bytes remaining in the message, read them and
- // throw them away. Leaving them in the FIFO would make it difficult
- // to find the start of the next message in the fifo.
- // Since the ACE_HAS_STREAM_PIPES version of this method doesn't
- // return getmsg()'s indication of "data remaining", don't worry about
- // saving the indication here either to read the remainder later.
- size_t total_msg_size = remaining;
- remaining -= recv_len;
-
- while (remaining > 0)
- {
- const size_t throw_away = 1024;
- char dev_null[throw_away];
- recv_len = ACE_OS::read (this->get_handle (),
- dev_null,
- ACE_MIN (remaining, throw_away));
-
- if (recv_len == -1)
- {
- break;
- }
-
- remaining -= recv_len;
- }
-
- return ACE_Utils::truncate_cast<ssize_t> (total_msg_size);
- }
-#endif /* ACE_HAS_STREAM_PIPES */
-}
-
-ACE_INLINE ssize_t
-ACE_FIFO_Recv_Msg::recv (void *buf, size_t max_len)
-{
- ACE_TRACE ("ACE_FIFO_Recv_Msg::recv");
- ACE_Str_Buf recv_msg ((char *) buf, 0, static_cast<int> (max_len));
-
- return this->recv (recv_msg);
-}
-
-#if defined (ACE_HAS_STREAM_PIPES)
-ACE_INLINE ssize_t
-ACE_FIFO_Recv_Msg::recv (ACE_Str_Buf *data,
- ACE_Str_Buf *cntl,
- int *flags)
-{
- ACE_TRACE ("ACE_FIFO_Recv_Msg::recv");
- if (ACE_OS::getmsg (this->get_handle (),
- (strbuf *) cntl,
- (strbuf *) data,
- flags) == -1)
- {
- return -1;
- }
- else
- {
- return (cntl == 0 ? 0 : cntl->len) + (data == 0 ? 0 : data->len);
- }
-}
-
-ACE_INLINE ssize_t
-ACE_FIFO_Recv_Msg::recv (int *band,
- ACE_Str_Buf *data,
- ACE_Str_Buf *cntl,
- int *flags)
-{
- ACE_TRACE ("ACE_FIFO_Recv_Msg::recv");
-
- if (ACE_OS::getpmsg (this->get_handle (),
- (strbuf *) cntl,
- (strbuf *) data,
- band,
- flags) == -1)
- {
- return -1;
- }
- else
- {
- return (cntl == 0 ? 0 : cntl->len) + (data == 0 ? 0 : data->len);
- }
-}
-#endif /* ACE_HAS_STREAM_PIPES */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/FIFO_Send.h b/dep/include/ace/FIFO_Send.h
deleted file mode 100644
index 414569325d9..00000000000
--- a/dep/include/ace/FIFO_Send.h
+++ /dev/null
@@ -1,75 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file FIFO_Send.h
- *
- * $Id: FIFO_Send.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//==========================================================================
-
-#ifndef ACE_FIFO_SEND_H
-#define ACE_FIFO_SEND_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/FIFO.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_fcntl.h"
-#include "ace/Default_Constants.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_FIFO_Send
- *
- * @brief Sender side for the bytestream C++ wrapper for UNIX FIFOs
- */
-class ACE_Export ACE_FIFO_Send : public ACE_FIFO
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_FIFO_Send (void);
-
- /// Open up a bytestream named pipe for writing.
- ACE_FIFO_Send (const ACE_TCHAR *rendezvous,
- int flags = O_WRONLY,
- mode_t perms = ACE_DEFAULT_FILE_PERMS,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- /// Open up a bytestream named pipe for writing.
- int open (const ACE_TCHAR *rendezvous,
- int flags = O_WRONLY,
- mode_t perms = ACE_DEFAULT_FILE_PERMS,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- /// Send @a buf of up to @a len bytes.
- ssize_t send (const void *buf, size_t len);
-
- /// Send @a buf of exactly @a len bytes (block until done).
- ssize_t send_n (const void *buf, size_t len);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/FIFO_Send.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_FIFO_SEND_H */
-
diff --git a/dep/include/ace/FIFO_Send.inl b/dep/include/ace/FIFO_Send.inl
deleted file mode 100644
index a01facd61f0..00000000000
--- a/dep/include/ace/FIFO_Send.inl
+++ /dev/null
@@ -1,24 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: FIFO_Send.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/ACE.h"
-#include "ace/OS_NS_unistd.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ssize_t
-ACE_FIFO_Send::send (const void *buf, size_t len)
-{
- ACE_TRACE ("ACE_FIFO_Send::send");
- return ACE_OS::write (this->get_handle (), (const char *) buf, len);
-}
-
-ACE_INLINE ssize_t
-ACE_FIFO_Send::send_n (const void *buf, size_t n)
-{
- ACE_TRACE ("ACE_FIFO_Send::send_n");
- return ACE::send_n (this->get_handle (), buf, n);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/FIFO_Send_Msg.h b/dep/include/ace/FIFO_Send_Msg.h
deleted file mode 100644
index 79314a89ad5..00000000000
--- a/dep/include/ace/FIFO_Send_Msg.h
+++ /dev/null
@@ -1,91 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file FIFO_Send_Msg.h
- *
- * $Id: FIFO_Send_Msg.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_FIFO_SEND_MSG_H
-#define ACE_FIFO_SEND_MSG_H
-#include /**/ "ace/pre.h"
-
-#include "ace/FIFO_Send.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_STREAM_PIPES)
-# include "ace/OS_NS_stropts.h"
-#endif /* ACE_HAS_STREAM_PIPES */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward Decls
-class ACE_Str_Buf;
-
-/**
- * @class ACE_FIFO_Send_Msg
- *
- * @brief Sender side for the Record oriented C++ wrapper for UNIX
- * FIFOs.
- */
-class ACE_Export ACE_FIFO_Send_Msg : public ACE_FIFO_Send
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_FIFO_Send_Msg (void);
-
- /// Open up a record-oriented named pipe for writing.
- ACE_FIFO_Send_Msg (const ACE_TCHAR *rendezvous,
- int flags = O_WRONLY,
- mode_t perms = ACE_DEFAULT_FILE_PERMS,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- /// Open up a record-oriented named pipe for writing.
- int open (const ACE_TCHAR *rendezvous,
- int flags = O_WRONLY,
- mode_t perms = ACE_DEFAULT_FILE_PERMS,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- /// Send @a buf of up to @a len bytes.
- ssize_t send (const ACE_Str_Buf &msg);
-
- /// Send @a buf of exactly @a len bytes (block until done).
- ssize_t send (const void *buf, size_t len);
-
-#if defined (ACE_HAS_STREAM_PIPES)
- /// Send <data> and <cntl> message via Stream pipes.
- ssize_t send (const ACE_Str_Buf *data,
- const ACE_Str_Buf *cntl = 0,
- int flags = 0);
-
- /// Send <data> and <cntl> message via Stream pipes in "band" mode.
- ssize_t send (int band,
- const ACE_Str_Buf *data,
- const ACE_Str_Buf *cntl = 0,
- int flags = MSG_BAND);
-#endif /* ACE_HAS_STREAM_PIPES */
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/FIFO_Send_Msg.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_FIFO_SEND_MSG_H */
-
diff --git a/dep/include/ace/FIFO_Send_Msg.inl b/dep/include/ace/FIFO_Send_Msg.inl
deleted file mode 100644
index 0a34e64e370..00000000000
--- a/dep/include/ace/FIFO_Send_Msg.inl
+++ /dev/null
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: FIFO_Send_Msg.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_stropts.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ssize_t
-ACE_FIFO_Send_Msg::send (const void *buf, size_t len)
-{
- ACE_TRACE ("ACE_FIFO_Send_Msg::send");
- ACE_Str_Buf send_msg ((char *) buf, static_cast<int> (len));
-
- return this->send (send_msg);
-}
-
-#if defined (ACE_HAS_STREAM_PIPES)
-ACE_INLINE ssize_t
-ACE_FIFO_Send_Msg::send (const ACE_Str_Buf *data,
- const ACE_Str_Buf *cntl,
- int flags)
-{
- ACE_TRACE ("ACE_FIFO_Send_Msg::send");
- if (ACE_OS::putmsg (this->get_handle (),
- (strbuf *) cntl,
- (strbuf *) data,
- flags) == -1)
- return-1;
- else
- return (cntl == 0 ? 0 : cntl->len) + (data == 0 ? 0 : data->len);
-}
-
-ACE_INLINE ssize_t
-ACE_FIFO_Send_Msg::send (int band,
- const ACE_Str_Buf *data,
- const ACE_Str_Buf *cntl,
- int flags)
-{
- ACE_TRACE ("ACE_FIFO_Send_Msg::send");
-
- if (ACE_OS::putpmsg (this->get_handle (),
- (strbuf *) cntl,
- (strbuf *) data,
- band,
- flags) == -1)
- return -1;
- else
- return (cntl == 0 ? 0 : cntl->len) + (data == 0 ? 0 : data->len);
-}
-#endif /* ACE_HAS_STREAM_PIPES */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/FILE.h b/dep/include/ace/FILE.h
deleted file mode 100644
index 44d5ac71d20..00000000000
--- a/dep/include/ace/FILE.h
+++ /dev/null
@@ -1,140 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file FILE.h
- *
- * $Id: FILE.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Gerhard Lenzer
- */
-//=============================================================================
-
-#ifndef ACE_FILE_H
-#define ACE_FILE_H
-#include /**/ "ace/pre.h"
-
-#include "ace/IO_SAP.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/FILE_Addr.h"
-
-// The following is necessary since many C++ compilers don't support
-// typedef'd types inside of classes used as formal template
-// arguments... ;-(. Luckily, using the C++ preprocessor I can hide
-// most of this nastiness!
-
-#if defined (ACE_HAS_TEMPLATE_TYPEDEFS)
-#define ACE_FILE_CONNECTOR ACE_FILE_Connector
-#define ACE_FILE_STREAM ACE_FILE_IO
-#else /* TEMPLATES are broken (must be a cfront-based compiler...) */
-#define ACE_FILE_CONNECTOR ACE_FILE_Connector, ACE_FILE_Addr
-#define ACE_FILE_STREAM ACE_FILE_IO, ACE_FILE_Addr
-#endif /* ACE_TEMPLATE_TYPEDEFS */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_FILE_Info
- *
- * @brief Abstracts basic OS FILE information.
- */
-class ACE_Export ACE_FILE_Info
-{
-public:
- /// Mode of file
- mode_t mode_;
-
- /// No of links
- nlink_t nlink_;
-
- /// Size of file
- ACE_OFF_T size_;
-};
-
-/**
- * @class ACE_FILE
- *
- * @brief Defines the core methods of the ACE_FILE abstraction.
- */
-class ACE_Export ACE_FILE : public ACE_IO_SAP
-{
-public:
- /// Close the ACE_FILE handle without removing the ACE_FILE from
- /// the file system.
- int close (void);
-
- /// Close and remove the ACE_FILE from the file system.
- int remove (void);
-
- /// Remove the ACE_FILE from the file system without closing the
- /// ACE_FILE handle.
- int unlink (void);
-
- /// Get information on this ACE_FILE.
- int get_info (ACE_FILE_Info *finfo);
-
- /// Get information on this ACE_FILE.
- int get_info (ACE_FILE_Info &finfo);
-
- /// Set filesize to length byte.
- int truncate (ACE_OFF_T length);
-
- /**
- * Sets the file pointer as follows:
- * o If <whence> is <SEEK_SET>, the pointer is set to @a offset
- * bytes.
- *
- * o If <whence> is <SEEK_CUR>, the pointer is set to its
- * current location plus @a offset.
- *
- * o If <whence> is <SEEK_END>, the pointer is set to the size
- * of the file plus offset.
- */
- ACE_OFF_T seek (ACE_OFF_T offset,
- int whence = SEEK_CUR);
-
- /// Return an offset for the file handle.
- ACE_OFF_T tell (void);
-
- /**
- * Disable signal @a signum
- * This is here to prevent Win32 from
- * disabling SPIPE using socket calls
- */
- int disable (int signum) const ;
-
- /// Return the local endpoint address in the referenced ACE_Addr.
- /// Returns 0 if successful, else -1.
- int get_local_addr (ACE_Addr &) const;
-
- /// Return the same thing as get_local_addr().
- int get_remote_addr (ACE_Addr &) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Ensure that this class is only created by the
- /// ACE_FILE_Connector.
- ACE_FILE (void);
-
- /// File we are "connected" with...
- ACE_FILE_Addr addr_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/FILE.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_FILE_H */
-
diff --git a/dep/include/ace/FILE.inl b/dep/include/ace/FILE.inl
deleted file mode 100644
index 288374afc58..00000000000
--- a/dep/include/ace/FILE.inl
+++ /dev/null
@@ -1,18 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: FILE.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_FILE::disable (int signum) const
-{
-#if defined (ACE_WIN32)
- ACE_UNUSED_ARG (signum) ;
- return 0 ;
-#else /* ACE_WIN32 */
- return ACE_IO_SAP::disable (signum) ;
-#endif /* ACE_WIN32 */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/FILE_Addr.h b/dep/include/ace/FILE_Addr.h
deleted file mode 100644
index 0604b689e5b..00000000000
--- a/dep/include/ace/FILE_Addr.h
+++ /dev/null
@@ -1,90 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file FILE_Addr.h
- *
- * $Id: FILE_Addr.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_FILE_ADDR_H
-#define ACE_FILE_ADDR_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Addr.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Flag_Manip.h"
-#include "ace/os_include/os_dirent.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_FILE_Addr
- *
- * @brief Defines the FILE address family address format.
- */
-class ACE_Export ACE_FILE_Addr : public ACE_Addr
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_FILE_Addr (void);
-
- /// Copy constructor.
- ACE_FILE_Addr (const ACE_FILE_Addr &sa);
-
- /// Acts like a copy constructor. If @a sa == ACE_Addr::sap_any then
- /// create a temporary filename using ACE_OS::mktemp.
- int set (const ACE_FILE_Addr &sa);
-
- /// Create a ACE_FILE_Addr from a pathname.
- explicit ACE_FILE_Addr (const ACE_TCHAR *filename);
-
- /// Create a ACE_FILE_Addr from a pathname.
- int set (const ACE_TCHAR *filename);
-
- /// Assignment operator.
- ACE_FILE_Addr &operator= (const ACE_FILE_Addr &);
-
- /// Return a pointer to the address.
- virtual void *get_addr (void) const;
-
- /// Transform the current address into string format.
- virtual int addr_to_string (ACE_TCHAR *addr, size_t) const;
-
- /// Compare two addresses for equality.
- bool operator == (const ACE_FILE_Addr &SAP) const;
-
- /// Compare two addresses for inequality.
- bool operator != (const ACE_FILE_Addr &SAP) const;
-
- /// Return the path name used for the rendezvous point.
- const ACE_TCHAR *get_path_name (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Name of the file.
- ACE_TCHAR filename_[MAXPATHLEN + 1];
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/FILE_Addr.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_FILE_ADDR_H */
-
diff --git a/dep/include/ace/FILE_Addr.inl b/dep/include/ace/FILE_Addr.inl
deleted file mode 100644
index b323911e516..00000000000
--- a/dep/include/ace/FILE_Addr.inl
+++ /dev/null
@@ -1,33 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: FILE_Addr.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/SString.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Compare two addresses for equality.
-
-ACE_INLINE bool
-ACE_FILE_Addr::operator == (const ACE_FILE_Addr &sap) const
-{
- return ACE_OS::strcmp (this->filename_, sap.filename_) == 0;
-}
-
-// Compare two addresses for inequality.
-
-ACE_INLINE bool
-ACE_FILE_Addr::operator != (const ACE_FILE_Addr &sap) const
-{
- return !((*this) == sap); // This is lazy, of course... ;-)
-}
-
-// Return the path name used for the rendezvous point.
-
-ACE_INLINE const ACE_TCHAR *
-ACE_FILE_Addr::get_path_name (void) const
-{
- return this->filename_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/FILE_Connector.h b/dep/include/ace/FILE_Connector.h
deleted file mode 100644
index 4f87e209d66..00000000000
--- a/dep/include/ace/FILE_Connector.h
+++ /dev/null
@@ -1,114 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file FILE_Connector.h
- *
- * $Id: FILE_Connector.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_FILE_CONNECTOR_H
-#define ACE_FILE_CONNECTOR_H
-#include /**/ "ace/pre.h"
-
-#include "ace/FILE_IO.h"
-#include "ace/Log_Msg.h"
-#include "ace/os_include/os_fcntl.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_FILE_Connector
- *
- * @brief Defines an active connection factory for the ACE_FILE wrappers.
- *
- * Note that the O_APPEND flag is only partly supported on Win32. If
- * you specify O_APPEND, then the file pointer will be positioned at
- * the end of the file initially during open, but it is not
- * re-positioned at the end prior to each write, as specified by
- * POSIX. This is generally good enough for typical situations, but
- * it is ``not quite right'' in its semantics.
- */
-class ACE_Export ACE_FILE_Connector
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_FILE_Connector (void);
-
- /**
- * Actively ``connect'' and produce a @a new_io ACE_FILE_IO object
- * if things go well. The @a remote_sap is the file that we are
- * trying to create/open. If it's the default value of
- * ACE_Addr::sap_any then the user is letting the OS create the
- * filename (via <ACE_OS::mkstemp>). The @a timeout is the amount of
- * time to wait to create/open the file. If it's 0 then we block
- * indefinitely. If *timeout == {0, 0} then the file is created
- * using non-blocking mode. If *timeout > {0, 0} then this is the
- * maximum amount of time to wait before timing out. The
- * @a local_sap and @a reuse_addr parameters are ignored. The @a flags
- * and @a perms arguments are passed down to the <ACE_OS::open>
- * method.
- */
- ACE_FILE_Connector (ACE_FILE_IO &new_io,
- const ACE_FILE_Addr &remote_sap,
- ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = O_RDWR | O_CREAT,
- int perms = ACE_DEFAULT_FILE_PERMS);
-
- /**
- * Actively ``connect'' and produce a @a new_io <ACE_FILE_IO> object
- * if things go well. The @a remote_sap is the file that we are
- * trying to create/open. If it's the default value of
- * ACE_Addr::sap_any then the user is letting the OS create the
- * filename (via <ACE_OS::mkstemp>). The @a timeout is the amount of
- * time to wait to create/open the file. If it's 0 then we block
- * indefinitely. If *timeout == {0, 0} then the file is created
- * using non-blocking mode. In this case, if the create/open can't
- * be done immediately the value of -1 is returned with <errno ==
- * EWOULDBLOCK>. If *timeout > {0, 0} then this is the maximum amount of
- * time to wait before timing out. If the time expires before the
- * connection is made @c errno == ETIME. The @a local_sap and
- * @a reuse_addr parameters are ignored. The @a flags and @a perms
- * arguments are passed down to the <ACE_OS::open> method.
- */
- int connect (ACE_FILE_IO &new_io,
- const ACE_FILE_Addr &remote_sap,
- ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = O_RDWR | O_CREAT,
- int perms = ACE_DEFAULT_FILE_PERMS);
-
- /// Resets any event associations on this handle
- int reset_new_handle (ACE_HANDLE handle);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- // = Meta-type "trait" information.
- typedef ACE_FILE_Addr PEER_ADDR;
- typedef ACE_FILE_IO PEER_STREAM;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/FILE_Connector.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_FILE_CONNECTOR_H */
-
diff --git a/dep/include/ace/FILE_Connector.inl b/dep/include/ace/FILE_Connector.inl
deleted file mode 100644
index deab94e0061..00000000000
--- a/dep/include/ace/FILE_Connector.inl
+++ /dev/null
@@ -1,36 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: FILE_Connector.inl 80826 2008-03-04 14:51:23Z wotte $
-
-// Creates a Local ACE_FILE.
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_FILE_Connector::ACE_FILE_Connector (ACE_FILE_IO &new_io,
- const ACE_FILE_Addr &remote_sap,
- ACE_Time_Value *timeout,
- const ACE_Addr &local_sap,
- int reuse_addr,
- int flags,
- int perms)
-{
- ACE_TRACE ("ACE_FILE_Connector::ACE_FILE_Connector");
- if (this->connect (new_io, remote_sap, timeout, local_sap,
- reuse_addr, flags, perms) == ACE_IO_SAP::INVALID_HANDLE
- && timeout != 0 && !(errno == EWOULDBLOCK || errno == ETIME))
- ACE_ERROR ((LM_ERROR,
- ACE_TEXT ("address %s, %p\n"),
- remote_sap.get_path_name (),
- ACE_TEXT ("ACE_FILE_IO")));
-}
-
-ACE_INLINE int
-ACE_FILE_Connector::reset_new_handle (ACE_HANDLE handle)
-{
- ACE_UNUSED_ARG (handle);
- // Nothing to do here since the handle is not a socket
- return 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/FILE_IO.h b/dep/include/ace/FILE_IO.h
deleted file mode 100644
index a1a470b8d30..00000000000
--- a/dep/include/ace/FILE_IO.h
+++ /dev/null
@@ -1,171 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file FILE_IO.h
- *
- * $Id: FILE_IO.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_FILE_IO_H
-#define ACE_FILE_IO_H
-#include /**/ "ace/pre.h"
-
-#include "ace/FILE.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/FILE_Addr.h"
-
-// Used in the FILE_IO.h file...
-#include "ace/os_include/os_stdio.h"
-#include "ace/os_include/sys/os_uio.h"
-
-#if defined (ACE_HAS_STREAM_PIPES)
-# include "ace/OS_NS_stropts.h"
-#endif /* ACE_HAS_STREAM_PIPES */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decl.
-class ACE_Message_Block;
-class ACE_Time_Value;
-
-/**
- * @class ACE_FILE_IO
- *
- * @brief Read/Write operations on Files
- */
-class ACE_Export ACE_FILE_IO : public ACE_FILE
-{
-public:
- friend class ACE_FILE_Connector;
-
- // = Initialization method.
- /// Default constructor.
- ACE_FILE_IO (void);
-
- /// send upto @a n bytes in @a buf.
- ssize_t send (const void *buf, size_t n) const;
-
- /// Recv upto @a n bytes in @a buf.
- ssize_t recv (void *buf, size_t n) const;
-
- /// Send n bytes, keep trying until n are sent.
- ssize_t send_n (const void *buf, size_t n) const;
-
- /// Send all the @a message_blocks chained through their <next> and
- /// <cont> pointers. This call uses the underlying OS gather-write
- /// operation to reduce the domain-crossing penalty.
- ssize_t send_n (const ACE_Message_Block *message_block,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0);
-
- /// Recv n bytes, keep trying until n are received.
- ssize_t recv_n (void *buf, size_t n) const;
-
-#if defined (ACE_HAS_STREAM_PIPES)
- /// Send bytes via STREAM pipes.
- ssize_t send (const ACE_Str_Buf *cntl,
- const ACE_Str_Buf *data,
- int flags = 0) const;
-
- /// Recv bytes via STREAM pipes.
- ssize_t recv (ACE_Str_Buf *cntl,
- ACE_Str_Buf *data,
- int *flags) const;
-
- /// Send bytes via STREAM pipes using "band" mode.
- ssize_t send (const ACE_Str_Buf *cntl,
- const ACE_Str_Buf *data,
- int band,
- int flags) const;
-
- /// Recv bytes via STREAM pipes using "band" mode.
- ssize_t recv (ACE_Str_Buf *cntl,
- ACE_Str_Buf *data,
- int *band,
- int *flags) const;
-
-#endif /* ACE_HAS_STREAM_PIPES */
-
- /// Send iovecs via <::writev>.
- ssize_t send (const iovec iov[], int n) const;
-
- /// Recv iovecs via <::readv>.
- ssize_t recv (iovec iov[], int n) const;
-
- /**
- * Send N char *ptrs and int lengths. Note that the char *'s
- * precede the ints (basically, an varargs version of writev). The
- * count N is the *total* number of trailing arguments, *not* a
- * couple of the number of tuple pairs!
- */
- ssize_t send (size_t n, ...) const;
-
- /**
- * This is an interface to ::readv, that doesn't use the struct
- * iovec explicitly. The ... can be passed as an arbitrary number
- * of (char *ptr, int len) tuples. However, the count N is the
- * *total* number of trailing arguments, *not* a couple of the
- * number of tuple pairs!
- */
- ssize_t recv (size_t n, ...) const;
-
- /// Send @a n bytes via Win32 WriteFile using overlapped I/O.
- ssize_t send (const void *buf,
- size_t n,
- ACE_OVERLAPPED *overlapped) const;
-
- /// Recv @a n bytes via Win32 ReadFile using overlapped I/O.
- ssize_t recv (void *buf,
- size_t n,
- ACE_OVERLAPPED *overlapped) const;
-
- /// Send an @c iovec of size @a n to the file.
- ssize_t sendv (const iovec iov[],
- int n) const;
-
- /**
- * Allows a client to read from a file without having to provide a
- * buffer to read. This method determines how much data is in the
- * file, allocates a buffer of this size, reads in the data, and
- * returns the number of bytes read. The caller is responsible for
- * deleting the member in the <iov_base> field of <io_vec> using
- * delete [] io_vec->iov_base.
- */
- ssize_t recvv (iovec *io_vec);
-
- /// Send an <iovec> of size @a n to the file. Will block until all
- /// bytes are sent or an error occurs.
- ssize_t sendv_n (const iovec iov[],
- int n) const;
-
- /// Receive an <iovec> of size @a n to the file.
- ssize_t recvv_n (iovec iov[],
- int n) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- // = Meta-type info
- typedef ACE_FILE_Addr PEER_ADDR;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/FILE_IO.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_FILE_IO_H */
-
diff --git a/dep/include/ace/FILE_IO.inl b/dep/include/ace/FILE_IO.inl
deleted file mode 100644
index d2e4f756c2c..00000000000
--- a/dep/include/ace/FILE_IO.inl
+++ /dev/null
@@ -1,152 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: FILE_IO.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/ACE.h"
-#include "ace/OS_NS_sys_uio.h"
-#include "ace/OS_NS_unistd.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ssize_t
-ACE_FILE_IO::sendv_n (const iovec iov[], int n) const
-{
- ACE_TRACE ("ACE_FILE_IO::sendv_n");
- return ACE::writev_n (this->get_handle (),
- iov,
- n);
-}
-
-ACE_INLINE ssize_t
-ACE_FILE_IO::send_n (const ACE_Message_Block *message_block,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred)
-{
- ACE_TRACE ("ACE_FILE_IO::send_n");
- ACE_UNUSED_ARG (timeout);
- return ACE::write_n (this->get_handle (),
- message_block,
- bytes_transferred);
-}
-
-// Recv an n byte message from the file.
-
-ACE_INLINE ssize_t
-ACE_FILE_IO::recvv_n (iovec iov[], int n) const
-{
- ACE_TRACE ("ACE_FILE_IO::recvv_n");
- // @@ Carlos, can you please update this to call the
- // new ACE::recvv_n() method that you write?
- return ACE_OS::readv (this->get_handle (),
- iov,
- n);
-}
-
-// Send an <iovec> of size <n> to the file.
-
-ACE_INLINE ssize_t
-ACE_FILE_IO::sendv (const iovec iov[], int n) const
-{
- ACE_TRACE ("ACE_FILE_IO::sendv");
- return ACE_OS::writev (this->get_handle (), iov, n);
-}
-
-// Send exactly N bytes from BUF to this file. Keeping trying until
-// this many bytes are sent.
-
-ACE_INLINE ssize_t
-ACE_FILE_IO::send_n (const void *buf, size_t n) const
-{
- ACE_TRACE ("ACE_FILE_IO::send_n");
- return ACE::write_n (this->get_handle (), buf, n);
-}
-
-// Receive exactly N bytes from this file into BUF. Keep trying until
-// this many bytes are received.
-
-ACE_INLINE ssize_t
-ACE_FILE_IO::recv_n (void *buf, size_t n) const
-{
- ACE_TRACE ("ACE_FILE_IO::recv_n");
- return ACE::read_n (this->get_handle (), buf, n);
-}
-
-ACE_INLINE ssize_t
-ACE_FILE_IO::send (const void *buf, size_t n) const
-{
- ACE_TRACE ("ACE_FILE_IO::send");
- return ACE_OS::write (this->get_handle (), buf, n);
-}
-
-ACE_INLINE ssize_t
-ACE_FILE_IO::recv (void *buf, size_t n) const
-{
- ACE_TRACE ("ACE_FILE_IO::recv");
- return ACE_OS::read (this->get_handle (), buf, n);
-}
-
-ACE_INLINE ssize_t
-ACE_FILE_IO::send (const iovec iov[], int n) const
-{
- ACE_TRACE ("ACE_FILE_IO::send");
- return ACE_OS::writev (this->get_handle (), iov, n);
-}
-
-ACE_INLINE ssize_t
-ACE_FILE_IO::recv (iovec iov[], int n) const
-{
- ACE_TRACE ("ACE_FILE_IO::recv");
- return ACE_OS::readv (this->get_handle (), iov, n);
-}
-
-#if defined (ACE_HAS_STREAM_PIPES)
-ACE_INLINE ssize_t
-ACE_FILE_IO::recv (ACE_Str_Buf *cntl, ACE_Str_Buf *data, int *band, int *flags) const
-{
- ACE_TRACE ("ACE_FILE_IO::recv");
- return ACE_OS::getpmsg (this->get_handle (), (strbuf *) cntl, (strbuf *) data, band, flags);
-}
-
-ACE_INLINE ssize_t
-ACE_FILE_IO::send (const ACE_Str_Buf *cntl, const ACE_Str_Buf *data, int band, int flags) const
-{
- ACE_TRACE ("ACE_FILE_IO::send");
- return ACE_OS::putpmsg (this->get_handle (), (strbuf *) cntl, (strbuf *) data, band, flags);
-}
-
-ACE_INLINE ssize_t
-ACE_FILE_IO::recv (ACE_Str_Buf *cntl, ACE_Str_Buf *data, int *flags) const
-{
- ACE_TRACE ("ACE_FILE_IO::recv");
- return ACE_OS::getmsg (this->get_handle (), (strbuf *) cntl, (strbuf *) data, flags);
-}
-
-ACE_INLINE ssize_t
-ACE_FILE_IO::send (const ACE_Str_Buf *cntl, const ACE_Str_Buf *data, int flags) const
-{
- ACE_TRACE ("ACE_FILE_IO::send");
- return ACE_OS::putmsg (this->get_handle (), (strbuf *) cntl, (strbuf *) data, flags);
-}
-
-ACE_INLINE ssize_t
-ACE_FILE_IO::send (const void *buf, size_t n,
- ACE_OVERLAPPED *overlapped) const
-{
- ACE_TRACE ("ACE_FILE_IO::send");
- return ACE_OS::write (this->get_handle (),
- buf, n,
- overlapped);
-}
-
-ACE_INLINE ssize_t
-ACE_FILE_IO::recv (void *buf, size_t n,
- ACE_OVERLAPPED *overlapped) const
-{
- ACE_TRACE ("ACE_FILE_IO::recv");
- return ACE_OS::read (this->get_handle (), buf, n,
- overlapped);
-}
-
-#endif /* ACE_HAS_STREAM_PIPES */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/File_Lock.h b/dep/include/ace/File_Lock.h
deleted file mode 100644
index c0629762d15..00000000000
--- a/dep/include/ace/File_Lock.h
+++ /dev/null
@@ -1,171 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file File_Lock.h
- *
- * $Id: File_Lock.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_FILE_LOCK_H
-#define ACE_FILE_LOCK_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/OS_NS_stdio.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_File_Lock
- *
- * @brief A wrapper around the UNIX file locking mechanism.
- *
- * Allows us to "adapt" the UNIX file locking mechanisms to work
- * with all of our Guard stuff...
- */
-class ACE_Export ACE_File_Lock
-{
-public:
- /**
- * Set the <handle_> of the File_Lock to @a handle. Note that this
- * constructor assumes ownership of the @a handle and will close it
- * down in <remove>. If you want the @a handle to stay open when
- * <remove> is called make sure to call <dup> on the @a handle.
- * If you don't want the file unlinked in the destructor pass a
- * zero value for <unlink_in_destructor>.
- */
- ACE_File_Lock (ACE_HANDLE handle = ACE_INVALID_HANDLE,
- int unlink_in_destructor = 1);
-
- /// Open the @a filename with @a flags and @a mode and set the result
- /// to <handle_>. If you don't want the file unlinked in the
- /// destructor pass a zero value for <unlink_in_destructor>.
- ACE_File_Lock (const ACE_TCHAR *filename,
- int flags,
- mode_t mode = 0,
- int unlink_in_destructor = 1);
-
- /// Open the @a filename with @a flags and @a mode and set the result to
- /// <handle_>.
- int open (const ACE_TCHAR *filename,
- int flags,
- mode_t mode = 0);
-
- /// Remove a File lock by releasing it and closing down the <handle_>.
- ~ACE_File_Lock (void);
-
- /// Remove a File lock by releasing it and closing down the
- /// <handle_>. If <unlink_file> is non-0 then we unlink the file.
- int remove (int unlink_file = 1);
-
- /**
- * Note, for interface uniformity with other synchronization
- * wrappers we include the <acquire> method. This is implemented as
- * a write-lock to be on the safe-side...
- */
- int acquire (short whence = 0, ACE_OFF_T start = 0, ACE_OFF_T len = 1);
-
- /**
- * Note, for interface uniformity with other synchronization
- * wrappers we include the <tryacquire> method. This is implemented
- * as a write-lock to be on the safe-side... Returns -1 on failure.
- * If we "failed" because someone else already had the lock, @c errno
- * is set to @c EBUSY.
- */
- int tryacquire (short whence = 0, ACE_OFF_T start = 0, ACE_OFF_T len = 1);
-
- /// Unlock a readers/writer lock.
- int release (short whence = 0, ACE_OFF_T start = 0, ACE_OFF_T len = 1);
-
- /// Acquire a write lock, but block if any readers or a
- /// writer hold the lock.
- int acquire_write (short whence = 0, ACE_OFF_T start = 0, ACE_OFF_T len = 1);
-
- /**
- * Conditionally acquire a write lock (i.e., won't block). Returns
- * -1 on failure. If we "failed" because someone else already had
- * the lock, @c errno is set to @c EBUSY.
- */
- int tryacquire_write (short whence = 0, ACE_OFF_T start = 0, ACE_OFF_T len = 1);
-
- /**
- * Conditionally upgrade to a write lock (i.e., won't block). Returns
- * -1 on failure. If we "failed" because someone else already had
- * the lock, @c errno is set to @c EBUSY.
- */
- int tryacquire_write_upgrade (short whence = 0,
- ACE_OFF_T start = 0,
- ACE_OFF_T len = 1);
-
- /**
- * Acquire a read lock, but block if a writer hold the lock.
- * Returns -1 on failure. If we "failed" because someone else
- * already had the lock, @c errno is set to @c EBUSY.
- */
- int acquire_read (short whence = 0, ACE_OFF_T start = 0, ACE_OFF_T len = 1);
-
- /**
- * Conditionally acquire a read lock (i.e., won't block). Returns
- * -1 on failure. If we "failed" because someone else already had
- * the lock, @c errno is set to @c EBUSY.
- */
- int tryacquire_read (short whence = 0, ACE_OFF_T start = 0, ACE_OFF_T len = 1);
-
- /// Get underlying ACE_HANDLE for the file.
- ACE_HANDLE get_handle (void) const;
-
- /**
- * Set underlying ACE_HANDLE. Note that this method assumes
- * ownership of the <handle> and will close it down in <remove>. If
- * you want the <handle> to stay open when <remove> is called make
- * sure to call <dup> on the <handle> before closing it. You are
- * responsible for the closing the existing <handle> before
- * overwriting it.
- */
- void set_handle (ACE_HANDLE);
-
- /// Dump state of the object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Locking structure for OS record locks.
- ACE_OS::ace_flock_t lock_;
-
- /// Keeps track of whether <remove> has been called yet to avoid
- /// multiple <remove> calls, e.g., explicitly and implicitly in the
- /// destructor. This flag isn't protected by a lock, so make sure
- /// that you don't have multiple threads simultaneously calling
- /// <remove> on the same object, which is a bad idea anyway...
- int removed_;
-
- /// Keeps track of whether to unlink the underlying file in the
- /// destructor.
- int unlink_in_destructor_;
-
-private:
- // = Prevent assignment and initialization.
- void operator= (const ACE_File_Lock &);
- ACE_File_Lock (const ACE_File_Lock &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/File_Lock.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_FILE_LOCK_H */
-
diff --git a/dep/include/ace/File_Lock.inl b/dep/include/ace/File_Lock.inl
deleted file mode 100644
index 20b00039222..00000000000
--- a/dep/include/ace/File_Lock.inl
+++ /dev/null
@@ -1,96 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: File_Lock.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_File_Lock::acquire_read (short whence, ACE_OFF_T start, ACE_OFF_T len)
-{
-// ACE_TRACE ("ACE_File_Lock::acquire_read");
- return ACE_OS::flock_rdlock (&this->lock_, whence, start, len);
-}
-
-ACE_INLINE int
-ACE_File_Lock::tryacquire_read (short whence, ACE_OFF_T start, ACE_OFF_T len)
-{
-// ACE_TRACE ("ACE_File_Lock::tryacquire_read");
- return ACE_OS::flock_tryrdlock (&this->lock_, whence, start, len);
-}
-
-ACE_INLINE int
-ACE_File_Lock::tryacquire_write (short whence, ACE_OFF_T start, ACE_OFF_T len)
-{
-// ACE_TRACE ("ACE_File_Lock::tryacquire_write");
- return ACE_OS::flock_trywrlock (&this->lock_, whence, start, len);
-}
-
-ACE_INLINE int
-ACE_File_Lock::tryacquire_write_upgrade (short whence,
- ACE_OFF_T start,
- ACE_OFF_T len)
-{
-// ACE_TRACE ("ACE_File_Lock::tryacquire_write_upgrade");
- return ACE_OS::flock_trywrlock (&this->lock_, whence, start, len);
-}
-
-ACE_INLINE int
-ACE_File_Lock::tryacquire (short whence, ACE_OFF_T start, ACE_OFF_T len)
-{
-// ACE_TRACE ("ACE_File_Lock::tryacquire");
- return this->tryacquire_write (whence, start, len);
-}
-
-ACE_INLINE int
-ACE_File_Lock::acquire_write (short whence, ACE_OFF_T start, ACE_OFF_T len)
-{
-// ACE_TRACE ("ACE_File_Lock::acquire_write");
- return ACE_OS::flock_wrlock (&this->lock_, whence, start, len);
-}
-
-ACE_INLINE int
-ACE_File_Lock::acquire (short whence, ACE_OFF_T start, ACE_OFF_T len)
-{
-// ACE_TRACE ("ACE_File_Lock::acquire");
- return this->acquire_write (whence, start, len);
-}
-
-ACE_INLINE int
-ACE_File_Lock::release (short whence, ACE_OFF_T start, ACE_OFF_T len)
-{
-// ACE_TRACE ("ACE_File_Lock::release");
- return ACE_OS::flock_unlock (&this->lock_, whence, start, len);
-}
-
-ACE_INLINE int
-ACE_File_Lock::remove (int unlink_file)
-{
-// ACE_TRACE ("ACE_File_Lock::remove");
-
- int result = 0;
-
- if (this->removed_ == 0)
- {
- this->removed_ = 1;
- result = ACE_OS::flock_destroy (&this->lock_,
- unlink_file);
- }
- return result;
-}
-
-ACE_INLINE ACE_HANDLE
-ACE_File_Lock::get_handle (void) const
-{
-// ACE_TRACE ("ACE_File_Lock::get_handle");
- return this->lock_.handle_;
-}
-
-ACE_INLINE void
-ACE_File_Lock::set_handle (ACE_HANDLE h)
-{
-// ACE_TRACE ("ACE_File_Lock::set_handle");
- this->lock_.handle_ = h;
- this->removed_ = 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Filecache.h b/dep/include/ace/Filecache.h
deleted file mode 100644
index 126082adc12..00000000000
--- a/dep/include/ace/Filecache.h
+++ /dev/null
@@ -1,353 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Filecache.h
- *
- * $Id: Filecache.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author James Hu
- */
-//=============================================================================
-
-#ifndef ACE_FILECACHE_H
-#define ACE_FILECACHE_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Mem_Map.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Hash_Map_Manager_T.h"
-#include "ace/Null_Mutex.h"
-#include "ace/Synch_Traits.h"
-#include "ace/RW_Thread_Mutex.h"
-#include "ace/OS_NS_sys_stat.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-enum ACE_Filecache_Flag
-{
- ACE_NOMAP = 0,
- ACE_MAPIT = 1
-};
-
-class ACE_Filecache_Object;
-
-/**
- * @class ACE_Filecache_Handle
- *
- * @brief Abstraction over a real file. This is meant to be the entry
- * point into the Cached Virtual Filesystem.
- *
- * This is a cached filesystem implementation based loosely on the
- * implementation of JAWS_File. The interfaces will be nearly the
- * same. The under-the-hood implementation should hopefully be a
- * much faster thing.
- * These will be given their own implementations later. For now, we
- * borrow the implementation provided by JAWS.
- * On creation, the cache is checked, and reference count is
- * incremented. On destruction, reference count is decremented. If
- * the reference count is 0, the file is removed from the cache.
- * E.g. 1,
- * {
- * ACE_Filecache_Handle foo("foo.html");
- * this->peer ().send (foo.address (), foo.size ());
- * }
- * E.g. 2,
- * {
- * ACE_Filecache_Handle foo("foo.html");
- * io->transmitfile (foo.handle (), this->peer ().handle ());
- * }
- * E.g. 3,
- * {
- * ACE_Filecache_Handle foo("foo.html", content_length);
- * this->peer ().recv (foo.address (), content_length);
- * }
- * TODO:
- */
-class ACE_Export ACE_Filecache_Handle
-{
- // (1) Get rid of the useless copying of files when reading.
- // Although it does make sure the file you send isn't being changed,
- // it doesn't make sure the file is in a sensible state before
- // sending it.
- //
- // Alternative: if the file get's trashed while it is being shipped,
- // let the client request the file again. The cache should have an
- // updated copy by that point.
- //
- // (2) Use hashing for locating files. This means I need a hastable
- // implementation with buckets.
- //
- // (3) Only lock when absolutely necessary. JAWS_Virtual_Filesystem was
- // rather conservative, but for some reason it still ran into problems.
- // Since this design should be simpler, problems should be easier to spot.
- //
-public:
-
- /// Query cache for file, and acquire it. Assumes the file is being
- /// opened for reading.
- ACE_Filecache_Handle (const ACE_TCHAR *filename,
- ACE_Filecache_Flag mapit = ACE_MAPIT);
-
- /**
- * Create new entry, and acquire it. Presence of SIZE assumes the
- * file is being opened for writing. If SIZE is zero, assumes the
- * file is to be removed from the cache.
- */
- ACE_Filecache_Handle (const ACE_TCHAR *filename,
- int size,
- ACE_Filecache_Flag mapit = ACE_MAPIT);
-
- /// Closes any open handles, release acquired file.
- ~ACE_Filecache_Handle (void);
-
- /// Base address of memory mapped file.
- void *address (void) const;
-
- /// A handle (e.g., UNIX file descriptor, or NT file handle).
- ACE_HANDLE handle (void) const;
-
- /// Any associated error in handle creation and acquisition.
- int error (void) const;
-
- /// The size of the file.
- ACE_OFF_T size (void) const;
-
-protected:
- /// Default do nothing constructor. Prevent it from being called.
- ACE_Filecache_Handle (void);
-
- /// Common initializations for constructors.
- void init (void);
-
-public:
- /// These come from ACE_Filecache_Object, which is an internal class.
- enum
- {
- ACE_SUCCESS = 0,
- ACE_ACCESS_FAILED,
- ACE_OPEN_FAILED,
- ACE_COPY_FAILED,
- ACE_STAT_FAILED,
- ACE_MEMMAP_FAILED,
- ACE_WRITE_FAILED
- };
-
-private:
- /// A reference to the low level instance.
- ACE_Filecache_Object *file_;
-
- /// A <dup>'d version of the one from <file_>.
- ACE_HANDLE handle_;
-
- int mapit_;
-};
-
-typedef ACE_Hash_Map_Manager_Ex<const ACE_TCHAR *, ACE_Filecache_Object *, ACE_Hash<const ACE_TCHAR *>, ACE_Equal_To<const ACE_TCHAR *>, ACE_Null_Mutex>
- ACE_Filecache_Hash;
-
-typedef ACE_Hash_Map_Entry<const ACE_TCHAR *, ACE_Filecache_Object *> ACE_Filecache_Hash_Entry;
-
-/**
- * @class ACE_Filecache
- *
- * @brief A hash table holding the information about entry point into
- * the Cached Virtual Filesystem. On insertion, the reference
- * count is incremented. On destruction, reference count is
- * decremented.
- */
-class ACE_Export ACE_Filecache
-{
-public:
- /// Singleton pattern.
- static ACE_Filecache *instance (void);
-
- ~ACE_Filecache (void);
-
- /// Returns 0 if the file associated with ``filename'' is in the cache,
- /// or -1 if not.
- int find (const ACE_TCHAR *filename);
-
- /// Return the file associated with ``filename'' if it is in the cache,
- /// or create if not.
- ACE_Filecache_Object *fetch (const ACE_TCHAR *filename, int mapit = 1);
-
- /// Remove the file associated with ``filename'' from the cache.
- ACE_Filecache_Object *remove (const ACE_TCHAR *filename);
-
- /// Create a new Filecache_Object, returns it.
- ACE_Filecache_Object *create (const ACE_TCHAR *filename, int size);
-
- /// Release an acquired Filecache_Object, returns it again or NULL if it
- /// was deleted.
- ACE_Filecache_Object *finish (ACE_Filecache_Object *&new_file);
-
-protected:
- ACE_Filecache_Object *insert_i (const ACE_TCHAR *filename,
- ACE_SYNCH_RW_MUTEX &filelock,
- int mapit);
- ACE_Filecache_Object *remove_i (const ACE_TCHAR *filename);
- ACE_Filecache_Object *update_i (const ACE_TCHAR *filename,
- ACE_SYNCH_RW_MUTEX &filelock,
- int mapit);
-
-public:
-
- enum
- {
- /// For this stupid implementation, use an array. Someday, use a
- /// balanced search tree, or real hash table.
- ACE_DEFAULT_VIRTUAL_FILESYSTEM_TABLE_SIZE = 512,
-
- /// This determines the highwater mark in megabytes for the cache.
- /// This will be ignored for now.
- ACE_DEFAULT_VIRTUAL_FILESYSTEM_CACHE_SIZE = 20
- };
-
-protected:
- /// Prevent it from being called.
- ACE_Filecache (void);
-
-private:
- ACE_OFF_T size_;
-
- /// The hash table
- ACE_Filecache_Hash hash_;
-
- /// The reference to the instance
- static ACE_Filecache *cvf_;
-
- // = Synchronization variables.
- ACE_SYNCH_RW_MUTEX hash_lock_[ACE_DEFAULT_VIRTUAL_FILESYSTEM_TABLE_SIZE];
- ACE_SYNCH_RW_MUTEX file_lock_[ACE_DEFAULT_VIRTUAL_FILESYSTEM_TABLE_SIZE];
-};
-
-/**
- * @class ACE_Filecache_Object
- *
- * @brief Abstraction over a real file. This is what the Virtual
- * Filesystem contains. This class is not intended for general
- * consumption. Please consult a physician before attempting to
- * use this class.
- */
-class ACE_Export ACE_Filecache_Object
-{
-public:
- friend class ACE_Filecache;
-
- /// Creates a file for reading.
- ACE_Filecache_Object (const ACE_TCHAR *filename,
- ACE_SYNCH_RW_MUTEX &lock,
- LPSECURITY_ATTRIBUTES sa = 0,
- int mapit = 1);
-
- /// Creates a file for writing.
- ACE_Filecache_Object (const ACE_TCHAR *filename,
- ACE_OFF_T size,
- ACE_SYNCH_RW_MUTEX &lock,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- /// Only if reference count is zero should this be called.
- ~ACE_Filecache_Object (void);
-
- /// Increment the reference_count_.
- int acquire (void);
-
- /// Decrement the reference_count_.
- int release (void);
-
- // = error_ accessors
- int error (void) const;
- int error (int error_value,
- const ACE_TCHAR *s = ACE_TEXT ("ACE_Filecache_Object"));
-
- /// filename_ accessor
- const ACE_TCHAR *filename (void) const;
-
- /// handle_ accessor.
- ACE_HANDLE handle (void) const;
-
- /// Base memory address for memory mapped file.
- void *address (void) const;
-
- /// size_ accessor.
- ACE_OFF_T size (void) const;
-
- /// True if file on disk is newer than cached file.
- int update (void) const;
-
-protected:
- /// Prevent from being called.
- ACE_Filecache_Object (void);
-
- /// Common initialization code,
- void init (void);
-
-private:
- /// Internal error logging method, no locking.
- int error_i (int error_value,
- const ACE_TCHAR *s = ACE_TEXT ("ACE_Filecache_Object"));
-
-public:
-
- enum Creation_States
- {
- ACE_READING = 1,
- ACE_WRITING = 2
- };
-
- enum Error_Conditions
- {
- ACE_SUCCESS = 0,
- ACE_ACCESS_FAILED,
- ACE_OPEN_FAILED,
- ACE_COPY_FAILED,
- ACE_STAT_FAILED,
- ACE_MEMMAP_FAILED,
- ACE_WRITE_FAILED
- };
-
-private:
- /// The temporary file name and the real file name. The real file is
- /// copied into the temporary file for safety reasons.
- ACE_TCHAR *tempname_;
- ACE_TCHAR filename_[MAXPATHLEN + 1];
-
- /// Holds the memory mapped version of the temporary file.
- ACE_Mem_Map mmap_;
-
- /// The descriptor to the temporary file.
- ACE_HANDLE handle_;
-
- /// Used to compare against the real file to test if an update is needed.
- ACE_stat stat_;
- ACE_OFF_T size_;
-
- /// Status indicators.
- int action_;
- int error_;
-
- /// If set to 1, means the object is flagged for removal.
- int stale_;
-
- /// Security attribute object.
- LPSECURITY_ATTRIBUTES sa_;
-
- /// The default initializer
- ACE_SYNCH_RW_MUTEX junklock_;
-
- /// Provides a bookkeeping mechanism for users of this object.
- ACE_SYNCH_RW_MUTEX &lock_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_FILECACHE_H */
-
diff --git a/dep/include/ace/Flag_Manip.h b/dep/include/ace/Flag_Manip.h
deleted file mode 100644
index 6bd797e5606..00000000000
--- a/dep/include/ace/Flag_Manip.h
+++ /dev/null
@@ -1,59 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Flag_Manip.h
- *
- * $Id: Flag_Manip.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * This class includes the functions used for the Flag Manipulation.
- *
- * @author Priyanka Gontla <pgontla@doc.ece.uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_FLAG_MANIP_H
-#define ACE_FLAG_MANIP_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Global_Macros.h"
-#include "ace/os_include/os_fcntl.h" /* For values passed to these methods */
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE
-{
- // = Set/get/clear various flags related to I/O HANDLE.
- /// Set flags associated with @a handle.
- extern ACE_Export int set_flags (ACE_HANDLE handle,
- int flags);
-
- /// Clear flags associated with @a handle.
- extern ACE_Export int clr_flags (ACE_HANDLE handle,
- int flags);
-
- /// Return the current setting of flags associated with @a handle.
- ACE_NAMESPACE_INLINE_FUNCTION int get_flags (ACE_HANDLE handle);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Flag_Manip.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_FLAG_MANIP_H */
-
diff --git a/dep/include/ace/Flag_Manip.inl b/dep/include/ace/Flag_Manip.inl
deleted file mode 100644
index 229a4ee596c..00000000000
--- a/dep/include/ace/Flag_Manip.inl
+++ /dev/null
@@ -1,26 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Flag_Manip.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_fcntl.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Return flags currently associated with handle.
-ACE_INLINE int
-ACE::get_flags (ACE_HANDLE handle)
-{
- ACE_TRACE ("ACE::get_flags");
-
-#if defined (ACE_LACKS_FCNTL)
- // ACE_OS::fcntl is not supported. It
- // would be better to store ACE's notion of the flags
- // associated with the handle, but this works for now.
- ACE_UNUSED_ARG (handle);
- return 0;
-#else
- return ACE_OS::fcntl (handle, F_GETFL, 0);
-#endif /* ACE_LACKS_FCNTL */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Framework_Component.h b/dep/include/ace/Framework_Component.h
deleted file mode 100644
index fecd8ccf3bb..00000000000
--- a/dep/include/ace/Framework_Component.h
+++ /dev/null
@@ -1,211 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Framework_Component.h
- *
- * $Id: Framework_Component.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * A prototype mechanism that allows framework components, singletons
- * such as ACE_Reactor, ACE_Proactor, etc, to be registered with a
- * central repository managed by the ACE_Object_Manager or
- * ACE_Service_Config that will handle destruction.
- *
- * This technique obviates changing ACE_Object_Manager and
- * ACE_Service_Config everytime a new framework is added. Which also
- * means that unused framework components don't need to linked into
- * the final application which is important for applications with
- * stringent footprint requirements.
- *
- * Framework components need only provide a static method,
- * close_singleton() and add the ACE_REGISTER_FRAMEWORK_COMPONENT macro
- * call to their instance() methods in order to participate. Components
- * that don't have a close_singleton() method can also participate via
- * template specialization of ACE_Framework_Component_T.
- *
- * This design uses the External Polymorphism pattern to avoid having
- * to derive all framework components from a common base class that
- * has virtual methods (this is crucial to avoid unnecessary overhead),
- * and is based on the dump debugging implementation found in
- * <ace/Dump.h>.
- *
- * @author Don Hinton <dhinton@ieee.org>.
- */
-//=============================================================================
-
-#ifndef ACE_FRAMEWORK_COMPONENT_H
-#define ACE_FRAMEWORK_COMPONENT_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_signal.h"
-#include "ace/Thread_Mutex.h"
-
-#define ACE_DEFAULT_FRAMEWORK_REPOSITORY_SIZE 1024
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Framework_Component
- *
- * @brief Base class that defines a uniform interface for all managed
- * framework components.
- */
-class ACE_Export ACE_Framework_Component
-{
-public:
- friend class ACE_Framework_Repository;
-
- /// Constructor.
- ACE_Framework_Component (void *_this,
- const ACE_TCHAR *dll_name = 0,
- const ACE_TCHAR *name = 0);
-
- /// Close the contained singleton.
- virtual void close_singleton (void) = 0;
-
-protected:
- /// Destructor.
- virtual ~ACE_Framework_Component (void);
-
-private:
- // No copy possible
- ACE_Framework_Component (const ACE_Framework_Component &);
- void operator= (const ACE_Framework_Component &);
-
-private:
- /// Pointer to the actual component.
- const void *this_;
-
- /// Library associated with this component
- const ACE_TCHAR *dll_name_;
-
- /// Component name
- const ACE_TCHAR *name_;
-};
-
-/**
- * @class ACE_Framework_Repository
- *
- * @brief Contains all framework components used by an application.
- *
- * This class contains a vector of ACE_Framework_Component *'s. On
- * destruction, framework components are destroyed in the reverse order
- * that they were added originally.
- */
-class ACE_Export ACE_Framework_Repository
-{
-public:
- // This is just to silence a compiler warning about no public ctors
- friend class ACE_Framework_Component;
-
- enum
- {
- DEFAULT_SIZE = ACE_DEFAULT_FRAMEWORK_REPOSITORY_SIZE
- };
-
- /// Close down the repository and free up dynamically allocated
- /// resources.
- ~ACE_Framework_Repository (void);
-
- /// Initialize the repository.
- int open (int size = DEFAULT_SIZE);
-
- /// Close down the repository and free up dynamically allocated
- /// resources, also called by dtor.
- int close (void);
-
- /// Get pointer to a process-wide ACE_Framework_Repository.
- static ACE_Framework_Repository *instance
- (int size = ACE_Framework_Repository::DEFAULT_SIZE);
-
- /// Delete the dynamically allocated Singleton.
- static void close_singleton (void);
-
- // = Search structure operations (all acquire locks as necessary).
-
- /// Insert a new component. Returns -1 when the repository is full
- /// and 0 on success.
- int register_component (ACE_Framework_Component *fc);
-
- /// Remove a component. Returns -1 on error or if component not found
- /// and 0 on success.
- int remove_component (const ACE_TCHAR *name);
-
- /// Remove all components associated with a particular dll.
- int remove_dll_components (const ACE_TCHAR *dll_name);
-
- /// Return the current size of the repository.
- int current_size (void) const;
-
- /// Return the total size of the repository.
- int total_size (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
-
- /// Initialize the repository.
- ACE_Framework_Repository (int size = ACE_Framework_Repository::DEFAULT_SIZE);
-
-private:
-
- /// Actually removes the dll components, must be called with locks held.
- int remove_dll_components_i (const ACE_TCHAR *dll_name);
-
- /// Compact component_vector_ after components have been removed__maintains
- /// order.
- void compact (void);
-
- /// Disallow copying and assignment.
- ACE_Framework_Repository (const ACE_Framework_Repository &);
- ACE_Framework_Repository &operator= (const ACE_Framework_Repository &);
-
-private:
-
- /// Contains all the framework components.
- ACE_Framework_Component **component_vector_;
-
- /// Current number of components.
- int current_size_;
-
- /// Maximum number of components.
- int total_size_;
-
- /// Pointer to a process-wide ACE_Framework_Repository.
- static ACE_Framework_Repository *repository_;
-
- /// Flag set when repository is the process of shutting down. This
- /// is necessary to keep from self-deadlocking since some of
- /// the components might make calls back to the repository to
- /// unload their components, e.g., ACE_DLL_Manager.
- static sig_atomic_t shutting_down_;
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
- /// Synchronization variable for the MT_SAFE Repository
- ACE_Thread_Mutex lock_;
-#endif /* ACE_MT_SAFE */
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Framework_Component.inl"
-#endif /* __ACE_INLINE__ */
-
-// Include the templates classes at this point.
-#include "ace/Framework_Component_T.h"
-
-#include /**/ "ace/post.h"
-#endif /* ACE_FRAMEWORK_COMPONENT_H */
-
diff --git a/dep/include/ace/Framework_Component.inl b/dep/include/ace/Framework_Component.inl
deleted file mode 100644
index 1fb2de38b85..00000000000
--- a/dep/include/ace/Framework_Component.inl
+++ /dev/null
@@ -1,39 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Framework_Component.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/ACE.h"
-#include "ace/Guard_T.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Framework_Component::ACE_Framework_Component (void *_this,
- const ACE_TCHAR *dll_name,
- const ACE_TCHAR *name)
- : this_ (_this),
- dll_name_ (ACE::strnew (dll_name ? dll_name : ACE_TEXT (""))),
- name_ (ACE::strnew (name ? name : ACE_TEXT ("")))
-{
- ACE_TRACE ("ACE_Framework_Component::ctor");
-}
-
-/***************************************************************/
-
-ACE_INLINE int
-ACE_Framework_Repository::current_size (void) const
-{
- ACE_TRACE ("ACE_Framework_Repository::current_size");
- ACE_MT (ACE_GUARD_RETURN (ACE_Thread_Mutex, ace_mon, (ACE_Thread_Mutex &) this->lock_, -1));
- return this->current_size_;
-}
-
-ACE_INLINE int
-ACE_Framework_Repository::total_size (void) const
-{
- ACE_TRACE ("ACE_Framework_Repository::total_size");
- ACE_MT (ACE_GUARD_RETURN (ACE_Thread_Mutex, ace_mon, (ACE_Thread_Mutex &) this->lock_, -1));
- return this->total_size_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Framework_Component_T.h b/dep/include/ace/Framework_Component_T.h
deleted file mode 100644
index f8d365a86c0..00000000000
--- a/dep/include/ace/Framework_Component_T.h
+++ /dev/null
@@ -1,72 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Framework_Component_T.h
- *
- * $Id: Framework_Component_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@ieee.org>
- */
-//=============================================================================
-
-#ifndef ACE_FRAMEWORK_COMPONENT_T_H
-#define ACE_FRAMEWORK_COMPONENT_T_H
-#include /**/ "ace/pre.h"
-#include "ace/Framework_Component.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Framework_Component_T
- *
- * @brief This class inherits the interface of the abstract
- * ACE_Framework_Component class and is instantiated with the
- * implementation of the concrete component class @c class Concrete.
- *
- * This design is similar to the Adapter and Decorator patterns
- * from the ``Gang of Four'' book. Note that @c class Concrete
- * need not inherit from a common class since ACE_Framework_Component
- * provides the uniform virtual interface! (implementation based on
- * ACE_Dumpable_Adapter in <ace/Dump_T.h>.
- */
-template <class Concrete>
-class ACE_Framework_Component_T : public ACE_Framework_Component
-{
-public:
- // = Initialization and termination methods.
-
- /// Constructor.
- ACE_Framework_Component_T (Concrete *concrete);
-
- /// Destructor.
- ~ACE_Framework_Component_T (void);
-
- /// Close the contained singleton.
- void close_singleton (void);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// This macro should be called in the instance() method
-// of the Concrete class that will be managed. Along
-// with the appropriate template instantiation.
-#define ACE_REGISTER_FRAMEWORK_COMPONENT(CLASS, INSTANCE) \
- ACE_Framework_Repository::instance ()->register_component \
- (new ACE_Framework_Component_T<CLASS> (INSTANCE));
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Framework_Component_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Framework_Component_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_FRAMEWORK_COMPONENT_T_H */
-
diff --git a/dep/include/ace/Free_List.h b/dep/include/ace/Free_List.h
deleted file mode 100644
index ba1f0e4dded..00000000000
--- a/dep/include/ace/Free_List.h
+++ /dev/null
@@ -1,151 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Free_List.h
- *
- * $Id: Free_List.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Darrell Brunsch (brunsch@cs.wustl.edu)
- */
-//=============================================================================
-
-#ifndef ACE_FREE_LIST_H
-#define ACE_FREE_LIST_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Global_Macros.h"
-#include "ace/Default_Constants.h"
-#include "ace/os_include/os_stddef.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Free_List
- *
- * @brief Implements a free list.
- *
- * This class maintains a free list of nodes of type T.
- */
-template <class T>
-class ACE_Free_List
-{
-public:
- /// Destructor - removes all the elements from the free_list.
- virtual ~ACE_Free_List (void);
-
- /// Inserts an element onto the free list (if it isn't past the high
- /// water mark).
- virtual void add (T *element) = 0;
-
- /// Takes a element off the freelist and returns it. It creates
- /// <inc> new elements if the size is at or below the low water mark.
- virtual T *remove (void) = 0;
-
- /// Returns the current size of the free list.
- virtual size_t size (void) = 0;
-
- /// Resizes the free list to @a newsize.
- virtual void resize (size_t newsize) = 0;
-};
-
-/**
- * @class ACE_Locked_Free_List
- *
- * @brief Implements a free list.
- *
- * This class maintains a free list of nodes of type T. It
- * depends on the type T having a <get_next> and <set_next>
- * method. It maintains a mutex so the freelist can be used in
- * a multithreaded program .
- */
-template <class T, class ACE_LOCK>
-class ACE_Locked_Free_List : public ACE_Free_List<T>
-{
-public:
- // = Initialization and termination.
- /**
- * Constructor takes a @a mode (i.e., ACE_FREE_LIST_WITH_POOL or
- * ACE_PURE_FREE_LIST), a count of the number of nodes to
- * <prealloc>, a low and high water mark (<lwm> and <hwm>) that
- * indicate when to allocate more nodes, an increment value (<inc>)
- * that indicates how many nodes to allocate when the list must
- * grow.
- */
- ACE_Locked_Free_List (int mode = ACE_FREE_LIST_WITH_POOL,
- size_t prealloc = ACE_DEFAULT_FREE_LIST_PREALLOC,
- size_t lwm = ACE_DEFAULT_FREE_LIST_LWM,
- size_t hwm = ACE_DEFAULT_FREE_LIST_HWM,
- size_t inc = ACE_DEFAULT_FREE_LIST_INC);
-
- /// Destructor - removes all the elements from the free_list.
- virtual ~ACE_Locked_Free_List (void);
-
- /// Inserts an element onto the free list (if it isn't past the high
- /// water mark).
- virtual void add (T *element);
-
- /// Takes a element off the freelist and returns it. It creates
- /// <inc> new elements if the size is at or below the low water mark.
- virtual T *remove (void);
-
- /// Returns the current size of the free list.
- virtual size_t size (void);
-
- /// Resizes the free list to @a newsize.
- virtual void resize (size_t newsize);
-
-protected:
- /// Allocates @a n extra nodes for the freelist.
- virtual void alloc (size_t n);
-
- /// Removes and frees @a n nodes from the freelist.
- virtual void dealloc (size_t n);
-
- /// Free list operation mode, either ACE_FREE_LIST_WITH_POOL or
- /// ACE_PURE_FREE_LIST.
- int mode_;
-
- /// Pointer to the first node in the freelist.
- T *free_list_;
-
- /// Low water mark.
- size_t lwm_;
-
- /// High water mark.
- size_t hwm_;
-
- /// Increment value.
- size_t inc_;
-
- /// Keeps track of the size of the list.
- size_t size_;
-
- /// Synchronization variable for ACE_Timer_Queue.
- ACE_LOCK mutex_;
-
-private:
- // = Don't allow these operations for now.
- ACE_UNIMPLEMENTED_FUNC (ACE_Locked_Free_List (const ACE_Locked_Free_List<T, ACE_LOCK> &))
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Locked_Free_List<T, ACE_LOCK> &))
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Free_List.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Free_List.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_FREE_LIST_H */
-
diff --git a/dep/include/ace/Functor.h b/dep/include/ace/Functor.h
deleted file mode 100644
index bff4cf375b1..00000000000
--- a/dep/include/ace/Functor.h
+++ /dev/null
@@ -1,593 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Functor.h
- *
- * $Id: Functor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Non-templatized classes and class template specializations for
- * implementing function objects that are used in various places
- * in ACE. There are currently two major categories of function
- * objects in ACE: GoF Command Pattern objects, and STL-style
- * functors for comparison of container elements. The command objects
- * are invoked via an execute () method, while the STL-style functors are
- * invoked via an operator() () method.
- * Non-templatized classes for implementing the GoF Command Pattern,
- * also known as functors or function objects.
- *
- *
- * @author Chris Gill <cdgill@cs.wustl.edu>
- * @author Based on Command Pattern implementations originally done by
- * @author Carlos O'Ryan <coryan@cs.wustl.edu>
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Sergio Flores-Gaitan <sergio@cs.wustl.edu>
- * @author and on STL-style functor implementations originally done by
- * @author Irfan Pyarali <irfan@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_FUNCTOR_H
-#define ACE_FUNCTOR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include /**/ "ace/ACE_export.h"
-#include "ace/Basic_Types.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-//////////////////////////////////////////////////////////////
-// GOF Command Pattern Classes and Template Specializations //
-//////////////////////////////////////////////////////////////
-
-/**
- * @class ACE_Command_Base
- *
- * @brief Defines an abstract class that allows us to invoke commands
- * without knowing anything about the implementation.
- *
- * This class declares an interface to execute a command
- * independent of the effect of the command, or the objects used
- * to implement it.
- */
-class ACE_Export ACE_Command_Base
-{
-public:
- // = Initialization and termination methods.
- /// Default constructor.
- ACE_Command_Base (void);
-
- /// Virtual destructor.
- virtual ~ACE_Command_Base (void);
-
- /**
- * Invokes the method encapsulated by the command, passing along the
- * passed argument (if any). Users of classes derived from this
- * class must ensure that the resulting invocation can tolerate a
- * null void pointer being passed, or otherwise ensure that this
- * will never occur.
- */
- virtual int execute (void *arg = 0) = 0;
-};
-
-////////////////////////////////////////////////////////////
-// STL-style Functor Classes and Template Specializations //
-////////////////////////////////////////////////////////////
-
-// Forward declaration since we are going to specialize that template
-// here. The template itself requires this file so every user of the
-// template should also see the specialization.
-template <class TYPE> class ACE_Hash;
-template <class TYPE> class ACE_Equal_To;
-template <class TYPE> class ACE_Less_Than;
-
-/**
- * @class ACE_Hash<char>
- *
- * @brief Function object for hashing a char
- */
-template<>
-class ACE_Export ACE_Hash<char>
-{
-public:
- /// Simply returns t
- unsigned long operator () (char t) const;
-};
-
-/**
- * @class ACE_Hash<signed char>
- *
- * @brief Function object for hashing a signed char
- */
-template<>
-class ACE_Export ACE_Hash<signed char>
-{
-public:
- /// Simply returns t
- unsigned long operator () (signed char t) const;
-};
-
-/**
- * @class ACE_Hash<unsigned char>
- *
- * @brief Function object for hashing an unsigned char
- */
-template<>
-class ACE_Export ACE_Hash<unsigned char>
-{
-public:
- /// Simply returns t
- unsigned long operator () (unsigned char t) const;
-};
-
-#if 0
-// @@ ADD HASHES FOR ACE TYPES
-
-/**
- * @class ACE_Hash<ACE_INT16>
- *
- * @brief Function object for hashing a 16-bit signed number
- */
-template<>
-class ACE_Export ACE_Hash<ACE_INT16>
-{
-public:
- /// Simply returns t
- unsigned long operator () (ACE_INT16 t) const;
-};
-
-/**
- * @class ACE_Hash<ACE_UINT16>
- *
- * @brief Function object for hashing a 16-bit unsigned number
- */
-template<>
-class ACE_Export ACE_Hash<ACE_UINT16>
-{
-public:
- /// Simply returns t
- unsigned long operator () (ACE_UINT16 t) const;
-};
-
-/**
- * @class ACE_Hash<ACE_INT32>
- *
- * @brief Function object for hashing a 32-bit signed number
- */
-template<>
-class ACE_Export ACE_Hash<ACE_INT32>
-{
-public:
- /// Simply returns t
- unsigned long operator () (ACE_INT32 t) const;
-};
-
-/**
- * @class ACE_Hash<ACE_UINT32>
- *
- * @brief Function object for hashing a 32-bit unsigned number
- */
-template<>
-class ACE_Export ACE_Hash<ACE_UINT32>
-{
-public:
- /// Simply returns t
- unsigned long operator () (ACE_UINT32 t) const;
-};
-
-/**
- * @class ACE_Hash<ACE_UINT64>
- *
- * @brief Function object for hashing a 64-bit unsigned number
- */
-template<>
-class ACE_Export ACE_Hash<ACE_UINT64>
-{
-public:
- /// Simply returns t
- unsigned long operator () (ACE_UINT64 t) const;
-};
-
-// @@ DONE ADDING HASHES FOR ACE TYPES
-#endif
-
-/**
- * @class ACE_Hash<short>
- *
- * @brief Function object for hashing a short number
- */
-template<>
-class ACE_Export ACE_Hash<short>
-{
-public:
- /// Simply returns t
- unsigned long operator () (short t) const;
-};
-
-/**
- * @class ACE_Hash<unsigned short>
- *
- * @brief Function object for hashing an unsigned short number
- */
-template<>
-class ACE_Export ACE_Hash<unsigned short>
-{
-public:
- /// Simply returns t
- unsigned long operator () (unsigned short t) const;
-};
-
-/**
- * @class ACE_Hash<int>
- *
- * @brief Function object for hashing an int number
- */
-template<>
-class ACE_Export ACE_Hash<int>
-{
-public:
- /// Simply returns t
- unsigned long operator () (int t) const;
-};
-
-/**
- * @class ACE_Hash<unsigned int>
- *
- * @brief Function object for hashing an unsigned int number
- */
-template<>
-class ACE_Export ACE_Hash<unsigned int>
-{
-public:
- /// Simply returns t
- unsigned long operator () (unsigned int t) const;
-};
-
-/**
- * @class ACE_Hash<long>
- *
- * @brief Function object for hashing a long number
- */
-template<>
-class ACE_Export ACE_Hash<long>
-{
-public:
- /// Simply returns t
- unsigned long operator () (long t) const;
-};
-
-/**
- * @class ACE_Hash<unsigned long>
- *
- * @brief Function object for hashing an unsigned long number
- */
-template<>
-class ACE_Export ACE_Hash<unsigned long>
-{
-public:
- /// Simply returns t
- unsigned long operator () (unsigned long t) const;
-};
-
-#if !defined (ACE_LACKS_LONGLONG_T) && (ACE_SIZEOF_LONG < 8)
-/**
- * @class ACE_Hash<ACE_INT64>
- *
- * @brief Function object for hashing a signed 64-bit number
- */
-template<>
-class ACE_Export ACE_Hash<ACE_INT64>
-{
-public:
- /// Simply returns t
- unsigned long operator () (ACE_INT64 t) const;
-};
-#endif /* !ACE_LACKS_LONGLONG_T && ACE_SIZEOF_LONG < 8 */
-
-// We can do this even if ACE_LACKS_UNSIGNEDLONGLONG_T because there's an
-// emulation for it in ACE_U_LongLong.
-#if (ACE_SIZEOF_LONG < 8)
-/**
- * @class ACE_Hash<ACE_UINT64>
- *
- * @brief Function object for hashing an unsigned 64-bit number
- */
-template<>
-class ACE_Export ACE_Hash<ACE_UINT64>
-{
-public:
- /// Simply returns t
- unsigned long operator () (const ACE_UINT64 &t) const;
-};
-#endif /* ACE_SIZEOF_LONG < 8 */
-
-/**
- * @class ACE_Hash<const char *>
- *
- * @brief Function object for hashing a const string
- */
-template<>
-class ACE_Export ACE_Hash<const char *>
-{
-public:
- /// Calls ACE::hash_pjw
- unsigned long operator () (const char *t) const;
-};
-
-/**
- * @class ACE_Hash<char *>
- *
- * @brief Function object for hashing a string
- */
-template<>
-class ACE_Export ACE_Hash<char *>
-{
-public:
- /// Calls ACE::hash_pjw
- unsigned long operator () (const char *t) const;
-};
-
-/**
- * @class ACE_Hash<void *>
- *
- * @brief Function object for hashing a void *
- */
-template<>
-class ACE_Export ACE_Hash<void *>
-{
-public:
- unsigned long operator () (const void *) const;
-};
-
-/**
- * @class ACE_Equal_To<const char *>
- *
- * @brief Function object for determining whether two const strings are equal.
- */
-template<>
-class ACE_Export ACE_Equal_To<const char *>
-{
-public:
- /// Simply calls ACE_OS::strcmp
- int operator () (const char *lhs,
- const char *rhs) const;
-};
-
-/**
- * @class ACE_Equal_To<char *>
- *
- * @brief Function object for determining whether two non-const
- * strings are equal.
- */
-template<>
-class ACE_Export ACE_Equal_To<char *>
-{
-public:
- /// Simply calls ACE_OS::strcmp
- int operator () (const char *lhs,
- const char *rhs) const;
-};
-
-/**
- * @class ACE_Equal_To<ACE_UINT16>
- *
- * @brief Function object for determining whether two unsigned
- * 16 bit ints are equal.
- */
-template<>
-class ACE_Export ACE_Equal_To<ACE_UINT16>
-{
-public:
- /// Simply calls built-in operators
- int operator () (const ACE_UINT16 lhs,
- const ACE_UINT16 rhs) const;
-};
-
-/**
- * @class ACE_Equal_To<ACE_INT16>
- *
- * @brief Function object for determining whether two
- * 16 bit ints are equal.
- */
-template<>
-class ACE_Export ACE_Equal_To<ACE_INT16>
-{
-public:
- /// Simply calls built-in operators
- int operator () (const ACE_INT16 lhs,
- const ACE_INT16 rhs) const;
-};
-
-/**
- * @class ACE_Equal_To<ACE_UINT32>
- *
- * @brief Function object for determining whether two unsigned
- * 32 bit ints are equal.
- */
-template<>
-class ACE_Export ACE_Equal_To<ACE_UINT32>
-{
-public:
- /// Simply calls built-in operators
- int operator () (const ACE_UINT32 lhs,
- const ACE_UINT32 rhs) const;
-};
-
-/**
- * @class ACE_Equal_To<ACE_INT32>
- *
- * @brief Function object for determining whether two
- * 32 bit ints are equal.
- */
-template<>
-class ACE_Export ACE_Equal_To<ACE_INT32>
-{
-public:
- /// Simply calls built-in operators
- int operator () (const ACE_INT32 lhs,
- const ACE_INT32 rhs) const;
-};
-
-/**
- * @class ACE_Equal_To<ACE_UINT64>
- *
- * @brief Function object for determining whether two unsigned
- * 64 bit ints are equal.
- */
-template<>
-class ACE_Export ACE_Equal_To<ACE_UINT64>
-{
-public:
- /// Simply calls built-in operators
- int operator () (const ACE_UINT64 lhs,
- const ACE_UINT64 rhs) const;
-};
-
-/**
- * @class ACE_Less_Than<const char*>
- *
- * @brief Function object for determining whether the first const string
- * is less than the second const string.
- */
-template<>
-class ACE_Export ACE_Less_Than<const char *>
-{
-public:
- /// Simply calls ACE_OS::strcmp
- int operator () (const char *lhs,
- const char *rhs) const;
-};
-
-/**
- * @class ACE_Less_Than<char *>
- *
- * @brief Function object for determining whether the first string
- * is less than the second string.
- */
-template<>
-class ACE_Export ACE_Less_Than<char *>
-{
-public:
- /// Simply calls ACE_OS::strcmp
- int operator () (const char *lhs,
- const char *rhs) const;
-};
-
-#if defined (ACE_HAS_WCHAR)
-
-# if ! defined (ACE_LACKS_NATIVE_WCHAR_T)
-/**
- * @class ACE_Hash<wchar_t>
- *
- * @brief Function object for hashing a wchar_t
- */
-template<>
-class ACE_Export ACE_Hash<wchar_t>
-{
-public:
- /// Simply returns t
- unsigned long operator () (wchar_t t) const;
-};
-# endif /* ACE_LACKS_NATIVE_WCHAR_T */
-/**
- * @class ACE_Hash<const wchar_t *>
- *
- * @brief Function object for hashing a const string
- */
-template<>
-class ACE_Export ACE_Hash<const wchar_t *>
-{
-public:
- /// Calls ACE::hash_pjw
- unsigned long operator () (const wchar_t *t) const;
-};
-
-/**
- * @class ACE_Hash<wchar_t *>
- *
- * @brief Function object for hashing a string
- */
-template<>
-class ACE_Export ACE_Hash<wchar_t *>
-{
-public:
- /// Calls ACE::hash_pjw
- unsigned long operator () (const wchar_t *t) const;
-};
-
-/**
- * @class ACE_Equal_To<const wchar_t *>
- *
- * @brief Function object for determining whether two const strings are equal.
- */
-template<>
-class ACE_Export ACE_Equal_To<const wchar_t *>
-{
-public:
- /// Simply calls ACE_OS::strcmp
- int operator () (const wchar_t *lhs,
- const wchar_t *rhs) const;
-};
-
-/**
- * @class ACE_Equal_To<wchar_t *>
- *
- * @brief Function object for determining whether two non-const
- * strings are equal.
- */
-template<>
-class ACE_Export ACE_Equal_To<wchar_t *>
-{
-public:
- /// Simply calls ACE_OS::strcmp
- int operator () (const wchar_t *lhs,
- const wchar_t *rhs) const;
-};
-
-/**
- * @class ACE_Less_Than<const wchar_t *>
- *
- * @brief Function object for determining whether the first const string
- * is less than the second const string.
- */
-template<>
-class ACE_Export ACE_Less_Than<const wchar_t *>
-{
-public:
- /// Simply calls ACE_OS::strcmp
- int operator () (const wchar_t *lhs,
- const wchar_t *rhs) const;
-};
-
-/**
- * @class ACE_Less_Than<wchar_t *>
- *
- * @brief Function object for determining whether the first string
- * is less than the second string.
- */
-template<>
-class ACE_Export ACE_Less_Than<wchar_t *>
-{
-public:
- /// Simply calls ACE_OS::strcmp
- int operator () (const wchar_t *lhs,
- const wchar_t *rhs) const;
-};
-
-#endif // ACE_HAS_WCHAR
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Functor.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_FUNCTOR_H */
-
diff --git a/dep/include/ace/Functor.inl b/dep/include/ace/Functor.inl
deleted file mode 100644
index c8477c2b8eb..00000000000
--- a/dep/include/ace/Functor.inl
+++ /dev/null
@@ -1,282 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Functor.inl
- *
- * $Id: Functor.inl 80826 2008-03-04 14:51:23Z wotte $
- *
- * Inlinable method definitions for non-templatized classes
- * and template specializations implementing the GOF Command Pattern,
- * and STL-style functors.
- *
- *
- * @author Chris Gill <cdgill@cs.wustl.edu>
- *
- * Based on Command Pattern implementations originally done by
- *
- * Carlos O'Ryan <coryan@cs.wustl.edu>
- * Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * Sergio Flores-Gaitan <sergio@cs.wustl.edu>
- *
- * and on STL-style functor implementations originally done by
- * Irfan Pyarali <irfan@cs.wustl.edu>
- */
-//=============================================================================
-
-#include "ace/ACE.h"
-#include "ace/OS_NS_string.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-//////////////////////////////////////////////////////////////
-// GOF Command Pattern Classes and Template Specializations //
-//////////////////////////////////////////////////////////////
-
-// Default constructor.
-
-ACE_INLINE
-ACE_Command_Base::ACE_Command_Base (void)
-{
-}
-
-////////////////////////////////////////////////////////////
-// STL-style Functor Classes and Template Specializations //
-////////////////////////////////////////////////////////////
-
-ACE_INLINE unsigned long
-ACE_Hash<char>::operator () (char t) const
-{
- return t;
-}
-
-#if defined (ACE_HAS_WCHAR) && ! defined (ACE_LACKS_NATIVE_WCHAR_T)
-ACE_INLINE unsigned long
-ACE_Hash<wchar_t>::operator () (wchar_t t) const
-{
- return t;
-}
-#endif /* ACE_HAS_WCHAR && ! ACE_LACKS_NATIVE_WCHAR_T */
-
-ACE_INLINE unsigned long
-ACE_Hash<signed char>::operator () (signed char t) const
-{
- return t;
-}
-
-ACE_INLINE unsigned long
-ACE_Hash<unsigned char>::operator () (unsigned char t) const
-{
- return t;
-}
-
-#if 0
-ACE_INLINE unsigned long
-ACE_Hash<ACE_INT16>::operator () (ACE_INT16 t) const
-{
- return t;
-}
-
-ACE_INLINE unsigned long
-ACE_Hash<ACE_UINT16>::operator () (ACE_UINT16 t) const
-{
- return t;
-}
-
-ACE_INLINE unsigned long
-ACE_Hash<ACE_INT32>::operator () (ACE_INT32 t) const
-{
- return static_cast<unsigned long> (t);
-}
-
-ACE_INLINE unsigned long
-ACE_Hash<ACE_UINT32>::operator () (ACE_UINT32 t) const
-{
- return t;
-}
-
-ACE_INLINE unsigned long
-ACE_Hash<ACE_UINT64>::operator () (ACE_UINT64 t) const
-{
-#if (ACE_SIZEOF_LONG == 4)
- return ACE_U64_TO_U32 (t);
-#else
- return static_cast<unsigned long> (t);
-#endif /* ACE_SIZEOF_LONG */
-}
-#endif
-
-ACE_INLINE unsigned long
-ACE_Hash<short>::operator () (short t) const
-{
- return static_cast<unsigned long> (t);
-}
-
-ACE_INLINE unsigned long
-ACE_Hash<unsigned short>::operator () (unsigned short t) const
-{
- return static_cast<unsigned long> (t);
-}
-
-ACE_INLINE unsigned long
-ACE_Hash<int>::operator () (int t) const
-{
- return static_cast<unsigned long> (t);
-}
-
-ACE_INLINE unsigned long
-ACE_Hash<unsigned int>::operator () (unsigned int t) const
-{
- return static_cast<unsigned long> (t);
-}
-
-ACE_INLINE unsigned long
-ACE_Hash<long>::operator () (long t) const
-{
- return static_cast<unsigned long> (t);
-}
-
-ACE_INLINE unsigned long
-ACE_Hash<unsigned long>::operator () (unsigned long t) const
-{
- return t;
-}
-
-// This #if needs to match the one in Functor.h
-#if !defined (ACE_LACKS_LONGLONG_T) && (ACE_SIZEOF_LONG < 8)
-ACE_INLINE unsigned long
-ACE_Hash<ACE_INT64>::operator () (ACE_INT64 t) const
-{
- return static_cast<unsigned long> (t);
-}
-#endif /* !ACE_LACKS_LONGLONG_T && ACE_SIZEOF_LONG < 8 */
-
-#if (ACE_SIZEOF_LONG < 8)
-ACE_INLINE unsigned long
-ACE_Hash<ACE_UINT64>::operator () (const ACE_UINT64 &t) const
-{
-#if (ACE_SIZEOF_LONG == 4)
- return ACE_U64_TO_U32 (t);
-#else
- return static_cast<unsigned long> (t);
-#endif /* ACE_SIZEOF_LONG */
-}
-#endif /* !ACE_LACKS_UNSIGNEDLONGLONG_T */
-
-ACE_INLINE unsigned long
-ACE_Hash<const char *>::operator () (const char *t) const
-{
- return ACE::hash_pjw (t);
-}
-
-ACE_INLINE unsigned long
-ACE_Hash<char *>::operator () (const char *t) const
-{
- return ACE::hash_pjw (t);
-}
-
-ACE_INLINE unsigned long
-ACE_Hash<void *>::operator () (const void *t) const
-{
- return static_cast<unsigned long> (reinterpret_cast<uintptr_t> (t));
-}
-
-/***********************************************************************/
-ACE_INLINE int
-ACE_Equal_To<const char *>::operator () (const char *lhs, const char *rhs) const
-{
- return !ACE_OS::strcmp (lhs, rhs);
-}
-
-ACE_INLINE int
-ACE_Equal_To<char *>::operator () (const char *lhs, const char *rhs) const
-{
- return !ACE_OS::strcmp (lhs, rhs);
-}
-
-ACE_INLINE int
-ACE_Equal_To<ACE_UINT16>::operator () (const ACE_UINT16 lhs, const ACE_UINT16 rhs) const
-{
- return (lhs == rhs);
-}
-
-ACE_INLINE int
-ACE_Equal_To<ACE_INT16>::operator () (const ACE_INT16 lhs, const ACE_INT16 rhs) const
-{
- return (lhs == rhs);
-}
-
-ACE_INLINE int
-ACE_Equal_To<ACE_UINT32>::operator () (const ACE_UINT32 lhs, const ACE_UINT32 rhs) const
-{
- return (lhs == rhs);
-}
-
-ACE_INLINE int
-ACE_Equal_To<ACE_INT32>::operator () (const ACE_INT32 lhs, const ACE_INT32 rhs) const
-{
- return (lhs == rhs);
-}
-
-ACE_INLINE int
-ACE_Equal_To<ACE_UINT64>::operator () (const ACE_UINT64 lhs, const ACE_UINT64 rhs) const
-{
- return (lhs == rhs);
-}
-
-/****************************************************************************/
-ACE_INLINE int
-ACE_Less_Than<const char *>::operator () (const char *lhs, const char *rhs) const
-{
- return (ACE_OS::strcmp (lhs, rhs) < 0) ? 1 : 0;
-}
-
-ACE_INLINE int
-ACE_Less_Than<char *>::operator () (const char *lhs, const char *rhs) const
-{
- return (ACE_OS::strcmp (lhs, rhs) < 0) ? 1 : 0;
-}
-
-#if defined (ACE_HAS_WCHAR)
-
-ACE_INLINE unsigned long
-ACE_Hash<const wchar_t *>::operator () (const wchar_t *t) const
-{
- return ACE::hash_pjw (t);
-}
-
-ACE_INLINE unsigned long
-ACE_Hash<wchar_t *>::operator () (const wchar_t *t) const
-{
- return ACE::hash_pjw (t);
-}
-
-ACE_INLINE int
-ACE_Equal_To<const wchar_t *>::operator () (const wchar_t *lhs,
- const wchar_t *rhs) const
-{
- return !ACE_OS::strcmp (lhs, rhs);
-}
-
-ACE_INLINE int
-ACE_Equal_To<wchar_t *>::operator () (const wchar_t *lhs,
- const wchar_t *rhs) const
-{
- return !ACE_OS::strcmp (lhs, rhs);
-}
-
-ACE_INLINE int
-ACE_Less_Than<const wchar_t *>::operator () (const wchar_t *lhs, const wchar_t *rhs) const
-{
- return (ACE_OS::strcmp (lhs, rhs) < 0) ? 1 : 0;
-}
-
-ACE_INLINE int
-ACE_Less_Than<wchar_t *>::operator () (const wchar_t *lhs, const wchar_t *rhs) const
-{
- return (ACE_OS::strcmp (lhs, rhs) < 0) ? 1 : 0;
-}
-
-#endif // ACE_HAS_WCHAR
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Functor_String.h b/dep/include/ace/Functor_String.h
deleted file mode 100644
index 6167bd5b5b2..00000000000
--- a/dep/include/ace/Functor_String.h
+++ /dev/null
@@ -1,138 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Functor_String.h
- *
- * $Id: Functor_String.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Class template specializations for ACE_*String types implementing
- * function objects that are used in various places in ATC. They
- * could be placed in Functor.h. But we don't want to couple string
- * types to the rest of ACE+TAO. Hence they are placed in a seperate
- * file.
- */
-//==========================================================================
-#ifndef ACE_FUNCTOR_STRING_H
-#define ACE_FUNCTOR_STRING_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include /**/ "ace/ACE_export.h"
-#include "ace/SStringfwd.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-////////////////////////////////////////////////////////////
-// STL-style Functor Classes and Template Specializations //
-////////////////////////////////////////////////////////////
-
-// Forward declaration since we are going to specialize that template
-// here. The template itself requires this file so every user of the
-// template should also see the specialization.
-template <class TYPE> class ACE_Hash;
-template <class TYPE> class ACE_Equal_To;
-template <class TYPE> class ACE_Less_Than;
-
-/**
- * @class ACE_Equal_To<ACE_CString>
- *
- * @brief Function object for determining whether two ACE_CStrings are
- * equal.
- */
-template<>
-class ACE_Export ACE_Equal_To<ACE_CString>
-{
-public:
- int operator () (const ACE_CString &lhs,
- const ACE_CString &rhs) const;
-};
-
-/**
- * @class ACE_Hash<ACE_CString>
- *
- * @brief Function object for hashing a ACE_CString
- */
-template<>
-class ACE_Export ACE_Hash<ACE_CString>
-{
-public:
- /// Calls ACE::hash_pjw
- unsigned long operator () (const ACE_CString &lhs) const;
-};
-
-/**
- * @class ACE_Less_Than<ACE_CString>
- *
- * @brief Function object for determining whether the first const string
- * is less than the second const string.
- */
-template<>
-class ACE_Export ACE_Less_Than<ACE_CString>
-{
-public:
- /// Simply calls ACE_OS::strcmp
- int operator () (const ACE_CString &lhs,
- const ACE_CString &rhs) const;
-};
-
-#if defined (ACE_USES_WCHAR)
-
-/**
- * @class ACE_Equal_To<ACE_WString>
- *
- * @brief Function object for determining whether two ACE_CStrings are
- * equal.
- */
-template<>
-class ACE_Export ACE_Equal_To<ACE_WString>
-{
-public:
- int operator () (const ACE_WString &lhs,
- const ACE_WString &rhs) const;
-};
-
-/**
- * @class ACE_Hash<ACE_WString>
- *
- * @brief Function object for hashing a ACE_WString
- */
-template<>
-class ACE_Export ACE_Hash<ACE_WString>
-{
-public:
- /// Calls ACE::hash_pjw
- unsigned long operator () (const ACE_WString &lhs) const;
-};
-
-/**
- * @class ACE_Less_Than<ACE_WString>
- *
- * @brief Function object for determining whether the first const string
- * is less than the second const string.
- */
-template<>
-class ACE_Export ACE_Less_Than<ACE_WString>
-{
-public:
- /// Simply calls ACE_OS::strcmp
- int operator () (const ACE_WString &lhs,
- const ACE_WString &rhs) const;
-};
-
-#endif /*ACE_USES_WCHAR*/
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Functor_String.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /*ACE_FUNCTOR_STRING_H*/
-
diff --git a/dep/include/ace/Functor_String.inl b/dep/include/ace/Functor_String.inl
deleted file mode 100644
index f4155044fce..00000000000
--- a/dep/include/ace/Functor_String.inl
+++ /dev/null
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Functor_String.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/ACE.h"
-#include "ace/String_Base.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE unsigned long
-ACE_Hash<ACE_CString>::operator () (const ACE_CString &t) const
-{
- return t.hash ();
-}
-
-ACE_INLINE int
-ACE_Equal_To<ACE_CString>::operator () (const ACE_CString &lhs,
- const ACE_CString &rhs) const
-{
- return lhs == rhs;
-}
-
-ACE_INLINE int
-ACE_Less_Than<ACE_CString>::operator () (const ACE_CString &lhs,
- const ACE_CString &rhs) const
-{
- return (lhs < rhs);
-}
-
-#if defined (ACE_USES_WCHAR)
-ACE_INLINE unsigned long
-ACE_Hash<ACE_WString>::operator () (const ACE_WString &t) const
-{
- return t.hash ();
-}
-
-ACE_INLINE int
-ACE_Equal_To<ACE_WString>::operator () (const ACE_WString &lhs,
- const ACE_WString &rhs) const
-{
- return lhs == rhs;
-}
-
-ACE_INLINE int
-ACE_Less_Than<ACE_WString>::operator () (const ACE_WString &lhs,
- const ACE_WString &rhs) const
-{
- return (lhs < rhs);
-}
-
-#endif /*ACE_USES_WCHAR*/
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Functor_T.h b/dep/include/ace/Functor_T.h
deleted file mode 100644
index 13387119f53..00000000000
--- a/dep/include/ace/Functor_T.h
+++ /dev/null
@@ -1,157 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Functor_T.h
- *
- * $Id: Functor_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Templatized classes for implementing function objects that are
- * used in various places in ACE. There are currently two major
- * categories of function objects in ACE: GOF Command Pattern
- * objects, and STL-style functors for comparison of container
- * elements. The command objects are invoked via an <execute>
- * method, while the STL-style functors are invoked via an
- * <operator()> method.
- *
- *
- * @author Chris Gill <cdgill@cs.wustl.edu>
- * @author Based on Command Pattern implementations originally done by
- * @author Carlos O'Ryan <coryan@cs.wustl.edu>
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Sergio Flores-Gaitan <sergio@cs.wustl.edu>
- * @author and on STL-style functor implementations originally done by
- * @author Irfan Pyarali <irfan@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_FUNCTOR_T_H
-#define ACE_FUNCTOR_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Functor.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Functor_String.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-///////////////////////////////////
-// GOF Command Pattern Templates //
-///////////////////////////////////
-
-/**
- * @class ACE_Command_Callback
- *
- * @brief Defines a class template that allows us to invoke a GOF
- * command style callback to an object without knowing anything
- * about the object except its type.
- *
- * This class declares an interface to execute operations,
- * binding a RECEIVER object with an ACTION. The RECEIVER knows
- * how to implement the operation. A class can invoke operations
- * without knowing anything about it, or how it was implemented.
- */
-template <class RECEIVER, class ACTION>
-class ACE_Command_Callback : public ACE_Command_Base
-{
-public:
- /// Constructor: sets the <receiver_> of the Command to recvr, and the
- /// <action_> of the Command to <action>.
- ACE_Command_Callback (RECEIVER &recvr, ACTION action);
-
- /// Virtual destructor.
- virtual ~ACE_Command_Callback (void);
-
- /// Invokes the method <action_> from the object <receiver_>.
- virtual int execute (void *arg = 0);
-
-private:
- /// Object where the method resides.
- RECEIVER &receiver_;
-
- /// Method that is going to be invoked.
- ACTION action_;
-};
-
-/////////////////////////////////
-// STL-style Functor Templates //
-/////////////////////////////////
-
-/**
- * @class ACE_Hash
- *
- * @brief Function object for hashing
- */
-template <class TYPE>
-class ACE_Hash
-{
-public:
- /// Simply calls t.hash ()
- unsigned long operator () (const TYPE &t) const;
-};
-
-/**
- * @class ACE_Pointer_Hash
- *
- * @brief Function object for hashing pointers
- */
-template <class TYPE>
-class ACE_Pointer_Hash
-{
-public:
- /// Simply returns t.
- unsigned long operator () (TYPE t) const;
-};
-
-/**
- * @class ACE_Equal_To
- *
- * @brief Function object for comparing two objects of
- * the given type for equality.
- */
-template <class TYPE>
-class ACE_Equal_To
-{
-public:
- /// Simply calls operator==
- bool operator () (const TYPE &lhs,
- const TYPE &rhs) const;
-};
-
-/**
- * @class ACE_Less_Than
- *
- * @brief Function object for determining whether the first object of
- * the given type is less than the second object of the same
- * type.
- */
-template <class TYPE>
-class ACE_Less_Than
-{
-public:
- /// Simply calls operator<
- bool operator () (const TYPE &lhs,
- const TYPE &rhs) const;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Functor_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Functor_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Functor_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_FUNCTOR_T_H */
-
diff --git a/dep/include/ace/Functor_T.inl b/dep/include/ace/Functor_T.inl
deleted file mode 100644
index 35cfed5b798..00000000000
--- a/dep/include/ace/Functor_T.inl
+++ /dev/null
@@ -1,42 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Functor_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class TYPE> ACE_INLINE unsigned long
-ACE_Hash<TYPE>::operator () (const TYPE &t) const
-{
- return t.hash ();
-}
-
-template <class TYPE> ACE_INLINE unsigned long
-ACE_Pointer_Hash<TYPE>::operator () (TYPE t) const
-{
-#if defined (ACE_WIN64)
- // The cast below is legit... we only want a hash, and need not convert
- // the hash back to a pointer.
-# pragma warning(push)
-# pragma warning(disable : 4311) /* Truncate pointer to unsigned long */
-#endif /* ACE_WIN64 */
- return reinterpret_cast<unsigned long> (t);
-#if defined (ACE_WIN64)
-# pragma warning(pop)
-#endif /* ACE_WIN64 */
-}
-
-template <class TYPE> ACE_INLINE bool
-ACE_Equal_To<TYPE>::operator () (const TYPE &lhs,
- const TYPE &rhs) const
-{
- return lhs == rhs;
-}
-
-template <class TYPE> ACE_INLINE bool
-ACE_Less_Than<TYPE>::operator () (const TYPE &lhs,
- const TYPE &rhs) const
-{
- return lhs < rhs;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Future.h b/dep/include/ace/Future.h
deleted file mode 100644
index d86efd5a485..00000000000
--- a/dep/include/ace/Future.h
+++ /dev/null
@@ -1,388 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Future.h
- *
- * $Id: Future.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Andres Kruse <Andres.Kruse@cern.ch>
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Per Andersson <Per.Andersson@hfera.ericsson.se> and
- * @author John Tucker <johnny_tucker@yahoo.com>
- */
-//=============================================================================
-
-#ifndef ACE_FUTURE_H
-#define ACE_FUTURE_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Unbounded_Set.h"
-#include "ace/Strategies_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_THREADS)
-
-#include "ace/Recursive_Thread_Mutex.h"
-#include "ace/Condition_Recursive_Thread_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decl.
-template <class T> class ACE_Future_Holder;
-template <class T> class ACE_Future_Observer;
-template <class T> class ACE_Future_Rep;
-template <class T> class ACE_Future;
-
-/**
- * @class ACE_Future_Holder
- *
- * @brief Implementation of object that holds an ACE_Future.
- */
-template <class T>
-class ACE_Future_Holder
-{
-public:
- ACE_Future_Holder (const ACE_Future<T> &future);
- ~ACE_Future_Holder (void);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- ACE_Future<T> item_;
-
-protected:
- ACE_Future_Holder (void);
-};
-
-/**
- * @class ACE_Future_Observer
- *
- * @brief ACE_Future_Observer<T>
- *
- * An ACE_Future_Observer object implements an object that is
- * subscribed with an ACE_Future object so that it may be notified
- * when the value of the ACE_Future object is written to by a writer
- * thread. It uses the Observer pattern.
- */
-template <class T>
-class ACE_Future_Observer
-{
-public:
- /// Destructor
- virtual ~ACE_Future_Observer (void);
-
- /// Called by the ACE_Future in which we are subscribed to when
- /// its value is written to.
- virtual void update (const ACE_Future<T> &future) = 0;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-protected:
-
- /// Constructor
- ACE_Future_Observer (void);
-};
-
-/**
- * @class ACE_Future_Rep
- *
- * @internal
- *
- * @brief ACE_Future_Rep<T>
- *
- * An ACE_Future_Rep<T> object encapsules a pointer to an object
- * of class T which is the result of an asynchronous method
- * invocation. It is pointed to by ACE_Future<T> object[s] and
- * only accessible through them.
- */
-template <class T>
-class ACE_Future_Rep
-{
-private:
- friend class ACE_Future<T>;
-
- /**
- * Set the result value. The specified <caller> represents the
- * future that invoked this <set> method, which is used to notify
- * the list of future observers. Returns 0 for success, -1 on error.
- * This function only has an effect the first time it is called for
- * the object. Subsequent calls return 0 (success) but have no effect.
- */
- int set (const T &r,
- ACE_Future<T> &caller);
-
- /// Wait up to @a tv time to get the @a value. Note that @a tv must be
- /// specified in absolute time rather than relative time.
- int get (T &value,
- ACE_Time_Value *tv) const;
-
- /**
- * Attaches the specified observer to a subject (i.e., the ACE_Future_Rep).
- * The update method of the specified subject will be invoked with a copy of
- * the written-to ACE_Future as input when the result gets set.
- *
- * Returns 0 if the observer is successfully attached, 1 if the
- * observer is already attached, and -1 if failures occur.
- */
- int attach (ACE_Future_Observer<T> *observer,
- ACE_Future<T> &caller);
-
- /**
- * Detaches the specified observer from a subject (i.e., the ACE_Future_Rep).
- * The update method of the specified subject will not be invoked when the
- * ACE_Future_Reps result gets set. Returns 1 if the specified observer was
- * actually attached to the subject prior to this call and 0 if was not.
- *
- * Returns 0 if the observer was successfully detached, and -1 if the
- * observer was not attached in the first place.
- */
- int detach (ACE_Future_Observer<T> *observer);
-
- /**
- * Type conversion. will block forever until the result is
- * available. Note that this method is going away in a subsequent
- * release since it doesn't distinguish between failure results and
- * success results (exceptions should be used, but they aren't
- * portable...). The <get> method should be used instead since it
- * separates the error value from the result, and also permits
- * timeouts.
- */
- operator T ();
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- // = Encapsulate reference count and object lifetime of instances.
-
- // These methods must go after the others to work around a bug with
- // Borland's C++ Builder...
-
- /// Allocate a new ACE_Future_Rep<T> instance, returning NULL if it
- /// cannot be created.
- static ACE_Future_Rep<T> *internal_create (void);
-
- /// Create a ACE_Future_Rep<T> and initialize the reference count.
- static ACE_Future_Rep<T> *create (void);
-
- /**
- * Increase the reference count and return argument. Uses the
- * attribute "value_ready_mutex_" to synchronize reference count
- * updating.
- *
- * Precondition (rep != 0).
- */
- static ACE_Future_Rep<T> *attach (ACE_Future_Rep<T> *&rep);
-
- /**
- * Decreases the reference count and deletes rep if there are no
- * more references to rep.
- *
- * Precondition (rep != 0)
- */
- static void detach (ACE_Future_Rep<T> *&rep);
-
- /**
- * Decreases the rep's reference count and deletes rep if there
- * are no more references to rep. Then assigns new_rep to rep.
- *
- * Precondition (rep != 0 && new_rep != 0)
- */
- static void assign (ACE_Future_Rep<T> *&rep, ACE_Future_Rep<T> *new_rep);
-
- /// Is result available?
- int ready (void) const;
-
- /// Pointer to the result.
- T *value_;
-
- /// Reference count.
- int ref_count_;
-
- typedef ACE_Future_Observer<T> OBSERVER;
-
- typedef ACE_Unbounded_Set<OBSERVER *> OBSERVER_COLLECTION;
-
- /// Keep a list of ACE_Future_Observers unread by client's reader thread.
- OBSERVER_COLLECTION observer_collection_;
-
- // = Condition variable and mutex that protect the <value_>.
- mutable ACE_Recursive_Thread_Mutex value_ready_mutex_;
- mutable ACE_Condition_Recursive_Thread_Mutex value_ready_;
-
-private:
-
- ACE_Future_Rep (void);
-
-protected:
-
- ~ACE_Future_Rep (void);
-
-};
-
-/**
- * @class ACE_Future
- *
- * @brief This class implements a ``single write, multiple read''
- * pattern that can be used to return results from asynchronous
- * method invocations.
- */
-template <class T>
-class ACE_Future
-{
-public:
- // = Initialization and termination methods.
- /// Constructor.
- ACE_Future (void);
-
- /// Copy constructor binds @a this and @a r to the same
- /// ACE_Future_Rep. An ACE_Future_Rep is created if necessary.
- ACE_Future (const ACE_Future<T> &r);
-
- /// Constructor that initialises an ACE_Future to point to the
- /// result @a r immediately.
- ACE_Future (const T &r);
-
- /// Destructor.
- ~ACE_Future (void);
-
- /// Assignment operator that binds @a this and @a r to the same
- /// ACE_Future_Rep. An ACE_Future_Rep is created if necessary.
- void operator = (const ACE_Future<T> &r);
-
- /// Cancel an ACE_Future and assign the value @a r. It is used if a
- /// client does not want to wait for the value to be produced.
- int cancel (const T &r);
-
- /**
- * Cancel an ACE_Future. Put the future into its initial
- * state. Returns 0 on succes and -1 on failure. It is now possible
- * to reuse the ACE_Future. But remember, the ACE_Future
- * is now bound to a new ACE_Future_Rep.
- */
- int cancel (void);
-
- /**
- * Equality operator that returns @c true if both ACE_Future objects
- * point to the same ACE_Future_Rep object.
- *
- * @note It also returns @c true if both objects have just been
- * instantiated and not used yet.
- */
- bool operator == (const ACE_Future<T> &r) const;
-
- /// Inequality operator, which is the opposite of equality.
- bool operator != (const ACE_Future<T> &r) const;
-
- /**
- * Make the result available. Is used by the server thread to give
- * the result to all waiting clients. Returns 0 for success, -1 on failure.
- * This function only has an effect the first time it is called for
- * the object (actually, the first time the underlying ACE_Future_Rep has a
- * value assigned to it). Subsequent calls return 0 (success) but have no
- * effect.
- */
- int set (const T &r);
-
- /**
- * Wait to get the object's value.
- *
- * @param value Receives the value of this ACE_Future when it is set.
- * @param tv Pointer to an ACE_Time_Value containing the absolute
- * time to wait until for the value to be set. If @a tv
- * is 0, the call waits indefinitely for the value to be
- * set, unless an error occurs.
- *
- * @retval 0 Success; @a value contains the value of the ACE_Future.
- * @retval -1 Error; check ACE_OS::last_error() for an error code.
- */
- int get (T &value,
- ACE_Time_Value *tv = 0) const;
-
- /**
- * @deprecated Note that this method is going away in a subsequent
- * release since it doesn't distinguish between failure
- * results and success results (exceptions should be
- * used, but they aren't portable...).
- * Type conversion, which obtains the result of the asynchronous
- * method invocation. Will block forever. The get() method should be
- * used instead since it separates the error value from the result,
- * and also permits timeouts.
- */
- operator T ();
-
- /// Check if the result is available.
- int ready (void) const;
-
- /**
- * Attaches the specified observer to a subject (this ACE_Future).
- * The update method of the specified subject will be invoked with a copy of
- * the associated ACE_Future as input when the result gets set. If the
- * result is already set when this method gets invoked, then the update
- * method of the specified subject will be invoked immediately.
- *
- * @param observer The observer to attach to the subject.
- *
- * @retval 0 Success.
- * @retval 1 The observer was already attached.
- * @retval -1 Error; check ACE_OS::last_error() for an error code.
- */
- int attach (ACE_Future_Observer<T> *observer);
-
- /**
- * Detaches the specified observer from a subject (this ACE_Future).
- * The update method of the specified subject will not be invoked when the
- * ACE_Future_Rep result gets set.
- *
- * @param observer The observer to attach to the subject.
- *
- * @retval 0 The observer was successfully detached.
- * @retval -1 Error, including the observer not attached prior
- * to calling this method.
- */
- int detach (ACE_Future_Observer<T> *observer);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /**
- * Get the underlying ACE_Future_Rep pointer. Note that this method should
- * rarely, if ever, be used and that modifying the underlying
- * ACE_Future_Rep should be done with extreme caution.
- */
- ACE_Future_Rep<T> *get_rep (void);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-
- // the ACE_Future_Rep
- /// Protect operations on the <Future>.
- typedef ACE_Future_Rep<T> FUTURE_REP;
- FUTURE_REP *future_rep_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Future.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Future.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#endif /* ACE_HAS_THREADS */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_FUTURE_H */
-
diff --git a/dep/include/ace/Future_Set.h b/dep/include/ace/Future_Set.h
deleted file mode 100644
index b41fc673986..00000000000
--- a/dep/include/ace/Future_Set.h
+++ /dev/null
@@ -1,147 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Future_Set.h
- *
- * $Id: Future_Set.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author John Tucker <jtucker@infoglide.com>
- */
-//=============================================================================
-
-#ifndef ACE_FUTURE_SET_H
-#define ACE_FUTURE_SET_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Thread.h"
-#include "ace/Message_Queue.h"
-#include "ace/Future.h"
-#include "ace/Hash_Map_Manager_T.h"
-#include "ace/Null_Mutex.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_THREADS)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Future_Set
- *
- * @brief This class implements a mechanism which allows the values of
- * a collection of ACE_Future objects to be accessed by reader threads
- * as they become available. The caller(s) provide the ACE_Future_Set
- * (i.e. the observer...) with the collection of ACE_Future objects
- * (i.e. the subjects...) that are to be observed using the
- * the ACE_Future_Set::insert() method. The caller(s) may then iterate
- * over the collection in the order in which they become readable using
- * the ACE_Future_Set::next_readable() method.
- */
-template <class T>
-class ACE_Future_Set : public ACE_Future_Observer<T>
-{
-public:
- // = Initialization and termination methods.
-
- /// Constructor.
- ACE_Future_Set (ACE_Message_Queue<ACE_SYNCH> *future_notification_queue_ = 0);
-
- /// Destructor.
- ~ACE_Future_Set (void);
-
- /**
- * Return 1 if their are no ACE_Future objects left on its queue and
- * 0 otherwise.
- *
- * When an ACE_Future_Set has no ACE_Future>subjects to observe it is
- * empty. The ACE_Future_Set is in the empty state when either the caller(s)
- * have retrieved every readable ACE_Future subject assigned the
- * ACE_Future_Set via the ACE_Future_Set::next_readable() method,
- * or when the ACE_Future_Set has not been assigned any subjects.
- */
- int is_empty (void) const;
-
- /**
- * Enqueus the given ACE_Future into this objects queue when it is
- * readable.
- *
- * Returns 0 if the future is successfully inserted, 1 if the
- * future is already inserted, and -1 if failures occur.
- */
- int insert (ACE_Future<T> &future);
-
- /**
- * Wait up to @a tv time to get the @a value. Note that @a tv must be
- * specified in absolute time rather than relative time.); get the
- * next ACE_Future that is readable. If @a tv = 0, the will block
- * forever.
- *
- * If a readable future becomes available, then the input
- * ACE_Future object param will be assigned with it and 1 will
- * be returned. If the ACE_Future_Set is empty (i.e. see definition
- * of ACE_Future_Set::is_empty()), then 0 is returned.
- *
- * When a readable ACE_Future object is retrieved via the
- * ACE_Future_Set::next_readable() method, the ACE_Future_Set will
- * remove that ACE_Future object from its list of subjects.
- */
- int next_readable (ACE_Future<T> &result,
- ACE_Time_Value *tv = 0);
-
- /// Called by the ACE_Future subject in which we are subscribed to
- /// when its value is written to.
- virtual void update (const ACE_Future<T> &future);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- // = Disallow these operations.
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Future_Set<T> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Future_Set (const ACE_Future_Set<T> &))
-
- typedef ACE_Future<T> FUTURE;
-
- typedef ACE_Future_Rep<T> FUTURE_REP;
-
- typedef ACE_Future_Holder<T> FUTURE_HOLDER;
-
- typedef ACE_Pointer_Hash<FUTURE_REP *> FUTURE_REP_HASH;
-
- typedef ACE_Equal_To<FUTURE_REP *> FUTURE_REP_COMPARE;
-
- typedef ACE_Hash_Map_Manager_Ex<FUTURE_REP *,
- FUTURE_HOLDER *,
- FUTURE_REP_HASH,
- FUTURE_REP_COMPARE,
- ACE_Null_Mutex> FUTURE_HASH_MAP;
-
- /// Map of <ACE_Futures>, subjects, which have not been written to by
- /// client's writer thread.
- FUTURE_HASH_MAP future_map_;
-
- /// Message queue for notifying the reader thread of <ACE_Futures> which
- /// have been written to by client's writer thread.
- ACE_Message_Queue<ACE_SYNCH> *future_notification_queue_;
-
- /// Keeps track of whether we need to delete the message queue.
- bool delete_queue_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Future_Set.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Future_Set.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#endif /* ACE_HAS_THREADS */
-#include /**/ "ace/post.h"
-#endif /* ACE_FUTURE_SET_H */
-
diff --git a/dep/include/ace/Get_Opt.h b/dep/include/ace/Get_Opt.h
deleted file mode 100644
index e00518954e6..00000000000
--- a/dep/include/ace/Get_Opt.h
+++ /dev/null
@@ -1,495 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Get_Opt.h
- *
- * $Id: Get_Opt.h 81840 2008-06-05 13:46:45Z sma $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Don Hinton <dhinton@gmx.net> (added long option support)
- */
-//==========================================================================
-
-#ifndef ACE_GET_OPT_H
-#define ACE_GET_OPT_H
-#include /**/ "ace/pre.h"
-
-#include "ace/SStringfwd.h"
-#include "ace/Containers.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#undef optind
-#undef optarg
-#undef opterr
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/*
- * These definitions are for backward compatibility with previous versions.
- * of ACE_Get_Opt.
- */
-
-/**
- * @class ACE_Get_Opt
- *
- * @brief Iterator for parsing command-line arguments.
- *
- * This is a C++ wrapper for getopt(3c) and getopt_long(3c).
- */
-
-class ACE_Export ACE_Get_Opt
-{
-public:
- /// Mutually exclusive ordering values.
- enum
- {
- /**
- * REQUIRE_ORDER means that processing stops and @c EOF is
- * returned as soon as a non-option argument is found. @c opt_ind()
- * will return the index of the next @a argv element so the program
- * can continue processing the rest of the @a argv elements.
- */
- REQUIRE_ORDER = 1,
-
- /**
- * PERMUTE_ARGS means the @a argv elements are reordered dynamically
- * (permuted) so that all options appear first. When the elements are
- * permuted, the order of the options and the following arguments are
- * maintained. When the last option has been processed, @c EOF is
- * returned and @c opt_ind() returns the index into the next non-option
- * element.
- */
- PERMUTE_ARGS = 2,
-
- /**
- * RETURN_IN_ORDER means each @a argv element is processed in the
- * order is it seen. If the element is not recognized as an option, '1'
- * is returned and @c opt_arg() refers to the @a argv element found.
- */
- RETURN_IN_ORDER = 3
- };
-
- /// Mutually exclusive option argument mode used by long options.
- enum OPTION_ARG_MODE
- {
- /// Doesn't take an argument.
- NO_ARG = 0,
-
- /// Requires an argument, same as passing ":" after a short option
- /// character in @a optstring.
- ARG_REQUIRED = 1,
-
- /// Argument is optional, same as passing "::" after a short
- /// option character in @a optstring.
- ARG_OPTIONAL = 2
- };
-
- /**
- * Constructor initializes the command line to be parsed. All information
- * for parsing must be supplied to this constructor.
- *
- * @param argc The number of @a argv elements to parse.
- * @param argv Command line tokens, such as would be passed
- * to @c main().
- * @param optstring Nul-terminated string containing the legitimate
- * short option characters. A single colon ":"
- * following an option character means the option
- * requires an argument. A double colon "::" following
- * an option character means the argument is optional.
- * The argument is taken from the rest of the current
- * @a argv element, or from the following @a argv
- * element (only valid for required arguments;
- * optional arguments must always reside in the same
- * @a argv element). The argument value, if any is
- * returned by the @c opt_arg() method.
- * @a optstring can be extended by adding long options
- * with corresponding short options via the
- * @c long_option() method. If the short option
- * already appears in @a optstring, the argument
- * characteristics must match, otherwise it is added.
- * See @c long_option() for more information.
- * If 'W', followed by a semi-colon ';' appears in
- * @a optstring, then any time a 'W' appears on the
- * command line, the following argument is treated as
- * a long option. For example, if the command line
- * contains "program -W foo", "foo" is treated as a
- * long option, that is, as if "program --foo" had
- * been passed.
- * The following characters can appear in @a optstring
- * before any option characters, with the described
- * effect:
- * - '+' changes the @a ordering to @a REQUIRE_ORDER.
- * - '-' changes the @a ordering to @a RETURN_IN_ORDER.
- * - ':' changes the return value from @c operator()
- * and get_opt() from '?' to ':' when an option
- * requires an argument but none is specified.
- *
- * @param skip_args Optional (default 1). The specified number of
- * initial elements in @a argv are skipped before
- * parsing begins. Thus, the default prevents
- * @a argv[0] (usually the command name) from being
- * parsed. @a argc includes all @a argv elements,
- * including any skipped elements.
- * @param report_errors Optional, if non-zero then parsing errors cause
- * an error message to be displayed from the
- * @c operator() method before it returns. The
- * error message is suppressed if this argument is 0.
- * This setting also controls whether or not an error
- * message is displayed in @c long_option() encounters
- * an error.
- * @param ordering Optional (default is @c PERMUTE_ARGS); determines
- * how the @a argv elements are processed. This argument
- * is overridden by two factors:
- * -# The @c POSIXLY_CORRECT environment variable. If
- * this environment variable is set, the ordering
- * is changed to @c REQUIRE_ORDER.
- * -# Leading characters in @a optstring (see above).
- * Any leading ordering characters override both
- * the @a ordering argument and any effect of the
- * @c POSIXLY_CORRECT environment variable.
- * @param long_only Optional. If non-zero, then long options can be
- * specified using a single '-' on the command line.
- * If the token is not a long option, it is processed
- * as usual, that is, as a short option or set of
- * short options.
- *
- * Multiple short options can be combined as long as only the last
- * one can takes an argument. For example, if @a optstring is defined as
- * @c "abc:" or @c "abc::" then the command line @e "program -abcxxx" short
- * options @e a, @e b, and @e c are found with @e "xxx" as the argument for
- * @e c.
- * However, if the command line is specified as @e "program -acb" only
- * options @e a and @e c are found with @e "b" as the argument for @e c.
- * Also, for options with optional arguments, that is, those followed by
- * "::", the argument must be in the same @a argv element, so "program -abc
- * xxx" will only find "xxx" as the argument for @e c if @a optstring is
- * specified as @c "abc:" not @c "abc::".
- */
-#ifndef ACE_USES_WCHAR
- ACE_Get_Opt (int argc,
- ACE_TCHAR **argv,
- const ACE_TCHAR *optstring = ACE_TEXT (""),
- int skip_args = 1,
- int report_errors = 0,
- int ordering = PERMUTE_ARGS,
- int long_only = 0);
-
-#else
-private:
- void ACE_Get_Opt_Init (const ACE_TCHAR *optstring);
-public:
- ACE_INLINE ACE_Get_Opt (int argc,
- ACE_TCHAR **argv,
- const ACE_TCHAR *optstring = ACE_TEXT (""),
- int skip_args = 1,
- int report_errors = 0,
- int ordering = PERMUTE_ARGS,
- int long_only = 0);
- ACE_INLINE ACE_Get_Opt (int argc,
- ACE_TCHAR **argv,
- const char *optstring,
- int skip_args = 1,
- int report_errors = 0,
- int ordering = PERMUTE_ARGS,
- int long_only = 0);
-#endif
- /// Default dtor.
- ~ACE_Get_Opt (void);
-
- /**
- * Scan elements of @a argv (whose length is @a argc) for short option
- * characters given in @a optstring or long options (with no short
- * option equivalents).
- *
- * If an element of @a argv starts with '-', and is not exactly "-"
- * or "--", then it is a short option element. The characters of this
- * element (aside from the initial '-') are option characters. If
- * it starts with "--" followed by other characters it is treated as
- * a long option. If @c operator() is called repeatedly, it returns
- * each of the option characters from each of the option elements.
- *
- * @return The parsed option character. The following characters have
- * special significance.
- * @retval 0 A long option was found
- * @retval '\?' Either an unknown option character was found, or the
- * option is known but requires an argument, none was
- * specified, and @a optstring did not contain a leading
- * colon.
- * @retval ':' A known option character was found but it requires an
- * argument and none was supplied, and the first character
- * of @a optstring was a colon. @c opt_opt() indicates
- * which option was specified.
- * @retval '1' @c RETURN_IN_ORDER was specified and a non-option argument
- * was found.
- * @retval EOF No more option characters were found. @c opt_ind() will
- * return the index in @a argv of the first @a argv element
- * that is not an option. If @c PERMUTE_ARGS was
- * specified, the @a argv elements have been permuted so that
- * those that are not options now come last.
- *
- * @note The standards are unclear with respect to the conditions under
- * which '?' and ':' are returned, so we scan the initial characters of
- * @a optstring up unto the first short option character for '+', '-',
- * and ':' in order to determine ordering and missing argument behavior.
- */
- int operator () (void);
-
- /**
- * For communication from @c operator() to the caller. When
- * @c operator() finds an option that takes an argument, the argument
- * value is returned from this method, otherwise it returns 0.
- */
- ACE_TCHAR *opt_arg (void) const;
-
- /**
- * Returns the most recently matched option character. Especially
- * useful when operator() returns ':' for an unspecified argument
- * that's required, since this allows the caller to learn what option
- * was specified without its required argument.
- */
- int opt_opt (void);
-
- /**
- * Index in @a argv of the next element to be scanned. This is used
- * for communication to and from the caller and for communication
- * between successive calls to @c operator(). On entry to
- * @c operator(), zero means this is the first call; initialize.
- *
- * When @c operator() returns @c EOF, this is the index of the first of
- * the non-option elements that the caller should itself scan.
- *
- * Otherwise, @c opt_ind() communicates from one call to the next how
- * much of @a argv has been scanned so far.
- */
- int &opt_ind (void);
-
- /// Adds a long option with no corresponding short option.
- /**
- * If the @a name option is seen, @c operator() returns 0.
- *
- * @param name The long option to add.
- * @param has_arg Defines the argument requirements for
- * the new option.
- *
- * @retval 0 Success
- * @retval -1 The long option can not be added.
- */
- int long_option (const ACE_TCHAR *name,
- OPTION_ARG_MODE has_arg = NO_ARG);
-
- /// Adds a long option with a corresponding short option.
- /**
- * @param name The long option to add.
- * @param short_option A character, the short option that corresponds
- * to @a name.
- * @param has_arg Defines the argument requirements for
- * the new option. If the short option has already
- * been supplied in the @a optstring, @a has_arg
- * must match or an error is returned; otherwise, the
- * new short option is added to the @a optstring.
- *
- * @retval 0 Success
- * @retval -1 The long option can not be added.
- */
- int long_option (const ACE_TCHAR *name,
- int short_option,
- OPTION_ARG_MODE has_arg = NO_ARG);
-
- /// Returns the name of the long option found on the last call to
- /// @c operator() or 0 if none was found.
- const ACE_TCHAR *long_option (void) const;
-
- /// The number of arguments in the internal @c argv_.
- int argc (void) const;
-
- /// Accessor for the internal @c argv_ pointer.
- ACE_TCHAR **argv (void) const;
-
- /// Accessor for the @c last_option that was processed. This allows
- /// applications to know if the found option was a short or long
- /// option, and is especially useful in cases where it was invalid
- /// and the caller wants to print out the invalid value.
- const ACE_TCHAR *last_option (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Return the @a optstring. This is handy to verify that calls to
- /// long_option added short options as expected.
- const ACE_TCHAR *optstring (void) const;
-
-public:
- /*
- * The following five data members should be private, but that
- * would break backwards compatibility. However, we recommend not
- * writing code that uses these fields directly.
- */
-
- /// Holds the @a argc count.
- /**
- * @deprecated This is public for backwards compatibility only.
- * It will be made private in a release of ACE past 5.3. Do not
- * write code that relies on this member being public; use the
- * @c argc() accessor method instead.
- */
- int argc_;
-
- /// Holds the @a argv pointer.
- /**
- * @deprecated This is public for backwards compatibility only.
- * It will be made private in a release of ACE past 5.3. Do not
- * write code that relies on this member being public; use the
- * @c argv() accessor method instead.
- */
- ACE_TCHAR **argv_;
-
- /// Index in @c argv_ of the next element to be scanned.
- /**
- * @deprecated This is public for backwards compatibility only.
- * It will be made private in a release of ACE past 5.3. Do not
- * write code that relies on this member being public; use the
- * @c opt_ind() accessor method instead.
- */
- int optind;
-
- /// Callers store zero here to inhibit the error message for
- /// unrecognized options.
- /**
- * @deprecated This is public for backwards compatibility only.
- * It will be made private in a release of ACE past 5.3. Do not
- * write code that relies on this member being public; use the
- * @a report_errors argument to this class's constructor instead.
- */
- int opterr;
-
- /// Points to the option argument when one is found on last call to
- /// @c operator().
- /**
- * @deprecated This is public for backwards compatibility only.
- * It will be made private in a release of ACE past 5.3. Do not
- * write code that relies on this member being public; use the
- * @c opt_arg() accessor method instead.
- */
- ACE_TCHAR *optarg;
-
-private:
- /**
- * @class ACE_Get_Opt_Long_Option This class is for internal use
- * in the ACE_Get_Opt class, and is inaccessible to users.
- */
- class ACE_Get_Opt_Long_Option
- {
- public:
- /// ctor
- ACE_Get_Opt_Long_Option (const ACE_TCHAR *name,
- int has_arg,
- int val = 0);
-
- /// Dtor.
- ~ACE_Get_Opt_Long_Option (void);
-
- bool operator < (const ACE_Get_Opt_Long_Option &rhs);
-
- /// Long option name.
- const ACE_TCHAR *name_;
-
- /// Contains value for <OPTION_ARG_MODE>.
- int has_arg_;
-
- /// Contains a valid short option character or zero if it doesn't
- /// have a corresponding short option. It can also contain a
- /// non-printable value that cannot be passed to <optstring> but
- /// will be returned by <operator()>. This is handy for
- /// simplifying long option handling, see tests/Get_Opt_Test.cpp
- /// for an example of this technique.
- int val_;
- };
-
- /// Updates nextchar_.
- int nextchar_i (void);
-
- /// Handles long options.
- int long_option_i (void);
-
- /// Handles short options.
- int short_option_i (void);
-
- /// If permuting args, this functions manages the nonopt_start_ and
- /// nonopt_end_ indexes and makes calls to permute to actually
- /// reorder the <argv>-elements.
- void permute_args (void);
-
- /// Handles reordering <argv>-elements.
- int permute (void);
-
- /// Set last_option.
- void last_option (const ACE_TString &s);
-
- // Disallow copying and assignment.
- ACE_Get_Opt (const ACE_Get_Opt &);
- ACE_Get_Opt &operator= (const ACE_Get_Opt &);
-
-private:
-
- /// Holds the option string.
- ACE_TString *optstring_;
-
- /// Treat all options as long options.
- int long_only_;
-
- /// Keeps track of whether or not a colon was passed in <optstring>.
- /// This is used to determine the return value when required
- /// arguments are missing.
- int has_colon_;
-
- /// This is the last option, short or long, that was processed. This
- /// is handy to have in cases where the option passed was invalid.
- ACE_TString *last_option_;
-
- /**
- * The next char to be scanned in the option-element in which the
- * last option character we returned was found. This allows us to
- * pick up the scan where we left off *
- * If this is zero, or a null string, it means resume the scan
- * by advancing to the next <argv>-element.
- */
- ACE_TCHAR *nextchar_;
-
- /// Most recently matched short option character.
- int optopt_;
-
- /// Keeps track of ordering mode (default <PERMUTE_ARGS>).
- int ordering_;
-
- /// Index of the first non-option <argv>-element found (only valid
- /// when permuting).
- int nonopt_start_;
-
- /// Index of the <argv>-element following the last non-option element
- /// (only valid when permuting).
- int nonopt_end_;
-
- /// Points to the long_option found on last call to <operator()>.
- ACE_Get_Opt_Long_Option *long_option_;
-
- /// Array of long options.
- ACE_Array<ACE_Get_Opt_Long_Option*> long_opts_;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Get_Opt.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_GET_OPT_H */
-
diff --git a/dep/include/ace/Get_Opt.inl b/dep/include/ace/Get_Opt.inl
deleted file mode 100644
index e307fb5e400..00000000000
--- a/dep/include/ace/Get_Opt.inl
+++ /dev/null
@@ -1,97 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Get_Opt.inl 81840 2008-06-05 13:46:45Z sma $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE bool
-ACE_Get_Opt::ACE_Get_Opt_Long_Option::operator < (const ACE_Get_Opt_Long_Option &rhs)
-{
- return this->name_ < rhs.name_;
-}
-
-ACE_INLINE int
-ACE_Get_Opt::argc (void) const
-{
- return this->argc_;
-}
-
-ACE_INLINE ACE_TCHAR **
-ACE_Get_Opt::argv (void) const
-{
- return this->argv_;
-}
-
-ACE_INLINE ACE_TCHAR*
-ACE_Get_Opt::opt_arg (void) const
-{
- return this->optarg;
-}
-
-ACE_INLINE int
-ACE_Get_Opt::opt_opt (void)
-{
- return this->optopt_;
-}
-
-ACE_INLINE int &
-ACE_Get_Opt::opt_ind (void)
-{
- return this->optind;
-}
-
-#ifdef ACE_USES_WCHAR
-ACE_INLINE ACE_Get_Opt::ACE_Get_Opt (int argc,
- ACE_TCHAR **argv,
- const ACE_TCHAR *optstring,
- int skip_args,
- int report_errors,
- int ordering,
- int long_only)
- : argc_ (argc),
- argv_ (argv),
- optind (skip_args),
- opterr (report_errors),
- optarg (0),
- optstring_ (0),
- long_only_ (long_only),
- has_colon_ (0),
- last_option_ (0),
- nextchar_ (0),
- optopt_ (0),
- ordering_ (ordering),
- nonopt_start_ (optind),
- nonopt_end_ (optind),
- long_option_ (0)
-{
- ACE_Get_Opt_Init (optstring);
-}
-
-ACE_INLINE ACE_Get_Opt::ACE_Get_Opt (int argc,
- ACE_TCHAR **argv,
- const char *optstring,
- int skip_args,
- int report_errors,
- int ordering,
- int long_only)
- : argc_ (argc),
- argv_ (argv),
- optind (skip_args),
- opterr (report_errors),
- optarg (0),
- optstring_ (),
- long_only_ (long_only),
- has_colon_ (0),
- last_option_ (0),
- nextchar_ (0),
- optopt_ (0),
- ordering_ (ordering),
- nonopt_start_ (optind),
- nonopt_end_ (optind),
- long_option_ (0)
-{
- ACE_Get_Opt_Init (ACE_TEXT_CHAR_TO_TCHAR (optstring));
-}
-#endif
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Global_Macros.h b/dep/include/ace/Global_Macros.h
deleted file mode 100644
index 4d8bb016842..00000000000
--- a/dep/include/ace/Global_Macros.h
+++ /dev/null
@@ -1,1119 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Global_Macros.h
- *
- * $Id: Global_Macros.h 82442 2008-07-28 13:11:29Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * This one is split from the famous OS.h
- */
-//=============================================================================
-
-#ifndef ACE_GLOBAL_MACROS_H
-#define ACE_GLOBAL_MACROS_H
-
-#include /**/ "ace/pre.h"
-
-// Included just keep compilers that see #pragma dierctive first
-// happy.
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/config-lite.h"
-#include "ace/Assert.h" // For ACE_ASSERT
-
-// Start Global Macros
-# define ACE_BEGIN_DUMP ACE_TEXT ("\n====\n(%P|%t|%x)\n")
-# define ACE_END_DUMP ACE_TEXT ("====\n")
-
-# if defined (ACE_NDEBUG)
-# define ACE_DB(X)
-# else
-# define ACE_DB(X) X
-# endif /* ACE_NDEBUG */
-
-// ACE_NO_HEAP_CHECK macro can be used to suppress false report of
-// memory leaks. It turns off the built-in heap checking until the
-// block is left. The old state will then be restored Only used for
-// Win32 (in the moment).
-# if defined (ACE_WIN32)
-
-# if defined (_DEBUG) && !defined (ACE_HAS_WINCE) && !defined (__BORLANDC__)
-# include /**/ <crtdbg.h>
-
-// Open versioned namespace, if enabled by the user.
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Export ACE_No_Heap_Check
-{
-public:
- ACE_No_Heap_Check (void)
- : old_state (_CrtSetDbgFlag (_CRTDBG_REPORT_FLAG))
- { _CrtSetDbgFlag (old_state & ~_CRTDBG_ALLOC_MEM_DF);}
- ~ACE_No_Heap_Check (void) { _CrtSetDbgFlag (old_state);}
-private:
- int old_state;
-};
-
-// Close versioned namespace, if enabled by the user.
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# define ACE_NO_HEAP_CHECK ACE_No_Heap_Check ____no_heap;
-# else /* !_DEBUG */
-# define ACE_NO_HEAP_CHECK
-# endif /* _DEBUG */
-# else /* !ACE_WIN32 */
-# define ACE_NO_HEAP_CHECK
-# endif /* ACE_WIN32 */
-
-// Turn a number into a string.
-# define ACE_ITOA(X) #X
-
-// Create a string of a server address with a "host:port" format.
-# define ACE_SERVER_ADDRESS(H,P) H ACE_TEXT(":") P
-
-// A couple useful inline functions for checking whether bits are
-// enabled or disabled.
-
-// Efficiently returns the least power of two >= X...
-# define ACE_POW(X) (((X) == 0)?1:(X-=1,X|=X>>1,X|=X>>2,X|=X>>4,X|=X>>8,X|=X>>16,(++X)))
-# define ACE_EVEN(NUM) (((NUM) & 1) == 0)
-# define ACE_ODD(NUM) (((NUM) & 1) == 1)
-# define ACE_BIT_ENABLED(WORD, BIT) (((WORD) & (BIT)) != 0)
-# define ACE_BIT_DISABLED(WORD, BIT) (((WORD) & (BIT)) == 0)
-# define ACE_BIT_CMP_MASK(WORD, BIT, MASK) (((WORD) & (BIT)) == MASK)
-# define ACE_SET_BITS(WORD, BITS) (WORD |= (BITS))
-# define ACE_CLR_BITS(WORD, BITS) (WORD &= ~(BITS))
-
-# if !defined (ACE_ENDLESS_LOOP)
-# define ACE_ENDLESS_LOOP
-# endif /* ! ACE_ENDLESS_LOOP */
-
-# if defined (ACE_NEEDS_FUNC_DEFINITIONS)
- // It just evaporated ;-) Not pleasant.
-# define ACE_UNIMPLEMENTED_FUNC(f)
-# else
-# define ACE_UNIMPLEMENTED_FUNC(f) f;
-# endif /* ACE_NEEDS_FUNC_DEFINITIONS */
-
-#if !defined (ACE_LACKS_DEPRECATED_MACROS)
- // Easy way to designate that a class is used as a pseudo-namespace.
- // Insures that g++ "friendship" anamolies are properly handled.
- # define ACE_CLASS_IS_NAMESPACE(CLASSNAME) \
- private: \
- CLASSNAME (void); \
- CLASSNAME (const CLASSNAME&); \
- friend class ace_dewarn_gplusplus
-#endif /* ACE_LACKS_DEPRECATED_MACROS */
-
-// ----------------------------------------------------------------
-
-//FUZZ: disable check_for_exception_sepc
-#if !defined (ACE_LACKS_DEPRECATED_MACROS)
- #if defined (ACE_HAS_NO_THROW_SPEC)
- # define ACE_THROW_SPEC(X)
- #else
- # if defined (ACE_HAS_EXCEPTIONS)
- # if defined (ACE_WIN32) && defined (_MSC_VER) && \
- (_MSC_VER >= 1400) && (_MSC_VER <= 1500)
- # define ACE_THROW_SPEC(X) throw(...)
- # else
- # define ACE_THROW_SPEC(X) throw X
- # endif /* ACE_WIN32 && VC8 */
- # else /* ! ACE_HAS_EXCEPTIONS */
- # define ACE_THROW_SPEC(X)
- # endif /* ! ACE_HAS_EXCEPTIONS */
- #endif /*ACE_HAS_NO_THROW_SPEC*/
-#endif /* ACE_LACKS_DEPRECATED_MACROS */
-//FUZZ: enable check_for_exception_sepc
-
-// ----------------------------------------------------------------
-
-#if !defined (ACE_LACKS_DEPRECATED_MACROS)
- /**
- * This macro is deprecated
- */
- #define ACE_NESTED_CLASS(TYPE, NAME) TYPE::NAME
-#endif /* ACE_LACKS_DEPRECATED_MACROS */
-
-#if !defined (ACE_LACKS_DEPRECATED_MACROS)
- /**
- * @name CORBA namespace macros.
- *
- * CORBA namespace macros.
- *
- * @deprecated These macros were formerly used by TAO but are now
- * deprecated, and only remain to retain some backward
- * compatibility. They will be removed in a future ACE
- * release.
- */
- //@{
- #define ACE_CORBA_1(NAME) CORBA::NAME
- #define ACE_CORBA_2(TYPE, NAME) CORBA::TYPE::NAME
- #define ACE_CORBA_3(TYPE, NAME) CORBA::TYPE::NAME
- //@}
-#endif /* ACE_LACKS_DEPRECATED_MACROS */
-
-// ----------------------------------------------------------------
-
-// Convenient macro for testing for deadlock, as well as for detecting
-// when mutexes fail.
-#define ACE_GUARD_ACTION(MUTEX, OBJ, LOCK, ACTION, REACTION) \
- ACE_Guard< MUTEX > OBJ (LOCK); \
- if (OBJ.locked () != 0) { ACTION; } \
- else { REACTION; }
-#define ACE_GUARD_REACTION(MUTEX, OBJ, LOCK, REACTION) \
- ACE_GUARD_ACTION(MUTEX, OBJ, LOCK, ;, REACTION)
-#define ACE_GUARD(MUTEX, OBJ, LOCK) \
- ACE_GUARD_REACTION(MUTEX, OBJ, LOCK, return)
-#define ACE_GUARD_RETURN(MUTEX, OBJ, LOCK, RETURN) \
- ACE_GUARD_REACTION(MUTEX, OBJ, LOCK, return RETURN)
-# define ACE_WRITE_GUARD(MUTEX,OBJ,LOCK) \
- ACE_Write_Guard< MUTEX > OBJ (LOCK); \
- if (OBJ.locked () == 0) return;
-# define ACE_WRITE_GUARD_RETURN(MUTEX,OBJ,LOCK,RETURN) \
- ACE_Write_Guard< MUTEX > OBJ (LOCK); \
- if (OBJ.locked () == 0) return RETURN;
-# define ACE_READ_GUARD(MUTEX,OBJ,LOCK) \
- ACE_Read_Guard< MUTEX > OBJ (LOCK); \
- if (OBJ.locked () == 0) return;
-# define ACE_READ_GUARD_RETURN(MUTEX,OBJ,LOCK,RETURN) \
- ACE_Read_Guard< MUTEX > OBJ (LOCK); \
- if (OBJ.locked () == 0) return RETURN;
-
-// ----------------------------------------------------------------
-
-# define ACE_DES_NOFREE(POINTER,CLASS) \
- do { \
- if (POINTER) \
- { \
- (POINTER)->~CLASS (); \
- } \
- } \
- while (0)
-
-# define ACE_DES_ARRAY_NOFREE(POINTER,SIZE,CLASS) \
- do { \
- if (POINTER) \
- { \
- for (size_t i = 0; \
- i < SIZE; \
- ++i) \
- { \
- (&(POINTER)[i])->~CLASS (); \
- } \
- } \
- } \
- while (0)
-
-# define ACE_DES_FREE(POINTER,DEALLOCATOR,CLASS) \
- do { \
- if (POINTER) \
- { \
- (POINTER)->~CLASS (); \
- DEALLOCATOR (POINTER); \
- } \
- } \
- while (0)
-
-# define ACE_DES_ARRAY_FREE(POINTER,SIZE,DEALLOCATOR,CLASS) \
- do { \
- if (POINTER) \
- { \
- for (size_t i = 0; \
- i < SIZE; \
- ++i) \
- { \
- (&(POINTER)[i])->~CLASS (); \
- } \
- DEALLOCATOR (POINTER); \
- } \
- } \
- while (0)
-
-# if defined (ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR)
-# define ACE_DES_NOFREE_TEMPLATE(POINTER,T_CLASS,T_PARAMETER) \
- do { \
- if (POINTER) \
- { \
- (POINTER)->~T_CLASS (); \
- } \
- } \
- while (0)
-# define ACE_DES_ARRAY_NOFREE_TEMPLATE(POINTER,SIZE,T_CLASS,T_PARAMETER) \
- do { \
- if (POINTER) \
- { \
- for (size_t i = 0; \
- i < SIZE; \
- ++i) \
- { \
- (&(POINTER)[i])->~T_CLASS (); \
- } \
- } \
- } \
- while (0)
-
-#if defined (ACE_EXPLICIT_TEMPLATE_DESTRUCTOR_TAKES_ARGS)
-# define ACE_DES_FREE_TEMPLATE(POINTER,DEALLOCATOR,T_CLASS,T_PARAMETER) \
- do { \
- if (POINTER) \
- { \
- (POINTER)->~T_CLASS T_PARAMETER (); \
- DEALLOCATOR (POINTER); \
- } \
- } \
- while (0)
-#else
-# define ACE_DES_FREE_TEMPLATE(POINTER,DEALLOCATOR,T_CLASS,T_PARAMETER) \
- do { \
- if (POINTER) \
- { \
- (POINTER)->~T_CLASS (); \
- DEALLOCATOR (POINTER); \
- } \
- } \
- while (0)
-#endif /* defined(ACE_EXPLICIT_TEMPLATE_DESTRUCTOR_TAKES_ARGS) */
-# define ACE_DES_ARRAY_FREE_TEMPLATE(POINTER,SIZE,DEALLOCATOR,T_CLASS,T_PARAMETER) \
- do { \
- if (POINTER) \
- { \
- for (size_t i = 0; \
- i < SIZE; \
- ++i) \
- { \
- (&(POINTER)[i])->~T_CLASS (); \
- } \
- DEALLOCATOR (POINTER); \
- } \
- } \
- while (0)
-#if defined(ACE_EXPLICIT_TEMPLATE_DESTRUCTOR_TAKES_ARGS)
-# define ACE_DES_FREE_TEMPLATE2(POINTER,DEALLOCATOR,T_CLASS,T_PARAM1,T_PARAM2) \
- do { \
- if (POINTER) \
- { \
- (POINTER)->~T_CLASS <T_PARAM1, T_PARAM2> (); \
- DEALLOCATOR (POINTER); \
- } \
- } \
- while (0)
-#else
-# define ACE_DES_FREE_TEMPLATE2(POINTER,DEALLOCATOR,T_CLASS,T_PARAM1,T_PARAM2) \
- do { \
- if (POINTER) \
- { \
- (POINTER)->~T_CLASS (); \
- DEALLOCATOR (POINTER); \
- } \
- } \
- while (0)
-#endif /* defined(ACE_EXPLICIT_TEMPLATE_DESTRUCTOR_TAKES_ARGS) */
-#if defined(ACE_EXPLICIT_TEMPLATE_DESTRUCTOR_TAKES_ARGS)
-# define ACE_DES_FREE_TEMPLATE3(POINTER,DEALLOCATOR,T_CLASS,T_PARAM1,T_PARAM2,T_PARAM3) \
- do { \
- if (POINTER) \
- { \
- (POINTER)->~T_CLASS <T_PARAM1, T_PARAM2, T_PARAM3> (); \
- DEALLOCATOR (POINTER); \
- } \
- } \
- while (0)
-#else
-# define ACE_DES_FREE_TEMPLATE3(POINTER,DEALLOCATOR,T_CLASS,T_PARAM1,T_PARAM2,T_PARAM3) \
- do { \
- if (POINTER) \
- { \
- (POINTER)->~T_CLASS (); \
- DEALLOCATOR (POINTER); \
- } \
- } \
- while (0)
-#endif /* defined(ACE_EXPLICIT_TEMPLATE_DESTRUCTOR_TAKES_ARGS) */
-#if defined(ACE_EXPLICIT_TEMPLATE_DESTRUCTOR_TAKES_ARGS)
-# define ACE_DES_FREE_TEMPLATE4(POINTER,DEALLOCATOR,T_CLASS,T_PARAM1,T_PARAM2,T_PARAM3, T_PARAM4) \
- do { \
- if (POINTER) \
- { \
- (POINTER)->~T_CLASS <T_PARAM1, T_PARAM2, T_PARAM3, T_PARAM4> (); \
- DEALLOCATOR (POINTER); \
- } \
- } \
- while (0)
-#else
-# define ACE_DES_FREE_TEMPLATE4(POINTER,DEALLOCATOR,T_CLASS,T_PARAM1,T_PARAM2,T_PARAM3, T_PARAM4) \
- do { \
- if (POINTER) \
- { \
- (POINTER)->~T_CLASS (); \
- DEALLOCATOR (POINTER); \
- } \
- } \
- while (0)
-#endif /* defined(ACE_EXPLICIT_TEMPLATE_DESTRUCTOR_TAKES_ARGS) */
-# define ACE_DES_ARRAY_FREE_TEMPLATE2(POINTER,SIZE,DEALLOCATOR,T_CLASS,T_PARAM1,T_PARAM2) \
- do { \
- if (POINTER) \
- { \
- for (size_t i = 0; \
- i < SIZE; \
- ++i) \
- { \
- (&(POINTER)[i])->~T_CLASS (); \
- } \
- DEALLOCATOR (POINTER); \
- } \
- } \
- while (0)
-# else /* ! ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR */
-# define ACE_DES_NOFREE_TEMPLATE(POINTER,T_CLASS,T_PARAMETER) \
- do { \
- if (POINTER) \
- { \
- (POINTER)->T_CLASS T_PARAMETER::~T_CLASS (); \
- } \
- } \
- while (0)
-# define ACE_DES_ARRAY_NOFREE_TEMPLATE(POINTER,SIZE,T_CLASS,T_PARAMETER) \
- do { \
- if (POINTER) \
- { \
- for (size_t i = 0; \
- i < SIZE; \
- ++i) \
- { \
- (POINTER)[i].T_CLASS T_PARAMETER::~T_CLASS (); \
- } \
- } \
- } \
- while (0)
-# define ACE_DES_FREE_TEMPLATE(POINTER,DEALLOCATOR,T_CLASS,T_PARAMETER) \
- do { \
- if (POINTER) \
- { \
- POINTER->T_CLASS T_PARAMETER::~T_CLASS (); \
- DEALLOCATOR (POINTER); \
- } \
- } \
- while (0)
-# define ACE_DES_ARRAY_FREE_TEMPLATE(POINTER,SIZE,DEALLOCATOR,T_CLASS,T_PARAMETER) \
- do { \
- if (POINTER) \
- { \
- for (size_t i = 0; \
- i < SIZE; \
- ++i) \
- { \
- POINTER[i].T_CLASS T_PARAMETER::~T_CLASS (); \
- } \
- DEALLOCATOR (POINTER); \
- } \
- } \
- while (0)
-# define ACE_DES_FREE_TEMPLATE2(POINTER,DEALLOCATOR,T_CLASS,T_PARAM1,T_PARAM2) \
- do { \
- if (POINTER) \
- { \
- POINTER->T_CLASS <T_PARAM1, T_PARAM2>::~T_CLASS (); \
- DEALLOCATOR (POINTER); \
- } \
- } \
- while (0)
-# define ACE_DES_FREE_TEMPLATE3(POINTER,DEALLOCATOR,T_CLASS,T_PARAM1,T_PARAM2,T_PARAM3) \
- do { \
- if (POINTER) \
- { \
- POINTER->T_CLASS <T_PARAM1, T_PARAM2, T_PARAM3>::~T_CLASS (); \
- DEALLOCATOR (POINTER); \
- } \
- } \
- while (0)
-# define ACE_DES_FREE_TEMPLATE4(POINTER,DEALLOCATOR,T_CLASS,T_PARAM1,T_PARAM2,T_PARAM3,T_PARAM4) \
- do { \
- if (POINTER) \
- { \
- POINTER->T_CLASS <T_PARAM1, T_PARAM2, T_PARAM3, T_PARAM4>::~T_CLASS (); \
- DEALLOCATOR (POINTER); \
- } \
- } \
- while (0)
-# define ACE_DES_ARRAY_FREE_TEMPLATE2(POINTER,SIZE,DEALLOCATOR,T_CLASS,T_PARAM1,T_PARAM2) \
- do { \
- if (POINTER) \
- { \
- for (size_t i = 0; \
- i < SIZE; \
- ++i) \
- { \
- POINTER[i].T_CLASS <T_PARAM1, T_PARAM2>::~T_CLASS (); \
- } \
- DEALLOCATOR (POINTER); \
- } \
- } \
- while (0)
-# endif /* defined ! ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR */
-
-/*******************************************************************/
-
-/// Service Objects, i.e., objects dynamically loaded via the service
-/// configurator, must provide a destructor function with the
-/// following prototype to perform object cleanup.
-typedef void (*ACE_Service_Object_Exterminator)(void *);
-
-/** @name Service Configurator macros
- *
- * The following macros are used to define helper objects used in
- * ACE's Service Configurator framework, which is described in
- * Chapter 5 of C++NPv2 <www.cs.wustl.edu/~schmidt/ACE/book2/>. This
- * framework implements the Component Configurator pattern, which is
- * described in Chapter 2 of POSA2 <www.cs.wustl.edu/~schmidt/POSA/>.
- * The intent of this pattern is to allow developers to dynamically
- * load and configure services into a system. With a little help from
- * this macros statically linked services can also be dynamically
- * configured.
- *
- * More details about this component are available in the documentation
- * of the ACE_Service_Configurator class and also
- * ACE_Dynamic_Service.
- *
- * Notice that in all the macros the SERVICE_CLASS parameter must be
- * the name of a class derived from ACE_Service_Object.
- */
-//@{
-/// Declare a the data structure required to register a statically
-/// linked service into the service configurator.
-/**
- * The macro should be used in the header file where the service is
- * declared, its only argument is usually the name of the class that
- * implements the service.
- *
- * @param SERVICE_CLASS The name of the class implementing the
- * service.
- */
-# define ACE_STATIC_SVC_DECLARE(SERVICE_CLASS) \
-extern ACE_Static_Svc_Descriptor ace_svc_desc_##SERVICE_CLASS ;
-
-/// As ACE_STATIC_SVC_DECLARE, but using an export macro for NT
-/// compilers.
-/**
- * NT compilers require the use of explicit directives to export and
- * import symbols from a DLL. If you need to define a service in a
- * dynamic library you should use this version instead.
- * Normally ACE uses a macro to inject the correct export/import
- * directives on NT. Naturally it also the macro expands to a blank
- * on platforms that do not require such directives.
- * The first argument (EXPORT_NAME) is the prefix for this export
- * macro, the full name is formed by appending _Export.
- * ACE provides tools to generate header files that define the macro
- * correctly on all platforms, please see
- * $ACE_ROOT/bin/generate_export_file.pl
- *
- * @param EXPORT_NAME The export macro name prefix.
- * @param SERVICE_CLASS The name of the class implementing the service.
- */
-#define ACE_STATIC_SVC_DECLARE_EXPORT(EXPORT_NAME,SERVICE_CLASS) \
-extern EXPORT_NAME##_Export ACE_Static_Svc_Descriptor ace_svc_desc_##SERVICE_CLASS;
-
-/// Define the data structure used to register a statically linked
-/// service into the Service Configurator.
-/**
- * The service configurator requires several arguments to build and
- * control an statically linked service, including its name, the
- * factory function used to construct the service, and some flags.
- * All those parameters are configured in a single structure, an
- * instance of this structure is statically initialized using the
- * following macro.
- *
- * @param SERVICE_CLASS The name of the class that implements the
- * service, must be derived (directly or indirectly) from
- * ACE_Service_Object.
- * @param NAME The name for this service, this name is used by the
- * service configurator to match configuration options provided in
- * the svc.conf file.
- * @param TYPE The type of object. Objects can be streams or service
- * objects. Please read the ACE_Service_Configurator and ASX
- * documentation for more details.
- * @param FN The name of the factory function, usually the
- * ACE_SVC_NAME macro can be used to generate the name. The
- * factory function is often defined using ACE_FACTORY_DECLARE and
- * ACE_FACTORY_DEFINE.
- * @param FLAGS Flags to control the ownership and lifecycle of the
- * object. Please read the ACE_Service_Configurator documentation
- * for more details.
- * @param ACTIVE If not zero then a thread will be dedicate to the
- * service. Please read the ACE_Service_Configurator documentation
- * for more details.
- */
-# define ACE_STATIC_SVC_DEFINE(SERVICE_CLASS, NAME, TYPE, FN, FLAGS, ACTIVE) \
-ACE_Static_Svc_Descriptor ace_svc_desc_##SERVICE_CLASS = { NAME, TYPE, FN, FLAGS, ACTIVE };
-
-/// Automatically register a service with the service configurator
-/**
- * In some applications the services must be automatically registered
- * with the service configurator, before main() starts.
- * The ACE_STATIC_SVC_REQUIRE macro defines a class whose constructor
- * register the service, it also defines a static instance of that
- * class to ensure that the service is registered before main.
- *
- * On platforms that lack adequate support for static C++ objects the
- * macro ACE_STATIC_SVC_REGISTER can be used to explicitly register
- * the service.
- *
- * @todo One class per-Service_Object seems wasteful. It should be
- * possible to define a single class and re-use it for all the
- * service objects, just by passing the Service_Descriptor as an
- * argument to the constructor.
- */
-#if defined(ACE_LACKS_STATIC_CONSTRUCTORS)
-# define ACE_STATIC_SVC_REQUIRE(SERVICE_CLASS)\
-class ACE_Static_Svc_##SERVICE_CLASS {\
-public:\
- ACE_Static_Svc_##SERVICE_CLASS() { \
- ACE_Service_Config::insert (\
- &ace_svc_desc_##SERVICE_CLASS); \
- } \
-};
-#define ACE_STATIC_SVC_REGISTER(SERVICE_CLASS)\
-ACE_Static_Svc_##SERVICE_CLASS ace_static_svc_##SERVICE_CLASS
-
-#else /* !ACE_LACKS_STATIC_CONSTRUCTORS */
-
-# define ACE_STATIC_SVC_REQUIRE(SERVICE_CLASS)\
-class ACE_Static_Svc_##SERVICE_CLASS {\
-public:\
- ACE_Static_Svc_##SERVICE_CLASS() { \
- ACE_Service_Config::insert (\
- &ace_svc_desc_##SERVICE_CLASS); \
- } \
-};\
-static ACE_Static_Svc_##SERVICE_CLASS ace_static_svc_##SERVICE_CLASS;
-#define ACE_STATIC_SVC_REGISTER(SERVICE_CLASS) do {} while (0)
-
-#endif /* !ACE_LACKS_STATIC_CONSTRUCTORS */
-
-// Preprocessor symbols will not be expanded if they are
-// concatenated. Force the preprocessor to expand them during the
-// argument prescan by calling a macro that itself calls another that
-// performs the actual concatenation.
-#define ACE_PREPROC_CONCATENATE_IMPL(A,B) A ## B
-#define ACE_PREPROC_CONCATENATE(A,B) ACE_PREPROC_CONCATENATE_IMPL(A,B)
-
-#if defined (ACE_HAS_VERSIONED_NAMESPACE) && ACE_HAS_VERSIONED_NAMESPACE == 1
-// Preprocessor symbols will not be expanded if they are
-// concatenated. Force the preprocessor to expand them during the
-// argument prescan by calling a macro that itself calls another that
-// performs the actual concatenation.
-# define ACE_MAKE_SVC_CONFIG_FUNCTION_NAME(PREFIX,VERSIONED_NAMESPACE,SERVICE_CLASS) PREFIX ## _ ## VERSIONED_NAMESPACE ## _ ## SERVICE_CLASS
-#else
-# define ACE_MAKE_SVC_CONFIG_FUNCTION_NAME(PREFIX,VERSIONED_NAMESPACE,SERVICE_CLASS) PREFIX ## _ ## SERVICE_CLASS
-#endif /* ACE_HAS_VERSIONED_NAMESPACE == 1 */
-
-#define ACE_MAKE_SVC_CONFIG_FACTORY_NAME(VERSIONED_NAMESPACE,SERVICE_CLASS) ACE_MAKE_SVC_CONFIG_FUNCTION_NAME(_make,VERSIONED_NAMESPACE,SERVICE_CLASS)
-#define ACE_MAKE_SVC_CONFIG_GOBBLER_NAME(VERSIONED_NAMESPACE,SERVICE_CLASS) ACE_MAKE_SVC_CONFIG_FUNCTION_NAME(_gobble,VERSIONED_NAMESPACE,SERVICE_CLASS)
-
-/// Declare the factory method used to create dynamically loadable
-/// services.
-/**
- * Once the service implementation is dynamically loaded the Service
- * Configurator uses a factory method to create the object.
- * This macro declares such a factory function with the proper
- * interface and export macros.
- * Normally used in the header file that declares the service
- * implementation.
- *
- * @param CLS must match the prefix of the export macro used for this
- * service.
- * @param SERVICE_CLASS must match the name of the class that
- * implements the service.
- *
- */
-# define ACE_FACTORY_DECLARE(CLS,SERVICE_CLASS) \
-extern "C" CLS##_Export ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object * \
-ACE_MAKE_SVC_CONFIG_FACTORY_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS) (ACE_Service_Object_Exterminator *);
-
-/// Define the factory method (and destructor) for a dynamically
-/// loadable service.
-/**
- * Use with arguments matching ACE_FACTORY_DECLARE.
- * Normally used in the .cpp file that defines the service
- * implementation.
- *
- * This macro defines both the factory method and the function used to
- * cleanup the service object.
- *
- * If this macro is used to define a factory function that need not be
- * exported (for example, in a static service situation), CLS can be
- * specified as ACE_Local_Service.
- */
-# define ACE_Local_Service_Export
-
-#if defined (ACE_OPENVMS)
-# define ACE_PREPROC_STRINGIFY(A) #A
-# define ACE_MAKE_SVC_REGISTRAR_ARG(A) ACE_PREPROC_STRINGIFY(A), (void*)&A
-# define ACE_FACTORY_DEFINE(CLS,SERVICE_CLASS) \
-void ACE_MAKE_SVC_CONFIG_GOBBLER_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS) (void *p) { \
- ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object * _p = \
- static_cast< ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object *> (p); \
- ACE_ASSERT (_p != 0); \
- delete _p; } \
-extern "C" CLS##_Export ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object *\
-ACE_MAKE_SVC_CONFIG_FACTORY_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS) (ACE_Service_Object_Exterminator *gobbler) \
-{ \
- ACE_TRACE (#SERVICE_CLASS); \
- if (gobbler != 0) \
- *gobbler = (ACE_Service_Object_Exterminator) ACE_MAKE_SVC_CONFIG_GOBBLER_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS); \
- return new SERVICE_CLASS; \
-} \
-ACE_Dynamic_Svc_Registrar ace_svc_reg_##SERVICE_CLASS \
- (ACE_MAKE_SVC_REGISTRAR_ARG(ACE_MAKE_SVC_CONFIG_FACTORY_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS)));
-#else
-# define ACE_FACTORY_DEFINE(CLS,SERVICE_CLASS) \
-void ACE_MAKE_SVC_CONFIG_GOBBLER_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS) (void *p) { \
- ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object * _p = \
- static_cast< ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object *> (p); \
- ACE_ASSERT (_p != 0); \
- delete _p; } \
-extern "C" CLS##_Export ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object *\
-ACE_MAKE_SVC_CONFIG_FACTORY_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS) (ACE_Service_Object_Exterminator *gobbler) \
-{ \
- ACE_TRACE (#SERVICE_CLASS); \
- if (gobbler != 0) \
- *gobbler = (ACE_Service_Object_Exterminator) ACE_MAKE_SVC_CONFIG_GOBBLER_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS); \
- return new SERVICE_CLASS; \
-}
-#endif
-
-/**
- * For service classes scoped within namespaces, use this macro in
- * place of ACE_FACTORY_DEFINE. The third argument in this case is
- * the fully scoped name of the class as it is to be
- * instantiated. For example, given:
- * namespace ACE
- * {
- * namespace Foo
- * {
- * class Bar : public ACE_Service_Object
- * {};
- * };
- * };
- *
- * ACE_FACTORY_DECLARE(ACE,ACE_Foo_Bar)
- *
- * you would then use:
- *
- * ACE_FACTORY_NAMESPACE_DEFINE(ACE,ACE_Foo_Bar,ACE::Foo::Bar)
- *
- * Note that in this example, the ACE_FACTORY_DECLARE is done outside
- * the namespace scope. Then, the SERVICE_CLASS name is the same as
- * the fully scoped class name, but with '::' replaced with '_'. Doing
- * this will ensure unique generated signatures for the various C
- * style functions.
- */
-#if defined (ACE_OPENVMS)
-# define ACE_PREPROC_STRINGIFY(A) #A
-# define ACE_MAKE_SVC_REGISTRAR_ARG(A) ACE_PREPROC_STRINGIFY(A), (void*)&A
-# define ACE_FACTORY_NAMESPACE_DEFINE(CLS,SERVICE_CLASS,NAMESPACE_CLASS) \
-void ACE_MAKE_SVC_CONFIG_GOBBLER_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS) (void *p) { \
- ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object * _p = \
- static_cast< ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object *> (p); \
- ACE_ASSERT (_p != 0); \
- delete _p; } \
-extern "C" CLS##_Export ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object *\
-ACE_MAKE_SVC_CONFIG_FACTORY_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS) (ACE_Service_Object_Exterminator *gobbler) \
-{ \
- ACE_TRACE (#SERVICE_CLASS); \
- if (gobbler != 0) \
- *gobbler = (ACE_Service_Object_Exterminator) ACE_MAKE_SVC_CONFIG_GOBBLER_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS); \
- return new NAMESPACE_CLASS; \
-} \
-ACE_Dynamic_Svc_Registrar ace_svc_reg_##SERVICE_CLASS \
- (ACE_MAKE_SVC_REGISTRAR_ARG(ACE_MAKE_SVC_CONFIG_FACTORY_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS)));
-#else
-# define ACE_FACTORY_NAMESPACE_DEFINE(CLS,SERVICE_CLASS,NAMESPACE_CLASS) \
-void ACE_MAKE_SVC_CONFIG_GOBBLER_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS) (void *p) { \
- ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object * _p = \
- static_cast< ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object *> (p); \
- ACE_ASSERT (_p != 0); \
- delete _p; } \
-extern "C" CLS##_Export ACE_VERSIONED_NAMESPACE_NAME::ACE_Service_Object *\
-ACE_MAKE_SVC_CONFIG_FACTORY_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS) (ACE_Service_Object_Exterminator *gobbler) \
-{ \
- ACE_TRACE (#SERVICE_CLASS); \
- if (gobbler != 0) \
- *gobbler = (ACE_Service_Object_Exterminator) ACE_MAKE_SVC_CONFIG_GOBBLER_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS); \
- return new NAMESPACE_CLASS; \
-}
-#endif
-
-/// The canonical name for a service factory method
-# define ACE_SVC_NAME(SERVICE_CLASS) ACE_MAKE_SVC_CONFIG_FACTORY_NAME(ACE_VERSIONED_NAMESPACE_NAME,SERVICE_CLASS)
-
-/// The canonical way to invoke (i.e. construct) a service factory
-/// method.
-#define ACE_SVC_INVOKE(SERVICE_CLASS) ACE_SVC_NAME(SERVICE_CLASS) (0)
-
-//@}
-
-/** @name Helper macros for services defined in the netsvcs library.
- *
- * The ACE services defined in netsvcs use this helper macros for
- * simplicity.
- *
- */
-//@{
-# define ACE_SVC_FACTORY_DECLARE(X) ACE_FACTORY_DECLARE (ACE_Svc, X)
-# define ACE_SVC_FACTORY_DEFINE(X) ACE_FACTORY_DEFINE (ACE_Svc, X)
-//@}
-
-#if defined (ACE_WIN32)
-// These are used in SPIPE_Acceptor/Connector, but are ignored at runtime.
-# if defined (ACE_HAS_WINCE)
-# if !defined (PIPE_TYPE_MESSAGE)
-# define PIPE_TYPE_MESSAGE 0
-# endif
-# if !defined (PIPE_READMODE_MESSAGE)
-# define PIPE_READMODE_MESSAGE 0
-# endif
-# if !defined (PIPE_WAIT)
-# define PIPE_WAIT 0
-# endif
-# endif /* ACE_HAS_WINCE */
-#else /* !ACE_WIN32 */
-// Add some typedefs and macros to enhance Win32 conformance...
-# if !defined (LPSECURITY_ATTRIBUTES)
-# define LPSECURITY_ATTRIBUTES int
-# endif /* !defined LPSECURITY_ATTRIBUTES */
-# if !defined (GENERIC_READ)
-# define GENERIC_READ 0
-# endif /* !defined GENERIC_READ */
-# if !defined (FILE_SHARE_READ)
-# define FILE_SHARE_READ 0
-# endif /* !defined FILE_SHARE_READ */
-# if !defined (OPEN_EXISTING)
-# define OPEN_EXISTING 0
-# endif /* !defined OPEN_EXISTING */
-# if !defined (FILE_ATTRIBUTE_NORMAL)
-# define FILE_ATTRIBUTE_NORMAL 0
-# endif /* !defined FILE_ATTRIBUTE_NORMAL */
-# if !defined (MAXIMUM_WAIT_OBJECTS)
-# define MAXIMUM_WAIT_OBJECTS 0
-# endif /* !defined MAXIMUM_WAIT_OBJECTS */
-# if !defined (FILE_FLAG_OVERLAPPED)
-# define FILE_FLAG_OVERLAPPED 0
-# endif /* !defined FILE_FLAG_OVERLAPPED */
-# if !defined (FILE_FLAG_SEQUENTIAL_SCAN)
-# define FILE_FLAG_SEQUENTIAL_SCAN 0
-# endif /* FILE_FLAG_SEQUENTIAL_SCAN */
-# if !defined(FILE_FLAG_WRITE_THROUGH)
-# define FILE_FLAG_WRITE_THROUGH 0
-# endif /* !defined FILE_FLAG_WRITE_THROUGH */
-# if !defined(PIPE_WAIT)
-# define PIPE_WAIT 0
-# endif /* !defined PIPE_WAIT */
-# if !defined(PIPE_NOWAIT)
-# define PIPE_NOWAIT 0
-# endif /* !defined PIPE_WAIT */
-# if !defined(PIPE_READMODE_BYTE)
-# define PIPE_READMODE_BYTE 0
-# endif /* !defined PIPE_READMODE_BYTE */
-# if !defined(PIPE_READMODE_MESSAGE)
-# define PIPE_READMODE_MESSAGE 0
-# endif /* !defined PIPE_READMODE_MESSAGE */
-# if !defined(PIPE_TYPE_BYTE)
-# define PIPE_TYPE_BYTE 0
-# endif /* !defined PIPE_TYPE_BYTE */
-# if !defined(PIPE_TYPE_MESSAGE)
-# define PIPE_TYPE_MESSAGE 0
-# endif /* !defined PIPE_TYPE_MESSAGE */
-#endif /* ACE_WIN32 */
-
-// Some useful abstrations for expressions involving
-// ACE_Allocator.malloc (). The difference between ACE_NEW_MALLOC*
-// with ACE_ALLOCATOR* is that they call constructors also.
-
-#include "ace/OS_Errno.h" /* Need errno and ENOMEM */
-
-# define ACE_ALLOCATOR_RETURN(POINTER,ALLOCATOR,RET_VAL) \
- do { POINTER = ALLOCATOR; \
- if (POINTER == 0) { errno = ENOMEM; return RET_VAL; } \
- } while (0)
-# define ACE_ALLOCATOR(POINTER,ALLOCATOR) \
- do { POINTER = ALLOCATOR; \
- if (POINTER == 0) { errno = ENOMEM; return; } \
- } while (0)
-# define ACE_ALLOCATOR_NORETURN(POINTER,ALLOCATOR) \
- do { POINTER = ALLOCATOR; \
- if (POINTER == 0) { errno = ENOMEM; } \
- } while (0)
-
-# define ACE_NEW_MALLOC_RETURN(POINTER,ALLOCATOR,CONSTRUCTOR,RET_VAL) \
- do { POINTER = ALLOCATOR; \
- if (POINTER == 0) { errno = ENOMEM; return RET_VAL;} \
- else { (void) new (POINTER) CONSTRUCTOR; } \
- } while (0)
-# define ACE_NEW_MALLOC(POINTER,ALLOCATOR,CONSTRUCTOR) \
- do { POINTER = ALLOCATOR; \
- if (POINTER == 0) { errno = ENOMEM; return;} \
- else { (void) new (POINTER) CONSTRUCTOR; } \
- } while (0)
-# define ACE_NEW_MALLOC_NORETURN(POINTER,ALLOCATOR,CONSTRUCTOR) \
- do { POINTER = ALLOCATOR; \
- if (POINTER == 0) { errno = ENOMEM;} \
- else { (void) new (POINTER) CONSTRUCTOR; } \
- } while (0)
-
-/* ACE_Metrics */
-#if defined ACE_LACKS_ARRAY_PLACEMENT_NEW
-# define ACE_NEW_MALLOC_ARRAY_RETURN(POINTER,ALLOCATOR,CONSTRUCTOR,COUNT,RET_VAL) \
- do { POINTER = ALLOCATOR; \
- if (POINTER == 0) { errno = ENOMEM; return RET_VAL;} \
- else { for (u_int i = 0; i < COUNT; ++i) \
- {(void) new (POINTER) CONSTRUCTOR; ++POINTER;} \
- POINTER -= COUNT;} \
- } while (0)
-# define ACE_NEW_MALLOC_ARRAY(POINTER,ALLOCATOR,CONSTRUCTOR,COUNT) \
- do { POINTER = ALLOCATOR; \
- if (POINTER == 0) { errno = ENOMEM; return;} \
- else { for (u_int i = 0; i < COUNT; ++i) \
- {(void) new (POINTER) CONSTRUCTOR; ++POINTER;} \
- POINTER -= COUNT;} \
- } while (0)
-#else /* ! defined ACE_LACKS_ARRAY_PLACEMENT_NEW */
-# define ACE_NEW_MALLOC_ARRAY_RETURN(POINTER,ALLOCATOR,CONSTRUCTOR,COUNT,RET_VAL) \
- do { POINTER = ALLOCATOR; \
- if (POINTER == 0) { errno = ENOMEM; return RET_VAL;} \
- else { (void) new (POINTER) CONSTRUCTOR [COUNT]; } \
- } while (0)
-# define ACE_NEW_MALLOC_ARRAY(POINTER,ALLOCATOR,CONSTRUCTOR,COUNT) \
- do { POINTER = ALLOCATOR; \
- if (POINTER == 0) { errno = ENOMEM; return;} \
- else { (void) new (POINTER) CONSTRUCTOR [COUNT]; } \
- } while (0)
-#endif /* defined ACE_LACKS_ARRAY_PLACEMENT_NEW */
-
-// This is being placed here temporarily to help stablelize the builds, but will
-// be moved out along with the above macros as part of the subsetting. dhinton
-#if !defined (ACE_LACKS_NEW_H)
-# if defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
-# include /**/ <new>
-# else
-# include /**/ <new.h>
-# endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
-#endif /* ! ACE_LACKS_NEW_H */
-
-# define ACE_NOOP(x)
-
-#if defined (ACE_WIN32) && defined (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS)
-# define ACE_SEH_TRY __try
-# define ACE_SEH_EXCEPT(X) __except(X)
-# define ACE_SEH_FINALLY __finally
-#else /* !ACE_WIN32 */
-# define ACE_SEH_TRY if (1)
-# define ACE_SEH_EXCEPT(X) while (0)
-# define ACE_SEH_FINALLY if (1)
-#endif /* ACE_WIN32 */
-
-// These should probably be put into a seperate header.
-
-// The following is necessary since many C++ compilers don't support
-// typedef'd types inside of classes used as formal template
-// arguments... ;-(. Luckily, using the C++ preprocessor I can hide
-// most of this nastiness!
-
-# if defined (ACE_HAS_TEMPLATE_TYPEDEFS)
-
-// Handle ACE_Message_Queue.
-# define ACE_SYNCH_DECL class _ACE_SYNCH
-# define ACE_SYNCH_USE _ACE_SYNCH
-# define ACE_SYNCH_MUTEX_T typename _ACE_SYNCH::MUTEX
-# define ACE_SYNCH_CONDITION_T typename _ACE_SYNCH::CONDITION
-# define ACE_SYNCH_SEMAPHORE_T typename _ACE_SYNCH::SEMAPHORE
-
-// Handle ACE_Malloc*
-# define ACE_MEM_POOL_1 class _ACE_MEM_POOL
-# define ACE_MEM_POOL_2 _ACE_MEM_POOL
-# define ACE_MEM_POOL _ACE_MEM_POOL
-# define ACE_MEM_POOL_OPTIONS typename _ACE_MEM_POOL::OPTIONS
-
-// Handle ACE_Svc_Handler
-# define ACE_PEER_STREAM_1 class _ACE_PEER_STREAM
-# define ACE_PEER_STREAM_2 _ACE_PEER_STREAM
-# define ACE_PEER_STREAM _ACE_PEER_STREAM
-# define ACE_PEER_STREAM_ADDR typename _ACE_PEER_STREAM::PEER_ADDR
-
-// Handle ACE_Acceptor
-# define ACE_PEER_ACCEPTOR_1 class _ACE_PEER_ACCEPTOR
-# define ACE_PEER_ACCEPTOR_2 _ACE_PEER_ACCEPTOR
-# define ACE_PEER_ACCEPTOR _ACE_PEER_ACCEPTOR
-# define ACE_PEER_ACCEPTOR_ADDR typename _ACE_PEER_ACCEPTOR::PEER_ADDR
-
-// Handle ACE_Connector
-# define ACE_PEER_CONNECTOR_1 class _ACE_PEER_CONNECTOR
-# define ACE_PEER_CONNECTOR_2 _ACE_PEER_CONNECTOR
-# define ACE_PEER_CONNECTOR _ACE_PEER_CONNECTOR
-# define ACE_PEER_CONNECTOR_ADDR typename ACE_PEER_CONNECTOR::PEER_ADDR
-# define ACE_PEER_CONNECTOR_ADDR_ANY ACE_PEER_ADDR_TYPEDEF::sap_any
-
-// Handle ACE_SOCK_*
-# define ACE_SOCK_ACCEPTOR ACE_SOCK_Acceptor
-# define ACE_SOCK_CONNECTOR ACE_SOCK_Connector
-# define ACE_SOCK_STREAM ACE_SOCK_Stream
-# define ACE_SOCK_DGRAM ACE_SOCK_Dgram
-# define ACE_SOCK_DGRAM_BCAST ACE_SOCK_Dgram_Bcast
-# define ACE_SOCK_DGRAM_MCAST ACE_SOCK_Dgram_Mcast
-
-// Handle ACE_SOCK_SEQPACK_*
-# define ACE_SOCK_SEQPACK_ACCEPTOR ACE_SOCK_SEQPACK_Acceptor
-# define ACE_SOCK_SEQPACK_CONNECTOR ACE_SOCK_SEQPACK_Connector
-# define ACE_SOCK_SEQPACK_ASSOCIATION ACE_SOCK_SEQPACK_Association
-
-// Handle ACE_MEM_*
-# define ACE_MEM_ACCEPTOR ACE_MEM_Acceptor
-# define ACE_MEM_CONNECTOR ACE_MEM_Connector
-# define ACE_MEM_STREAM ACE_MEM_Stream
-
-// Handle ACE_LSOCK_*
-# define ACE_LSOCK_ACCEPTOR ACE_LSOCK_Acceptor
-# define ACE_LSOCK_CONNECTOR ACE_LSOCK_Connector
-# define ACE_LSOCK_STREAM ACE_LSOCK_Stream
-
-// Handle ACE_TLI_*
-# define ACE_TLI_ACCEPTOR ACE_TLI_Acceptor
-# define ACE_TLI_CONNECTOR ACE_TLI_Connector
-# define ACE_TLI_STREAM ACE_TLI_Stream
-
-// Handle ACE_SPIPE_*
-# define ACE_SPIPE_ACCEPTOR ACE_SPIPE_Acceptor
-# define ACE_SPIPE_CONNECTOR ACE_SPIPE_Connector
-# define ACE_SPIPE_STREAM ACE_SPIPE_Stream
-
-// Handle ACE_UPIPE_*
-# define ACE_UPIPE_ACCEPTOR ACE_UPIPE_Acceptor
-# define ACE_UPIPE_CONNECTOR ACE_UPIPE_Connector
-# define ACE_UPIPE_STREAM ACE_UPIPE_Stream
-
-// Handle ACE_FILE_*
-# define ACE_FILE_CONNECTOR ACE_FILE_Connector
-# define ACE_FILE_STREAM ACE_FILE_IO
-
-// Handle ACE_*_Memory_Pool.
-# define ACE_MMAP_MEMORY_POOL ACE_MMAP_Memory_Pool
-# define ACE_LITE_MMAP_MEMORY_POOL ACE_Lite_MMAP_Memory_Pool
-# define ACE_SBRK_MEMORY_POOL ACE_Sbrk_Memory_Pool
-# define ACE_SHARED_MEMORY_POOL ACE_Shared_Memory_Pool
-# define ACE_LOCAL_MEMORY_POOL ACE_Local_Memory_Pool
-# define ACE_PAGEFILE_MEMORY_POOL ACE_Pagefile_Memory_Pool
-
-# else /* TEMPLATES are broken in some form or another (i.e., most C++ compilers) */
-
-// Handle ACE_Message_Queue.
-# if defined (ACE_HAS_OPTIMIZED_MESSAGE_QUEUE)
-# define ACE_SYNCH_DECL class _ACE_SYNCH_MUTEX_T, class _ACE_SYNCH_CONDITION_T, class _ACE_SYNCH_SEMAPHORE_T
-# define ACE_SYNCH_USE _ACE_SYNCH_MUTEX_T, _ACE_SYNCH_CONDITION_T, _ACE_SYNCH_SEMAPHORE_T
-# else
-# define ACE_SYNCH_DECL class _ACE_SYNCH_MUTEX_T, class _ACE_SYNCH_CONDITION_T
-# define ACE_SYNCH_USE _ACE_SYNCH_MUTEX_T, _ACE_SYNCH_CONDITION_T
-# endif /* ACE_HAS_OPTIMIZED_MESSAGE_QUEUE */
-# define ACE_SYNCH_MUTEX_T _ACE_SYNCH_MUTEX_T
-# define ACE_SYNCH_CONDITION_T _ACE_SYNCH_CONDITION_T
-# define ACE_SYNCH_SEMAPHORE_T _ACE_SYNCH_SEMAPHORE_T
-
-// Handle ACE_Malloc*
-# define ACE_MEM_POOL_1 class _ACE_MEM_POOL, class _ACE_MEM_POOL_OPTIONS
-# define ACE_MEM_POOL_2 _ACE_MEM_POOL, _ACE_MEM_POOL_OPTIONS
-# define ACE_MEM_POOL _ACE_MEM_POOL
-# define ACE_MEM_POOL_OPTIONS _ACE_MEM_POOL_OPTIONS
-
-// Handle ACE_Svc_Handler
-# define ACE_PEER_STREAM_1 class _ACE_PEER_STREAM, class _ACE_PEER_ADDR
-# define ACE_PEER_STREAM_2 _ACE_PEER_STREAM, _ACE_PEER_ADDR
-# define ACE_PEER_STREAM _ACE_PEER_STREAM
-# define ACE_PEER_STREAM_ADDR _ACE_PEER_ADDR
-
-// Handle ACE_Acceptor
-# define ACE_PEER_ACCEPTOR_1 class _ACE_PEER_ACCEPTOR, class _ACE_PEER_ADDR
-# define ACE_PEER_ACCEPTOR_2 _ACE_PEER_ACCEPTOR, _ACE_PEER_ADDR
-# define ACE_PEER_ACCEPTOR _ACE_PEER_ACCEPTOR
-# define ACE_PEER_ACCEPTOR_ADDR _ACE_PEER_ADDR
-
-// Handle ACE_Connector
-# define ACE_PEER_CONNECTOR_1 class _ACE_PEER_CONNECTOR, class _ACE_PEER_ADDR
-# define ACE_PEER_CONNECTOR_2 _ACE_PEER_CONNECTOR, _ACE_PEER_ADDR
-# define ACE_PEER_CONNECTOR _ACE_PEER_CONNECTOR
-# define ACE_PEER_CONNECTOR_ADDR _ACE_PEER_ADDR
-# define ACE_PEER_CONNECTOR_ADDR_ANY ACE_PEER_CONNECTOR_ADDR::sap_any
-
-// Handle ACE_SOCK_*
-# define ACE_SOCK_ACCEPTOR ACE_SOCK_Acceptor, ACE_INET_Addr
-# define ACE_SOCK_CONNECTOR ACE_SOCK_Connector, ACE_INET_Addr
-# define ACE_SOCK_STREAM ACE_SOCK_Stream, ACE_INET_Addr
-# define ACE_SOCK_DGRAM ACE_SOCK_Dgram, ACE_INET_Addr
-# define ACE_SOCK_DGRAM_BCAST ACE_SOCK_Dgram_Bcast, ACE_INET_Addr
-# define ACE_SOCK_DGRAM_MCAST ACE_SOCK_Dgram_Mcast, ACE_INET_Addr
-
-// Handle ACE_SOCK_SEQPACK_*
-# define ACE_SOCK_SEQPACK_ACCEPTOR ACE_SOCK_SEQPACK_Acceptor, ACE_Multihomed_INET_Addr
-# define ACE_SOCK_SEQPACK_CONNECTOR ACE_SOCK_SEQPACK_Connector, ACE_Multihomed_INET_Addr
-# define ACE_SOCK_SEQPACK_ASSOCIATION ACE_SOCK_SEQPACK_Association, ACE_Multihomed_INET_Addr
-
-// Handle ACE_MEM_*
-# define ACE_MEM_ACCEPTOR ACE_MEM_Acceptor, ACE_MEM_Addr
-# define ACE_MEM_CONNECTOR ACE_MEM_Connector, ACE_INET_Addr
-# define ACE_MEM_STREAM ACE_MEM_Stream, ACE_INET_Addr
-
-// Handle ACE_LSOCK_*
-# define ACE_LSOCK_ACCEPTOR ACE_LSOCK_Acceptor, ACE_UNIX_Addr
-# define ACE_LSOCK_CONNECTOR ACE_LSOCK_Connector, ACE_UNIX_Addr
-# define ACE_LSOCK_STREAM ACE_LSOCK_Stream, ACE_UNIX_Addr
-
-// Handle ACE_TLI_*
-# define ACE_TLI_ACCEPTOR ACE_TLI_Acceptor, ACE_INET_Addr
-# define ACE_TLI_CONNECTOR ACE_TLI_Connector, ACE_INET_Addr
-# define ACE_TLI_STREAM ACE_TLI_Stream, ACE_INET_Addr
-
-// Handle ACE_SPIPE_*
-# define ACE_SPIPE_ACCEPTOR ACE_SPIPE_Acceptor, ACE_SPIPE_Addr
-# define ACE_SPIPE_CONNECTOR ACE_SPIPE_Connector, ACE_SPIPE_Addr
-# define ACE_SPIPE_STREAM ACE_SPIPE_Stream, ACE_SPIPE_Addr
-
-// Handle ACE_UPIPE_*
-# define ACE_UPIPE_ACCEPTOR ACE_UPIPE_Acceptor, ACE_SPIPE_Addr
-# define ACE_UPIPE_CONNECTOR ACE_UPIPE_Connector, ACE_SPIPE_Addr
-# define ACE_UPIPE_STREAM ACE_UPIPE_Stream, ACE_SPIPE_Addr
-
-// Handle ACE_FILE_*
-# define ACE_FILE_CONNECTOR ACE_FILE_Connector, ACE_FILE_Addr
-# define ACE_FILE_STREAM ACE_FILE_IO, ACE_FILE_Addr
-
-// Handle ACE_*_Memory_Pool.
-# define ACE_MMAP_MEMORY_POOL ACE_MMAP_Memory_Pool, ACE_MMAP_Memory_Pool_Options
-# define ACE_LITE_MMAP_MEMORY_POOL ACE_Lite_MMAP_Memory_Pool, ACE_MMAP_Memory_Pool_Options
-# define ACE_SBRK_MEMORY_POOL ACE_Sbrk_Memory_Pool, ACE_Sbrk_Memory_Pool_Options
-# define ACE_SHARED_MEMORY_POOL ACE_Shared_Memory_Pool, ACE_Shared_Memory_Pool_Options
-# define ACE_LOCAL_MEMORY_POOL ACE_Local_Memory_Pool, ACE_Local_Memory_Pool_Options
-# define ACE_PAGEFILE_MEMORY_POOL ACE_Pagefile_Memory_Pool, ACE_Pagefile_Memory_Pool_Options
-# endif /* ACE_HAS_TEMPLATE_TYPEDEFS */
-
-// Work around compilers that don't like in-class static integral
-// constants. Constants in this case are meant to be compile-time
-// constants so that they may be used as template arguments, for
-// example. BOOST provides a similar macro.
-#ifndef ACE_LACKS_STATIC_IN_CLASS_CONSTANTS
-# define ACE_STATIC_CONSTANT(TYPE, ASSIGNMENT) static TYPE const ASSIGNMENT
-#else
-# define ACE_STATIC_CONSTANT(TYPE, ASSIGNMENT) enum { ASSIGNMENT }
-#endif /* !ACE_LACKS_STATIC_IN_CLASS_CONSTANTS */
-
-#include /**/ "ace/post.h"
-
-#endif /*ACE_GLOBAL_MACROS_H*/
-
diff --git a/dep/include/ace/Guard_T.h b/dep/include/ace/Guard_T.h
deleted file mode 100644
index a70bdda713a..00000000000
--- a/dep/include/ace/Guard_T.h
+++ /dev/null
@@ -1,366 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Guard_T.h
- *
- * $Id: Guard_T.h 82508 2008-08-05 13:52:48Z johnnyw $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_GUARD_T_H
-#define ACE_GUARD_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Lock.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Global_Macros.h"
-#include "ace/OS_NS_Thread.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Guard
- *
- * @brief This data structure is meant to be used within a method or
- * function... It performs automatic aquisition and release of
- * a parameterized synchronization object <ACE_LOCK>.
- *
- * The <ACE_LOCK> class given as an actual parameter must provide at
- * the very least the <acquire>, <tryacquire>, <release>, and
- * <remove> methods.
- */
-template <class ACE_LOCK>
-class ACE_Guard
-{
-public:
-
- // = Initialization and termination methods.
- ACE_Guard (ACE_LOCK &l);
-
- /// Implicitly and automatically acquire (or try to acquire) the
- /// lock. If @a block is non-0 then <acquire> the <ACE_LOCK>, else
- /// <tryacquire> it.
- ACE_Guard (ACE_LOCK &l, bool block);
-
- /// Initialise the guard without implicitly acquiring the lock. The
- /// <become_owner> parameter indicates whether the guard should release
- /// the lock implicitly on destruction. The <block> parameter is
- /// ignored and is used here to disambiguate with the preceding
- /// constructor.
- ACE_Guard (ACE_LOCK &l, bool block, int become_owner);
-
- /// Implicitly release the lock.
- ~ACE_Guard (void);
-
- // = Lock accessors.
-
- /// Explicitly acquire the lock.
- int acquire (void);
-
- /// Conditionally acquire the lock (i.e., won't block).
- int tryacquire (void);
-
- /// Explicitly release the lock, but only if it is held!
- int release (void);
-
- /// Relinquish ownership of the lock so that it is not released
- /// implicitly in the destructor.
- void disown (void);
-
- // = Utility methods.
- /// 1 if locked, 0 if couldn't acquire the lock
- /// (errno will contain the reason for this).
- int locked (void) const;
-
- /// Explicitly remove the lock.
- int remove (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // ACE_ALLOC_HOOK_DECLARE;
- // Declare the dynamic allocation hooks.
-
-protected:
-
- /// Helper, meant for subclass only.
- ACE_Guard (ACE_LOCK *lock): lock_ (lock), owner_ (0) {}
-
- /// Pointer to the ACE_LOCK we're guarding.
- ACE_LOCK *lock_;
-
- /// Keeps track of whether we acquired the lock or failed.
- int owner_;
-
-private:
- // = Prevent assignment and initialization.
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Guard<ACE_LOCK> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Guard (const ACE_Guard<ACE_LOCK> &))
-};
-
-/**
- * @class ACE_Write_Guard
- *
- * @brief This class is similar to class ACE_Guard, though it
- * acquires/releases a write lock automatically (naturally, the
- * <ACE_LOCK> it is instantiated with must support the appropriate
- * API).
- */
-template <class ACE_LOCK>
-class ACE_Write_Guard : public ACE_Guard<ACE_LOCK>
-{
-public:
- // = Initialization method.
-
- /// Implicitly and automatically acquire a write lock.
- ACE_Write_Guard (ACE_LOCK &m);
-
- /// Implicitly and automatically acquire (or try to acquire) a write
- /// lock.
- ACE_Write_Guard (ACE_LOCK &m, bool block);
-
- // = Lock accessors.
-
- /// Explicitly acquire the write lock.
- int acquire_write (void);
-
- /// Explicitly acquire the write lock.
- int acquire (void);
-
- /// Conditionally acquire the write lock (i.e., won't block).
- int tryacquire_write (void);
-
- /// Conditionally acquire the write lock (i.e., won't block).
- int tryacquire (void);
-
- // = Utility methods.
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // ACE_ALLOC_HOOK_DECLARE;
- // Declare the dynamic allocation hooks.
-};
-
-/**
- * @class ACE_Read_Guard
- *
- * @brief This class is similar to class ACE_Guard, though it
- * acquires/releases a read lock automatically (naturally, the
- * <ACE_LOCK> it is instantiated with must support the appropriate
- * API).
- */
-template <class ACE_LOCK>
-class ACE_Read_Guard : public ACE_Guard<ACE_LOCK>
-{
-public:
- // = Initialization methods.
-
- /// Implicitly and automatically acquire a read lock.
- ACE_Read_Guard (ACE_LOCK& m);
-
- /// Implicitly and automatically acquire (or try to acquire) a read
- /// lock.
- ACE_Read_Guard (ACE_LOCK &m, bool block);
-
- // = Lock accessors.
-
- /// Explicitly acquire the read lock.
- int acquire_read (void);
-
- /// Explicitly acquire the read lock.
- int acquire (void);
-
- /// Conditionally acquire the read lock (i.e., won't block).
- int tryacquire_read (void);
-
- /// Conditionally acquire the read lock (i.e., won't block).
- int tryacquire (void);
-
- // = Utility methods.
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // ACE_ALLOC_HOOK_DECLARE;
- // Declare the dynamic allocation hooks.
-};
-
-#if !(defined (ACE_HAS_THREADS) && (defined (ACE_HAS_THREAD_SPECIFIC_STORAGE) || defined (ACE_HAS_TSS_EMULATION)))
-
-#define ACE_TSS_Guard ACE_Guard
-#define ACE_TSS_Write_GUARD ACE_Write_Guard
-#define ACE_TSS_Read_GUARD ACE_Read_Guard
-
-#else
- /* ACE platform supports some form of threading and
- thread-specific storage. */
-
-/**
- * @class ACE_TSS_Guard
- *
- * @brief This data structure is meant to be used within a method or
- * function... It performs automatic aquisition and release of
- * a synchronization object. Moreover, it ensures that the lock
- * is released even if a thread exits via <thr_exit>!
- */
-template <class ACE_LOCK>
-class ACE_TSS_Guard
-{
-public:
- // = Initialization and termination methods.
-
- /// Implicitly and automatically acquire the thread-specific lock.
- ACE_TSS_Guard (ACE_LOCK &lock, bool block = true);
-
- /// Implicitly release the thread-specific lock.
- ~ACE_TSS_Guard (void);
-
- // = Lock accessors.
-
- /// Explicitly acquire the thread-specific lock.
- int acquire (void);
-
- /// Conditionally acquire the thread-specific lock (i.e., won't
- /// block).
- int tryacquire (void);
-
- /// Explicitly release the thread-specific lock.
- int release (void);
-
- // = Utility methods.
- /// Explicitly release the thread-specific lock.
- int remove (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // ACE_ALLOC_HOOK_DECLARE;
- // Declare the dynamic allocation hooks.
-
-protected:
- /// Helper, meant for subclass only.
- ACE_TSS_Guard (void);
-
- /// Initialize the key.
- void init_key (void);
-
- /// Called when thread exits to clean up the lock.
- static void cleanup (void *ptr);
-
- /// Thread-specific key...
- ACE_thread_key_t key_;
-
-private:
- // = Prevent assignment and initialization.
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_TSS_Guard<ACE_LOCK> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_TSS_Guard (const ACE_TSS_Guard<ACE_LOCK> &))
-};
-
-/**
- * @class ACE_TSS_Write_Guard
- *
- * @brief This class is similar to class ACE_TSS_Guard, though it
- * acquires/releases a write-lock automatically (naturally, the
- * ACE_LOCK it is instantiated with must support the appropriate
- * API).
- */
-template <class ACE_LOCK>
-class ACE_TSS_Write_Guard : public ACE_TSS_Guard<ACE_LOCK>
-{
-public:
- // = Initialization method.
-
- /// Implicitly and automatically acquire the thread-specific write lock.
- ACE_TSS_Write_Guard (ACE_LOCK &lock, bool block = true);
-
- // = Lock accessors.
-
- /// Explicitly acquire the thread-specific write lock.
- int acquire_write (void);
-
- /// Explicitly acquire the thread-specific write lock.
- int acquire (void);
-
- /// Conditionally acquire the thread-specific write lock (i.e., won't block).
- int tryacquire_write (void);
-
- /// Conditionally acquire the thread-specific write lock (i.e., won't block).
- int tryacquire (void);
-
- // = Utility methods.
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // ACE_ALLOC_HOOK_DECLARE;
- // Declare the dynamic allocation hooks.
-};
-
-/**
- * @class ACE_TSS_Read_Guard
- *
- * @brief This class is similar to class <ACE_TSS_Guard>, though it
- * acquires/releases a read lock automatically (naturally, the
- * <ACE_LOCK> it is instantiated with must support the
- * appropriate API).
- */
-template <class ACE_LOCK>
-class ACE_TSS_Read_Guard : public ACE_TSS_Guard<ACE_LOCK>
-{
-public:
- // = Initialization method.
- /// Implicitly and automatically acquire the thread-specific read lock.
- ACE_TSS_Read_Guard (ACE_LOCK &lock, bool block = true);
-
- // = Lock accessors.
- /// Explicitly acquire the thread-specific read lock.
- int acquire_read (void);
-
- /// Explicitly acquire the thread-specific read lock.
- int acquire (void);
-
- /// Conditionally acquire the thread-specific read lock (i.e., won't
- /// block).
- int tryacquire_read (void);
-
- /// Conditionally acquire the thread-specific read lock (i.e., won't
- /// block).
- int tryacquire (void);
-
- // = Utility methods.
- /// Dump the state of an object.
- void dump (void) const;
-
- // ACE_ALLOC_HOOK_DECLARE;
- // Declare the dynamic allocation hooks.
-};
-
-#endif /* !(defined (ACE_HAS_THREADS) && (defined (ACE_HAS_THREAD_SPECIFIC_STORAGE) || defined (ACE_HAS_TSS_EMULATION))) */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Guard_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Guard_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Guard_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_GUARD_T_H */
-
diff --git a/dep/include/ace/Guard_T.inl b/dep/include/ace/Guard_T.inl
deleted file mode 100644
index 5fb22b3bac7..00000000000
--- a/dep/include/ace/Guard_T.inl
+++ /dev/null
@@ -1,170 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Guard_T.inl 82508 2008-08-05 13:52:48Z johnnyw $
-
-#include "ace/RW_Thread_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class ACE_LOCK> ACE_INLINE int
-ACE_Guard<ACE_LOCK>::acquire (void)
-{
- return this->owner_ = this->lock_->acquire ();
-}
-
-template <class ACE_LOCK> ACE_INLINE int
-ACE_Guard<ACE_LOCK>::tryacquire (void)
-{
- return this->owner_ = this->lock_->tryacquire ();
-}
-
-template <class ACE_LOCK> ACE_INLINE int
-ACE_Guard<ACE_LOCK>::release (void)
-{
- if (this->owner_ == -1)
- return -1;
- else
- {
- this->owner_ = -1;
- return this->lock_->release ();
- }
-}
-
-template <class ACE_LOCK> ACE_INLINE
-ACE_Guard<ACE_LOCK>::ACE_Guard (ACE_LOCK &l)
- : lock_ (&l),
- owner_ (0)
-{
- this->acquire ();
-}
-
-template <class ACE_LOCK> ACE_INLINE
-ACE_Guard<ACE_LOCK>::ACE_Guard (ACE_LOCK &l, bool block)
- : lock_ (&l),
- owner_ (0)
-{
- if (block)
- this->acquire ();
- else
- this->tryacquire ();
-}
-
-template <class ACE_LOCK> ACE_INLINE
-ACE_Guard<ACE_LOCK>::ACE_Guard (ACE_LOCK &l, bool /* block */, int become_owner)
- : lock_ (&l),
- owner_ (become_owner == 0 ? -1 : 0)
-{
-}
-
-// Implicitly and automatically acquire (or try to acquire) the
-// lock.
-
-template <class ACE_LOCK> ACE_INLINE
-ACE_Guard<ACE_LOCK>::~ACE_Guard (void)
-{
- this->release ();
-}
-
-template <class ACE_LOCK> ACE_INLINE int
-ACE_Guard<ACE_LOCK>::locked (void) const
-{
- return this->owner_ != -1;
-}
-
-template <class ACE_LOCK> ACE_INLINE int
-ACE_Guard<ACE_LOCK>::remove (void)
-{
- return this->lock_->remove ();
-}
-
-template <class ACE_LOCK> ACE_INLINE void
-ACE_Guard<ACE_LOCK>::disown (void)
-{
- this->owner_ = -1;
-}
-
-template <class ACE_LOCK> ACE_INLINE
-ACE_Write_Guard<ACE_LOCK>::ACE_Write_Guard (ACE_LOCK &m)
- : ACE_Guard<ACE_LOCK> (&m)
-{
- this->acquire_write ();
-}
-
-template <class ACE_LOCK> ACE_INLINE int
-ACE_Write_Guard<ACE_LOCK>::acquire_write (void)
-{
- return this->owner_ = this->lock_->acquire_write ();
-}
-
-template <class ACE_LOCK> ACE_INLINE int
-ACE_Write_Guard<ACE_LOCK>::acquire (void)
-{
- return this->owner_ = this->lock_->acquire_write ();
-}
-
-template <class ACE_LOCK> ACE_INLINE int
-ACE_Write_Guard<ACE_LOCK>::tryacquire_write (void)
-{
- return this->owner_ = this->lock_->tryacquire_write ();
-}
-
-template <class ACE_LOCK> ACE_INLINE int
-ACE_Write_Guard<ACE_LOCK>::tryacquire (void)
-{
- return this->owner_ = this->lock_->tryacquire_write ();
-}
-
-template <class ACE_LOCK> ACE_INLINE
-ACE_Write_Guard<ACE_LOCK>::ACE_Write_Guard (ACE_LOCK &m,
- bool block)
- : ACE_Guard<ACE_LOCK> (&m)
-{
- if (block)
- this->acquire_write ();
- else
- this->tryacquire_write ();
-}
-
-template <class ACE_LOCK> ACE_INLINE int
-ACE_Read_Guard<ACE_LOCK>::acquire_read (void)
-{
- return this->owner_ = this->lock_->acquire_read ();
-}
-
-template <class ACE_LOCK> ACE_INLINE int
-ACE_Read_Guard<ACE_LOCK>::acquire (void)
-{
- return this->owner_ = this->lock_->acquire_read ();
-}
-
-template <class ACE_LOCK> ACE_INLINE int
-ACE_Read_Guard<ACE_LOCK>::tryacquire_read (void)
-{
- return this->owner_ = this->lock_->tryacquire_read ();
-}
-
-template <class ACE_LOCK> ACE_INLINE int
-ACE_Read_Guard<ACE_LOCK>::tryacquire (void)
-{
- return this->owner_ = this->lock_->tryacquire_read ();
-}
-
-template <class ACE_LOCK> ACE_INLINE
-ACE_Read_Guard<ACE_LOCK>::ACE_Read_Guard (ACE_LOCK &m)
- : ACE_Guard<ACE_LOCK> (&m)
-{
- this->acquire_read ();
-}
-
-template <class ACE_LOCK> ACE_INLINE
-ACE_Read_Guard<ACE_LOCK>::ACE_Read_Guard (ACE_LOCK &m,
- bool block)
- : ACE_Guard<ACE_LOCK> (&m)
-{
- if (block)
- this->acquire_read ();
- else
- this->tryacquire_read ();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Handle_Gobbler.h b/dep/include/ace/Handle_Gobbler.h
deleted file mode 100644
index ed7107a6302..00000000000
--- a/dep/include/ace/Handle_Gobbler.h
+++ /dev/null
@@ -1,68 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Handle_Gobbler.h
- *
- * $Id: Handle_Gobbler.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Kirthika Parameswaran <kirthika@cs.wustl.edu>
- * @author Irfan Pyarali <irfan@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_HANDLE_GOBBLER_H
-#define ACE_HANDLE_GOBBLER_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Handle_Set.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Handle_Gobbler
- *
- * @brief This class gobbles up handles.
- *
- * This is useful when we need to control the number of handles
- * available for a process. This class is mostly used for
- * testing purposes.
- */
-class ACE_Handle_Gobbler
-{
-public:
-
- /// Destructor. Cleans up any remaining handles.
- inline ~ACE_Handle_Gobbler (void);
-
- /**
- * Handles are opened continously until the process runs out of
- * them, and then <n_handles_to_keep_available> handles are closed
- * (freed) thereby making them usable in the future.
- */
- inline int consume_handles (size_t n_handles_to_keep_available);
-
- /// Free up @a n_handles.
- inline int free_handles (size_t n_handles);
-
- /// All remaining handles are closed.
- inline void close_remaining_handles (void);
-
-private:
- typedef ACE_Handle_Set HANDLE_SET;
-
- /// The container which holds the open descriptors.
- HANDLE_SET handle_set_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include "ace/Handle_Gobbler.inl"
-
-#include /**/ "ace/post.h"
-#endif /* ACE_HANDLE_GOBBLER_H */
-
diff --git a/dep/include/ace/Handle_Gobbler.inl b/dep/include/ace/Handle_Gobbler.inl
deleted file mode 100644
index 4b81218e6de..00000000000
--- a/dep/include/ace/Handle_Gobbler.inl
+++ /dev/null
@@ -1,78 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Handle_Gobbler.inl 80826 2008-03-04 14:51:23Z wotte $
-
-// Since this is only included in Handle_Gobbler.h, these should be
-// inline, not ACE_INLINE.
-// FUZZ: disable check_for_inline
-
-#include "ace/OS_NS_unistd.h"
-#include "ace/OS_NS_fcntl.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-inline void
-ACE_Handle_Gobbler::close_remaining_handles (void)
-{
- ACE_Handle_Set_Iterator iter (this->handle_set_);
- for (ACE_HANDLE h = iter (); h != ACE_INVALID_HANDLE; h = iter ())
- ACE_OS::close (h);
-}
-
-inline
-ACE_Handle_Gobbler::~ACE_Handle_Gobbler (void)
-{
- this->close_remaining_handles ();
-}
-
-inline int
-ACE_Handle_Gobbler::free_handles (size_t n_handles)
-{
- ACE_Handle_Set_Iterator iter (this->handle_set_);
- for (ACE_HANDLE h = iter ();
- h != ACE_INVALID_HANDLE && n_handles > 0;
- --n_handles, h = iter ())
- ACE_OS::close (h);
-
- return 0;
-}
-
-inline int
-ACE_Handle_Gobbler::consume_handles (size_t n_handles_to_keep_available)
-{
- int result = 0;
-
-#if defined(ACE_WIN32)
- // On Win32, this style of gobbling doesn't seem to work.
- ACE_UNUSED_ARG(n_handles_to_keep_available);
-
-#else
-
- while (1)
- {
- ACE_HANDLE handle = ACE_OS::open (ACE_DEV_NULL, O_WRONLY);
-
- if (handle == ACE_INVALID_HANDLE)
- {
- if (ACE::out_of_handles (errno))
- {
- result = this->free_handles (n_handles_to_keep_available);
- break;
- }
- else
- {
- result = -1;
- break;
- }
- }
- if (handle >= FD_SETSIZE)
- break;
- this->handle_set_.set_bit (handle);
- }
-
-#endif /* ACE_WIN32 */
-
- return result;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Handle_Ops.h b/dep/include/ace/Handle_Ops.h
deleted file mode 100644
index 16ee852725d..00000000000
--- a/dep/include/ace/Handle_Ops.h
+++ /dev/null
@@ -1,51 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Handle_Ops.h
- *
- * $Id: Handle_Ops.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Handle operations.
- */
-//=============================================================================
-
-#ifndef ACE_HANDLE_OPS_H
-#define ACE_HANDLE_OPS_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Global_Macros.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-// = Operations on HANDLEs.
-namespace ACE
-{
- /**
- * Wait up to @a timeout amount of time to actively open a device.
- * This method doesn't perform the @c connect, it just does the
- * timed wait.
- */
- extern ACE_Export ACE_HANDLE handle_timed_open (
- ACE_Time_Value *timeout,
- const ACE_TCHAR *name,
- int flags,
- int perms,
- LPSECURITY_ATTRIBUTES sa = 0);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_HANDLE_OPS_H */
-
diff --git a/dep/include/ace/Handle_Set.h b/dep/include/ace/Handle_Set.h
deleted file mode 100644
index 6e33055b4f6..00000000000
--- a/dep/include/ace/Handle_Set.h
+++ /dev/null
@@ -1,241 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Handle_Set.h
- *
- * $Id: Handle_Set.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_HANDLE_SET_H
-#define ACE_HANDLE_SET_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_select.h"
-#include "ace/os_include/os_limits.h"
-
-#if defined (__QNX__)
- typedef long fd_mask;
-#endif /* __QNX__ */
-
-// Default size of the ACE Reactor.
-#if defined (FD_SETSIZE)
- int const ACE_FD_SETSIZE = FD_SETSIZE;
-#else /* !FD_SETSIZE */
-# define ACE_FD_SETSIZE FD_SETSIZE
-#endif /* ACE_FD_SETSIZE */
-
-#if !defined (ACE_DEFAULT_SELECT_REACTOR_SIZE)
-# define ACE_DEFAULT_SELECT_REACTOR_SIZE ACE_FD_SETSIZE
-#endif /* ACE_DEFAULT_SELECT_REACTOR_SIZE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Handle_Set
- *
- * @brief C++ wrapper facade for the socket @c fd_set abstraction.
- *
- * This abstraction is a very efficient wrapper facade over
- * @c fd_set. In particular, no range checking is performed, so
- * it's important not to set or clear bits that are outside the
- * @c ACE_DEFAULT_SELECT_REACTOR_SIZE.
- */
-class ACE_Export ACE_Handle_Set
-{
-public:
- friend class ACE_Handle_Set_Iterator;
-
- // = Initialization and termination.
-
- enum
- {
- MAXSIZE = ACE_DEFAULT_SELECT_REACTOR_SIZE
- };
-
- // = Initialization methods.
- /// Constructor, initializes the bitmask to all 0s.
- ACE_Handle_Set (void);
-
- /**
- * Constructor, initializes the handle set from a given mask.
- */
- ACE_Handle_Set (const fd_set &mask);
-
- // = Methods for manipulating bitsets.
- /// Initialize the bitmask to all 0s and reset the associated fields.
- void reset (void);
-
- /**
- * Checks whether @a handle is enabled. No range checking is
- * performed so @a handle must be less than
- * @c ACE_DEFAULT_SELECT_REACTOR_SIZE.
- */
- int is_set (ACE_HANDLE handle) const;
-
- /// Enables the @a handle. No range checking is performed so @a handle
- /// must be less than @c ACE_DEFAULT_SELECT_REACTOR_SIZE.
- void set_bit (ACE_HANDLE handle);
-
- /// Disables the @a handle. No range checking is performed so
- /// @a handle must be less than @c ACE_DEFAULT_SELECT_REACTOR_SIZE.
- void clr_bit (ACE_HANDLE handle);
-
- /// Returns a count of the number of enabled bits.
- int num_set (void) const;
-
- /// Returns the number of the large bit.
- ACE_HANDLE max_set (void) const;
-
- /**
- * Rescan the underlying @c fd_set up to handle @a max to find the new
- * <max_handle> (highest bit set) and <size> (how many bits set) values.
- * This is useful for evaluating the changes after the handle set has
- * been manipulated in some way other than member functions; for example,
- * after <select> modifies the @c fd_set.
- */
- void sync (ACE_HANDLE max);
-
- /// Returns a pointer to the underlying @c fd_set. Returns 0 if
- /// there are no handle bits set (<size_> == 0).
- operator fd_set *();
-
- /// Returns a pointer to the underlying @c fd_set. Returns 0 if
- /// there are no handle bits set (<size_> == 0).
- fd_set *fdset (void);
-
-#if defined (ACE_HAS_BIG_FD_SET)
- /// Assignment operator optimizes for cases where <size_> == 0.
- ACE_Handle_Set & operator= (const ACE_Handle_Set &);
-#endif /* ACE_HAS_BIG_FD_SET */
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Size of the set, i.e., a count of the number of enabled bits.
- int size_;
-
- /// Current max handle.
- ACE_HANDLE max_handle_;
-
-#if defined (ACE_HAS_BIG_FD_SET)
- /// Current min handle.
- ACE_HANDLE min_handle_;
-#endif /* ACE_HAS_BIG_FD_SET */
-
- /// Bitmask.
- fd_set mask_;
-
- enum
- {
- WORDSIZE = NFDBITS,
-#if !defined (ACE_WIN32)
- NUM_WORDS = howmany (MAXSIZE, NFDBITS),
-#endif /* ACE_WIN32 */
- NBITS = 256
- };
-
- /// Counts the number of bits enabled in N. Uses a table lookup to
- /// speed up the count.
- static int count_bits (u_long n);
-
-#if defined (ACE_HAS_BIG_FD_SET)
- /// Find the position of the bit counting from right to left.
- static int bitpos (u_long bit);
-#endif /* ACE_HAS_BIG_FD_SET */
-
- /// Resets the <max_handle_> after a clear of the original
- /// <max_handle_>.
- void set_max (ACE_HANDLE max);
-
- /// Table that maps bytes to counts of the enabled bits in each value
- /// from 0 to 255.
- static const char nbits_[NBITS];
-};
-
-/**
- * @class ACE_Handle_Set_Iterator
- *
- * @brief Iterator for the ACE_Handle_Set abstraction.
- */
-class ACE_Export ACE_Handle_Set_Iterator
-{
-public:
- /// Constructor.
- ACE_Handle_Set_Iterator (const ACE_Handle_Set &hs);
-
- /// Default dtor.
- ~ACE_Handle_Set_Iterator (void);
-
- /// Reset the state of the iterator by reinitializing the state
- /// that we maintain.
- void reset_state (void);
-
- /**
- * "Next" operator. Returns the next unseen ACE_HANDLE in the
- * <Handle_Set> up to <handle_set_.max_handle_>). When all the
- * handles have been seen returns <ACE_INVALID_HANDLE>. Advances
- * the iterator automatically, so you need not call <operator++>
- * (which is now obsolete).
- */
- ACE_HANDLE operator () (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// The <Handle_Set> we are iterating through.
- const ACE_Handle_Set &handles_;
-
- /// Index of the bit we're examining in the current <word_num_> word.
-#if defined (ACE_WIN32)
- u_int handle_index_;
-#elif !defined (ACE_HAS_BIG_FD_SET)
- int handle_index_;
-#elif defined (ACE_HAS_BIG_FD_SET)
- int handle_index_;
- u_long oldlsb_;
-#endif /* ACE_WIN32 */
-
- /// Number of the word we're iterating over (typically between 0..7).
- int word_num_;
-
-#if defined (ACE_HAS_BIG_FD_SET)
- /// Number max of the words with a possible bit on.
- int word_max_;
-#endif /* ACE_HAS_BIG_FD_SET */
-
-#if !defined (ACE_WIN32) && !defined (ACE_HAS_BIG_FD_SET)
- /// Value of the bits in the word we're iterating on.
- fd_mask word_val_;
-#elif !defined (ACE_WIN32) && defined (ACE_HAS_BIG_FD_SET)
- /// Value of the bits in the word we're iterating on.
- u_long word_val_;
-#endif /* !ACE_WIN32 && !ACE_HAS_BIG_FD_SET */
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Handle_Set.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_HANDLE_SET */
-
diff --git a/dep/include/ace/Handle_Set.inl b/dep/include/ace/Handle_Set.inl
deleted file mode 100644
index 7e669d4fd2d..00000000000
--- a/dep/include/ace/Handle_Set.inl
+++ /dev/null
@@ -1,193 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Handle_Set.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Log_Msg.h"
-
-// todo: This should be cleaned up a bit.
-// memset for FD_ZERO on OpenBSD and Solaris w/ gcc 2.95.3
-#include "ace/os_include/os_string.h"
-
-// FreeBSD 4.8-RC? for bzero() used by FD_ZERO
-#include "ace/os_include/os_strings.h"
-
-// IRIX5 defines bzero() in this odd file... used by FD_ZERO
-#if defined (ACE_HAS_BSTRING)
-# include /**/ <bstring.h>
-#endif /* ACE_HAS_BSTRING */
-
-// AIX defines bzero() in this odd file... used by FD_ZERO
-#if defined (ACE_HAS_STRINGS)
-# include "ace/os_include/os_strings.h"
-#endif /* ACE_HAS_STRINGS */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Initialize the bitmask to all 0s and reset the associated fields.
-
-ACE_INLINE void
-ACE_Handle_Set::reset (void)
-{
- ACE_TRACE ("ACE_Handle_Set::reset");
- this->max_handle_ =
- ACE_INVALID_HANDLE;
-#if defined (ACE_HAS_BIG_FD_SET)
- this->min_handle_ =
- NUM_WORDS * WORDSIZE;
-#endif /* ACE_HAS_BIG_FD_SET */
- this->size_ = 0;
- // #if !defined (ACE_HAS_BIG_FD_SET) Why is this here? -Steve Huston
- FD_ZERO (&this->mask_);
- // #endif /* ACE_HAS_BIG_FD_SET */
-}
-
-#if defined (ACE_HAS_BIG_FD_SET)
-ACE_INLINE ACE_Handle_Set &
-ACE_Handle_Set::operator = (const ACE_Handle_Set &rhs)
-{
- ACE_TRACE ("ACE_Handle_Set::operator =");
-
- if (rhs.size_ > 0)
- {
- this->size_ =
- rhs.size_;
- this->max_handle_ =
- rhs.max_handle_;
- this->min_handle_ =
- rhs.min_handle_;
- this->mask_ =
- rhs.mask_;
- }
- else
- this->reset ();
-
- return *this;
-}
-#endif /* ACE_HAS_BIG_FD_SET */
-
-// Returns the number of the large bit.
-
-ACE_INLINE ACE_HANDLE
-ACE_Handle_Set::max_set (void) const
-{
- ACE_TRACE ("ACE_Handle_Set::max_set");
- return this->max_handle_;
-}
-
-// Checks whether handle is enabled.
-
-ACE_INLINE int
-ACE_Handle_Set::is_set (ACE_HANDLE handle) const
-{
- ACE_TRACE ("ACE_Handle_Set::is_set");
-#if defined (ACE_HAS_BIG_FD_SET)
- return FD_ISSET (handle,
- &this->mask_)
- && this->size_ > 0;
-#elif defined (ACE_HAS_NONCONST_FD_ISSET)
- return FD_ISSET (handle,
- const_cast<fd_set*> (&this->mask_));
-#else
- return FD_ISSET (handle,
- &this->mask_);
-#endif /* ACE_HAS_BIG_FD_SET */
-}
-
-// Enables the handle.
-
-ACE_INLINE void
-ACE_Handle_Set::set_bit (ACE_HANDLE handle)
-{
- ACE_TRACE ("ACE_Handle_Set::set_bit");
- if ((handle != ACE_INVALID_HANDLE)
- && (!this->is_set (handle)))
- {
-#if defined (ACE_WIN32)
- FD_SET ((SOCKET) handle,
- &this->mask_);
- ++this->size_;
-#else /* ACE_WIN32 */
-#if defined (ACE_HAS_BIG_FD_SET)
- if (this->size_ == 0)
- FD_ZERO (&this->mask_);
-
- if (handle < this->min_handle_)
- this->min_handle_ = handle;
-#endif /* ACE_HAS_BIG_FD_SET */
-
- FD_SET (handle,
- &this->mask_);
- ++this->size_;
-
- if (handle > this->max_handle_)
- this->max_handle_ = handle;
-#endif /* ACE_WIN32 */
- }
-}
-
-// Disables the handle.
-
-ACE_INLINE void
-ACE_Handle_Set::clr_bit (ACE_HANDLE handle)
-{
- ACE_TRACE ("ACE_Handle_Set::clr_bit");
-
- if ((handle != ACE_INVALID_HANDLE) &&
- (this->is_set (handle)))
- {
- FD_CLR ((ACE_SOCKET) handle,
- &this->mask_);
- --this->size_;
-
-#if !defined (ACE_WIN32)
- if (handle == this->max_handle_)
- this->set_max (this->max_handle_);
-#endif /* !ACE_WIN32 */
- }
-}
-
-// Returns a count of the number of enabled bits.
-
-ACE_INLINE int
-ACE_Handle_Set::num_set (void) const
-{
- ACE_TRACE ("ACE_Handle_Set::num_set");
-#if defined (ACE_WIN32)
- return this->mask_.fd_count;
-#else /* !ACE_WIN32 */
- return this->size_;
-#endif /* ACE_WIN32 */
-}
-
-// Returns a pointer to the underlying fd_set.
-
-ACE_INLINE
-ACE_Handle_Set::operator fd_set *()
-{
- ACE_TRACE ("ACE_Handle_Set::operator fd_set *");
-
- if (this->size_ > 0)
- return (fd_set *) &this->mask_;
- else
- return (fd_set *) 0;
-}
-
-// Returns a pointer to the underlying fd_set.
-
-ACE_INLINE fd_set *
-ACE_Handle_Set::fdset (void)
-{
- ACE_TRACE ("ACE_Handle_Set::fdset");
-
- if (this->size_ > 0)
- return (fd_set *) &this->mask_;
- else
- return (fd_set *) 0;
-}
-
-ACE_INLINE
-ACE_Handle_Set_Iterator::~ACE_Handle_Set_Iterator (void)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Hash_Cache_Map_Manager_T.h b/dep/include/ace/Hash_Cache_Map_Manager_T.h
deleted file mode 100644
index 8fa9703d5b4..00000000000
--- a/dep/include/ace/Hash_Cache_Map_Manager_T.h
+++ /dev/null
@@ -1,213 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Hash_Cache_Map_Manager_T.h
- *
- * $Id: Hash_Cache_Map_Manager_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Kirthika Parameswaran <kirthika@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef HASH_CACHE_MAP_MANAGER_T_H
-#define HASH_CACHE_MAP_MANAGER_T_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Hash_Map_Manager_T.h"
-#include "ace/Cache_Map_Manager_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Null_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declaration.
-class ACE_Allocator;
-
-#define ACE_CACHE_MAP_MANAGER \
- ACE_Cache_Map_Manager<KEY, \
- VALUE, \
- ACE_Hash_Map_Manager_Ex<KEY, ACE_Pair<VALUE, ATTRIBUTES>, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex>, \
- ACE_Hash_Map_Iterator_Ex<KEY, ACE_Pair<VALUE, ATTRIBUTES>, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex>, \
- ACE_Hash_Map_Reverse_Iterator_Ex<KEY, ACE_Pair<VALUE, ATTRIBUTES>, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex>, \
- CACHING_STRATEGY, \
- ATTRIBUTES>
-
-// For linkers that cant grok long names.
-#define ACE_Hash_Cache_Map_Manager AHCMM
-
- /**
- * @class ACE_Hash_Cache_Map_Manager
- *
- * @brief Defines a abstraction which will purge entries from a map.
- * The map considered is the ACE_Hash_Map_Manager_Ex.
- *
- * The Hash_Cache_Map_Manager will manage the map it contains
- * and provide purging on demand from the map. The strategy for
- * caching is decided by the user and provided to the Cache
- * Manager. The Cache Manager acts as a agent and communicates
- * between the Map and the Strategy for purging entries from the
- * map. To tap the optimal methods like find(key,value,entry)
- * present in the ACE_Hash_Map_Manager,
- * Hash_Cache_Map_Manager provides extra functionality on top
- * of the Cache_Map_Manager.
- * No locking mechanism provided since locking at this level
- * isnt efficient. Locking has to be provided by the
- * application.
- */
-template <class KEY, class VALUE, class HASH_KEY, class COMPARE_KEYS, class CACHING_STRATEGY, class ATTRIBUTES>
-class ACE_Hash_Cache_Map_Manager : public ACE_CACHE_MAP_MANAGER
-{
- public:
-
- /**
- * The actual value mapped to the key in the map. The <attributes>
- * are used by the strategy and is transparent to the user of this
- * class.
- */
- typedef ACE_Pair<VALUE, ATTRIBUTES> CACHE_VALUE;
- typedef ACE_Hash_Map_Manager_Ex<KEY, CACHE_VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex> HASH_MAP;
- typedef ACE_Hash_Map_Entry<KEY, CACHE_VALUE> CACHE_ENTRY;
- typedef KEY key_type;
- typedef VALUE mapped_type;
-
- // = Initialization and termination methods.
- /// Initialize a <Hash_Cache_Map_Manager> with @a size entries.
- ACE_Hash_Cache_Map_Manager (CACHING_STRATEGY &caching_s,
- size_t size = ACE_DEFAULT_MAP_SIZE,
- ACE_Allocator *alloc = 0);
-
- /// Close down a <Cache_Map_Manager> and release dynamically allocated
- /// resources.
- ~ACE_Hash_Cache_Map_Manager (void);
-
- /**
- * Associate @a key with @a value. If @a key is already in the
- * MAP then the ENTRY is not changed. Returns 0 if a new entry is
- * bound successfully, returns 1 if an attempt is made to bind an
- * existing entry, and returns -1 if failures occur.
- */
- int bind (const KEY &key,
- const VALUE &value);
-
- /**
- * Same as a normal bind, except the cache entry is also passed back
- * to the caller. The entry in this case will either be the newly
- * created entry, or the existing one.
- */
- int bind (const KEY &key,
- const VALUE &value,
- CACHE_ENTRY *&entry);
-
- /// Loopkup entry<key,value> in the cache.
- int find (const KEY &key,
- VALUE &value);
-
- /// Is @a key in the cache?
- int find (const KEY &key);
-
- /// Obtain the entry when the find succeeds.
- int find (const KEY &key,
- CACHE_ENTRY *&entry);
-
- /**
- * Reassociate the @a key with @a value. If the @a key already exists
- * in the cache then returns 1, on a new bind returns 0 and returns
- * -1 in case of any failures.
- */
- int rebind (const KEY &key,
- const VALUE &value);
-
- /**
- * Reassociate @a key with @a value, storing the old value into the
- * "out" parameter @a old_value. The function fails if @a key is not
- * in the cache for caches that do not allow user specified keys.
- * However, for caches that allow user specified keys, if the key is
- * not in the cache, a new @a key / @a value association is created.
- */
- int rebind (const KEY &key,
- const VALUE &value,
- VALUE &old_value);
-
- /**
- * Reassociate @a key with @a value, storing the old key and value
- * into the "out" parameters @a old_key and @a old_value. The
- * function fails if @a key is not in the cache for caches that do not
- * allow user specified keys. However, for caches that allow user
- * specified keys, if the key is not in the cache, a new @a key / @a value
- * association is created.
- */
- int rebind (const KEY &key,
- const VALUE &value,
- KEY &old_key,
- VALUE &old_value);
-
- /**
- * Same as a normal rebind, except the cache entry is also passed back
- * to the caller. The entry in this case will either be the newly
- * created entry, or the existing one.
- */
- int rebind (const KEY &key,
- const VALUE &value,
- CACHE_ENTRY *&entry);
-
- /**
- * Associate @a key with @a value if and only if @a key is not in the
- * cache. If @a key is already in the cache, then the @a value parameter
- * is overwritten with the existing value in the cache. Returns 0 if a
- * new @a key / @a value association is created. Returns 1 if an
- * attempt is made to bind an existing entry. This function fails
- * for maps that do not allow user specified keys.
- */
- int trybind (const KEY &key,
- VALUE &value);
-
- /**
- * Same as a normal trybind, except the cache entry is also passed
- * back to the caller. The entry in this case will either be the
- * newly created entry, or the existing one.
- */
- int trybind (const KEY &key,
- VALUE &value,
- CACHE_ENTRY *&entry);
-
- /// Remove @a key from the cache.
- int unbind (const KEY &key);
-
- /// Remove @a key from the cache, and return the @a value associated with
- /// @a key.
- int unbind (const KEY &key,
- VALUE &value);
-
- /// Remove entry from map.
- int unbind (CACHE_ENTRY *entry);
-
-protected:
-
- /// Base class.
- typedef ACE_CACHE_MAP_MANAGER ACE_HCMM_BASE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Hash_Cache_Map_Manager_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Hash_Cache_Map_Manager_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Hash_Cache_Map_Manager_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* HASH_CACHE_MAP_MANAGER_T_H */
-
diff --git a/dep/include/ace/Hash_Cache_Map_Manager_T.inl b/dep/include/ace/Hash_Cache_Map_Manager_T.inl
deleted file mode 100644
index f097bb7e073..00000000000
--- a/dep/include/ace/Hash_Cache_Map_Manager_T.inl
+++ /dev/null
@@ -1,73 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Hash_Cache_Map_Manager_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#define ACE_T1 class KEY, class VALUE, class HASH_KEY, class COMPARE_KEYS, class CACHING_STRATEGY, class ATTRIBUTES
-#define ACE_T2 KEY, VALUE, HASH_KEY, COMPARE_KEYS, CACHING_STRATEGY, ATTRIBUTES
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <ACE_T1> ACE_INLINE int
-ACE_Hash_Cache_Map_Manager<ACE_T2>::bind (const KEY &key,
- const VALUE &value)
-{
- return ACE_HCMM_BASE::bind (key,
- value);
-}
-
-template <ACE_T1> ACE_INLINE int
-ACE_Hash_Cache_Map_Manager<ACE_T2>::rebind (const KEY &key,
- const VALUE &value)
-{
- return ACE_HCMM_BASE::rebind (key,
- value);
-}
-
-template <ACE_T1> ACE_INLINE int
-ACE_Hash_Cache_Map_Manager<ACE_T2>::rebind (const KEY &key,
- const VALUE &value,
- VALUE &old_value)
-{
- return ACE_HCMM_BASE::rebind (key,
- value,
- old_value);
-}
-
-template <ACE_T1> ACE_INLINE int
-ACE_Hash_Cache_Map_Manager<ACE_T2>::rebind (const KEY &key,
- const VALUE &value,
- KEY &old_key,
- VALUE &old_value)
-{
- return ACE_HCMM_BASE::rebind (key,
- value,
- old_key,
- old_value);
-}
-
-template <ACE_T1> ACE_INLINE int
-ACE_Hash_Cache_Map_Manager<ACE_T2>::trybind (const KEY &key,
- VALUE &value)
-{
- return ACE_HCMM_BASE::trybind (key,
- value);
-}
-
-template <ACE_T1> ACE_INLINE int
-ACE_Hash_Cache_Map_Manager<ACE_T2>::unbind (const KEY &key)
-{
- return ACE_HCMM_BASE::unbind (key);
-}
-
-template <ACE_T1> ACE_INLINE int
-ACE_Hash_Cache_Map_Manager<ACE_T2>::unbind (const KEY &key,
- VALUE &value)
-{
- return ACE_HCMM_BASE::unbind (key,
- value);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#undef ACE_T1
-#undef ACE_T2
diff --git a/dep/include/ace/Hash_Map_Manager.h b/dep/include/ace/Hash_Map_Manager.h
deleted file mode 100644
index 0e253eb4cb9..00000000000
--- a/dep/include/ace/Hash_Map_Manager.h
+++ /dev/null
@@ -1,32 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Hash_Map_Manager.h
- *
- * $Id: Hash_Map_Manager.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Backward compatibility header.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_HASH_MAP_MANAGER_H
-#define ACE_HASH_MAP_MANAGER_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// Include the templates here.
-#include "ace/Hash_Map_Manager_T.h"
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_HASH_MAP_MANAGER_H */
-
diff --git a/dep/include/ace/Hash_Map_Manager_T.h b/dep/include/ace/Hash_Map_Manager_T.h
deleted file mode 100644
index 9ef8e23c7ea..00000000000
--- a/dep/include/ace/Hash_Map_Manager_T.h
+++ /dev/null
@@ -1,1304 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Hash_Map_Manager_T.h
- *
- * $Id: Hash_Map_Manager_T.h 81735 2008-05-19 19:14:10Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_HASH_MAP_MANAGER_T_H
-#define ACE_HASH_MAP_MANAGER_T_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Default_Constants.h"
-#include "ace/Functor_T.h"
-#include "ace/Log_Msg.h"
-#include <iterator>
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Hash_Map_Entry
- *
- * @brief Define an entry in the hash table.
- */
-template <class EXT_ID, class INT_ID>
-class ACE_Hash_Map_Entry
-{
-public:
- // = Initialization and termination methods.
- /// Constructor.
- ACE_Hash_Map_Entry (const EXT_ID &ext_id,
- const INT_ID &int_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *next = 0,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *prev = 0);
-
- /// Constructor.
- ACE_Hash_Map_Entry (ACE_Hash_Map_Entry<EXT_ID, INT_ID> *next,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *prev);
-
- /// Destructor.
- ~ACE_Hash_Map_Entry (void);
-
- /// Key accessor.
- EXT_ID& key (void);
-
- /// Item accessor.
- INT_ID& item (void);
-
- /// Key used to look up an entry.
- /// @deprecated Use key()
- EXT_ID ext_id_;
-
- /// The contents of the entry itself.
- /// @deprecated Use item()
- INT_ID int_id_;
-
- /// Pointer to the next item in the bucket of overflow nodes.
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *next_;
-
- /// Pointer to the prev item in the bucket of overflow nodes.
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *prev_;
-
- /// Dump the state of an object.
- void dump (void) const;
-};
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Map_Iterator_Base_Ex;
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Map_Const_Iterator_Base_Ex;
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Map_Iterator_Ex;
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Map_Const_Iterator_Ex;
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Map_Reverse_Iterator_Ex;
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Map_Const_Reverse_Iterator_Ex;
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Map_Bucket_Iterator;
-
-// Forward decl.
-class ACE_Allocator;
-
-/**
- * @class ACE_Hash_Map_Manager_Ex
- *
- * @brief Define a map abstraction that efficiently associates
- * @c EXT_ID type objects with @c INT_ID type objects.
- *
- * This implementation of a map uses a hash table. Key hashing
- * is achieved through the @c HASH_KEY object and key comparison is
- * achieved through the @c COMPARE_KEYS object.
- * This class uses an ACE_Allocator to allocate memory. The
- * user can make this a persistent class by providing an
- * ACE_Allocator with a persistable memory pool.
- */
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Map_Manager_Ex
-{
-public:
- friend class ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>;
- friend class ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>;
- friend class ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>;
- friend class ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>;
- friend class ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>;
- friend class ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>;
- friend class ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>;
-
- typedef EXT_ID
- KEY;
- typedef INT_ID
- VALUE;
- typedef ACE_LOCK lock_type;
- typedef ACE_Hash_Map_Entry<EXT_ID, INT_ID>
- ENTRY;
-
- // = ACE-style iterator typedefs.
- typedef ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
- ITERATOR;
- typedef ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
- CONST_ITERATOR;
- typedef ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
- REVERSE_ITERATOR;
- typedef ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
- CONST_REVERSE_ITERATOR;
-
- // = STL-style iterator typedefs.
- typedef ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
- iterator;
- typedef ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
- const_iterator;
- typedef ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
- reverse_iterator;
- typedef ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
- const_reverse_iterator;
-
- // = STL-style typedefs/traits.
- typedef EXT_ID key_type;
- typedef INT_ID data_type;
- typedef ACE_Hash_Map_Entry<EXT_ID, INT_ID> value_type;
- typedef value_type & reference;
- typedef value_type const & const_reference;
- typedef value_type * pointer;
- typedef value_type const * const_pointer;
- typedef ptrdiff_t difference_type;
- typedef size_t size_type;
-
- // = Initialization and termination methods.
-
- /**
- * Initialize an ACE_Hash_Map_Manager_Ex with a default number of elements.
- *
- * @param table_alloc is a pointer to a memory allocator used for
- * table_, so it should supply size*sizeof (ACE_Hash_Map_Entry<EXT_ID, INT_ID>).
- * If @a table_alloc is 0 it defaults to ACE_Allocator::instance().
- * @param entry_alloc is a pointer to an additional allocator for
- * entries, so it should be able to allocate 'size' / chunks
- * of sizeof(ACE_Hash_Map_Entry<EXT_ID, INT_ID>) bytes each.
- * If @a entry_alloc is 0 it defaults to the same allocator as
- * @a table_alloc.
- */
- ACE_Hash_Map_Manager_Ex (ACE_Allocator *table_alloc = 0,
- ACE_Allocator *entry_alloc = 0);
-
- /**
- * Initialize an ACE_Hash_Map_Manager_Ex with @a size elements.
- *
- * @param table_alloc is a pointer to a memory allocator used for
- * table_, so it should supply size*sizeof (ACE_Hash_Map_Entry<EXT_ID, INT_ID>).
- * If @a table_alloc is 0 it defaults to ACE_Allocator::instance().
- * @param entry_alloc is a pointer to an additional allocator for
- * entries, so it should be able to allocate 'size' / chunks
- * of sizeof(ACE_Hash_Map_Entry<EXT_ID, INT_ID>) bytes each.
- * If @a entry_alloc is 0 it defaults to the same allocator as
- * @a table_alloc.
- */
- ACE_Hash_Map_Manager_Ex (size_t size,
- ACE_Allocator *table_alloc = 0,
- ACE_Allocator *entry_alloc = 0);
-
- /**
- * Initialize an ACE_Hash_Map_Manager_Ex with @a size elements.
- * @param table_alloc is a pointer to a memory allocator used for
- * table_, so it should supply size*sizeof (ACE_Hash_Map_Entry<EXT_ID, INT_ID>).
- * If @a table_alloc is 0 it defaults to ACE_Allocator::instance().
- * @param entry_alloc is a pointer to an additional allocator for
- * entries, so it should be able to allocate 'size' / chunks
- * of sizeof(ACE_Hash_Map_Entry<EXT_ID, INT_ID>) bytes each.
- * If @a entry_alloc is 0 then it defaults to the same allocator as
- * @a table_alloc.
- * @return -1 on failure, 0 on success
- */
-
- int open (size_t size = ACE_DEFAULT_MAP_SIZE,
- ACE_Allocator *table_alloc = 0,
- ACE_Allocator *entry_alloc = 0);
-
- /// Close down the ACE_Hash_Map_Manager_Ex and release dynamically allocated
- /// resources.
- int close (void);
-
- /// Removes all the entries in the ACE_Hash_Map_Manager_Ex.
- int unbind_all (void);
-
- /// Cleanup the ACE_Hash_Map_Manager_Ex.
- ~ACE_Hash_Map_Manager_Ex (void);
-
- /**
- * Associate @a item with @a int_id. If @a item is already in the
- * map then the map is not changed.
- *
- * @retval 0 if a new entry is bound successfully.
- * @retval 1 if an attempt is made to bind an existing entry.
- * @retval -1 if a failure occurs; check @c errno for more information.
- */
- int bind (const EXT_ID &item,
- const INT_ID &int_id);
-
- /**
- * Same as a normal bind, except the map entry is also passed back
- * to the caller. The entry in this case will either be the newly
- * created entry, or the existing one.
- */
- int bind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /**
- * Associate @a ext_id with @a int_id if and only if @a ext_id is not
- * in the map. If @a ext_id is already in the map then the @a int_id
- * parameter is assigned the existing value in the map. Returns 0
- * if a new entry is bound successfully, returns 1 if an attempt is
- * made to bind an existing entry, and returns -1 if failures occur.
- */
- int trybind (const EXT_ID &ext_id,
- INT_ID &int_id);
-
- /**
- * Same as a normal trybind, except the map entry is also passed
- * back to the caller. The entry in this case will either be the
- * newly created entry, or the existing one.
- */
- int trybind (const EXT_ID &ext_id,
- INT_ID &int_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /**
- * Reassociate @a ext_id with @a int_id. If @a ext_id is not in the
- * map then behaves just like <bind>. Returns 0 if a new entry is
- * bound successfully, returns 1 if an existing entry was rebound,
- * and returns -1 if failures occur.
- */
- int rebind (const EXT_ID &ext_id,
- const INT_ID &int_id);
-
- /**
- * Same as a normal rebind, except the map entry is also passed back
- * to the caller. The entry in this case will either be the newly
- * created entry, or the existing one.
- */
- int rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /**
- * Associate @a ext_id with @a int_id. If @a ext_id is not in the map
- * then behaves just like <bind>. Otherwise, store the old value of
- * @a int_id into the "out" parameter and rebind the new parameters.
- * Returns 0 if a new entry is bound successfully, returns 1 if an
- * existing entry was rebound, and returns -1 if failures occur.
- */
- int rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- INT_ID &old_int_id);
-
- /**
- * Same as a normal rebind, except the map entry is also passed back
- * to the caller. The entry in this case will either be the newly
- * created entry, or the existing one.
- */
- int rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- INT_ID &old_int_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /**
- * Associate @a ext_id with @a int_id. If @a ext_id is not in the map
- * then behaves just like <bind>. Otherwise, store the old values
- * of @a ext_id and @a int_id into the "out" parameters and rebind the
- * new parameters. This is very useful if you need to have an
- * atomic way of updating ACE_Hash_Map_Entrys and you also need
- * full control over memory allocation. Returns 0 if a new entry is
- * bound successfully, returns 1 if an existing entry was rebound,
- * and returns -1 if failures occur.
- */
- int rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- EXT_ID &old_ext_id,
- INT_ID &old_int_id);
-
- /**
- * Same as a normal rebind, except the map entry is also passed back
- * to the caller. The entry in this case will either be the newly
- * created entry, or the existing one.
- */
- int rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- EXT_ID &old_ext_id,
- INT_ID &old_int_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /// Locate @a ext_id and pass out parameter via @a int_id.
- /// Return 0 if found, returns -1 if not found.
- int find (const EXT_ID &ext_id,
- INT_ID &int_id) const;
-
- /// Returns 0 if the @a ext_id is in the mapping, otherwise -1.
- int find (const EXT_ID &ext_id) const;
-
- /// Locate @a ext_id and pass out parameter via @a entry. If found,
- /// return 0, returns -1 if not found.
- int find (const EXT_ID &ext_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry) const;
-
- /// Locate @a ext_id and pass out an iterator that points to its
- /// corresponding value.
- /**
- * @param pos @a pos will be set to @c end() if not found.
- */
- void find (EXT_ID const & ext_id, iterator & pos) const;
-
- /**
- * Unbind (remove) the @a ext_id from the map. Don't return the
- * @a int_id to the caller (this is useful for collections where the
- * @a int_ids are *not* dynamically allocated...)
- */
- int unbind (const EXT_ID &ext_id);
-
- /// Break any association of @a ext_id. Returns the value of @a int_id
- /// in case the caller needs to deallocate memory. Return 0 if the
- /// unbind was successful, and returns -1 if failures occur.
- int unbind (const EXT_ID &ext_id,
- INT_ID &int_id);
-
- /// Remove entry from map.
- /**
- * This unbind operation is fast relative to those that accept an
- * external ID parameter since no map lookup is performed.
- *
- * @return 0 if the unbind was successful, and -1 if failures
- * occur.
- */
- int unbind (ACE_Hash_Map_Entry<EXT_ID, INT_ID> *entry);
-
- /// Remove entry from map pointed to by @c iterator @a pos.
- /**
- * This unbind operation is fast relative to those that accept an
- * external ID parameter since no map lookup is performed.
- *
- * @return 0 if the unbind was successful, and -1 if failures
- * occur.
- */
- int unbind (iterator pos);
-
- /// Returns the current number of ACE_Hash_Map_Entry objects in the
- /// hash table.
- size_t current_size (void) const;
-
- /// Return the size of the array that's used to point to the
- /// linked lists of ACE_Hash_Map_Entry objects in the hash table.
- size_t total_size (void) const;
-
- /**
- * Returns a reference to the underlying <ACE_LOCK>. This makes it
- * possible to acquire the lock explicitly, which can be useful in
- * some cases if you instantiate the ACE_Atomic_Op with an
- * ACE_Recursive_Mutex or ACE_Process_Mutex, or if you need to
- * guard the state of an iterator.
- * @note The right name would be <lock>, but HP/C++ will choke on that!
- */
- ACE_LOCK &mutex (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL styled iterator factory functions.
-
- /// Return forward iterator.
- iterator begin (void);
- iterator end (void);
- const_iterator begin (void) const;
- const_iterator end (void) const;
-
- /// Return reverse iterator.
- reverse_iterator rbegin (void);
- reverse_iterator rend (void);
- const_reverse_iterator rbegin (void) const;
- const_reverse_iterator rend (void) const;
-
-protected:
- // = The following methods do the actual work.
-
- /// Returns 1 if <id1> == <id2>, else 0. This is defined as a
- /// separate method to facilitate template specialization.
- int equal (const EXT_ID &id1, const EXT_ID &id2);
-
- /// Compute the hash value of the @a ext_id. This is defined as a
- /// separate method to facilitate template specialization.
- u_long hash (const EXT_ID &ext_id);
-
- // = These methods assume locks are held by private methods.
-
- /// Performs bind. Must be called with locks held.
- int bind_i (const EXT_ID &ext_id,
- const INT_ID &int_id);
-
- /// Performs bind. Must be called with locks held.
- int bind_i (const EXT_ID &ext_id,
- const INT_ID &int_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /// Performs trybind. Must be called with locks held.
- int trybind_i (const EXT_ID &ext_id,
- INT_ID &int_id);
-
- /// Performs trybind. Must be called with locks held.
- int trybind_i (const EXT_ID &ext_id,
- INT_ID &int_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /// Performs rebind. Must be called with locks held.
- int rebind_i (const EXT_ID &ext_id,
- const INT_ID &int_id);
-
- /// Performs rebind. Must be called with locks held.
- int rebind_i (const EXT_ID &ext_id,
- const INT_ID &int_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /// Performs rebind. Must be called with locks held.
- int rebind_i (const EXT_ID &ext_id,
- const INT_ID &int_id,
- INT_ID &old_int_id);
-
- /// Performs rebind. Must be called with locks held.
- int rebind_i (const EXT_ID &ext_id,
- const INT_ID &int_id,
- INT_ID &old_int_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /// Performs rebind. Must be called with locks held.
- int rebind_i (const EXT_ID &ext_id,
- const INT_ID &int_id,
- EXT_ID &old_ext_id,
- INT_ID &old_int_id);
-
- /// Performs rebind. Must be called with locks held.
- int rebind_i (const EXT_ID &ext_id,
- const INT_ID &int_id,
- EXT_ID &old_ext_id,
- INT_ID &old_int_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /// Performs a find of @a int_id using @a ext_id as the key. Must be
- /// called with locks held.
- int find_i (const EXT_ID &ext_id,
- INT_ID &int_id);
-
- /// Performs a find using @a ext_id as the key. Must be called with
- /// locks held.
- int find_i (const EXT_ID &ext_id);
-
- /// Performs a find using @a ext_id as the key. Must be called with
- /// locks held.
- int find_i (const EXT_ID &ext_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /// Performs unbind. Must be called with locks held.
- int unbind_i (const EXT_ID &ext_id,
- INT_ID &int_id);
-
- /// Performs unbind. Must be called with locks held.
- int unbind_i (const EXT_ID &ext_id);
-
- /// Performs unbind. Must be called with locks held.
- int unbind_i (ACE_Hash_Map_Entry<EXT_ID, INT_ID> *entry);
-
- /**
- * Resize the map. Must be called with locks held.
- * @note This method should never be called more than once or else all the
- * hashing will get screwed up as the size will change.
- */
- int create_buckets (size_t size);
-
- /// Close down a <Map_Manager_Ex>. Must be called with
- /// locks held.
- int close_i (void);
-
- /// Removes all the entries in <Map_Manager_Ex>. Must be called with
- /// locks held.
- int unbind_all_i (void);
-
- /// Pointer to a memory allocator used for table_, so it should
- /// supply size*sizeof (ACE_Hash_Map_Entry<EXT_ID, INT_ID>),
- ACE_Allocator *table_allocator_;
-
- /// Addidtional allocator for entries, so it should be able to
- /// allocate 'size' / chunks of sizeof(ACE_Hash_Map_Entry<EXT_ID,
- /// INT_ID>) bytes each.
- ACE_Allocator *entry_allocator_;
-
- /// Synchronization variable for the MT_SAFE
- /// @c ACE_Hash_Map_Manager_Ex.
- mutable ACE_LOCK lock_;
-
- /// Function object used for hashing keys.
- HASH_KEY hash_key_;
-
- /// Function object used for comparing keys.
- COMPARE_KEYS compare_keys_;
-
-protected:
- /// Returns the ACE_Hash_Map_Entry that corresponds to @a ext_id.
- int shared_find (const EXT_ID &ext_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry,
- size_t &loc);
-
- /// Accessor of the underlying table
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *table (void);
-
- /// Accessor of the current size attribute
- size_t cur_size (void) const;
-
-private:
- /**
- * Array of ACE_Hash_Map_Entry *s, each of which points to an
- * ACE_Hash_Map_Entry that serves as the beginning of a linked
- * list of <EXT_ID>s that hash to that bucket.
- */
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *table_;
-
- /// Total size of the hash table.
- size_t total_size_;
-
- /// Current number of entries in the table
- /// @note That this can be larger than <total_size_> due to the
- /// bucket chaining).
- size_t cur_size_;
-
- // = Disallow these operations.
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Hash_Map_Manager_Ex (const ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &))
-};
-
-/**
- * @class ACE_Hash_Map_Iterator_Base_Ex
- *
- * @brief Base iterator for the ACE_Hash_Map_Manager_Ex
- *
- * This class factors out common code from its templatized
- * subclasses.
- */
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Map_Iterator_Base_Ex
-{
-public:
- // = STL-style typedefs/traits.
- typedef ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
- container_type;
-
- // = std::iterator_traits typedefs/traits.
- typedef typename container_type::value_type value_type;
- typedef typename container_type::reference reference;
- typedef typename container_type::pointer pointer;
- typedef typename container_type::difference_type difference_type;
-
- // = Initialization method.
- /// Contructor.
- /**
- * If @a head != @c false, the iterator constructed is positioned
- * at the head of the map. It is positioned at the end otherwise.
- * @par
- */
- ACE_Hash_Map_Iterator_Base_Ex (
- ACE_Hash_Map_Manager_Ex<EXT_ID,
- INT_ID,
- HASH_KEY,
- COMPARE_KEYS,
- ACE_LOCK> &mm,
- bool head);
-
- /// Contructor.
- /**
- * This constructor positions the iterator to the given @a entry.
- */
- ACE_Hash_Map_Iterator_Base_Ex (
- ACE_Hash_Map_Manager_Ex<EXT_ID,
- INT_ID,
- HASH_KEY,
- COMPARE_KEYS,
- ACE_LOCK> & mm,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> * entry,
- size_t index);
-
- // = ITERATION methods.
-
- /// Pass back the next <entry> that hasn't been seen in the Set.
- /// Returns 0 when all items have been seen, else 1.
- int next (ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&next_entry) const;
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Returns a reference to the interal element @c this is pointing to.
- ACE_Hash_Map_Entry<EXT_ID, INT_ID>& operator* (void) const;
-
- /// Returns a pointer to the interal element @c this is pointing to.
- ACE_Hash_Map_Entry<EXT_ID, INT_ID>* operator-> (void) const;
-
- /// Returns reference the Hash_Map_Manager_Ex that is being iterated
- /// over.
- ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>& map (void);
-
- /// Check if two iterators point to the same position
- bool operator== (const ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &) const;
- bool operator!= (const ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Move forward by one element in the set. Returns 0 when there's
- /// no more item in the set after the current items, else 1.
- int forward_i (void);
-
- /// Move backward by one element in the set. Returns 0 when there's
- /// no more item in the set before the current item, else 1.
- int reverse_i (void);
-
- /// Dump the state of an object.
- void dump_i (void) const;
-
- /// Map we are iterating over.
- ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *map_man_;
-
- /// Keeps track of how far we've advanced in the table.
- ssize_t index_;
-
- /// Keeps track of how far we've advanced in a linked list in each
- /// table slot.
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *next_;
-};
-
-/**
- * @class ACE_Hash_Map_Const_Iterator_Base_Ex
- *
- * @brief Base const iterator for the ACE_Hash_Map_Manager_Ex
- *
- * This class factors out common code from its templatized
- * subclasses.
- */
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Map_Const_Iterator_Base_Ex
-{
-public:
- // = STL-style typedefs/traits.
- typedef ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
- container_type;
-
- // = std::iterator_traits typedefs/traits.
- typedef typename container_type::value_type value_type;
- typedef typename container_type::const_reference reference;
- typedef typename container_type::const_pointer pointer;
- typedef typename container_type::difference_type difference_type;
-
- // = Initialization method.
- /// Contructor. If head the iterator constructed is positioned
- /// at the head of the map, it is positioned at the end otherwise.
- ACE_Hash_Map_Const_Iterator_Base_Ex (const ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- bool head);
-
- // = ITERATION methods.
-
- /// Pass back the next <entry> that hasn't been seen in the Set.
- /// Returns 0 when all items have been seen, else 1.
- int next (ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&next_entry) const;
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Returns a reference to the interal element @c this is pointing to.
- ACE_Hash_Map_Entry<EXT_ID, INT_ID>& operator* (void) const;
-
- /// Returns a pointer to the interal element @c this is pointing to.
- ACE_Hash_Map_Entry<EXT_ID, INT_ID>* operator-> (void) const;
-
- /// Returns reference the Hash_Map_Manager_Ex that is being iterated
- /// over.
- const ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>& map (void);
-
- /// Check if two iterators point to the same position
- bool operator== (const ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &) const;
- bool operator!= (const ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Move forward by one element in the set. Returns 0 when there's
- /// no more item in the set after the current items, else 1.
- int forward_i (void);
-
- /// Move backward by one element in the set. Returns 0 when there's
- /// no more item in the set before the current item, else 1.
- int reverse_i (void);
-
- /// Dump the state of an object.
- void dump_i (void) const;
-
- /// Map we are iterating over.
- const ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *map_man_;
-
- /// Keeps track of how far we've advanced in the table.
- ssize_t index_;
-
- /// Keeps track of how far we've advanced in a linked list in each
- /// table slot.
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *next_;
-};
-
-/**
- * @class ACE_Hash_Map_Iterator_Ex
- *
- * @brief Forward iterator for the ACE_Hash_Map_Manager_Ex.
- *
- * This class does not perform any internal locking of the
- * ACE_Hash_Map_Manager_Ex it is iterating upon since locking is
- * inherently inefficient and/or error-prone within an STL-style
- * iterator. If you require locking, you can explicitly use an
- * ACE_Guard or ACE_Read_Guard on the ACE_Hash_Map_Manager_Ex's
- * internal lock, which is accessible via its <mutex> method.
- */
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Map_Iterator_Ex : public ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-{
-public:
- // = STL-style traits/typedefs
- typedef typename ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::container_type
- container_type;
-
- // = STL-style traits/typedefs
- typedef std::bidirectional_iterator_tag iterator_category;
- typedef typename container_type::value_type value_type;
- typedef typename container_type::reference reference;
- typedef typename container_type::pointer pointer;
- typedef typename container_type::difference_type difference_type;
-
- // = Initialization method.
- ACE_Hash_Map_Iterator_Ex (ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- int tail = 0);
-
- /// Contructor.
- /**
- * This constructor positions the iterator to the given @a entry.
- */
- ACE_Hash_Map_Iterator_Ex (
- ACE_Hash_Map_Manager_Ex<EXT_ID,
- INT_ID,
- HASH_KEY,
- COMPARE_KEYS,
- ACE_LOCK> & mm,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> * entry,
- size_t index);
-
- // = Iteration methods.
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL styled iteration, compare, and reference functions.
-
- /// Prefix advance.
- ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &operator++ (void);
-
- /// Postfix advance.
- ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> operator++ (int);
-
- /// Prefix reverse.
- ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &operator-- (void);
-
- /// Postfix reverse.
- ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> operator-- (int);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-/**
- * @class ACE_Hash_Map_Const_Iterator_Ex
- *
- * @brief Const forward iterator for the ACE_Hash_Map_Manager_Ex.
- *
- * This class does not perform any internal locking of the
- * ACE_Hash_Map_Manager_Ex it is iterating upon since locking is
- * inherently inefficient and/or error-prone within an STL-style
- * iterator. If you require locking, you can explicitly use an
- * ACE_Guard or ACE_Read_Guard on the ACE_Hash_Map_Manager_Ex's
- * internal lock, which is accessible via its <mutex> method.
- */
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Map_Const_Iterator_Ex : public ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-{
-public:
- // = STL-style traits/typedefs
- typedef typename ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::container_type
- container_type;
-
- // = std::iterator_trait traits/typedefs
- typedef std::bidirectional_iterator_tag iterator_category;
- typedef typename container_type::value_type value_type;
- typedef typename container_type::reference reference;
- typedef typename container_type::pointer pointer;
- typedef typename container_type::difference_type difference_type;
-
- // = Initialization method.
- ACE_Hash_Map_Const_Iterator_Ex (const ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- int tail = 0);
-
- // = Iteration methods.
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL styled iteration, compare, and reference functions.
-
- /// Prefix advance.
- ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &operator++ (void);
-
- /// Postfix advance.
- ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> operator++ (int);
-
- /// Prefix reverse.
- ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &operator-- (void);
-
- /// Postfix reverse.
- ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> operator-- (int);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-/**
- * @class ACE_Hash_Map_Bucket_Iterator
- *
- * @brief Forward iterator for the ACE_Hash_Map_Manager_Ex which
- * only traverses a particular bucket. The particular bucket is
- * specified by the <EXT_ID> parameter specified in the constructor.
- *
- * This class does not perform any internal locking of the
- * ACE_Hash_Map_Manager_Ex it is iterating upon since locking is
- * inherently inefficient and/or error-prone within an STL-style
- * iterator. If you require locking, you can explicitly use an
- * ACE_Guard or ACE_Read_Guard on the ACE_Hash_Map_Manager_Ex's
- * internal lock, which is accessible via its <mutex> method.
- *
- * Note that a creation method for this new iterator cannot be added
- * to the hash map, since this would require adding explicit template
- * instantiations for bucket iterators on platforms with broken
- * templates.
- */
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Map_Bucket_Iterator
-{
-public:
- // = STL-style traits/typedefs
- typedef ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
- container_type;
-
- // = std::iterator traits/typedefs
- typedef std::bidirectional_iterator_tag iterator_category;
- typedef typename container_type::value_type value_type;
- typedef typename container_type::reference reference;
- typedef typename container_type::pointer pointer;
- typedef typename container_type::difference_type difference_type;
-
- // = Initialization method.
- ACE_Hash_Map_Bucket_Iterator (ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- const EXT_ID &ext_id,
- int tail = 0);
-
- // = STL styled iteration, compare, and reference functions.
-
- /// Prefix advance.
- ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &operator++ (void);
-
- /// Postfix advance.
- ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> operator++ (int);
-
- /// Prefix reverse.
- ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &operator-- (void);
-
- /// Postfix reverse.
- ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> operator-- (int);
-
- /// Returns a reference to the interal element @c this is pointing to.
- ACE_Hash_Map_Entry<EXT_ID, INT_ID>& operator* (void) const;
-
- /// Returns a pointer to the interal element @c this is pointing to.
- ACE_Hash_Map_Entry<EXT_ID, INT_ID>* operator-> (void) const;
-
- /// Returns reference the Hash_Map_Manager_Ex that is being iterated
- /// over.
- ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>& map (void);
-
- /// Check if two iterators point to the same position
- bool operator== (const ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &) const;
- bool operator!= (const ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &) const;
-
-protected:
- /// Move forward by one element in the set. Returns 0 when there's
- /// no more item in the set after the current items, else 1.
- int forward_i (void);
-
- /// Move backward by one element in the set. Returns 0 when there's
- /// no more item in the set before the current item, else 1.
- int reverse_i (void);
-
- /// Map we are iterating over.
- ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *map_man_;
-
- /// Keeps track of how far we've advanced in the table.
- ssize_t index_;
-
- /// Keeps track of how far we've advanced in a linked list in each
- /// table slot.
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *next_;
-};
-
-/**
- * @class ACE_Hash_Map_Reverse_Iterator_Ex
- *
- * @brief Reverse iterator for the ACE_Hash_Map_Manager_Ex.
- *
- * This class does not perform any internal locking of the
- * ACE_Hash_Map_Manager_Ex it is iterating upon since locking is
- * inherently inefficient and/or error-prone within an STL-style
- * iterator. If you require locking, you can explicitly use an
- * ACE_Guard or ACE_Read_Guard on the ACE_Hash_Map_Manager_Ex's
- * internal lock, which is accessible via its <mutex> method.
- */
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Map_Reverse_Iterator_Ex : public ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-{
-public:
- // = STL-style traits/typedefs
- typedef typename ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::container_type
- container_type;
-
- // = std::iterator_traits typedefs
- typedef std::bidirectional_iterator_tag iterator_category;
- typedef typename container_type::value_type value_type;
- typedef typename container_type::reference reference;
- typedef typename container_type::pointer pointer;
- typedef typename container_type::difference_type difference_type;
-
- // = Initialization method.
- ACE_Hash_Map_Reverse_Iterator_Ex (ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- bool head = false);
-
- // = Iteration methods.
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL styled iteration, compare, and reference functions.
-
- /// Prefix reverse.
- ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &operator++ (void);
-
- /// Postfix reverse.
- ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> operator++ (int);
-
- /// Prefix advance.
- ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &operator-- (void);
-
- /// Postfix advance.
- ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> operator-- (int);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-/**
- * @class ACE_Hash_Map_Const_Reverse_Iterator_Ex
- *
- * @brief Const reverse iterator for the ACE_Hash_Map_Manager_Ex.
- *
- * This class does not perform any internal locking of the
- * ACE_Hash_Map_Manager_Ex it is iterating upon since locking is
- * inherently inefficient and/or error-prone within an STL-style
- * iterator. If you require locking, you can explicitly use an
- * ACE_Guard or ACE_Read_Guard on the ACE_Hash_Map_Manager_Ex's
- * internal lock, which is accessible via its <mutex> method.
- */
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Map_Const_Reverse_Iterator_Ex : public ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-{
-public:
- // = STL-style traits/typedefs
- typedef typename ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::container_type
- container_type;
-
- // = std::iterator_traits typedefs
- typedef std::bidirectional_iterator_tag iterator_category;
- typedef typename container_type::value_type value_type;
- typedef typename container_type::reference reference;
- typedef typename container_type::pointer pointer;
- typedef typename container_type::difference_type difference_type;
-
- // = Initialization method.
- ACE_Hash_Map_Const_Reverse_Iterator_Ex (const ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- bool head = false);
-
- // = Iteration methods.
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL styled iteration, compare, and reference functions.
-
- /// Prefix reverse.
- ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &operator++ (void);
-
- /// Postfix reverse.
- ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> operator++ (int);
-
- /// Prefix advance.
- ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &operator-- (void);
-
- /// Postfix advance.
- ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> operator-- (int);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-/**
- * @class ACE_Hash_Map_Manager
- *
- * @brief Wrapper for backward compatibility.
- *
- * This implementation of a map uses a hash table. This class
- * expects that the <EXT_ID> contains a method called <hash>.
- * In addition, the <EXT_ID> must support <operator==>. Both of
- * these constraints can be alleviated via template
- * specialization, as shown in the $ACE_ROOT/tests/Conn_Test.cpp
- * test.
- *
- * <b> Requirements and Performance Characteristics</b>
- * - Internal Structure
- * Hash Table
- * - Duplicates allowed?
- * No
- * - Random access allowed?
- * Yes
- * - Search speed
- * O(1)
- * - Insert/replace speed
- * O(1), can be longer if the hash map has to resize
- * - Iterator still valid after change to container?
- * Yes
- * - Frees memory for removed elements?
- * Yes
- * - Items inserted by
- * Value
- * - Requirements for key type
- * -# Default constructor
- * -# Copy constructor
- * -# operator=
- * -# operator==
- * - Requirements for object type
- * -# Default constructor
- * -# Copy constructor
- * -# operator=
- * -# operator<
- */
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-class ACE_Hash_Map_Manager : public ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>
-{
-public:
-
- /**
- * Initialize a @c Hash_Map_Manager with default size elements.
- * @param table_alloc is a pointer to a memory allocator used for
- * table_, so it should supply size*sizeof (ACE_Hash_Map_Entry<EXT_ID, INT_ID>).
- * @param entry_alloc is a pointer to an additional allocator for
- * entries, so it should be able to allocate 'size' / chunks
- * of sizeof(ACE_Hash_Map_Entry<EXT_ID, INT_ID>) bytes each.
- * If @c table_alloc is 0 it defaults to @c ACE_Allocator::instance().
- * If @c entry_alloc is 0 then it defaults to the same allocator as
- * @c table_alloc.
- */
- ACE_Hash_Map_Manager (ACE_Allocator *table_alloc = 0,
- ACE_Allocator *entry_alloc = 0);
-
- /**
- * Initialize a @c Hash_Map_Manager with @c size elements.
- * @param table_alloc is a pointer to a memory allocator used for
- * table_, so it should supply size*sizeof (ACE_Hash_Map_Entry<EXT_ID, INT_ID>).
- * @param entry_alloc is a pointer to an additional allocator for
- * entries, so it should be able to allocate 'size' / chunks
- * of sizeof(ACE_Hash_Map_Entry<EXT_ID, INT_ID>) bytes each.
- * If @c table_alloc is 0 it defaults to @c ACE_Allocator::instance().
- * If @c entry_alloc is 0 then it defaults to the same allocator as
- * @c table_alloc.
- */
- ACE_Hash_Map_Manager (size_t size,
- ACE_Allocator *table_alloc = 0,
- ACE_Allocator *entry_alloc = 0);
-
- // = The following two are necessary for template specialization of
- // ACE_Hash_Map_Manager to work.
- int equal (const EXT_ID &id1, const EXT_ID &id2);
- u_long hash (const EXT_ID &ext_id);
-};
-
-/**
- * @class ACE_Hash_Map_Iterator
- *
- * @brief Wrapper for backward compatibility.
- */
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-class ACE_Hash_Map_Iterator : public ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>
-{
-public:
- // = STL-style traits/typedefs
- typedef typename ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::container_type
- container_type;
-
- typedef typename ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::iterator_category
- iterator_category;
-
- typedef typename ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::value_type
- value_type;
-
- typedef typename ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::reference
- reference;
-
- typedef typename ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::pointer
- pointer;
-
- typedef typename ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::difference_type
- difference_type;
-
- // = Initialization method.
- /// Construct from map
- ACE_Hash_Map_Iterator (ACE_Hash_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> &mm,
- int tail = 0);
-
- /// Construct from base
- ACE_Hash_Map_Iterator (const ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> &base);
-
- /// Assignment from base
- ACE_Hash_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK> &
- operator= (const ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> &base);
-};
-
-/**
- * @class ACE_Hash_Map_Const_Iterator
- *
- * @brief Wrapper for backward compatibility.
- */
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-class ACE_Hash_Map_Const_Iterator : public ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>
-{
-public:
- // = STL-style traits/typedefs
- typedef typename ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::container_type
- container_type;
-
- // = std::iterator_traits typedefs
- typedef typename ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::iterator_category
- iterator_category;
-
- typedef typename ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::value_type
- value_type;
-
- typedef typename ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::reference
- reference;
-
- typedef typename ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::pointer
- pointer;
-
- typedef typename ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::difference_type
- difference_type;
-
- // = Initialization method.
- /// Construct from map
- ACE_Hash_Map_Const_Iterator (const ACE_Hash_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> &mm,
- int tail = 0);
-
- /// Construct from base
- ACE_Hash_Map_Const_Iterator (const ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> &base);
-
- /// Assignment from base
- ACE_Hash_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK> &
- operator= (const ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> &base);
-};
-
-/**
- * @class ACE_Hash_Map_Reverse_Iterator
- *
- * @brief Wrapper for backward compatibility.
- */
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-class ACE_Hash_Map_Reverse_Iterator : public ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>
-{
-public:
- // = STL-style traits/typedefs
- typedef typename ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::container_type
- container_type;
-
- // = std::iterator_traits typedefs
- typedef typename ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::iterator_category
- iterator_category;
-
- typedef typename ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::value_type
- value_type;
-
- typedef typename ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::reference
- reference;
-
- typedef typename ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::pointer
- pointer;
-
- typedef typename ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::difference_type
- difference_type;
-
- // = Initialization method.
- ACE_Hash_Map_Reverse_Iterator (ACE_Hash_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> &mm,
- bool head = false);
-
- /// Construct from base
- ACE_Hash_Map_Reverse_Iterator (const ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> &base);
-
- /// Assignment from base
- ACE_Hash_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK> &
- operator= (const ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> &base);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-# include "ace/Hash_Map_Manager_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Hash_Map_Manager_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Hash_Map_Manager_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_HASH_MAP_MANAGER_T_H */
-
diff --git a/dep/include/ace/Hash_Map_Manager_T.inl b/dep/include/ace/Hash_Map_Manager_T.inl
deleted file mode 100644
index 3b9cea3d3b4..00000000000
--- a/dep/include/ace/Hash_Map_Manager_T.inl
+++ /dev/null
@@ -1,1253 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Hash_Map_Manager_T.inl 81082 2008-03-25 09:09:11Z johnnyw $
-
-#include "ace/Guard_T.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Map_Manager_Ex (size_t size,
- ACE_Allocator *table_alloc,
- ACE_Allocator *entry_alloc)
- : table_allocator_ (table_alloc),
- entry_allocator_ (entry_alloc),
- table_ (0),
- total_size_ (0),
- cur_size_ (0)
-{
- if (this->open (size, table_alloc, entry_alloc) == -1)
- ACE_ERROR ((LM_ERROR, ACE_TEXT ("ACE_Hash_Map_Manager_Ex\n")));
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Map_Manager_Ex (ACE_Allocator *table_alloc,
- ACE_Allocator *entry_alloc)
- : table_allocator_ (table_alloc),
- entry_allocator_ (entry_alloc),
- table_ (0),
- total_size_ (0),
- cur_size_ (0)
-{
- if (this->open (ACE_DEFAULT_MAP_SIZE, table_alloc, entry_alloc) == -1)
- ACE_ERROR ((LM_ERROR, ACE_TEXT ("%p\n"),
- ACE_TEXT ("ACE_Hash_Map_Manager_Ex open")));
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::close (void)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->close_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::unbind_all (void)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->unbind_all_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::~ACE_Hash_Map_Manager_Ex (void)
-{
- this->close ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE size_t
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::current_size (void) const
-{
- return this->cur_size_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE size_t
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::total_size (void) const
-{
- return this->total_size_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE ACE_LOCK &
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::mutex (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Manager_Ex::mutex");
- return this->lock_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE u_long
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::hash (const EXT_ID &ext_id)
-{
- return this->hash_key_ (ext_id);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::equal (const EXT_ID &id1,
- const EXT_ID &id2)
-{
- return this->compare_keys_ (id1, id2);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::bind_i (const EXT_ID &ext_id,
- const INT_ID &int_id)
-{
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *temp;
-
- return this->bind_i (ext_id, int_id, temp);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::bind (const EXT_ID &ext_id,
- const INT_ID &int_id)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->bind_i (ext_id, int_id);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::bind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->bind_i (ext_id, int_id, entry);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::trybind_i (const EXT_ID &ext_id,
- INT_ID &int_id)
-{
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *temp;
-
- int result = this->trybind_i (ext_id, int_id, temp);
- if (result == 1)
- int_id = temp->int_id_;
- return result;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::trybind (const EXT_ID &ext_id,
- INT_ID &int_id)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->trybind_i (ext_id, int_id);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::trybind (const EXT_ID &ext_id,
- INT_ID &int_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->trybind_i (ext_id, int_id, entry);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::unbind_i (const EXT_ID &ext_id)
-{
- INT_ID int_id;
-
- return this->unbind_i (ext_id, int_id);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::unbind (const EXT_ID &ext_id,
- INT_ID &int_id)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->unbind_i (ext_id, int_id);
-}
-
-template <class EXT_ID,
- class INT_ID,
- class HASH_KEY,
- class COMPARE_KEYS,
- class ACE_LOCK>
-ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID,
- INT_ID,
- HASH_KEY,
- COMPARE_KEYS,
- ACE_LOCK>::unbind (
- typename ACE_Hash_Map_Manager_Ex<EXT_ID,
- INT_ID,
- HASH_KEY,
- COMPARE_KEYS,
- ACE_LOCK>::iterator pos)
-{
- return this->unbind (&(*pos));
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::unbind (const EXT_ID &ext_id)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->unbind_i (ext_id) == -1 ? -1 : 0;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::unbind (ACE_Hash_Map_Entry<EXT_ID, INT_ID> *entry)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->unbind_i (entry) == -1 ? -1 : 0;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::find_i (const EXT_ID &ext_id,
- INT_ID &int_id)
-{
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *entry;
-
- size_t dummy;
- if (this->shared_find (ext_id, entry, dummy) == -1)
- return -1;
- else
- {
- int_id = entry->int_id_;
- return 0;
- }
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::find_i (const EXT_ID &ext_id)
-{
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *entry;
-
- size_t dummy;
- return this->shared_find (ext_id, entry, dummy);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::find (const EXT_ID &ext_id,
- INT_ID &int_id) const
-{
- ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *nc_this =
- const_cast <ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *>
- (this);
-
- ACE_READ_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return nc_this->find_i (ext_id, int_id);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::find (const EXT_ID &ext_id) const
-{
- ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *nc_this =
- const_cast <ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *>
- (this);
-
- ACE_READ_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return nc_this->find_i (ext_id);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::find_i (const EXT_ID &ext_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry)
-{
- size_t dummy;
- return this->shared_find (ext_id, entry, dummy);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::find (const EXT_ID &ext_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry) const
-{
- ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *nc_this =
- const_cast <ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *>
- (this);
-
- ACE_READ_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return nc_this->find_i (ext_id, entry);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rebind_i (const EXT_ID &ext_id,
- const INT_ID &int_id)
-{
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *node;
-
- return this->rebind_i (ext_id,
- int_id,
- node);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rebind_i (const EXT_ID &ext_id,
- const INT_ID &int_id,
- INT_ID &old_int_id)
-{
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *node;
-
- return this->rebind_i (ext_id,
- int_id,
- old_int_id,
- node);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rebind_i (const EXT_ID &ext_id,
- const INT_ID &int_id,
- EXT_ID &old_ext_id,
- INT_ID &old_int_id)
-{
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *node;
-
- return this->rebind_i (ext_id,
- int_id,
- old_ext_id,
- old_int_id,
- node);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const INT_ID &int_id)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->rebind_i (ext_id, int_id);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->rebind_i (ext_id, int_id, entry);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- INT_ID &old_int_id)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->rebind_i (ext_id, int_id, old_int_id);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- INT_ID &old_int_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->rebind_i (ext_id, int_id, old_int_id, entry);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- EXT_ID &old_ext_id,
- INT_ID &old_int_id)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->rebind_i (ext_id, int_id, old_ext_id, old_int_id);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- EXT_ID &old_ext_id,
- INT_ID &old_int_id,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->rebind_i (ext_id, int_id, old_ext_id, old_int_id, entry);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-typename ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::iterator
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::begin (void)
-{
- return iterator (*this);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-typename ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::iterator
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::end (void)
-{
- return iterator (*this, 1);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-typename ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::const_iterator
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::begin (void) const
-{
- return const_iterator (*this);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-typename ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::const_iterator
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::end (void) const
-{
- return const_iterator (*this, 1);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-typename ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::reverse_iterator
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rbegin (void)
-{
- return reverse_iterator (*this);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-typename ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::reverse_iterator
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rend (void)
-{
- return reverse_iterator (*this, 1);
-}
-
- template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
- typename ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::const_reverse_iterator
- ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rbegin (void) const
- {
- return const_reverse_iterator (*this);
- }
-
- template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
- typename ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::const_reverse_iterator
- ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rend (void) const
- {
- return const_reverse_iterator (*this, 1);
- }
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Entry<EXT_ID, INT_ID> *
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::table (void)
-{
- return this->table_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-size_t
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::cur_size (void) const
-{
- return this->cur_size_;
-}
-
-template <class EXT_ID,
- class INT_ID,
- class HASH_KEY,
- class COMPARE_KEYS,
- class ACE_LOCK>
-ACE_INLINE void
-ACE_Hash_Map_Manager_Ex<EXT_ID,
- INT_ID,
- HASH_KEY,
- COMPARE_KEYS,
- ACE_LOCK>::find (
- EXT_ID const &ext_id,
- typename ACE_Hash_Map_Manager_Ex<EXT_ID,
- INT_ID,
- HASH_KEY,
- COMPARE_KEYS,
- ACE_LOCK>::iterator & pos) const
-{
- ENTRY * entry = 0;
- size_t index = 0;
-
- ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *nc_this =
- const_cast <ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *>
- (this);
-
- ACE_READ_GUARD (ACE_LOCK, ace_mon, this->lock_);
-
- if (nc_this->shared_find (ext_id, entry, index) != -1)
- pos = iterator (*nc_this, entry, index);
- else
- pos = nc_this->end ();
-}
-
-// ---------------------------------------------------------------------
-
-template <class EXT_ID,
- class INT_ID,
- class HASH_KEY,
- class COMPARE_KEYS,
- class ACE_LOCK>
-ACE_INLINE
-ACE_Hash_Map_Iterator_Base_Ex<EXT_ID,
- INT_ID,
- HASH_KEY,
- COMPARE_KEYS,
- ACE_LOCK>::ACE_Hash_Map_Iterator_Base_Ex (
- ACE_Hash_Map_Manager_Ex<EXT_ID,
- INT_ID,
- HASH_KEY,
- COMPARE_KEYS,
- ACE_LOCK> &mm,
- bool head)
- : map_man_ (&mm),
- index_ (head ? -1 : (ssize_t) mm.total_size_),
- next_ (0)
-{
- if (mm.table_ != 0)
- this->next_ = &mm.table_[head ? 0 : mm.total_size_ - 1];
-}
-
-template <class EXT_ID,
- class INT_ID,
- class HASH_KEY,
- class COMPARE_KEYS,
- class ACE_LOCK>
-ACE_INLINE
-ACE_Hash_Map_Iterator_Base_Ex<EXT_ID,
- INT_ID,
- HASH_KEY,
- COMPARE_KEYS,
- ACE_LOCK>::ACE_Hash_Map_Iterator_Base_Ex (
- ACE_Hash_Map_Manager_Ex<EXT_ID,
- INT_ID,
- HASH_KEY,
- COMPARE_KEYS,
- ACE_LOCK> & mm,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> * entry,
- size_t index)
- : map_man_ (&mm)
- , index_ (static_cast<ssize_t> (index))
- , next_ (entry)
-{
-}
-
-template <class EXT_ID,
- class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::next (ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry) const
-{
- ACE_TRACE ("ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::next");
-
- if (this->map_man_->table_ != 0
- && this->index_ < static_cast<ssize_t> (this->map_man_->total_size_)
- && this->index_ >= 0
- && this->next_ != &this->map_man_->table_[this->index_])
- {
- entry = this->next_;
- return 1;
- }
- else
- return 0;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::done (void) const
-{
- ACE_TRACE ("ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::done");
-
- return this->map_man_->table_ == 0
- || this->index_ >= static_cast<ssize_t> (this->map_man_->total_size_)
- || this->index_ < 0;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Entry<EXT_ID, INT_ID> &
-ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator* (void) const
-{
- ACE_TRACE ("ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator*");
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *retv = 0;
-
- int result = this->next (retv);
-
- ACE_UNUSED_ARG (result);
- ACE_ASSERT (result != 0);
-
- return *retv;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Entry<EXT_ID, INT_ID> *
-ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-> (void) const
-{
- ACE_TRACE ("ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator->");
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *retv = 0;
-
- int result = this->next (retv);
-
- ACE_UNUSED_ARG (result);
- ACE_ASSERT (result != 0);
-
- return retv;
-}
-
-// Returns the reference to the hash_map_manager_ex that is being
-// iterated over.
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>&
-ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::map (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::map");
- return *this->map_man_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE bool
-ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator== (const ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &rhs) const
-{
- ACE_TRACE ("ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator==");
- return this->map_man_ == rhs.map_man_
- && this->index_ == rhs.index_
- && this->next_ == rhs.next_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE bool
-ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator!= (const ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &rhs) const
-{
- ACE_TRACE ("ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator!=");
- return this->next_ != rhs.next_
- || this->index_ != rhs.index_
- || this->map_man_ != rhs.map_man_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Map_Const_Iterator_Base_Ex (const ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- bool head)
- : map_man_ (&mm),
- index_ (head ? -1 : (ssize_t) mm.total_size_),
- next_ (0)
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Map_Const_Iterator_Base_Ex");
-
- if (mm.table_ != 0)
- this->next_ = &mm.table_[head ? 0 : mm.total_size_ - 1];
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::next (ACE_Hash_Map_Entry<EXT_ID, INT_ID> *&entry) const
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::next");
-
- if (this->map_man_->table_ != 0
- && this->index_ < (ssize_t) this->map_man_->total_size_
- && this->index_ >= 0
- && this->next_ != &this->map_man_->table_[this->index_])
- {
- entry = this->next_;
- return 1;
- }
- else
- return 0;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::done (void) const
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::done");
-
- return this->map_man_->table_ == 0
- || this->index_ >= (ssize_t) this->map_man_->total_size_
- || this->index_ < 0;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Entry<EXT_ID, INT_ID> &
-ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator* (void) const
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator*");
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *retv = 0;
-
- int result = this->next (retv);
-
- ACE_UNUSED_ARG (result);
- ACE_ASSERT (result != 0);
-
- return *retv;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Entry<EXT_ID, INT_ID> *
-ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-> (void) const
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator->");
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> *retv = 0;
-
- int result = this->next (retv);
-
- ACE_UNUSED_ARG (result);
- ACE_ASSERT (result != 0);
-
- return retv;
-}
-
-// Returns the reference to the hash_map_manager_ex that is being
-// iterated over.
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-const ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>&
-ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::map (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::map");
- return *this->map_man_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE bool
-ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator== (const ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &rhs) const
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator==");
- return this->map_man_ == rhs.map_man_
- && this->index_ == rhs.index_
- && this->next_ == rhs.next_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE bool
-ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator!= (const ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &rhs) const
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator!=");
- return this->next_ != rhs.next_
- || this->index_ != rhs.index_
- || this->map_man_ != rhs.map_man_;
-}
-
-ACE_ALLOC_HOOK_DEFINE(ACE_Hash_Map_Iterator_Ex)
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE void
-ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::dump");
-
- this->dump_i ();
-#endif /* ACE_HAS_DUMP */
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Map_Iterator_Ex (ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- int tail)
- : ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> (mm,
- tail == 0 ? 1 : 0)
-{
- ACE_TRACE ("ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Map_Iterator_Ex");
- if (tail == 0)
- this->forward_i ();
-}
-
-template <class EXT_ID,
- class INT_ID,
- class HASH_KEY,
- class COMPARE_KEYS,
- class ACE_LOCK>
-ACE_INLINE
-ACE_Hash_Map_Iterator_Ex<EXT_ID,
- INT_ID,
- HASH_KEY,
- COMPARE_KEYS,
- ACE_LOCK>::ACE_Hash_Map_Iterator_Ex (
- ACE_Hash_Map_Manager_Ex<EXT_ID,
- INT_ID,
- HASH_KEY,
- COMPARE_KEYS,
- ACE_LOCK> & mm,
- ACE_Hash_Map_Entry<EXT_ID, INT_ID> * entry,
- size_t index)
- : ACE_Hash_Map_Iterator_Base_Ex<EXT_ID,
- INT_ID,
- HASH_KEY,
- COMPARE_KEYS,
- ACE_LOCK> (mm,
- entry,
- index)
-{
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::advance (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::advance");
- return this->forward_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (void)");
-
- this->forward_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (int)
-{
- ACE_TRACE ("ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (int)");
-
- ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> retv (*this);
- ++*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (void)");
-
- this->reverse_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (int)
-{
- ACE_TRACE ("ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (int)");
-
- ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> retv (*this);
- --*this;
- return retv;
-}
-
-ACE_ALLOC_HOOK_DEFINE(ACE_Hash_Map_Const_Iterator_Ex)
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE void
-ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::dump");
-
- this->dump_i ();
-#endif /* ACE_HAS_DUMP */
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Map_Const_Iterator_Ex (const ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- int tail)
- : ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> (mm,
- tail == 0 ? 1 : 0)
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Map_Const_Iterator_Ex");
- if (tail == 0)
- this->forward_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::advance (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::advance");
- return this->forward_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (void)");
-
- this->forward_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (int)
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (int)");
-
- ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> retv (*this);
- ++*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (void)");
-
- this->reverse_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (int)
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (int)");
-
- ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> retv (*this);
- --*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Map_Bucket_Iterator (ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- const EXT_ID &ext_id,
- int tail)
- : map_man_ (&mm)
-{
- ACE_TRACE ("ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Map_Bucket_Iterator");
-
- this->index_ = this->map_man_->hash (ext_id) % this->map_man_->total_size_;
- this->next_ = &this->map_man_->table_[this->index_];
-
- if (tail == 0)
- this->forward_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (void)");
-
- this->forward_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (int)
-{
- ACE_TRACE ("ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (int)");
-
- ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> retv (*this);
- ++*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (void)");
-
- this->reverse_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (int)
-{
- ACE_TRACE ("ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (int)");
-
- ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> retv (*this);
- --*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> int
-ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::forward_i (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::forward_i");
-
- this->next_ = this->next_->next_;
- return this->next_ != &this->map_man_->table_[this->index_];
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> int
-ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::reverse_i (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::reverse_i");
-
- this->next_ = this->next_->prev_;
- return this->next_ != &this->map_man_->table_[this->index_];
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Entry<EXT_ID, INT_ID> &
-ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator* (void) const
-{
- ACE_TRACE ("ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator*");
-
- return *this->next_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Entry<EXT_ID, INT_ID> *
-ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-> (void) const
-{
- ACE_TRACE ("ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator->");
-
- return this->next_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::map (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::map");
- return *this->map_man_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE bool
-ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator== (const ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &rhs) const
-{
- ACE_TRACE ("ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator==");
- return this->map_man_ == rhs.map_man_
- && this->index_ == rhs.index_
- && this->next_ == rhs.next_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE bool
-ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator!= (const ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &rhs) const
-{
- ACE_TRACE ("ACE_Hash_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator!=");
- return this->next_ != rhs.next_
- || this->index_ != rhs.index_
- || this->map_man_ != rhs.map_man_;
-}
-
-ACE_ALLOC_HOOK_DEFINE(ACE_Hash_Map_Reverse_Iterator_Ex)
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE void
-ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::dump");
-
- this->dump_i ();
-#endif /* ACE_HAS_DUMP */
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Map_Reverse_Iterator_Ex (ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm, bool head)
- : ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> (mm, head)
-{
- ACE_TRACE ("ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Map_Reverse_Iterator_Ex");
- if (!head)
- this->reverse_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::advance (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::advance");
- return this->reverse_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (void)");
-
- this->reverse_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (int)
-{
- ACE_TRACE ("ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (int)");
-
- ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> retv (*this);
- ++*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (void)");
-
- this->forward_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (int)
-{
- ACE_TRACE ("ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (int)");
-
- ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> retv (*this);
- --*this;
- return retv;
-}
-
-ACE_ALLOC_HOOK_DEFINE(ACE_Hash_Map_Const_Reverse_Iterator_Ex)
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE void
-ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::dump");
-
- this->dump_i ();
-#endif /* ACE_HAS_DUMP */
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Map_Const_Reverse_Iterator_Ex (const ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm, bool head)
- : ACE_Hash_Map_Const_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> (mm, head)
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Map_Const_Reverse_Iterator_Ex");
- if (!head)
- this->reverse_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::advance (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::advance");
- return this->reverse_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (void)");
-
- this->reverse_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (int)
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (int)");
-
- ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> retv (*this);
- ++*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (void)
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (void)");
-
- this->forward_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (int)
-{
- ACE_TRACE ("ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (int)");
-
- ACE_Hash_Map_Const_Reverse_Iterator_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> retv (*this);
- --*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-ACE_Hash_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::ACE_Hash_Map_Manager (ACE_Allocator *table_alloc,
- ACE_Allocator *entry_alloc)
- : ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> (table_alloc,
- entry_alloc)
-{
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-ACE_Hash_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::ACE_Hash_Map_Manager (size_t size,
- ACE_Allocator *table_alloc,
- ACE_Allocator *entry_alloc)
- : ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> (size,
- table_alloc,
- entry_alloc)
-{
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> int
-ACE_Hash_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::equal (const EXT_ID &id1, const EXT_ID &id2)
-{
- return ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::equal (id1, id2);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> u_long
-ACE_Hash_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::hash (const EXT_ID &ext_id)
-{
- return ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK>::hash (ext_id);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-ACE_Hash_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK>::ACE_Hash_Map_Iterator (ACE_Hash_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> &mm,
- int tail)
- : ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> (mm,
- tail)
-{
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-ACE_Hash_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK>::ACE_Hash_Map_Iterator (const ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> &base)
- : ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> (base)
-{
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_Hash_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK> &
-ACE_Hash_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK>::operator= (const ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> &rhs)
-{
- if (this != &rhs)
- {
- ACE_Hash_Map_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> &base = *this;
-
- base = rhs;
- }
-
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-ACE_Hash_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK>::ACE_Hash_Map_Const_Iterator (const ACE_Hash_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> &mm,
- int tail)
- : ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> (mm,
- tail)
-{
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-ACE_Hash_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK>::ACE_Hash_Map_Const_Iterator (const ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> &base)
- : ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> (base)
-{
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_Hash_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK> &
-ACE_Hash_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK>::operator= (const ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> &rhs)
-{
- if (this != &rhs)
- {
- ACE_Hash_Map_Const_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> &base = *this;
-
- base = rhs;
- }
-
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-ACE_Hash_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK>::ACE_Hash_Map_Reverse_Iterator (ACE_Hash_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> &mm,
- bool head)
- : ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> (mm,
- head)
-{
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-ACE_Hash_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK>::ACE_Hash_Map_Reverse_Iterator (const ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> &base)
- : ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> (base)
-{
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_Hash_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK> &
-ACE_Hash_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK>::operator= (const ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> &rhs)
-{
- ACE_Hash_Map_Reverse_Iterator_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_LOCK> &base = *this;
-
- base = rhs;
-
- return *this;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Hash_Map_With_Allocator_T.h b/dep/include/ace/Hash_Map_With_Allocator_T.h
deleted file mode 100644
index 2bc68aede25..00000000000
--- a/dep/include/ace/Hash_Map_With_Allocator_T.h
+++ /dev/null
@@ -1,112 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Hash_Map_With_Allocator_T.h
- *
- * $Id: Hash_Map_With_Allocator_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Marina Spivak <marina@cs.wustl.edu>
- * @author Irfan Pyarali <irfan@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_HASH_MAP_WITH_ALLOCATOR_T_H
-#define ACE_HASH_MAP_WITH_ALLOCATOR_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Hash_Map_Manager_T.h"
-#include "ace/Null_Mutex.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Hash_Map_With_Allocator
- *
- * @brief This class is a thin wrapper around ACE_Hash_Map_Manager,
- * which comes handy when ACE_Hash_Map_Manager is to be used with a
- * non-nil ACE_Allocator. This wrapper insures that the appropriate
- * allocator is in place for every operation that accesses or
- * updates the hash map.
- *
- * If we use ACE_Hash_Map_Manager with a shared memory allocator
- * (or memory-mapped file allocator, for example), the allocator
- * pointer used by ACE_Hash_Map_Manager gets stored with it, in
- * shared memory (or memory-mapped file). Naturally, this will
- * cause horrible problems, since only the first process to set
- * that pointer will be guaranteed the address of the allocator
- * is meaningful! That is why we need this wrapper, which
- * insures that appropriate allocator pointer is in place for
- * each call.
- *
- * At some point it would be a good idea to update this class to
- * use the new "two allocator" technique provided by @c
- * ACE_Hash_Map_Manager_Ex.
- */
-template <class EXT_ID, class INT_ID>
-class ACE_Hash_Map_With_Allocator :
- public ACE_Hash_Map_Manager_Ex<EXT_ID, INT_ID, ACE_Hash<EXT_ID>, ACE_Equal_To<EXT_ID>, ACE_Null_Mutex>
-{
-public:
- /// Constructor.
- ACE_Hash_Map_With_Allocator (ACE_Allocator *alloc);
-
- /// Constructor that specifies hash table size.
- ACE_Hash_Map_With_Allocator (size_t size,
- ACE_Allocator *alloc);
-
- // = The following methods are Proxies to the corresponding methods
- // in ACE_Hash_Map_Manager. Each method sets the allocator to
- // the one specified by the invoking entity, and then calls the
- // corresponding method in ACE_Hash_Map_Manager to do the
- // actual work.
-
- int bind (const EXT_ID &,
- const INT_ID &,
- ACE_Allocator *alloc);
-
- int unbind (const EXT_ID &,
- INT_ID &,
- ACE_Allocator *alloc);
-
- int unbind (const EXT_ID &,
- ACE_Allocator *alloc);
-
- int rebind (const EXT_ID &,
- const INT_ID &,
- EXT_ID &,
- INT_ID &,
- ACE_Allocator *alloc);
-
- int find (const EXT_ID &,
- INT_ID &,
- ACE_Allocator *alloc);
-
- /// Returns 0 if the @a ext_id is in the mapping, otherwise -1.
- int find (const EXT_ID &ext_id,
- ACE_Allocator *alloc);
-
- int close (ACE_Allocator *alloc);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Hash_Map_With_Allocator_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Hash_Map_With_Allocator_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Hash_Map_With_Allocator_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_HASH_MAP_WITH_ALLOCATOR_T_H */
-
diff --git a/dep/include/ace/Hash_Map_With_Allocator_T.inl b/dep/include/ace/Hash_Map_With_Allocator_T.inl
deleted file mode 100644
index 99a603cfa9b..00000000000
--- a/dep/include/ace/Hash_Map_With_Allocator_T.inl
+++ /dev/null
@@ -1,82 +0,0 @@
-// -*- C++ -*-
-
-// $Id: Hash_Map_With_Allocator_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class EXT_ID, class INT_ID> ACE_INLINE int
-ACE_Hash_Map_With_Allocator<EXT_ID, INT_ID>::close (ACE_Allocator *alloc)
-{
- ACE_TRACE ("ACE_Hash_Map_With_Allocator<EXT_ID, INT_ID>::close");
- this->table_allocator_ = alloc;
- this->entry_allocator_ = alloc;
- return this->close_i ();
-}
-
-template <class EXT_ID, class INT_ID> ACE_INLINE int
-ACE_Hash_Map_With_Allocator<EXT_ID, INT_ID>::bind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- ACE_Allocator *alloc)
-{
- ACE_TRACE ("ACE_Hash_Map_With_Allocator<EXT_ID, INT_ID>::bind");
- this->table_allocator_ = alloc;
- this->entry_allocator_ = alloc;
- return this->bind_i (ext_id, int_id);
-}
-
-template <class EXT_ID, class INT_ID> ACE_INLINE int
-ACE_Hash_Map_With_Allocator<EXT_ID, INT_ID>::unbind (const EXT_ID &ext_id,
- INT_ID &int_id,
- ACE_Allocator *alloc)
-{
- ACE_TRACE ("ACE_Hash_Map_With_Allocator<EXT_ID, INT_ID>::unbind");
- this->table_allocator_ = alloc;
- this->entry_allocator_ = alloc;
- return this->unbind_i (ext_id, int_id);
-}
-
-template <class EXT_ID, class INT_ID> ACE_INLINE int
-ACE_Hash_Map_With_Allocator<EXT_ID, INT_ID>::unbind (const EXT_ID &ext_id,
- ACE_Allocator *alloc)
-{
- ACE_TRACE ("ACE_Hash_Map_With_Allocator<EXT_ID>::unbind");
- this->table_allocator_ = alloc;
- this->entry_allocator_ = alloc;
- return this->unbind_i (ext_id);
-}
-
-template <class EXT_ID, class INT_ID> ACE_INLINE int
-ACE_Hash_Map_With_Allocator<EXT_ID, INT_ID>::rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- EXT_ID &old_ext_id,
- INT_ID &old_int_id,
- ACE_Allocator *alloc)
-{
- ACE_TRACE ("ACE_Hash_Map_With_Allocator<EXT_ID, INT_ID>::rebind");
- this->table_allocator_ = alloc;
- this->entry_allocator_ = alloc;
- return this->rebind_i (ext_id, int_id, old_ext_id, old_int_id);
-}
-
-template <class EXT_ID, class INT_ID> ACE_INLINE int
-ACE_Hash_Map_With_Allocator<EXT_ID, INT_ID>::find (const EXT_ID &ext_id,
- INT_ID &int_id,
- ACE_Allocator *alloc)
-{
- ACE_TRACE ("ACE_Hash_Map_With_Allocator<EXT_ID, INT_ID>::find");
- this->table_allocator_ = alloc;
- this->entry_allocator_ = alloc;
- return this->find_i (ext_id, int_id);
-}
-
-template <class EXT_ID, class INT_ID> ACE_INLINE int
-ACE_Hash_Map_With_Allocator<EXT_ID, INT_ID>::find (const EXT_ID &ext_id,
- ACE_Allocator *alloc)
-{
- ACE_TRACE ("ACE_Hash_Map_With_Allocator<EXT_ID, INT_ID>::find");
- this->table_allocator_ = alloc;
- this->entry_allocator_ = alloc;
- return this->find_i (ext_id);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Hash_Multi_Map_Manager_T.h b/dep/include/ace/Hash_Multi_Map_Manager_T.h
deleted file mode 100644
index 1719819213d..00000000000
--- a/dep/include/ace/Hash_Multi_Map_Manager_T.h
+++ /dev/null
@@ -1,968 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Hash_Multi_Map_Manager_T.h
- *
- * $Id: Hash_Multi_Map_Manager_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * The code in Hash_Multi_Map_Manager_T.* was based on the code in
- * Hash_Map_Manager_T.*.
- *
- * ACE_Hash_Multi_Map_Manager maps a key type to more than one value types.
- * The template takes the key and value types as parameters. The bind and
- * unbind operations can take a key and the value or the set of the values that
- * is to be associated with that key. The find operation can take a key or a
- * key and the value that is associated with the key.
- *
- * ACE_Hash_Multi_Map_Manager uses @c ACE_Unbounded_Set to store differet values
- * with the same key.
- *
- * @author Shanshan Jiang <shanshan.jiang@vanderbilt.edu>
- */
-//=============================================================================
-
-#ifndef ACE_HASH_MULTI_MAP_MANAGER_T_H
-#define ACE_HASH_MULTI_MAP_MANAGER_T_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Default_Constants.h"
-#include "ace/Functor_T.h"
-#include "ace/Log_Msg.h"
-
-#include "ace/Unbounded_Set.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Hash_Multi_Map_Entry
- *
- * @brief Define an entry in the hash table.
- */
-template <class EXT_ID, class INT_ID>
-class ACE_Hash_Multi_Map_Entry
-{
-public:
- friend class ACE_Unbounded_Set<INT_ID>;
-
- typedef ACE_Unbounded_Set<INT_ID> VALUE_SET;
- typedef ACE_Unbounded_Set_Iterator<INT_ID> VALUE_SET_ITERATOR;
-
- // = Initialization and termination methods.
- /// Constructor.
- ACE_Hash_Multi_Map_Entry (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *next = 0,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *prev = 0);
-
- /// Constructor.
- ACE_Hash_Multi_Map_Entry (ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *next,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *prev);
-
- # if ! defined (ACE_HAS_BROKEN_NOOP_DTORS)
- /// Destructor.
- ~ACE_Hash_Multi_Map_Entry (void);
- #endif /* ! defined (ACE_HAS_BROKEN_NOOP_DTORS) */
-
- /// Key accessor.
- EXT_ID& key (void);
-
- /// Item accessor.
- ACE_Unbounded_Set<INT_ID>& item (void);
-
- /// Key used to look up an entry.
- /// @deprecated Use key()
- EXT_ID ext_id_;
-
- /// The contents of the entry itself.
- /// @deprecated Use item()
- ACE_Unbounded_Set<INT_ID> int_id_set_;
-
- /// Pointer to the next item in the bucket of overflow nodes.
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *next_;
-
- /// Pointer to the prev item in the bucket of overflow nodes.
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *prev_;
-
- /// Dump the state of an object.
- void dump (void) const;
-};
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Multi_Map_Iterator_Base;
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Multi_Map_Const_Iterator_Base;
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Multi_Map_Iterator;
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Multi_Map_Const_Iterator;
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Multi_Map_Reverse_Iterator;
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Multi_Map_Bucket_Iterator;
-
-// Forward decl.
-class ACE_Allocator;
-
-/**
- * @class ACE_Hash_Multi_Map_Manager
- *
- * @brief Define a multi-map abstraction that efficiently associates the keys
- * with their different values.
- *
- * This implementation of a multi-map uses a hash table. Key hashing
- * is achieved through the @c HASH_KEY object and key comparison is
- * achieved through the @c COMPARE_KEYS object.
- * This class uses an @c ACE_Allocator to allocate memory. The
- * user can make this a persistent class by providing an
- * @c ACE_Allocator with a persistable memory pool.
- */
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Multi_Map_Manager
-{
-public:
- friend class ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>;
- friend class ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>;
- friend class ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>;
- friend class ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>;
- friend class ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>;
- friend class ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>;
-
- typedef EXT_ID
- KEY;
- typedef INT_ID
- VALUE;
- typedef ACE_LOCK lock_type;
- typedef ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID>
- ENTRY;
-
- // = ACE-style iterator typedefs.
- typedef ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
- ITERATOR;
- typedef ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
- CONST_ITERATOR;
- typedef ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
- REVERSE_ITERATOR;
-
- // = STL-style iterator typedefs.
- typedef ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
- iterator;
- typedef ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
- const_iterator;
- typedef ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
- reverse_iterator;
-
- // = Initialization and termination methods.
-
- /**
- * Initialize a @c Hash_Multi_Map_Manager with default size elements.
- * @param table_alloc is a pointer to a memory allocator used for
- * table_, so it should supply size*sizeof (
- * ACE_Hash_Multi_Map_Entry<@c EXT_ID, @c INT_ID>).
- * @param entry_alloc is a pointer to an additional allocator for
- * entries, so it should be able to allocate 'size' / chunks
- * of sizeof (ACE_Hash_Multi_Map_Entry<@c EXT_ID, @c INT_ID>) bytes
- * each.
- * If @a table_alloc is 0 it defaults to @c ACE_Allocator::instance().
- * If @a entry_alloc is 0 then it defaults to the same allocator as
- * @a table_alloc.
- */
- ACE_Hash_Multi_Map_Manager (ACE_Allocator *table_alloc = 0,
- ACE_Allocator *entry_alloc = 0);
-
- /**
- * Initialize a @c Hash_Multi_Map_Manager with @a size elements.
- * @param size is the number of elements in a Hash_Multi_Map_Manager.
- * @param table_alloc is a pointer to a memory allocator used for
- * table_, so it should supply size*sizeof (
- * ACE_Hash_Multi_Map_Entry<@c EXT_ID, <@c INT_ID>).
- * @param entry_alloc is a pointer to an additional allocator for
- * entries, so it should be able to allocate 'size' / chunks
- * of sizeof (ACE_Hash_Multi_Map_Entry<@c EXT_ID, @c INT_ID>) bytes
- * each.
- * If @a table_alloc is 0 it defaults to @c ACE_Allocator::instance().
- * If @a entry_alloc is 0 then it defaults to the same allocator as
- * @a table_alloc.
- */
- ACE_Hash_Multi_Map_Manager (size_t size,
- ACE_Allocator *table_alloc = 0,
- ACE_Allocator *entry_alloc = 0);
-
- /**
- * Initialize a @c Hash_Multi_Map_Manager with @a size elements.
- * @param size is the number of elements in a Hash_Multi_Map_Manager.
- * @param table_alloc is a pointer to a memory allocator used for
- * table_, so it should supply size*sizeof
- * (ACE_Hash_Multi_Map_Entry<@c EXT_ID, <@c INT_ID>).
- * @param entry_alloc is a pointer to an additional allocator for
- * entries, so it should be able to allocate 'size' / chunks
- * of sizeof (ACE_Hash_Multi_Map_Entry<@c EXT_ID, <@c INT_ID>) bytes
- * each.
- * If @a table_alloc is 0 it defaults to @c ACE_Allocator::instance().
- * If @a entry_alloc is 0 then it defaults to the same allocator as
- * @a table_alloc.
- * @return -1 on failure, 0 on success
- */
-
- int open (size_t size = ACE_DEFAULT_MAP_SIZE,
- ACE_Allocator *table_alloc = 0,
- ACE_Allocator *entry_alloc = 0);
-
- /// Close down a Hash_Multi_Map_Manager and release dynamically allocated
- /// resources.
- int close (void);
-
- /// Removes all the entries in Hash_Multi_Map_Manager.
- int unbind_all (void);
-
- /// Cleanup the Hash_Multi_Map_Manager.
- ~ACE_Hash_Multi_Map_Manager (void);
-
- /**
- * Associate @a ext_id with @a int_id. If @a ext_id and @a int_id is already
- * in the map then the @c ACE_Hash_Multi_Map_Entry is not changed. Returns 0 if
- * a new entry is bound successfully, returns 1 if an attempt is made
- * to bind an existing entry, and returns -1 if failures occur.
- */
- int bind (const EXT_ID &ext_id,
- const INT_ID &int_id);
-
- /**
- * Same as a normal bind, except the map entry is also passed back
- * to the caller. The entry in this case will either be the newly
- * created entry, or the existing one.
- */
- int bind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /**
- * Associate @a ext_id with @a int_id_set. If @a ext_id is already in the
- * map then the @c ACE_Hash_Multi_Map_Entry is not changed. Returns 0 if a
- * new entry is bound successfully, returns 1 if an attempt is made
- * to bind an existing entry, and returns -1 if failures occur.
- */
- int bind (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set);
-
- /**
- * Same as a normal bind, except the map entry is also passed back
- * to the caller. The entry in this case will either be the newly
- * created entry, or the existing one.
- */
- int bind (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /**
- * Associate @a ext_id with @a int_id_set if and only if @a ext_id is
- * not in the map. If @a ext_id is already in the map then the @a int_id_set
- * parameter is assigned the existing value in the map. Returns 0
- * if a new entry is bound successfully, returns 1 if an attempt is
- * made to bind an existing entry, and returns -1 if failures occur.
- */
- int trybind (const EXT_ID &ext_id,
- ACE_Unbounded_Set<INT_ID> &int_id_set);
-
- /**
- * Same as a normal trybind, except the map entry is also passed
- * back to the caller. The entry in this case will either be the
- * newly created entry, or the existing one.
- */
- int trybind (const EXT_ID &ext_id,
- ACE_Unbounded_Set<INT_ID> &int_id_set,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /**
- * Reassociate @a ext_id with @a int_id_set. If @a ext_id is not in
- * the map then behaves just like bind. Returns 0 if a new entry is
- * bound successfully, returns 1 if an existing entry was rebound,
- * and returns -1 if failures occur.
- */
- int rebind (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set);
-
- /**
- * Same as a normal rebind, except the map entry is also passed back
- * to the caller. The entry in this case will either be the newly
- * created entry, or the existing one.
- */
- int rebind (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /**
- * Associate @a ext_id with @a int_id_set. If @a ext_id is not in the map
- * then behaves just like bind. Otherwise, store the old value of
- * @a int_id_set into the "out" parameter and rebind the new parameters.
- * Returns 0 if a new entry is bound successfully, returns 1 if an
- * existing entry was rebound, and returns -1 if failures occur.
- */
- int rebind (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- ACE_Unbounded_Set<INT_ID> &old_int_id_set);
-
- /**
- * Same as a normal rebind, except the map entry is also passed back
- * to the caller. The entry in this case will either be the newly
- * created entry, or the existing one.
- */
- int rebind (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- ACE_Unbounded_Set<INT_ID> &old_int_id_set,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /**
- * Associate @a ext_id with @a int_id_set. If @a ext_id is not in the map
- * then behaves just like bind. Otherwise, store the old values
- * of @a ext_id and @a int_id_set into the "out" parameters and rebind the
- * new parameters. This is very useful if you need to have an
- * atomic way of updating @c ACE_Hash_Multi_Map_Entry objects and you also
- * need full control over memory allocation. Returns 0 if a new entry
- * is bound successfully, returns 1 if an existing entry was rebound,
- * and returns -1 if failures occur.
- */
- int rebind (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- EXT_ID &old_ext_id,
- ACE_Unbounded_Set<INT_ID> &old_int_id_set);
-
- /**
- * Same as a normal rebind, except the map entry is also passed back
- * to the caller. The entry in this case will either be the newly
- * created entry, or the existing one.
- */
- int rebind (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- EXT_ID &old_ext_id,
- ACE_Unbounded_Set<INT_ID> &old_int_id_set,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /// Locate @a ext_id and pass out parameter via @a int_id_set.
- /// Return 0 if found, returns -1 if not found.
- int find (const EXT_ID &ext_id,
- ACE_Unbounded_Set<INT_ID> &int_id_set) const;
-
- /// Locate @a ext_id and @a int_id.
- /// Return 0 if found, returns -1 if not found.
- int find (const EXT_ID &ext_id,
- const INT_ID &int_id) const;
-
- /// Returns 0 if the @a ext_id is in the mapping, otherwise -1.
- int find (const EXT_ID &ext_id) const;
-
- /// Locate @a ext_id and pass out parameter via @a entry. If found,
- /// return 0, returns -1 if not found.
- int find (const EXT_ID &ext_id,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry) const;
-
- /**
- * Unbind (remove) the @a ext_id from the map. Don't return the
- * int_id to the caller (this is useful for collections where the
- * int_ids are *not* dynamically allocated...)
- */
- int unbind (const EXT_ID &ext_id);
-
- /// Break any association of @a ext_id. Returns the value of @a int_id_set
- /// in case the caller needs to deallocate memory. Return 0 if the
- /// unbind was successfully, and returns -1 if failures occur.
- int unbind (const EXT_ID &ext_id,
- ACE_Unbounded_Set<INT_ID> &int_id_set);
-
- /// Break any association of @a ext_id and @a int_id. Return 0 if the
- /// unbind was successfully, and returns -1 if failures occur.
- int unbind (const EXT_ID &ext_id,
- const INT_ID &int_id);
-
- /// Remove @a entry from map. Return 0 if the unbind was successfully,
- /// and returns -1 if failures occur.
- int unbind (ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *entry);
-
- /// Returns the current number of @c ACE_Hash_Multi_Map_Entry objects in the
- /// hash table.
- size_t current_size (void) const;
-
- /// Return the size of the array that's used to point to the
- /// linked lists of @c ACE_Hash_Multi_Map_Entry objects in the hash table.
- size_t total_size (void) const;
-
- /**
- * Returns a reference to the underlying @c ACE_LOCK. This makes it
- * possible to acquire the lock explicitly, which can be useful in
- * some cases if you instantiate the @c ACE_Atomic_Op with an
- * @c ACE_Recursive_Mutex or @c ACE_Process_Mutex, or if you need to
- * guard the state of an iterator.
- * @note The right name would be lock, but HP/C++ will choke on that!
- */
- ACE_LOCK &mutex (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL styled iterator factory functions.
-
- /// Return forward iterator.
- ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> begin (void);
- ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> end (void);
-
- /// Return reverse iterator.
- ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> rbegin (void);
- ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> rend (void);
-
-protected:
- // = The following methods do the actual work.
-
- /// Returns 1 if @a id1 == @a id2, else 0. This is defined as a
- /// separate method to facilitate template specialization.
- int equal (const EXT_ID &id1, const EXT_ID &id2);
-
- /// Compute the hash value of the @a ext_id. This is defined as a
- /// separate method to facilitate template specialization.
- u_long hash (const EXT_ID &ext_id);
-
- // = These methods assume locks are held by private methods.
-
- /// Performs bind. Must be called with locks held.
- int bind_i (const EXT_ID &ext_id,
- const INT_ID &int_id);
-
- /// Performs bind. Must be called with locks held.
- int bind_i (const EXT_ID &ext_id,
- const INT_ID &int_id,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /// Performs bind. Must be called with locks held.
- int bind_i (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set);
-
- /// Performs bind. Must be called with locks held.
- int bind_i (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /// Performs trybind. Must be called with locks held.
- int trybind_i (const EXT_ID &ext_id,
- ACE_Unbounded_Set<INT_ID> &int_id_set);
-
- /// Performs trybind. Must be called with locks held.
- int trybind_i (const EXT_ID &ext_id,
- ACE_Unbounded_Set<INT_ID> &int_id_set,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /// Performs rebind. Must be called with locks held.
- int rebind_i (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set);
-
- /// Performs rebind. Must be called with locks held.
- int rebind_i (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /// Performs rebind. Must be called with locks held.
- int rebind_i (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- ACE_Unbounded_Set<INT_ID> &old_int_id);
-
- /// Performs rebind. Must be called with locks held.
- int rebind_i (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- ACE_Unbounded_Set<INT_ID> &old_int_id_set,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /// Performs rebind. Must be called with locks held.
- int rebind_i (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- EXT_ID &old_ext_id,
- ACE_Unbounded_Set<INT_ID> &old_int_id_set);
-
- /// Performs rebind. Must be called with locks held.
- int rebind_i (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- EXT_ID &old_ext_id,
- ACE_Unbounded_Set<INT_ID> &old_int_id_set,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /// Performs a find of @a int_id_set using @a ext_id as the key. Must be
- /// called with locks held.
- int find_i (const EXT_ID &ext_id,
- ACE_Unbounded_Set<INT_ID> &int_id_set);
-
- /// Performs a find of @a ext_id and @a int_id. Must be
- /// called with locks held.
- int find_i (const EXT_ID &ext_id,
- const INT_ID &int_id);
-
- /// Performs a find using @a ext_id as the key. Must be called with
- /// locks held.
- int find_i (const EXT_ID &ext_id);
-
- /// Performs a find using @a ext_id as the key. Must be called with
- /// locks held.
- int find_i (const EXT_ID &ext_id,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry);
-
- /// Performs unbind. Must be called with locks held.
- int unbind_i (const EXT_ID &ext_id,
- ACE_Unbounded_Set<INT_ID> &int_id_set);
-
- /// Performs unbind. Must be called with locks held.
- int unbind_i (const EXT_ID &ext_id,
- const INT_ID &int_id);
-
- /// Performs unbind. Must be called with locks held.
- int unbind_i (const EXT_ID &ext_id);
-
- /// Performs unbind. Must be called with locks held.
- int unbind_i (ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *entry);
-
- /**
- * Resize the map. Must be called with locks held.
- * @note This method should never be called more than once or else all the
- * hashing will get screwed up as the size will change.
- */
- int create_buckets (size_t size);
-
- /// Close down a Map_Manager. Must be called with
- /// locks held.
- int close_i (void);
-
- /// Removes all the entries in Map_Manager. Must be called with
- /// locks held.
- int unbind_all_i (void);
-
- /// Pointer to a memory allocator used for table_, so it should
- /// supply size*sizeof (@c ACE_Hash_Multi_Map_Entry<@c EXT_ID, @c INT_ID>),
- ACE_Allocator *table_allocator_;
-
- /// Addidtional allocator for entries, so it should be able to
- /// allocate 'size' / chunks of sizeof
- /// (@c ACE_Hash_Multi_Map_Entry<@c EXT_ID, @c INT_ID>) bytes each.
- ACE_Allocator *entry_allocator_;
-
- /// Synchronization variable for the MT_SAFE
- /// @c ACE_Hash_Multi_Map_Manager.
- ACE_LOCK lock_;
-
- /// Function object used for hashing keys.
- HASH_KEY hash_key_;
-
- /// Function object used for comparing keys.
- COMPARE_KEYS compare_keys_;
-
-protected:
- /// Returns the @c ACE_Hash_Multi_Map_Entry object that corresponds to
- /// @a ext_id.
- int shared_find (const EXT_ID &ext_id,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry,
- size_t &loc);
-
- /// Accessor of the underlying table
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *table (void);
-
- /// Accessor of the current size attribute
- size_t cur_size (void) const;
-
-private:
- /**
- * Array of the pointers to @c ACE_Hash_Multi_Map_Entry objects, each of
- * which points to an @c ACE_Hash_Multi_Map_Entry that serves as the
- * beginning of a linked list of @c EXT_ID that hash to that bucket.
- */
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *table_;
-
- /// Total size of the hash table.
- size_t total_size_;
-
- /// Current number of entries in the table
- /// @note That this can be larger than total_size_ due to the
- /// bucket chaining).
- size_t cur_size_;
-
- // = Disallow these operations.
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Hash_Multi_Map_Manager (const ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &))
-};
-
-/**
- * @class ACE_Hash_Multi_Map_Iterator_Base
- *
- * @brief Base iterator for the @c ACE_Hash_Multi_Map_Manager
- *
- * This class factors out common code from its templatized
- * subclasses.
- */
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Multi_Map_Iterator_Base
-{
-public:
- // = Initialization method.
- /// Contructor. If @a head != 0, the iterator constructed is positioned
- /// at the head of the map, it is positioned at the end otherwise.
- ACE_Hash_Multi_Map_Iterator_Base (ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- int head);
-
- // = ITERATION methods.
-
- /// Pass back the @a next_entry that hasn't been seen in the Set.
- /// Returns 0 when all items have been seen, else 1.
- int next (ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&next_entry) const;
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Returns a reference to the interal element this object is pointing to.
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID>& operator* (void) const;
-
- /// Returns a pointer to the interal element this object is pointing to.
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID>* operator-> (void) const;
-
- /// Returns reference the @c Hash_Multi_Map_Manager that is being iterated
- /// over.
- ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>& map (void);
-
- /// Check if two iterators point to the same position
- bool operator== (const ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &) const;
- bool operator!= (const ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Move forward by one element in the set. Returns 0 when there's
- /// no more item in the set after the current items, else 1.
- int forward_i (void);
-
- /// Move backward by one element in the set. Returns 0 when there's
- /// no more item in the set before the current item, else 1.
- int reverse_i (void);
-
- /// Dump the state of an object.
- void dump_i (void) const;
-
- /// Map we are iterating over.
- ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *map_man_;
-
- /// Keeps track of how far we've advanced in the table.
- ssize_t index_;
-
- /// Keeps track of how far we've advanced in a linked list in each
- /// table slot.
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *next_;
-};
-
-/**
- * @class ACE_Hash_Multi_Map_Const_Iterator_Base
- *
- * @brief Base const iterator for the @c ACE_Hash_Multi_Map_Manager
- *
- * This class factors out common code from its templatized
- * subclasses.
- */
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Multi_Map_Const_Iterator_Base
-{
-public:
- // = Initialization method.
- /// Contructor. If @a head != 0, the iterator constructed is positioned
- /// at the head of the map, it is positioned at the end otherwise.
- ACE_Hash_Multi_Map_Const_Iterator_Base (const ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- int head);
-
- // = ITERATION methods.
-
- /// Pass back the @a next_entry that hasn't been seen in the Set.
- /// Returns 0 when all items have been seen, else 1.
- int next (ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&next_entry) const;
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Returns a reference to the interal element this object is pointing to.
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID>& operator* (void) const;
-
- /// Returns a pointer to the interal element this object is pointing to.
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID>* operator-> (void) const;
-
- /// Returns reference the @c Hash_Multi_Map_Manager that is being iterated
- /// over.
- const ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>& map (void);
-
- /// Check if two iterators point to the same position
- bool operator== (const ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &) const;
- bool operator!= (const ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Move forward by one element in the set. Returns 0 when there's
- /// no more item in the set after the current items, else 1.
- int forward_i (void);
-
- /// Move backward by one element in the set. Returns 0 when there's
- /// no more item in the set before the current item, else 1.
- int reverse_i (void);
-
- /// Dump the state of an object.
- void dump_i (void) const;
-
- /// Map we are iterating over.
- const ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *map_man_;
-
- /// Keeps track of how far we've advanced in the table.
- ssize_t index_;
-
- /// Keeps track of how far we've advanced in a linked list in each
- /// table slot.
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *next_;
-};
-
-/**
- * @class ACE_Hash_Multi_Map_Iterator
- *
- * @brief Forward iterator for the @c ACE_Hash_Multi_Map_Manager.
- *
- * This class does not perform any internal locking of the
- * @c ACE_Hash_Multi_Map_Manager it is iterating upon since locking is
- * inherently inefficient and/or error-prone within an STL-style
- * iterator. If you require locking, you can explicitly use an
- * @c ACE_Guard or @c ACE_Read_Guard on the @c ACE_Hash_Multi_Map_Manager's
- * internal lock, which is accessible via its @c mutex method.
- */
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Multi_Map_Iterator : public ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-{
-public:
- // = Initialization method.
- ACE_Hash_Multi_Map_Iterator (ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- int tail = 0);
-
- // = Iteration methods.
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL styled iteration, compare, and reference functions.
-
- /// Prefix advance.
- ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &operator++ (void);
-
- /// Postfix advance.
- ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> operator++ (int);
-
- /// Prefix reverse.
- ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &operator-- (void);
-
- /// Postfix reverse.
- ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> operator-- (int);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-/**
- * @class ACE_Hash_Multi_Map_Const_Iterator
- *
- * @brief Const forward iterator for the @c ACE_Hash_Multi_Map_Manager.
- *
- * This class does not perform any internal locking of the
- * @c ACE_Hash_Multi_Map_Manager it is iterating upon since locking is
- * inherently inefficient and/or error-prone within an STL-style
- * iterator. If you require locking, you can explicitly use an
- * @c ACE_Guard or @c ACE_Read_Guard on the @c ACE_Hash_Multi_Map_Manager's
- * internal lock, which is accessible via its @c mutex method.
- */
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Multi_Map_Const_Iterator : public ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-{
-public:
- // = Initialization method.
- ACE_Hash_Multi_Map_Const_Iterator (const ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- int tail = 0);
-
- // = Iteration methods.
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL styled iteration, compare, and reference functions.
-
- /// Prefix advance.
- ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &operator++ (void);
-
- /// Postfix advance.
- ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> operator++ (int);
-
- /// Prefix reverse.
- ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &operator-- (void);
-
- /// Postfix reverse.
- ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> operator-- (int);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-/**
- * @class ACE_Hash_Multi_Map_Bucket_Iterator
- *
- * @brief Forward iterator for the @c ACE_Hash_Multi_Map_Manager which
- * only traverses a particular bucket. The particular bucket is
- * specified by the @c EXT_ID parameter specified in the constructor.
- *
- * This class does not perform any internal locking of the
- * @c ACE_Hash_Multi_Map_Manager it is iterating upon since locking is
- * inherently inefficient and/or error-prone within an STL-style
- * iterator. If you require locking, you can explicitly use an
- * @c ACE_Guard or @c ACE_Read_Guard on the @c ACE_Hash_Multi_Map_Manager's
- * internal lock, which is accessible via its @c mutex method.
- *
- * Note that a creation method for this new iterator cannot be added
- * to the hash map, since this would require adding explicit template
- * instantiations for bucket iterators on platforms with broken
- * templates.
- */
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Multi_Map_Bucket_Iterator
-{
-public:
- // = Initialization method.
- ACE_Hash_Multi_Map_Bucket_Iterator (ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- const EXT_ID &ext_id,
- int tail = 0);
-
- // = STL styled iteration, compare, and reference functions.
-
- /// Prefix advance.
- ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &operator++ (void);
-
- /// Postfix advance.
- ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> operator++ (int);
-
- /// Prefix reverse.
- ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &operator-- (void);
-
- /// Postfix reverse.
- ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> operator-- (int);
-
- /// Returns a reference to the interal element this object is pointing to.
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID>& operator* (void) const;
-
- /// Returns a pointer to the interal element this object is pointing to.
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID>* operator-> (void) const;
-
- /// Returns reference the Hash_Multi_Map_Manager that is being iterated
- /// over.
- ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>& map (void);
-
- /// Check if two iterators point to the same position
- bool operator== (const ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &) const;
- bool operator!= (const ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &) const;
-
-protected:
- /// Move forward by one element in the set. Returns 0 when there's
- /// no more item in the set after the current items, else 1.
- int forward_i (void);
-
- /// Move backward by one element in the set. Returns 0 when there's
- /// no more item in the set before the current item, else 1.
- int reverse_i (void);
-
- /// Map we are iterating over.
- ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *map_man_;
-
- /// Keeps track of how far we've advanced in the table.
- ssize_t index_;
-
- /// Keeps track of how far we've advanced in a linked list in each
- /// table slot.
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *next_;
-};
-
-/**
- * @class ACE_Hash_Multi_Map_Reverse_Iterator
- *
- * @brief Reverse iterator for the @c ACE_Hash_Multi_Map_Manager.
- *
- * This class does not perform any internal locking of the
- * @c ACE_Hash_Multi_Map_Manager it is iterating upon since locking is
- * inherently inefficient and/or error-prone within an STL-style
- * iterator. If you require locking, you can explicitly use an
- * @c ACE_Guard or @c ACE_Read_Guard on the @c ACE_Hash_Multi_Map_Manager's
- * internal lock, which is accessible via its @c mutex method.
- */
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_Hash_Multi_Map_Reverse_Iterator : public ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-{
-public:
- // = Initialization method.
- ACE_Hash_Multi_Map_Reverse_Iterator (ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- int head = 0);
-
- // = Iteration methods.
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL styled iteration, compare, and reference functions.
-
- /// Prefix reverse.
- ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &operator++ (void);
-
- /// Postfix reverse.
- ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> operator++ (int);
-
- /// Prefix advance.
- ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &operator-- (void);
-
- /// Postfix advance.
- ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> operator-- (int);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-# include "ace/Hash_Multi_Map_Manager_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Hash_Multi_Map_Manager_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Hash_Multi_Map_Manager_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_HASH_MULTI_MAP_MANAGER_T_H */
-
diff --git a/dep/include/ace/Hash_Multi_Map_Manager_T.inl b/dep/include/ace/Hash_Multi_Map_Manager_T.inl
deleted file mode 100644
index b6c353c2153..00000000000
--- a/dep/include/ace/Hash_Multi_Map_Manager_T.inl
+++ /dev/null
@@ -1,994 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Hash_Multi_Map_Manager_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Guard_T.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Multi_Map_Manager (size_t size,
- ACE_Allocator *table_alloc,
- ACE_Allocator *entry_alloc)
- : table_allocator_ (table_alloc),
- entry_allocator_ (entry_alloc),
- table_ (0),
- total_size_ (0),
- cur_size_ (0)
-{
- if (this->open (size, table_alloc, entry_alloc) == -1)
- ACE_ERROR ((LM_ERROR, ACE_TEXT ("ACE_Hash_Multi_Map_Manager\n")));
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Multi_Map_Manager (ACE_Allocator *table_alloc,
- ACE_Allocator *entry_alloc)
- : table_allocator_ (table_alloc),
- entry_allocator_ (entry_alloc),
- table_ (0),
- total_size_ (0),
- cur_size_ (0)
-{
- if (this->open (ACE_DEFAULT_MAP_SIZE, table_alloc, entry_alloc) == -1)
- ACE_ERROR ((LM_ERROR, ACE_TEXT ("ACE_Hash_Multi_Map_Manager\n")));
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::close (void)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->close_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::unbind_all (void)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->unbind_all_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::~ACE_Hash_Multi_Map_Manager (void)
-{
- this->close ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE size_t
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::current_size (void) const
-{
- return this->cur_size_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE size_t
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::total_size (void) const
-{
- return this->total_size_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE ACE_LOCK &
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::mutex (void)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Manager::mutex");
- return this->lock_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE u_long
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::hash (const EXT_ID &ext_id)
-{
- return this->hash_key_ (ext_id);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::equal (const EXT_ID &id1,
- const EXT_ID &id2)
-{
- return this->compare_keys_ (id1, id2);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::bind_i (const EXT_ID &ext_id,
- const INT_ID &int_id)
-{
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *temp;
-
- return this->bind_i (ext_id, int_id, temp);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::bind_i (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set)
-{
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *temp;
-
- return this->bind_i (ext_id, int_id_set, temp);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::bind (const EXT_ID &ext_id,
- const INT_ID &int_id)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->bind_i (ext_id, int_id);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::bind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->bind_i (ext_id, int_id, entry);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::bind (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->bind_i (ext_id, int_id_set);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::bind (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->bind_i (ext_id, int_id_set, entry);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::trybind_i (const EXT_ID &ext_id,
- ACE_Unbounded_Set<INT_ID> &int_id_set)
-{
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *temp;
-
- int result = this->trybind_i (ext_id, int_id_set, temp);
- if (result == 1)
- int_id_set = temp->int_id_set_;
- return result;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::trybind (const EXT_ID &ext_id,
- ACE_Unbounded_Set<INT_ID> &int_id_set)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->trybind_i (ext_id, int_id_set);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::trybind (const EXT_ID &ext_id,
- ACE_Unbounded_Set<INT_ID> &int_id_set,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->trybind_i (ext_id, int_id_set, entry);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::unbind_i (const EXT_ID &ext_id)
-{
- ACE_Unbounded_Set<INT_ID> int_id_set;
-
- return this->unbind_i (ext_id, int_id_set);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::unbind (const EXT_ID &ext_id,
- ACE_Unbounded_Set<INT_ID> &int_id_set)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->unbind_i (ext_id, int_id_set);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::unbind (const EXT_ID &ext_id,
- const INT_ID &int_id)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->unbind_i (ext_id, int_id);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::unbind (const EXT_ID &ext_id)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->unbind_i (ext_id) == -1 ? -1 : 0;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::unbind (ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *entry)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->unbind_i (entry) == -1 ? -1 : 0;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::find_i (const EXT_ID &ext_id,
- ACE_Unbounded_Set<INT_ID> &int_id_set)
-{
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *entry;
-
- size_t dummy;
- if (this->shared_find (ext_id, entry, dummy) == -1)
- return -1;
- else
- {
- int_id_set = entry->int_id_set_;
- return 0;
- }
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::find_i (const EXT_ID &ext_id,
- const INT_ID &int_id)
-{
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *entry;
-
- size_t dummy;
- if (this->shared_find (ext_id, entry, dummy) == -1)
- return -1;
- else
- {
- if (0 == entry->int_id_set_.find (int_id))
- return 0;
- else
- return -1;
- }
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::find_i (const EXT_ID &ext_id)
-{
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *entry;
-
- size_t dummy;
- return this->shared_find (ext_id, entry, dummy);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::find (const EXT_ID &ext_id,
- ACE_Unbounded_Set<INT_ID> &int_id_set) const
-{
- ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *nc_this =
- const_cast <ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *>
- (this);
-
- ACE_READ_GUARD_RETURN (ACE_LOCK, ace_mon, nc_this->lock_, -1);
-
- return nc_this->find_i (ext_id, int_id_set);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::find (const EXT_ID &ext_id,
- const INT_ID &int_id) const
-{
- ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *nc_this =
- const_cast <ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *>
- (this);
-
- ACE_READ_GUARD_RETURN (ACE_LOCK, ace_mon, nc_this->lock_, -1);
-
- return nc_this->find_i (ext_id, int_id);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::find (const EXT_ID &ext_id) const
-{
- ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *nc_this =
- const_cast <ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *>
- (this);
-
- ACE_READ_GUARD_RETURN (ACE_LOCK, ace_mon, nc_this->lock_, -1);
-
- return nc_this->find_i (ext_id);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::find_i (const EXT_ID &ext_id,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry)
-{
- size_t dummy;
- return this->shared_find (ext_id, entry, dummy);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::find (const EXT_ID &ext_id,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry) const
-{
- ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *nc_this =
- const_cast <ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> *>
- (this);
-
- ACE_READ_GUARD_RETURN (ACE_LOCK, ace_mon, nc_this->lock_, -1);
-
- return nc_this->find_i (ext_id, entry);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rebind_i (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set)
-{
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *node;
-
- return this->rebind_i (ext_id,
- int_id_set,
- node);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rebind_i (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- ACE_Unbounded_Set<INT_ID> &old_int_id_set)
-{
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *node;
-
- return this->rebind_i (ext_id,
- int_id_set,
- old_int_id_set,
- node);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rebind_i (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- EXT_ID &old_ext_id,
- ACE_Unbounded_Set<INT_ID> &old_int_id_set)
-{
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *node;
-
- return this->rebind_i (ext_id,
- int_id_set,
- old_ext_id,
- old_int_id_set,
- node);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->rebind_i (ext_id, int_id_set);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->rebind_i (ext_id, int_id_set, entry);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- ACE_Unbounded_Set<INT_ID> &old_int_id_set)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->rebind_i (ext_id, int_id_set, old_int_id_set);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- ACE_Unbounded_Set<INT_ID> &old_int_id_set,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->rebind_i (ext_id, int_id_set, old_int_id_set, entry);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- EXT_ID &old_ext_id,
- ACE_Unbounded_Set<INT_ID> &old_int_id_set)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->rebind_i (ext_id, int_id_set, old_ext_id, old_int_id_set);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const ACE_Unbounded_Set<INT_ID> &int_id_set,
- EXT_ID &old_ext_id,
- ACE_Unbounded_Set<INT_ID> &old_int_id_set,
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->rebind_i (ext_id, int_id_set, old_ext_id, old_int_id_set, entry);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::begin (void)
-{
- return ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> (*this);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::end (void)
-{
- return ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> (*this, 1);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rbegin (void)
-{
- return ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> (*this);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::rend (void)
-{
- return ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> (*this, 1);
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::table (void)
-{
- return this->table_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-size_t
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::cur_size (void) const
-{
- return this->cur_size_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Multi_Map_Iterator_Base (ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- int head)
- : map_man_ (&mm),
- index_ (head != 0 ? -1 : (ssize_t) mm.total_size_),
- next_ (0)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Multi_Map_Iterator_Base");
-
- if (mm.table_ != 0)
- this->next_ = &mm.table_[head != 0 ? 0 : mm.total_size_ - 1];
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::next (ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry) const
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::next");
-
- if (this->map_man_->table_ != 0
- && this->index_ < static_cast<ssize_t> (this->map_man_->total_size_)
- && this->index_ >= 0
- && this->next_ != &this->map_man_->table_[this->index_])
- {
- entry = this->next_;
- return 1;
- }
- else
- return 0;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::done (void) const
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::done");
-
- return this->map_man_->table_ == 0
- || this->index_ >= static_cast<ssize_t> (this->map_man_->total_size_)
- || this->index_ < 0;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> &
-ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator* (void) const
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator*");
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *retv = 0;
-
- int result = this->next (retv);
-
- ACE_UNUSED_ARG (result);
- ACE_ASSERT (result != 0);
-
- return *retv;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *
-ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-> (void) const
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator->");
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *retv = 0;
-
- int result = this->next (retv);
-
- ACE_UNUSED_ARG (result);
- ACE_ASSERT (result != 0);
-
- return retv;
-}
-
-// Returns the reference to the Hash_Multi_Map_manager_ex that is being
-// iterated over.
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>&
-ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::map (void)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::map");
- return *this->map_man_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE bool
-ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator== (const ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &rhs) const
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator==");
- return this->map_man_ == rhs.map_man_
- && this->index_ == rhs.index_
- && this->next_ == rhs.next_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE bool
-ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator!= (const ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &rhs) const
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator!=");
- return this->next_ != rhs.next_
- || this->index_ != rhs.index_
- || this->map_man_ != rhs.map_man_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Multi_Map_Const_Iterator_Base (const ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- int head)
- : map_man_ (&mm),
- index_ (head != 0 ? -1 : (ssize_t) mm.total_size_),
- next_ (0)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Multi_Map_Const_Iterator_Base");
-
- if (mm.table_ != 0)
- this->next_ = &mm.table_[head != 0 ? 0 : mm.total_size_ - 1];
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::next (ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *&entry) const
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::next");
-
- if (this->map_man_->table_ != 0
- && this->index_ < (ssize_t) this->map_man_->total_size_
- && this->index_ >= 0
- && this->next_ != &this->map_man_->table_[this->index_])
- {
- entry = this->next_;
- return 1;
- }
- else
- return 0;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::done (void) const
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::done");
-
- return this->map_man_->table_ == 0
- || this->index_ >= (ssize_t) this->map_man_->total_size_
- || this->index_ < 0;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> &
-ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator* (void) const
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator*");
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *retv = 0;
-
- int result = this->next (retv);
-
- ACE_UNUSED_ARG (result);
- ACE_ASSERT (result != 0);
-
- return *retv;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *
-ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-> (void) const
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator->");
- ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *retv = 0;
-
- int result = this->next (retv);
-
- ACE_UNUSED_ARG (result);
- ACE_ASSERT (result != 0);
-
- return retv;
-}
-
-// Returns the reference to the Hash_Multi_Map_manager_ex that is being
-// iterated over.
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-const ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>&
-ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::map (void)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::map");
- return *this->map_man_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE bool
-ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator== (const ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &rhs) const
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator==");
- return this->map_man_ == rhs.map_man_
- && this->index_ == rhs.index_
- && this->next_ == rhs.next_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE bool
-ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator!= (const ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &rhs) const
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator!=");
- return this->next_ != rhs.next_
- || this->index_ != rhs.index_
- || this->map_man_ != rhs.map_man_;
-}
-
-ACE_ALLOC_HOOK_DEFINE(ACE_Hash_Multi_Map_Iterator)
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE void
-ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::dump");
-
- this->dump_i ();
-#endif /* ACE_HAS_DUMP */
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Multi_Map_Iterator (ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- int tail)
- : ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> (mm,
- tail == 0 ? 1 : 0)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Multi_Map_Iterator");
- if (tail == 0)
- this->forward_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::advance (void)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::advance");
- return this->forward_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (void)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (void)");
-
- this->forward_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (int)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (int)");
-
- ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> retv (*this);
- ++*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (void)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (void)");
-
- this->reverse_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (int)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (int)");
-
- ACE_Hash_Multi_Map_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> retv (*this);
- --*this;
- return retv;
-}
-
-ACE_ALLOC_HOOK_DEFINE(ACE_Hash_Multi_Map_Const_Iterator)
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE void
-ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::dump");
-
- this->dump_i ();
-#endif /* ACE_HAS_DUMP */
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Multi_Map_Const_Iterator (const ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- int tail)
- : ACE_Hash_Multi_Map_Const_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> (mm,
- tail == 0 ? 1 : 0)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Multi_Map_Const_Iterator");
- if (tail == 0)
- this->forward_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::advance (void)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::advance");
- return this->forward_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (void)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (void)");
-
- this->forward_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (int)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (int)");
-
- ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> retv (*this);
- ++*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (void)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (void)");
-
- this->reverse_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (int)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (int)");
-
- ACE_Hash_Multi_Map_Const_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> retv (*this);
- --*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Multi_Map_Bucket_Iterator (ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm,
- const EXT_ID &ext_id,
- int tail)
- : map_man_ (&mm)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Multi_Map_Bucket_Iterator");
-
- this->index_ = this->map_man_->hash (ext_id) % this->map_man_->total_size_;
- this->next_ = &this->map_man_->table_[this->index_];
-
- if (tail == 0)
- this->forward_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (void)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (void)");
-
- this->forward_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (int)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (int)");
-
- ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> retv (*this);
- ++*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (void)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (void)");
-
- this->reverse_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (int)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (int)");
-
- ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> retv (*this);
- --*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> int
-ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::forward_i (void)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::forward_i");
-
- this->next_ = this->next_->next_;
- return this->next_ != &this->map_man_->table_[this->index_];
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> int
-ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::reverse_i (void)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::reverse_i");
-
- this->next_ = this->next_->prev_;
- return this->next_ != &this->map_man_->table_[this->index_];
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> &
-ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator* (void) const
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator*");
-
- return *this->next_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Entry<EXT_ID, INT_ID> *
-ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-> (void) const
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator->");
-
- return this->next_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::map (void)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::map");
- return *this->map_man_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE bool
-ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator== (const ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &rhs) const
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator==");
- return this->map_man_ == rhs.map_man_
- && this->index_ == rhs.index_
- && this->next_ == rhs.next_;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE bool
-ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator!= (const ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &rhs) const
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Bucket_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator!=");
- return this->next_ != rhs.next_
- || this->index_ != rhs.index_
- || this->map_man_ != rhs.map_man_;
-}
-
-ACE_ALLOC_HOOK_DEFINE(ACE_Hash_Multi_Map_Reverse_Iterator)
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE void
-ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::dump");
-
- this->dump_i ();
-#endif /* ACE_HAS_DUMP */
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Multi_Map_Reverse_Iterator (ACE_Hash_Multi_Map_Manager<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &mm, int head)
- : ACE_Hash_Multi_Map_Iterator_Base<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> (mm, head)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::ACE_Hash_Multi_Map_Reverse_Iterator");
- if (head == 0)
- this->reverse_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE int
-ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::advance (void)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::advance");
- return this->reverse_i ();
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (void)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (void)");
-
- this->reverse_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (int)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator++ (int)");
-
- ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> retv (*this);
- ++*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> &
-ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (void)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (void)");
-
- this->forward_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class HASH_KEY, class COMPARE_KEYS, class ACE_LOCK> ACE_INLINE
-ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>
-ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (int)
-{
- ACE_TRACE ("ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator-- (int)");
-
- ACE_Hash_Multi_Map_Reverse_Iterator<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK> retv (*this);
- --*this;
- return retv;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Hashable.h b/dep/include/ace/Hashable.h
deleted file mode 100644
index 88e272cd8b9..00000000000
--- a/dep/include/ace/Hashable.h
+++ /dev/null
@@ -1,66 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Hashable.h
- *
- * $Id: Hashable.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_HASHABLE_H
-#define ACE_HASHABLE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Hashable
- *
- * @brief ACE_Hashable
- */
-class ACE_Export ACE_Hashable
-{
-public:
-
- /// Destructor.
- virtual ~ACE_Hashable (void);
-
- /// Computes and returns hash value. This "caches" the hash value to
- /// improve performance.
- virtual unsigned long hash (void) const;
-
-protected:
- /// Protected constructor.
- ACE_Hashable (void);
-
- /// This is the method that actually performs the non-cached hash
- /// computation.
- virtual unsigned long hash_i (void) const = 0;
-
-protected:
-
- /// Pre-computed hash-value.
- mutable unsigned long hash_value_;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Hashable.inl"
-#endif /* __ACE_INLINE __ */
-
-#include /**/ "ace/post.h"
-
-#endif /*ACE_HASHABLE_H*/
-
diff --git a/dep/include/ace/Hashable.inl b/dep/include/ace/Hashable.inl
deleted file mode 100644
index c279e515f32..00000000000
--- a/dep/include/ace/Hashable.inl
+++ /dev/null
@@ -1,13 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Hashable.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Hashable::ACE_Hashable (void)
- : hash_value_ (0)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/High_Res_Timer.h b/dep/include/ace/High_Res_Timer.h
deleted file mode 100644
index 83584c39b19..00000000000
--- a/dep/include/ace/High_Res_Timer.h
+++ /dev/null
@@ -1,316 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file High_Res_Timer.h
- *
- * $Id: High_Res_Timer.h 81286 2008-04-09 07:27:30Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_HIGH_RES_TIMER_H
-#define ACE_HIGH_RES_TIMER_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Basic_Types.h"
-#include "ace/OS_NS_time.h"
-#include "ace/Time_Value.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_High_Res_Timer
- *
- * @brief A high resolution timer class wrapper that encapsulates
- * OS-specific high-resolution timers, such as those found on
- * Solaris, AIX, Win32/Pentium, and VxWorks.
- *
- * Most of the member functions don't return values. The only
- * reason that one would fail is if high-resolution time isn't
- * supported on the platform. To avoid impacting performance
- * and complicating the interface, in that case,
- * <ACE_OS::gettimeofday> is used instead.
- * The global scale factor is required for platforms that have
- * high-resolution timers that return units other than
- * microseconds, such as clock ticks. It is represented as a
- * static u_long, can only be accessed through static methods,
- * and is used by all instances of High Res Timer. The member
- * functions that return or print times use the global scale
- * factor. They divide the "time" that they get from
- * <ACE_OS::gethrtime> by global_scale_factor_ to obtain the
- * time in microseconds. Its units are therefore 1/microsecond.
- * On Windows the global_scale_factor_ units are 1/millisecond.
- * There's a macro <ACE_HR_SCALE_CONVERSION> which gives the
- * units/second. Because it's possible that the units/second
- * changes in the future, it's recommended to use it instead
- * of a "hard coded" solution.
- * Dependend on the platform and used class members, there's a
- * maximum elapsed period before overflow (which is not checked).
- * Look at the documentation with some members functions.
- * On some (most?) implementations it's not recommended to measure
- * "long" timeperiods, because the error's can accumulate fast.
- * This is probably not a problem profiling code, but could be
- * on if the high resolution timer class is used to initiate
- * actions after a "long" timeout.
- * On Solaris, a scale factor of 1000 should be used because its
- * high-resolution timer returns nanoseconds. However, on Intel
- * platforms, we use RDTSC which returns the number of clock
- * ticks since system boot. For a 200MHz cpu, each clock tick
- * is 1/200 of a microsecond; the global_scale_factor_ should
- * therefore be 200 or 200000 if it's in unit/millisecond.
- * On Windows ::QueryPerformanceCounter() is used, which can be a
- * different implementation depending on the used windows HAL
- * (Hardware Abstraction Layer). On some it uses the PC "timer chip"
- * while it uses RDTSC on others.
- * @note The elapsed time calculations in the print methods use
- * ACE_hrtime_t values. Those methods do _not_ check for overflow!
- * @note Gabe <begeddov@proaxis.com> raises this issue regarding
- * <ACE_OS::gethrtime>: on multi-processors, the processor that
- * you query for your <timer.stop> value might not be the one
- * you queried for <timer.start>. Its not clear how much
- * divergence there would be, if any.
- * This issue is not mentioned in the Solaris 2.5.1 gethrtime
- * man page.
- * A RDTSC NOTE: RDTSC is the Intel Pentium read-time stamp counter
- * and is actualy a 64 bit clock cycle counter, which is increased
- * with every cycle. It has a low overhead and can be read within
- * 16 (pentium) or 32 (pentium II,III,...) cycles, but it doesn't
- * serialize the processor, which could give wrong timings when
- * profiling very short code fragments.
- * Problematic is that some power sensitive devices
- * (laptops for example, but probably also embedded devices),
- * do change the cycle rate while running.
- * Some pentiums can run on (at least) two clock frequency's.
- * Another problem arises with multiprocessor computers, there
- * are reports that the different RDTSC's are not always kept
- * in sync.
- * A windows "timer chip" NOTE: (8254-compatible real-time clock)
- * When ::QueryPerformanceCounter() uses the 8254 it has a
- * frequency off about 1.193 Mhz (or sometimes 3.579 Mhz?) and
- * reading it requires some time (several thousand cycles).
- */
-class ACE_Export ACE_High_Res_Timer
-{
-public:
- // = Initialization method.
-
- /**
- * global_scale_factor_ is set to @a gsf. All High_Res_Timers use
- * global_scale_factor_. This allows applications to set the scale
- * factor just once for all High_Res_Timers. Check
- * High_Res_Timer.cpp for the default global_scale_factors for
- * several platforms. For many platforms (e.g., Solaris), the
- * global_scale_factor_ is set to 1000 so that <scale_factor> need
- * not be set. Careful, a <scale_factor> of 0 will cause division
- * by zero exceptions.
- * Depending on the platform its units are 1/microsecond or
- * 1/millisecond. Use <ACE_HR_SCALE_CONVERSION> inside calculations
- * instead a hardcoded value.
- */
- static void global_scale_factor (ACE_UINT32 gsf);
-
- /// Returns the global_scale_factor.
- static ACE_UINT32 global_scale_factor (void);
-
-#ifndef ACE_HR_SCALE_CONVERSION
-# define ACE_HR_SCALE_CONVERSION (ACE_ONE_SECOND_IN_USECS)
-#endif /* ACE_HR_SCALE_CONVERSION */
-
- /**
- * Sets the global_scale_factor to the value in the @a env
- * environment variable. Returns 0 on success, -1 on failure.
- * @note If @a env points to string "0" (value zero), this call will fail.
- * This is basically a no-op on CE because there is no concept of
- * environment variable on CE.
- */
- static int get_env_global_scale_factor (const ACE_TCHAR *env
- = ACE_TEXT ("ACE_SCALE_FACTOR"));
-
- /**
- * Set (and return, for info) the global scale factor by sleeping
- * for @a usec and counting the number of intervening clock cycles.
- * Average over @a iterations of @a usec each. On some platforms,
- * such as Pentiums, this is called automatically during the first
- * ACE_High_Res_Timer construction with the default parameter
- * values. An application can override that by calling calibrate
- * with any desired parameter values _prior_ to constructing the
- * first ACE_High_Res_Timer instance.
- * Beware for platforms that can change the cycle rate on the fly.
- */
- static ACE_UINT32 calibrate (const ACE_UINT32 usec = 500000,
- const u_int iterations = 10);
-
- /// Initialize the timer.
- ACE_High_Res_Timer (void);
-
- /// Destructor.
- ~ACE_High_Res_Timer (void);
-
- /// Reinitialize the timer.
- void reset (void);
-
- /// Start timing.
- void start (const ACE_OS::ACE_HRTimer_Op = ACE_OS::ACE_HRTIMER_GETTIME);
-
- /// Stop timing.
- void stop (const ACE_OS::ACE_HRTimer_Op = ACE_OS::ACE_HRTIMER_GETTIME);
-
- /// Set @a tv to the number of microseconds elapsed.
- /**
- * Could overflow within hours on windows with emulated 64 bit int's
- * and a fast counter. VC++ and Borland normaly use __int64 and
- * so normaly don't have this problem.
- */
- void elapsed_time (ACE_Time_Value &tv) const;
-
- /// Set @a nanoseconds to the number of nanoseconds elapsed.
- /**
- * Will overflow when measuring more than 194 day's.
- */
- void elapsed_time (ACE_hrtime_t &nanoseconds) const;
-
-#if defined (ACE_HAS_POSIX_TIME)
- /// Returns the elapsed (stop - start) time in a struct timespec
- /// (sec, nsec).
- void elapsed_time (struct timespec &) const;
-#endif /* ACE_HAS_POSIX_TIME */
-
- /// Sets @a usecs to the elapsed (stop - start) time in microseconds.
- /**
- * Will overflow on windows when measuring more than appox. 2^^54 ticks.
- * Is still more than 48 days with a 4 Ghz counter.
- */
- void elapsed_microseconds (ACE_hrtime_t &usecs) const;
-
- /// Start incremental timing.
- void start_incr (const ACE_OS::ACE_HRTimer_Op = ACE_OS::ACE_HRTIMER_GETTIME);
-
- /// Stop incremental timing.
- void stop_incr (const ACE_OS::ACE_HRTimer_Op = ACE_OS::ACE_HRTIMER_GETTIME);
-
- /// Set @a tv to the number of microseconds elapsed between all calls
- /// to start_incr and stop_incr.
- void elapsed_time_incr (ACE_Time_Value &tv) const;
-
- /// Set <nsec> to the number of nanoseconds elapsed between all calls
- /// to start_incr and stop_incr.
- void elapsed_time_incr (ACE_hrtime_t &nanoseconds) const;
-
-#if !defined (ACE_HAS_WINCE)
- // @@ WINCE These two functions are currently not supported on Windows CE.
- // However, we should probably use the handle and ACE_Log_Msg to
- // print out the result.
- /// Print total time.
- /// @note only use <print_total> if incremental timings had been used!
- void print_total (const ACE_TCHAR *message,
- const int iterations = 1,
- ACE_HANDLE handle = ACE_STDOUT) const;
-
- /// Print average time.
- void print_ave (const ACE_TCHAR *message,
- const int iterations = 1,
- ACE_HANDLE handle = ACE_STDOUT) const;
-#endif /* !ACE_HAS_WINCE */
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /**
- * Get the current "time" as the high resolution counter at this time.
- * This is intended to be useful for supplying to a ACE_Timer_Queue
- * as the gettimeofday function, thereby basing the timer calculations
- * on the high res timer rather than wall clock time.
- */
- static ACE_Time_Value gettimeofday_hr (void);
-
- /**
- * @deprecated THIS FUNCTION IS DEPRECATED. PLEASE USE
- * <ACE_OS::gettimeofday> INSTEAD! Calls <ACE_High_Res_Timer::hrtime_to_tv>
- * passing <ACE_OS::gethrtime>. This function can be used to parameterize
- * objects such as <ACE_Timer_Queue::gettimeofday>. If
- * <global_scale_factor_> is not set, and we're on a platform that
- * requires <global_scale_factor_> (e.g., Win32),
- * ACE_OS::gettimeofday will be used instead of <ACE_OS::gethrtime>.
- * This allows applications on Intel to use <High_Res_Timer> even
- * when <global_scale_factor> is not set. However, setting the
- * <global_scale_factor_> appropriately will result in the finest
- * resolution possible.
- */
- static ACE_Time_Value gettimeofday (const ACE_OS::ACE_HRTimer_Op =
- ACE_OS::ACE_HRTIMER_GETTIME);
-
- /// Converts an @a hrt to @a tv using global_scale_factor_.
- static void hrtime_to_tv (ACE_Time_Value &tv,
- const ACE_hrtime_t hrt);
-
-#if defined (linux)
- /**
- * This is used to find out the Mhz of the machine for the scale
- * factor. If there are any problems getting it, we just return 1
- * (the default).
- */
- static ACE_UINT32 get_cpuinfo (void);
-#endif /* defined (linux) */
-
-private:
- /**
- * For internal use: gets the high-resolution time using
- * <ACE_OS::gethrtime>. Except on platforms that require that the
- * <global_scale_factor_> be set, such as ACE_WIN32, uses the
- * low-resolution clock if the <global_scale_factor_> has not been
- * set.
- */
- static ACE_hrtime_t gettime (const ACE_OS::ACE_HRTimer_Op =
- ACE_OS::ACE_HRTIMER_GETTIME);
-
- /// Calculate the difference between two ACE_hrtime_t values. It is assumed
- /// that the end time is later than start time, so if end is a smaller
- /// value, the time counter has wrapped around.
- static ACE_hrtime_t elapsed_hrtime (const ACE_hrtime_t end,
- const ACE_hrtime_t start);
-
- /// Starting time.
- ACE_hrtime_t start_;
-
- /// Ending time.
- ACE_hrtime_t end_;
-
- /// Total elapsed time.
- ACE_hrtime_t total_;
-
- /// Start time of incremental timing.
- ACE_hrtime_t start_incr_;
-
- /// Converts ticks to microseconds. That is, ticks /
- /// global_scale_factor_ == microseconds.
- static ACE_UINT32 global_scale_factor_;
-
- /**
- * Indicates the status of the global scale factor,
- * 0 = hasn't been set
- * 1 = been set
- * -1 = HR timer not supported
- */
- static int global_scale_factor_status_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/High_Res_Timer.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_HIGH_RES_TIMER_H */
-
diff --git a/dep/include/ace/High_Res_Timer.inl b/dep/include/ace/High_Res_Timer.inl
deleted file mode 100644
index 7a20845e496..00000000000
--- a/dep/include/ace/High_Res_Timer.inl
+++ /dev/null
@@ -1,150 +0,0 @@
-// -*- C++ -*- */
-//
-// $Id: High_Res_Timer.inl 81138 2008-03-28 09:18:15Z johnnyw $
-
-#include "ace/Global_Macros.h"
-
-#if defined (ACE_WIN32)
-# include "ace/OS_NS_sys_time.h"
-#endif /* ACE_WIN32 */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Be very careful before changing the calculations inside
-// ACE_High_Res_Timer. The precision matters and we are using integer
-// calculations not floating point. Also look closely at the emulated 64
-// bit int class (inside Basic_Types{h,i,cpp} before changing
-// anything. It's operator/ only returns 32 bits not 64 bits, among
-// other things.
-
-ACE_INLINE void
-ACE_High_Res_Timer::hrtime_to_tv (ACE_Time_Value &tv,
- const ACE_hrtime_t hrt)
-{
- // The following are based on the units of global_scale_factor_
- // being 1/microsecond. Therefore, dividing by it converts
- // clock ticks to microseconds.
- tv.sec ((long) (hrt / (ACE_UINT32) ACE_HR_SCALE_CONVERSION /
- global_scale_factor ()));
-
- // Calculate usec in a manner that's compatible with ACE_U_LongLong.
- // hrt = (tv.sec * ACE_ONE_SECOND_IN_USECS + tv.usec) * global_scale_factor_
- // tv.usec = hrt / global_scale_factor_ - tv.sec * ACE_ONE_SECOND_IN_USECS
- // That first term will be lossy, so factor out global_scale_factor_:
- // tv.usec = (hrt - tv.sec * ACE_ONE_SECOND_IN_USECS * global_scale_factor_)/
- // global_scale_factor
- ACE_hrtime_t tmp = tv.sec ();
- tmp *= ((ACE_UINT32) ACE_HR_SCALE_CONVERSION * global_scale_factor ());
- tv.usec ((long) ((hrt - tmp) / global_scale_factor ()));
-}
-
-ACE_INLINE ACE_Time_Value
-ACE_High_Res_Timer::gettimeofday (const ACE_OS::ACE_HRTimer_Op op)
-{
-#if defined (ACE_WIN32)
- // Get the global scale factor if there isn't one yet.
- if (ACE_High_Res_Timer::global_scale_factor_status_ == 0)
- ACE_High_Res_Timer::global_scale_factor ();
-
- // If there isn't a high-res timer, use gettimeofday ();
- if (ACE_High_Res_Timer::global_scale_factor_status_ == -1)
- return ACE_OS::gettimeofday ();
-#endif /* ACE_WIN32 */
-
- ACE_Time_Value tv;
- ACE_High_Res_Timer::hrtime_to_tv (tv, ACE_OS::gethrtime (op));
- return tv;
-}
-
-// Get the current high res timer as the time of day. This is intended
-// to be used for a gettimeofday replacement in ACE_Timer_Queue and
-// derived classes so the timers will bebased on high res timers rather
-// than wall clock time. It uses the ACE_High_Res_Timer::gettimeofday
-// function, which is deprecated. If it gets removed, please move the
-// code down here, intact.
-ACE_INLINE ACE_Time_Value
-ACE_High_Res_Timer::gettimeofday_hr (void)
-{
- return ACE_High_Res_Timer::gettimeofday ();
-}
-
-ACE_INLINE ACE_hrtime_t
-ACE_High_Res_Timer::gettime (const ACE_OS::ACE_HRTimer_Op op)
-{
-#if defined (ACE_WIN32)
- // Get the global scale factor if there isn't one yet.
- if (ACE_High_Res_Timer::global_scale_factor_status_ == 0)
- ACE_High_Res_Timer::global_scale_factor ();
-
- // If there isn't a high-res timer, use gettimeofday ();
- if (ACE_High_Res_Timer::global_scale_factor_status_ == -1)
- {
- ACE_Time_Value tv = ACE_OS::gettimeofday ();
- // Return the time in microseconds because the global_scale_factor_
- // is 1.
- return tv.sec () * ACE_ONE_SECOND_IN_USECS + tv.usec ();
- }
-#endif /* ACE_WIN32 */
-
- return ACE_OS::gethrtime (op);
-}
-
-ACE_INLINE ACE_hrtime_t
-ACE_High_Res_Timer::elapsed_hrtime (const ACE_hrtime_t end,
- const ACE_hrtime_t start)
-{
- if (end > start)
- return end - start;
- return (~start + 1 + end); // Wrapped-around counter diff
-}
-
-ACE_INLINE
-ACE_High_Res_Timer::~ACE_High_Res_Timer (void)
-{
-}
-
-ACE_INLINE void
-ACE_High_Res_Timer::start (const ACE_OS::ACE_HRTimer_Op op)
-{
- ACE_TRACE ("ACE_High_Res_Timer::start");
- this->start_ = ACE_High_Res_Timer::gettime (op);
-}
-
-ACE_INLINE void
-ACE_High_Res_Timer::stop (const ACE_OS::ACE_HRTimer_Op op)
-{
- ACE_TRACE ("ACE_High_Res_Timer::stop");
- this->end_ = ACE_High_Res_Timer::gettime (op);
-}
-
-ACE_INLINE void
-ACE_High_Res_Timer::start_incr (const ACE_OS::ACE_HRTimer_Op op)
-{
- ACE_TRACE ("ACE_High_Res_Timer::start_incr");
- this->start_incr_ = ACE_High_Res_Timer::gettime (op);
-}
-
-ACE_INLINE void
-ACE_High_Res_Timer::stop_incr (const ACE_OS::ACE_HRTimer_Op op)
-{
- ACE_TRACE ("ACE_High_Res_Timer::stop_incr");
- this->total_ +=
- ACE_High_Res_Timer::elapsed_hrtime (ACE_High_Res_Timer::gettime (op),
- this->start_incr_);
-}
-
-ACE_INLINE void
-ACE_High_Res_Timer::elapsed_microseconds (ACE_hrtime_t &usecs) const
-{
- ACE_hrtime_t elapsed = ACE_High_Res_Timer::elapsed_hrtime (this->end_,
- this->start_);
- usecs = (ACE_hrtime_t) (elapsed / global_scale_factor ());
-}
-
-ACE_INLINE void
-ACE_High_Res_Timer::global_scale_factor (ACE_UINT32 gsf)
-{
- global_scale_factor_ = gsf;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/ICMP_Socket.h b/dep/include/ace/ICMP_Socket.h
deleted file mode 100644
index edb179ffb3a..00000000000
--- a/dep/include/ace/ICMP_Socket.h
+++ /dev/null
@@ -1,111 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file ICMP_Socket.h
- *
- * $Id: ICMP_Socket.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Robert S. Iakobashvili <coroberti@gmail.com> <coroberti@walla.co.il>
- * @author Gonzalo A. Diethelm <gonzalo.diethelm@aditiva.com>
- */
-//=============================================================================
-
-#ifndef ACE_ICMP_SOCKET_H
-#define ACE_ICMP_SOCKET_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_ICMP_SUPPORT) && (ACE_HAS_ICMP_SUPPORT == 1)
-
-#include "ace/SOCK.h"
-#include "ace/Time_Value.h"
-#include "ace/os_include/netinet/os_in.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_ICMP_Socket
- *
- * @brief An abstract class that forms the basis for usage of the ICMP
- * protocol (that is, support for things such as ping).
- */
-class ACE_Export ACE_ICMP_Socket : public ACE_SOCK
-{
-public:
- // = Initialization methods.
-
- /**
- * @name Data transfer routines.
- *
- * Data transfer routines.
- */
- //@{
-
- /// Send an @a n byte @a buf to the datagram socket (uses
- /// @c sendto(3) ).
- ssize_t send (void const * buf,
- size_t n,
- ACE_Addr const & addr,
- int flags = 0) const;
-
- /// Receive an @a n byte @a buf from the datagram socket
- /// (uses @c recvfrom(3) ).
- ssize_t recv (void * buf,
- size_t n,
- ACE_Addr & addr,
- int flags = 0) const;
-
- /// TODO: comment
- ssize_t recv (void * buf,
- size_t n,
- int flags,
- ACE_Time_Value const * timeout) const;
-
- //@}
-
- /// Wrapper around the BSD-style @c socket system call (no QoS).
- int open (ACE_Addr const & local = ACE_Addr::sap_any,
- int protocol = IPPROTO_ICMP,
- int reuse_addr = 0);
-
- /// Dump the state of object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
-
- // Protected constructors, so the class can only be derived from.
-
- /// Default constructor.
- ACE_ICMP_Socket (void);
-
- /// Constructor that takes a local listening address.
- ACE_ICMP_Socket (ACE_Addr const & local,
- int protocol = IPPROTO_ICMP,
- int reuse_addr = 0);
-
- /// Wrapper around BSD-style @c bind system call.
- int shared_open (ACE_Addr const & local);
-
- /// Calculates check-sum.
- unsigned short calculate_checksum (unsigned short* paddress,
- int len);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_ICMP_SUPPORT == 1 */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_ICMP_SOCKET_H */
-
diff --git a/dep/include/ace/INET_Addr.h b/dep/include/ace/INET_Addr.h
deleted file mode 100644
index aadd0de1022..00000000000
--- a/dep/include/ace/INET_Addr.h
+++ /dev/null
@@ -1,391 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file INET_Addr.h
- *
- * $Id: INET_Addr.h 81799 2008-05-28 18:13:58Z jtc $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_INET_ADDR_H
-#define ACE_INET_ADDR_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Sock_Connect.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Addr.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_INET_Addr
- *
- * @brief Defines a C++ wrapper facade for the Internet domain address
- * family format.
- */
-class ACE_Export ACE_INET_Addr : public ACE_Addr
-{
-public:
- // = Initialization methods.
-
- /// Default constructor.
- ACE_INET_Addr (void);
-
- /// Copy constructor.
- ACE_INET_Addr (const ACE_INET_Addr &);
-
- /// Creates an ACE_INET_Addr from a sockaddr_in structure.
- ACE_INET_Addr (const sockaddr_in *addr, int len);
-
- /// Creates an ACE_INET_Addr from a @a port_number and the remote
- /// @a host_name. The port number is assumed to be in host byte order.
- /// To set a port already in network byte order, please @see set().
- /// Use address_family to select IPv6 (PF_INET6) vs. IPv4 (PF_INET).
- ACE_INET_Addr (u_short port_number,
- const char host_name[],
- int address_family = AF_UNSPEC);
-
- /**
- * Initializes an ACE_INET_Addr from the @a address, which can be
- * "ip-number:port-number" (e.g., "tango.cs.wustl.edu:1234" or
- * "128.252.166.57:1234"). If there is no ':' in the @a address it
- * is assumed to be a port number, with the IP address being
- * INADDR_ANY.
- */
- explicit ACE_INET_Addr (const char address[],
- int address_family = AF_UNSPEC);
-
- /**
- * Creates an ACE_INET_Addr from a @a port_number and an Internet
- * <ip_addr>. This method assumes that @a port_number and <ip_addr>
- * are in host byte order. If you have addressing information in
- * network byte order, @see set().
- */
- explicit ACE_INET_Addr (u_short port_number,
- ACE_UINT32 ip_addr = INADDR_ANY);
-
- /// Uses <getservbyname> to create an ACE_INET_Addr from a
- /// <port_name>, the remote @a host_name, and the @a protocol.
- ACE_INET_Addr (const char port_name[],
- const char host_name[],
- const char protocol[] = "tcp");
-
- /**
- * Uses <getservbyname> to create an ACE_INET_Addr from a
- * <port_name>, an Internet <ip_addr>, and the @a protocol. This
- * method assumes that <ip_addr> is in host byte order.
- */
- ACE_INET_Addr (const char port_name[],
- ACE_UINT32 ip_addr,
- const char protocol[] = "tcp");
-
-#if defined (ACE_HAS_WCHAR)
- ACE_INET_Addr (u_short port_number,
- const wchar_t host_name[],
- int address_family = AF_UNSPEC);
-
- explicit ACE_INET_Addr (const wchar_t address[],
- int address_family = AF_UNSPEC);
-
- ACE_INET_Addr (const wchar_t port_name[],
- const wchar_t host_name[],
- const wchar_t protocol[] = ACE_TEXT_WIDE ("tcp"));
-
- ACE_INET_Addr (const wchar_t port_name[],
- ACE_UINT32 ip_addr,
- const wchar_t protocol[] = ACE_TEXT_WIDE ("tcp"));
-#endif /* ACE_HAS_WCHAR */
-
- /// Default dtor.
- ~ACE_INET_Addr (void);
-
- // = Direct initialization methods.
-
- // These methods are useful after the object has been constructed.
-
- /// Initializes from another ACE_INET_Addr.
- int set (const ACE_INET_Addr &);
-
- /**
- * Initializes an ACE_INET_Addr from a @a port_number and the
- * remote @a host_name. If @a encode is non-zero then @a port_number is
- * converted into network byte order, otherwise it is assumed to be
- * in network byte order already and are passed straight through.
- * address_family can be used to select IPv4/IPv6 if the OS has
- * IPv6 capability (ACE_HAS_IPV6 is defined). To specify IPv6, use
- * the value AF_INET6. To specify IPv4, use AF_INET.
- */
- int set (u_short port_number,
- const char host_name[],
- int encode = 1,
- int address_family = AF_UNSPEC);
-
- /**
- * Initializes an ACE_INET_Addr from a @a port_number and an Internet
- * @a ip_addr. If @a encode is non-zero then the port number and IP address
- * are converted into network byte order, otherwise they are assumed to be
- * in network byte order already and are passed straight through.
- *
- * If <map> is non-zero and IPv6 support has been compiled in,
- * then this address will be set to the IPv4-mapped IPv6 address of it.
- */
- int set (u_short port_number,
- ACE_UINT32 ip_addr = INADDR_ANY,
- int encode = 1,
- int map = 0);
-
- /// Uses <getservbyname> to initialize an ACE_INET_Addr from a
- /// <port_name>, the remote @a host_name, and the @a protocol.
- int set (const char port_name[],
- const char host_name[],
- const char protocol[] = "tcp");
-
- /**
- * Uses <getservbyname> to initialize an ACE_INET_Addr from a
- * <port_name>, an <ip_addr>, and the @a protocol. This assumes that
- * <ip_addr> is already in network byte order.
- */
- int set (const char port_name[],
- ACE_UINT32 ip_addr,
- const char protocol[] = "tcp");
-
- /**
- * Initializes an ACE_INET_Addr from the @a addr, which can be
- * "ip-number:port-number" (e.g., "tango.cs.wustl.edu:1234" or
- * "128.252.166.57:1234"). If there is no ':' in the @a address it
- * is assumed to be a port number, with the IP address being
- * INADDR_ANY.
- */
- int set (const char addr[], int address_family = AF_UNSPEC);
-
- /// Creates an ACE_INET_Addr from a sockaddr_in structure.
- int set (const sockaddr_in *,
- int len);
-
-#if defined (ACE_HAS_WCHAR)
- int set (u_short port_number,
- const wchar_t host_name[],
- int encode = 1,
- int address_family = AF_UNSPEC);
-
- int set (const wchar_t port_name[],
- const wchar_t host_name[],
- const wchar_t protocol[] = ACE_TEXT_WIDE ("tcp"));
-
- int set (const wchar_t port_name[],
- ACE_UINT32 ip_addr,
- const wchar_t protocol[] = ACE_TEXT_WIDE ("tcp"));
-
- int set (const wchar_t addr[], int address_family = AF_UNSPEC);
-#endif /* ACE_HAS_WCHAR */
-
- /// Return a pointer to the underlying network address.
- virtual void *get_addr (void) const;
- int get_addr_size(void) const;
-
- /// Set a pointer to the address.
- virtual void set_addr (void *, int len);
-
- /// Set a pointer to the address.
- virtual void set_addr (void *, int len, int map);
-
- /**
- * Transform the current ACE_INET_Addr address into string format.
- * If <ipaddr_format> is non-0 this produces "ip-number:port-number"
- * (e.g., "128.252.166.57:1234"), whereas if <ipaddr_format> is 0
- * this produces "ip-name:port-number" (e.g.,
- * "tango.cs.wustl.edu:1234"). Returns -1 if the @a size of the
- * <buffer> is too small, else 0.
- */
- virtual int addr_to_string (ACE_TCHAR buffer[],
- size_t size,
- int ipaddr_format = 1) const;
-
- /**
- * Initializes an ACE_INET_Addr from the @a address, which can be
- * "ip-addr:port-number" (e.g., "tango.cs.wustl.edu:1234"),
- * "ip-addr:port-name" (e.g., "tango.cs.wustl.edu:telnet"),
- * "ip-number:port-number" (e.g., "128.252.166.57:1234"), or
- * "ip-number:port-name" (e.g., "128.252.166.57:telnet"). If there
- * is no ':' in the @a address it is assumed to be a port number,
- * with the IP address being INADDR_ANY.
- */
- virtual int string_to_addr (const char address[],
- int address_family = AF_UNSPEC);
-
-#if defined (ACE_HAS_WCHAR)
- /*
- virtual int string_to_addr (const char address[]);
- */
-#endif /* ACE_HAS_WCHAR */
-
- /**
- * Sets the port number without affecting the host name. If
- * @a encode is enabled then @a port_number is converted into network
- * byte order, otherwise it is assumed to be in network byte order
- * already and are passed straight through.
- */
- void set_port_number (u_short,
- int encode = 1);
-
- /**
- * Sets the address without affecting the port number. If
- * @a encode is enabled then <ip_addr> is converted into network
- * byte order, otherwise it is assumed to be in network byte order
- * already and are passed straight through. The size of the address
- * is specified in the @a len parameter.
- * If <map> is non-zero, IPv6 support has been compiled in, and
- * <ip_addr> is an IPv4 address, then this address is set to the IPv4-mapped
- * IPv6 address of it.
- */
- int set_address (const char *ip_addr,
- int len,
- int encode = 1,
- int map = 0);
-
-#if (defined (__linux__) || defined (ACE_WIN32)) && defined (ACE_HAS_IPV6)
- /**
- * Sets the interface that should be used for this address. This only has
- * an effect when the address is link local, otherwise it does nothing.
- */
- int set_interface (const char *intf_name);
-#endif /* (__linux__ || ACE_WIN32) && ACE_HAS_IPV6 */
-
- /// Return the port number, converting it into host byte-order.
- u_short get_port_number (void) const;
-
- /**
- * Return the character representation of the name of the host,
- * storing it in the <hostname> (which is assumed to be
- * <hostnamelen> bytes long). This version is reentrant. If
- * <hostnamelen> is greater than 0 then <hostname> will be
- * NUL-terminated even if -1 is returned.
- */
- int get_host_name (char hostname[],
- size_t hostnamelen) const;
-
-#if defined (ACE_HAS_WCHAR)
- int get_host_name (wchar_t hostname[],
- size_t hostnamelen) const;
-#endif /* ACE_HAS_WCHAR */
-
- /**
- * Return the character representation of the hostname. This
- * version is non-reentrant since it returns a pointer to a static
- * data area. You should therefore either (1) do a "deep copy" of
- * the address returned by get_host_name(), e.g., using strdup() or
- * (2) use the "reentrant" version of get_host_name() described
- * above.
- */
- const char *get_host_name (void) const;
-
- /**
- * Return the "dotted decimal" Internet address representation of
- * the hostname storing it in the @a addr (which is assumed to be
- * @a addr_size bytes long). This version is reentrant.
- */
- const char *get_host_addr (char *addr, int addr_size) const;
-
- /**
- * Return the "dotted decimal" Internet address representation of
- * the hostname. This version is non-reentrant since it returns a
- * pointer to a static data area. You should therefore either
- * (1) do a "deep copy" of the address returned by get_host_addr(), e.g.,
- * using strdup() or (2) use the "reentrant" version of
- * get_host_addr() described above.
- */
- const char *get_host_addr (void) const;
-
- /// Return the 4-byte IP address, converting it into host byte
- /// order.
- ACE_UINT32 get_ip_address (void) const;
-
- /// Return @c true if the IP address is INADDR_ANY or IN6ADDR_ANY.
- bool is_any (void) const;
-
- /// Return @c true if the IP address is IPv4/IPv6 loopback address.
- bool is_loopback (void) const;
-
- /// Return @c true if the IP address is IPv4/IPv6 multicast address.
- bool is_multicast (void) const;
-
-#if defined (ACE_HAS_IPV6)
- /// Return @c true if the IP address is IPv6 linklocal address.
- bool is_linklocal (void) const;
-
- /// Return @c true if the IP address is IPv4-mapped IPv6 address.
- bool is_ipv4_mapped_ipv6 (void) const;
-
- /// Return @c true if the IP address is IPv4-compatible IPv6 address.
- bool is_ipv4_compat_ipv6 (void) const;
-#endif /* ACE_HAS_IPV6 */
-
- /**
- * Returns @c true if @c this is less than @a rhs. In this context,
- * "less than" is defined in terms of IP address and TCP port
- * number. This operator makes it possible to use @c ACE_INET_Addrs
- * in STL maps.
- */
- bool operator < (const ACE_INET_Addr &rhs) const;
-
- /// Compare two addresses for equality. The addresses are considered
- /// equal if they contain the same IP address and port number.
- bool operator == (const ACE_INET_Addr &SAP) const;
-
- /// Compare two addresses for inequality.
- bool operator != (const ACE_INET_Addr &SAP) const;
-
- /// A variation of the equality operator, this method only compares the
- /// IP address and ignores the port number.
- bool is_ip_equal (const ACE_INET_Addr &SAP) const;
-
- /// Computes and returns hash value.
- virtual u_long hash (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Insure that @a hostname is properly null-terminated.
- int get_host_name_i (char hostname[], size_t hostnamelen) const;
-
- // Methods to gain access to the actual address of
- // the underlying internet address structure.
- void *ip_addr_pointer (void) const;
- int ip_addr_size (void) const;
- int determine_type (void) const;
-
- /// Initialize underlying inet_addr_ to default values
- void reset (void);
-
- /// Underlying representation.
- /// This union uses the knowledge that the two structures share the
- /// first member, sa_family (as all sockaddr structures do).
- union
- {
- sockaddr_in in4_;
-#if defined (ACE_HAS_IPV6)
- sockaddr_in6 in6_;
-#endif /* ACE_HAS_IPV6 */
- } inet_addr_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/INET_Addr.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_INET_ADDR_H */
-
diff --git a/dep/include/ace/INET_Addr.inl b/dep/include/ace/INET_Addr.inl
deleted file mode 100644
index e17048e0142..00000000000
--- a/dep/include/ace/INET_Addr.inl
+++ /dev/null
@@ -1,256 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: INET_Addr.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_string.h"
-#include "ace/Global_Macros.h"
-#include "ace/OS_NS_arpa_inet.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE void
-ACE_INET_Addr::reset (void)
-{
- ACE_OS::memset (&this->inet_addr_, 0, sizeof (this->inet_addr_));
- if (this->get_type() == AF_INET)
- {
-#ifdef ACE_HAS_SOCKADDR_IN_SIN_LEN
- this->inet_addr_.in4_.sin_len = sizeof (this->inet_addr_.in4_);
-#endif
- this->inet_addr_.in4_.sin_family = AF_INET;
- }
-#if defined (ACE_HAS_IPV6)
- else if (this->get_type() == AF_INET6)
- {
-#ifdef ACE_HAS_SOCKADDR_IN6_SIN6_LEN
- this->inet_addr_.in6_.sin6_len = sizeof (this->inet_addr_.in6_);
-#endif
- this->inet_addr_.in6_.sin6_family = AF_INET6;
- }
-#endif /* ACE_HAS_IPV6 */
-}
-
-ACE_INLINE int
-ACE_INET_Addr::determine_type (void) const
-{
-#if defined (ACE_HAS_IPV6)
-# if defined (ACE_USES_IPV4_IPV6_MIGRATION)
- return ACE::ipv6_enabled () ? AF_INET6 : AF_INET;
-# else
- return AF_INET6;
-# endif /* ACE_USES_IPV4_IPV6_MIGRATION */
-#else
- return AF_INET;
-#endif /* ACE_HAS_IPV6 */
-}
-
-ACE_INLINE void *
-ACE_INET_Addr::ip_addr_pointer (void) const
-{
-#if defined (ACE_HAS_IPV6)
- if (this->get_type () == PF_INET)
- return (void*)&this->inet_addr_.in4_.sin_addr;
- else
- return (void*)&this->inet_addr_.in6_.sin6_addr;
-#else
- return (void*)&this->inet_addr_.in4_.sin_addr;
-#endif
-}
-
-ACE_INLINE int
-ACE_INET_Addr::ip_addr_size (void) const
-{
- // Since this size value is used to pass to other host db-type
- // functions (gethostbyaddr, etc.) the length is of int type.
- // Thus, cast all these sizes back to int. They're all well
- // within the range of an int anyway.
-#if defined (ACE_HAS_IPV6)
- if (this->get_type () == PF_INET)
- return static_cast<int> (sizeof this->inet_addr_.in4_.sin_addr);
- else
- return static_cast<int> (sizeof this->inet_addr_.in6_.sin6_addr);
-#else
- // These _UNICOS changes were picked up from pre-IPv6 code in
- // get_host_name_i... the IPv6 section above may need something
- // similar, so keep an eye out for it.
-# if !defined(_UNICOS)
- return static_cast<int> (sizeof this->inet_addr_.in4_.sin_addr.s_addr);
-# else /* _UNICOS */
- return static_cast<int> (sizeof this->inet_addr_.in4_.sin_addr);
-# endif /* ! _UNICOS */
-#endif /* ACE_HAS_IPV6 */
-}
-
-// Return the port number, converting it into host byte order...
-
-ACE_INLINE u_short
-ACE_INET_Addr::get_port_number (void) const
-{
- ACE_TRACE ("ACE_INET_Addr::get_port_number");
-#if defined (ACE_LACKS_NTOHS)
- ACE_NOTSUP_RETURN (0);
-#elif defined (ACE_HAS_IPV6)
- if (this->get_type () == PF_INET)
- return ntohs (this->inet_addr_.in4_.sin_port);
- else
- return ntohs (this->inet_addr_.in6_.sin6_port);
-#else
- return ntohs (this->inet_addr_.in4_.sin_port);
-#endif /* ACE_HAS_IPV6 */
-}
-
-ACE_INLINE int
-ACE_INET_Addr::get_addr_size (void) const
-{
- ACE_TRACE ("ACE_INET_Addr::get_addr_size");
-#if defined (ACE_HAS_IPV6)
- if (this->get_type () == PF_INET)
- return sizeof this->inet_addr_.in4_;
- else
- return sizeof this->inet_addr_.in6_;
-#else
- return sizeof this->inet_addr_.in4_;
-#endif /* ACE_HAS_IPV6 */
-}
-
-ACE_INLINE bool
-ACE_INET_Addr::operator < (const ACE_INET_Addr &rhs) const
-{
-#if defined (ACE_HAS_IPV6)
- if (this->get_type() != rhs.get_type())
- {
- return this->get_type() < rhs.get_type();
- }
-
- if (this->get_type() == PF_INET6)
- {
- int memval = ACE_OS::memcmp (this->ip_addr_pointer(),
- rhs.ip_addr_pointer(),
- this->ip_addr_size());
-
- return memval < 0
- || (memval == 0
- && (this->get_port_number() < rhs.get_port_number()
- || (this->get_port_number() == rhs.get_port_number()
- && this->inet_addr_.in6_.sin6_scope_id <
- rhs.inet_addr_.in6_.sin6_scope_id)));
- }
-#endif
-
- return this->get_ip_address () < rhs.get_ip_address ()
- || (this->get_ip_address () == rhs.get_ip_address ()
- && this->get_port_number () < rhs.get_port_number ());
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_INET_Addr::set (u_short port_number,
- const wchar_t host_name[],
- int encode,
- int address_family)
-{
- return this->set (port_number,
- ACE_Wide_To_Ascii (host_name).char_rep (),
- encode,
- address_family);
-}
-
-ACE_INLINE int
-ACE_INET_Addr::set (const wchar_t port_name[],
- const wchar_t host_name[],
- const wchar_t protocol[])
-{
- return this->set (ACE_Wide_To_Ascii (port_name).char_rep (),
- ACE_Wide_To_Ascii (host_name).char_rep (),
- ACE_Wide_To_Ascii (protocol).char_rep ());
-}
-
-ACE_INLINE int
-ACE_INET_Addr::set (const wchar_t port_name[],
- ACE_UINT32 ip_addr,
- const wchar_t protocol[])
-{
- return this->set (ACE_Wide_To_Ascii (port_name).char_rep (),
- ip_addr,
- ACE_Wide_To_Ascii (protocol).char_rep ());
-}
-
-ACE_INLINE int
-ACE_INET_Addr::set (const wchar_t addr[], int address_family)
-{
- return this->set (ACE_Wide_To_Ascii (addr).char_rep (), address_family);
-}
-
-#endif /* ACE_HAS_WCHAR */
-
-// Return @c true if the IP address is INADDR_ANY or IN6ADDR_ANY.
-ACE_INLINE bool
-ACE_INET_Addr::is_any (void) const
-{
-#if defined (ACE_HAS_IPV6)
- if (this->get_type () == AF_INET6)
- return IN6_IS_ADDR_UNSPECIFIED (&this->inet_addr_.in6_.sin6_addr);
-#endif /* ACE_HAS_IPV6 */
-
- return (this->inet_addr_.in4_.sin_addr.s_addr == INADDR_ANY);
-}
-
-// Return @c true if the IP address is IPv4/IPv6 loopback address.
-ACE_INLINE bool
-ACE_INET_Addr::is_loopback (void) const
-{
-#if defined (ACE_HAS_IPV6)
- if (this->get_type () == AF_INET6)
- return IN6_IS_ADDR_LOOPBACK (&this->inet_addr_.in6_.sin6_addr);
-#endif /* ACE_HAS_IPV6 */
-
- // RFC 3330 defines loopback as any address with 127.x.x.x
- return ((this->get_ip_address () & 0XFF000000) == (INADDR_LOOPBACK & 0XFF000000));
-}
-
-// Return @c true if the IP address is IPv4/IPv6 multicast address.
-ACE_INLINE bool
-ACE_INET_Addr::is_multicast (void) const
-{
-#if defined (ACE_HAS_IPV6)
- if (this->get_type() == AF_INET6)
- return this->inet_addr_.in6_.sin6_addr.s6_addr[0] == 0xFF;
-#endif /* ACE_HAS_IPV6 */
- return
- this->inet_addr_.in4_.sin_addr.s_addr >= 0xE0000000 && // 224.0.0.0
- this->inet_addr_.in4_.sin_addr.s_addr <= 0xEFFFFFFF; // 239.255.255.255
-}
-
-#if defined (ACE_HAS_IPV6)
-// Return @c true if the IP address is IPv6 linklocal address.
-ACE_INLINE bool
-ACE_INET_Addr::is_linklocal (void) const
-{
- if (this->get_type () == AF_INET6)
- return IN6_IS_ADDR_LINKLOCAL (&this->inet_addr_.in6_.sin6_addr);
-
- return false;
-}
-
-// Return @c true if the IP address is IPv4 mapped IPv6 address.
-ACE_INLINE bool
-ACE_INET_Addr::is_ipv4_mapped_ipv6 (void) const
-{
- if (this->get_type () == AF_INET6)
- return IN6_IS_ADDR_V4MAPPED (&this->inet_addr_.in6_.sin6_addr);
-
- return false;
-}
-
-// Return @c true if the IP address is IPv4-compatible IPv6 address.
-ACE_INLINE bool
-ACE_INET_Addr::is_ipv4_compat_ipv6 (void) const
-{
- if (this->get_type () == AF_INET6)
- return IN6_IS_ADDR_V4COMPAT (&this->inet_addr_.in6_.sin6_addr);
-
- return false;
-}
-#endif /* ACE_HAS_IPV6 */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/IOStream.h b/dep/include/ace/IOStream.h
deleted file mode 100644
index be66c857962..00000000000
--- a/dep/include/ace/IOStream.h
+++ /dev/null
@@ -1,512 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file IOStream.h
- *
- * $Id: IOStream.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author James CE Johnson <jcej@lads.com>
- * @author Jim Crossley <jim@lads.com>
- */
-//=============================================================================
-
-#ifndef ACE_IOSTREAM_H
-#define ACE_IOSTREAM_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// Needed on Windows for streambuf
-// FUZZ: disable check_for_streams_include
-#include "ace/streams.h"
-
-// This is a temporary restriction - ACE_IOStream is only enabled if the
-// compiler does not supply the standard C++ library (and standard iostreams)
-// or, if it does, the platform is explicitly set to use old iostreams
-// by its config.h file.
-// This restriction is recorded in Bugzilla entry 857.
-#if defined (ACE_HAS_STANDARD_CPP_LIBRARY) && (ACE_HAS_STANDARD_CPP_LIBRARY == 1)
-# if !defined (ACE_USES_OLD_IOSTREAMS) && !defined (ACE_LACKS_ACE_IOSTREAM)
-# define ACE_LACKS_ACE_IOSTREAM
-# endif /* !ACE_USES_OLD_IOSTREAMS && !ACE_LACKS_ACE_IOSTREAM */
-#endif /* ACE_HAS_STANDARD_CPP_LIBRARY */
-
-#if !defined (ACE_LACKS_ACE_IOSTREAM)
-
-# if defined (ACE_HAS_STRING_CLASS)
-# if defined (ACE_WIN32) && defined (_MSC_VER)
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef CString ACE_IOStream_String;
-ACE_END_VERSIONED_NAMESPACE_DECL
-# else
-# if !defined (ACE_HAS_STDCPP_STL_INCLUDES)
-#include /**/ <String.h>
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef String ACE_IOStream_String;
-ACE_END_VERSIONED_NAMESPACE_DECL
-# else
-# include /**/ <string>
-
-# if defined(ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef std::string ACE_IOStream_String;
-ACE_END_VERSIONED_NAMESPACE_DECL
-# else
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef string ACE_IOStream_String;
-ACE_END_VERSIONED_NAMESPACE_DECL
-# endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
-# endif /* ! ACE_HAS_STDCPP_STL_INCLUDES */
-# endif /* ACE_WIN32 && defined (_MSC_VER) */
-
-# if defined (__DECCXX_VER)
-# if __DECCXX_VER < 50700000
-# include /**/ <stl_macros>
-# else
-# include /**/ <stdcomp>
-# endif /* __DECCXX_VER < 50700000 */
-# endif /* __DECCXX_VER */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Export ACE_Quoted_String : public ACE_IOStream_String
-{
-public:
- inline ACE_Quoted_String (void) { *this = ""; }
- inline ACE_Quoted_String (const char *c) { *this = ACE_IOStream_String (c); }
- inline ACE_Quoted_String (const ACE_IOStream_String &s) { *this = s; }
- inline ACE_Quoted_String &operator= (const ACE_IOStream_String& s)
- {
- return (ACE_Quoted_String &) ACE_IOStream_String::operator= (s);
- }
- inline ACE_Quoted_String &operator = (const char c) {
- return (ACE_Quoted_String &) ACE_IOStream_String::operator= (c);
- }
- inline ACE_Quoted_String &operator = (const char *c) {
- return (ACE_Quoted_String &) ACE_IOStream_String::operator= (c);
- }
- inline bool operator < (const ACE_Quoted_String &s) const {
- return *(ACE_IOStream_String *) this < (ACE_IOStream_String) s;
- }
-# if defined (ACE_WIN32) && defined (_MSC_VER)
- inline int length (void) { return this->GetLength (); }
-# endif /* ACE_WIN32 && defined (_MSC_VER) */
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# endif /* ACE_HAS_STRING_CLASS */
-
-# include "ace/Time_Value.h"
-# include "ace/os_include/sys/os_types.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Streambuf
- *
- * @brief Create your custom streambuf by providing and ACE_*_Stream
- * object to this template. I have tested it with
- * ACE_SOCK_Stream and it should work fine for others as well.
- *
- * For any iostream object, the real work is done by the
- * underlying streambuf class. That is what we create here.
- * A streambuf has an internal buffer area into which data is
- * read and written as the iostream requests and provides data.
- * At some point during the read process, the iostream will
- * realize that the streambuf has no more data. The underflow
- * function of the streambuf is then called.
- * Likewise, during the write process, the iostream will
- * eventually notice that the streabuf's buffer has become full
- * and will invoke the overflow function.
- * The empty/full state of the read/write "buffers" are
- * controled by two sets pointers. One set is dedicated to
- * read, the other to write. These pointers, in turn, reference
- * a common buffer that is to be shared by both read and write
- * operations. It is this common buffer to which data is
- * written and from which it is read.
- * The common buffer is used by functions of the streambuf as
- * well as the iostream. Because of this and the fact that it
- * is "shared" by both read and write operators, there is a
- * danger of data corruption if read and write operations are
- * allowed to take place "at the same time".
- * To prevent data corruption, we manipulate the read and write
- * pointer sets so that the streambuf is in either a read-mode
- * or write-mode at all times and can never be in both modes at
- * the same time.
- * In the constructor: set the read and write sets to NULL This
- * causes the underflow or overflow operators to be invoked at
- * the first IO activity of the iostream.
- * In the underflow function we arrange for the common buffer to
- * reference our read buffer and for the write pointer set to be
- * disabled. If a write operation is performed by the iostream
- * this will cause the overflow function to be invoked.
- * In the overflow function we arrange for the common buffer to
- * reference our write buffer and for the read pointer set to be
- * disabled. This causes the underflow function to be invoked
- * when the iostream "changes our mode".
- * The overflow function will also invoke the send_n function to
- * flush the buffered data to our peer. Similarly, the sync and
- * syncout functions will cause send_n to be invoked to send the
- * data.
- * Since socket's and the like do not support seeking, there can
- * be no method for "syncing" the input. However, since we
- * maintain separate read/write buffers, no data is lost by
- * "syncing" the input. It simply remains buffered.
- */
-class ACE_Export ACE_Streambuf : public streambuf
-{
-public:
-
- /**
- * If the default allocation strategey were used the common buffer
- * would be deleted when the object destructs. Since we are
- * providing separate read/write buffers, it is up to us to manage
- * their memory.
- */
- virtual ~ACE_Streambuf (void);
-
- /// Get the current Time_Value pointer and provide a new one.
- ACE_Time_Value *recv_timeout (ACE_Time_Value *tv = 0);
-
- /**
- * Use this to allocate a new/different buffer for put operations.
- * If you do not provide a buffer pointer, one will be allocated.
- * That is the preferred method. If you do provide a buffer, the
- * size must match that being used by the get buffer. If
- * successful, you will receive a pointer to the current put buffer.
- * It is your responsibility to delete this memory when you are done
- * with it.
- */
- char *reset_put_buffer (char *newBuffer = 0,
- u_int _streambuf_size = 0,
- u_int _pptr = 0 );
-
- /// Return the number of bytes to be 'put' onto the stream media.
- /// pbase + put_avail = pptr
- u_int put_avail (void);
-
- /**
- * Use this to allocate a new/different buffer for get operations.
- * If you do not provide a buffer pointer, one will be allocated.
- * That is the preferred method. If you do provide a buffer, the
- * size must match that being used by the put buffer. If
- * successful, you will receive a pointer to the current get buffer.
- * It is your responsibility to delete this memory when you are done
- * with it.
- */
- char *reset_get_buffer (char *newBuffer = 0,
- u_int _streambuf_size = 0,
- u_int _gptr = 0,
- u_int _egptr = 0);
-
- /// Return the number of bytes not yet gotten. eback + get_waiting =
- /// gptr
- u_int get_waiting (void);
-
- /// Return the number of bytes in the get area (includes some already
- /// gotten); eback + get_avail = egptr
- u_int get_avail (void);
-
- /// Query the streambuf for the size of its buffers.
- u_int streambuf_size (void);
-
- /// Did we take an error because of an IO operation timeout?
- /// @note Invoking this resets the flag.
- u_char timeout (void);
-
-protected:
- ACE_Streambuf (u_int streambuf_size,
- int io_mode);
-
- /// Sync both input and output. See syncin/syncout below for
- /// descriptions.
- virtual int sync (void);
-
- // = Signatures for the underflow/overflow discussed above.
- virtual int underflow (void);
-
- /// The overflow function receives the character which caused the
- /// overflow.
- virtual int overflow (int c = EOF);
-
- /// Resets the <base> pointer and streambuf mode. This is used
- /// internally when get/put buffers are allocatd.
- void reset_base (void);
-
-protected:
- // = Two pointer sets for manipulating the read/write areas.
- char *eback_saved_;
- char *gptr_saved_;
- char *egptr_saved_;
- char *pbase_saved_;
- char *pptr_saved_;
- char *epptr_saved_;
-
- // = With cur_mode_ we keep track of our current IO mode.
-
- // This helps us to optimize the underflow/overflow functions.
- u_char cur_mode_;
- const u_char get_mode_;
- const u_char put_mode_;
-
- /// mode tells us if we're working for an istream, ostream, or
- /// iostream.
- int mode_;
-
- /// This defines the size of the input and output buffers. It can be
- /// set by the object constructor.
- const u_int streambuf_size_;
-
- /// Did we take an error because of an IO operation timeout?
- u_char timeout_;
-
- /// We want to allow the user to provide Time_Value pointers to
- /// prevent infinite blocking while waiting to receive data.
- ACE_Time_Value recv_timeout_value_;
- ACE_Time_Value *recv_timeout_;
-
- /**
- * syncin is called when the input needs to be synced with the
- * source file. In a filebuf, this results in the <seek> system
- * call being used. We can't do that on socket-like connections, so
- * this does basically nothing. That's safe because we have a
- * separate read buffer to maintain the already-read data. In a
- * filebuf, the single common buffer is used forcing the <seek>
- * call.
- */
- int syncin (void);
-
- /// syncout is called when the output needs to be flushed. This is
- /// easily done by calling the peer's send_n function.
- int syncout (void);
-
- /// flushbuf is the worker of syncout. It is a separate function
- /// because it gets used sometimes in different context.
- int flushbuf (void);
-
- /**
- * fillbuf is called in a couple of places. This is the worker of
- * underflow. It will attempt to fill the read buffer from the
- * peer.
- */
- int fillbuf (void);
-
- /**
- * Used by fillbuf and others to get exactly one byte from the peer.
- * recv_n is used to be sure we block until something is available.
- * It is virtual because we really need to override it for
- * datagram-derived objects.
- */
- virtual int get_one_byte (void);
-
- /**
- * Stream connections and "unconnected connections" (ie --
- * datagrams) need to work just a little differently. We derive
- * custom Streambuf objects for them and provide these functions at
- * that time.
- */
- virtual ssize_t send (char *buf,
- ssize_t len) = 0;
- virtual ssize_t recv (char *buf,
- ssize_t len,
- ACE_Time_Value *tv = 0) = 0;
- virtual ssize_t recv (char *buf,
- ssize_t len,
- int flags,
- ACE_Time_Value *tv = 0) = 0;
- virtual ssize_t recv_n (char *buf,
- ssize_t len,
- int flags = 0,
- ACE_Time_Value *tv = 0) = 0;
-
- virtual ACE_HANDLE get_handle (void);
-
-# if defined (ACE_HAS_STANDARD_CPP_LIBRARY) && (ACE_HAS_STANDARD_CPP_LIBRARY != 0) && !defined (ACE_USES_OLD_IOSTREAMS)
- char *base (void) const
- {
- return cur_mode_ == get_mode_ ? eback_saved_
- : cur_mode_ == put_mode_ ? pbase_saved_
- : 0;
- }
- char *ebuf (void) const
- {
- return cur_mode_ == 0 ? 0 : base () + streambuf_size_;
- }
-
- int blen (void) const
- {
- return streambuf_size_;
- }
-
- void setb (char* b, char* eb, int /* a */=0)
- {
- setbuf (b, (eb - b));
- }
-
- int out_waiting (void)
- {
- return pptr () - pbase ();
- }
-# endif /* ACE_HAS_STANDARD_CPP_LIBRARY */
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-///////////////////////////////////////////////////////////////////////////
-
-// These typedefs are provided by G++ (on some systems?) without the
-// trailing '_'. Since we can't count on 'em, I've defined them to
-// what GNU wants here.
-//
-typedef ios& (*__manip_)(ios&);
-typedef istream& (*__imanip_)(istream&);
-typedef ostream& (*__omanip_)(ostream&);
-
-// Trying to do something like is shown below instead of using the
-// __*manip typedefs causes Linux do segfault when "<<endl" is done.
-//
-// virtual MT& operator<<(ios& (*func)(ios&)) { (*func)(*this); return *this; }
-
-// This macro defines the get operator for class MT into datatype DT.
-// We will use it below to quickly override most (all?) iostream get
-// operators. Notice how the <ipfx> and <isfx> functions are used.
-
-#define GET_SIG(MT,DT) inline virtual MT& operator>> (DT v)
-# if (defined (__SUNPRO_CC) && __SUNPRO_CC > 0x510)
-#define GET_CODE { \
- if (ipfx (0)) \
- { \
- (*((istream*)this)) >> (v); \
- } \
- isfx (); \
- return *this; \
- }
-# else
-#define GET_CODE { \
- if (ipfx (0)) \
- { \
- iostream::operator>> (v); \
- } \
- isfx (); \
- return *this; \
- }
-# endif
-#define GET_PROT(MT,DT,CODE) GET_SIG(MT,DT) CODE
-#define GET_FUNC(MT,DT) GET_PROT(MT,DT,GET_CODE)
-
-// This macro defines the put operator for class MT into datatype DT.
-// We will use it below to quickly override most (all?) iostream put
-// operators. Notice how the <opfx> and <osfx> functions are used.
-
-#define PUT_SIG(MT,DT) inline virtual MT& operator<< (DT v)
-# if (defined (__SUNPRO_CC) && __SUNPRO_CC > 0x510)
-#define PUT_CODE { \
- if (opfx ()) \
- { \
- (*((ostream *) this)) << (v); \
- } \
- osfx (); \
- return *this; \
- }
-# else
-#define PUT_CODE { \
- if (opfx ()) \
- { \
- iostream::operator<< (v); \
- } \
- osfx (); \
- return *this; \
- }
-# endif
-#define PUT_PROT(MT,DT,CODE) PUT_SIG(MT,DT) CODE
-#define PUT_FUNC(MT,DT) PUT_PROT(MT,DT,PUT_CODE)
-
-// These are necessary in case somebody wants to derive from us and
-// override one of these with a custom approach.
-
-# if defined (ACE_LACKS_CHAR_RIGHT_SHIFTS)
-#define GET_FUNC_SET0(MT,CODE,CODE2) \
- GET_PROT(MT,short &,CODE) \
- GET_PROT(MT,u_short &,CODE) \
- GET_PROT(MT,int &,CODE) \
- GET_PROT(MT,u_int &,CODE) \
- GET_PROT(MT,long &,CODE) \
- GET_PROT(MT,u_long &,CODE) \
- GET_PROT(MT,float &,CODE) \
- GET_PROT(MT,double &,CODE) \
- inline virtual MT& operator>>(__omanip_ func) CODE2 \
- inline virtual MT& operator>>(__manip_ func) CODE2
-# else
-#define GET_FUNC_SET0(MT,CODE,CODE2) \
- GET_PROT(MT,short &,CODE) \
- GET_PROT(MT,u_short &,CODE) \
- GET_PROT(MT,int &,CODE) \
- GET_PROT(MT,u_int &,CODE) \
- GET_PROT(MT,long &,CODE) \
- GET_PROT(MT,u_long &,CODE) \
- GET_PROT(MT,float &,CODE) \
- GET_PROT(MT,double &,CODE) \
- GET_PROT(MT,char &,CODE) \
- GET_PROT(MT,u_char &,CODE) \
- GET_PROT(MT,char *,CODE) \
- GET_PROT(MT,u_char *,CODE) \
- inline virtual MT& operator>>(__omanip_ func) CODE2 \
- inline virtual MT& operator>>(__manip_ func) CODE2
-# endif
-
-#define PUT_FUNC_SET0(MT,CODE,CODE2) \
- PUT_PROT(MT,short,CODE) \
- PUT_PROT(MT,u_short,CODE) \
- PUT_PROT(MT,int,CODE) \
- PUT_PROT(MT,u_int,CODE) \
- PUT_PROT(MT,long,CODE) \
- PUT_PROT(MT,u_long,CODE) \
- PUT_PROT(MT,float,CODE) \
- PUT_PROT(MT,double,CODE) \
- PUT_PROT(MT,char,CODE) \
- PUT_PROT(MT,u_char,CODE) \
- PUT_PROT(MT,const char *,CODE) \
- PUT_PROT(MT,u_char *,CODE) \
- PUT_PROT(MT,void *,CODE) \
- inline virtual MT& operator<<(__omanip_ func) CODE2 \
- inline virtual MT& operator<<(__manip_ func) CODE2
-
-# if defined (ACE_LACKS_SIGNED_CHAR)
- #define GET_FUNC_SET1(MT,CODE,CODE2) GET_FUNC_SET0(MT,CODE,CODE2)
- #define PUT_FUNC_SET1(MT,CODE,CODE2) PUT_FUNC_SET0(MT,CODE,CODE2)
-# else
- #define GET_FUNC_SET1(MT,CODE,CODE2) \
- GET_PROT(MT,signed char &,CODE) \
- GET_PROT(MT,signed char *,CODE) \
- GET_FUNC_SET0(MT,CODE,CODE2)
-
- #define PUT_FUNC_SET1(MT,CODE,CODE2) \
- PUT_FUNC(MT,signed char) \
- PUT_FUNC(MT,const signed char *) \
- PUT_FUNC_SET0(MT,CODE,CODE2)
-# endif /* ACE_LACKS_SIGNED_CHAR */
-
-#define GET_MANIP_CODE { if (ipfx ()) { (*func) (*this); } isfx (); return *this; }
-#define PUT_MANIP_CODE { if (opfx ()) { (*func) (*this); } osfx (); return *this; }
-
-#define GET_FUNC_SET(MT) GET_FUNC_SET1(MT,GET_CODE,GET_MANIP_CODE)
-#define PUT_FUNC_SET(MT) PUT_FUNC_SET1(MT,PUT_CODE,PUT_MANIP_CODE)
-#define GETPUT_FUNC_SET(MT) GET_FUNC_SET(MT) PUT_FUNC_SET(MT)
-
-#define GET_SIG_SET(MT) GET_FUNC_SET1(MT,= 0;,= 0;)
-#define PUT_SIG_SET(MT) PUT_FUNC_SET1(MT,= 0;,= 0;)
-#define GETPUT_SIG_SET(MT) GET_SIG_SET(MT) PUT_SIG_SET(MT)
-
-// Include the templates here.
-# include "ace/IOStream_T.h"
-#endif /* !ACE_LACKS_ACE_IOSTREAM && ACE_USES_OLD_IOSTREAMS */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_IOSTREAM_H */
-
diff --git a/dep/include/ace/IOStream_T.h b/dep/include/ace/IOStream_T.h
deleted file mode 100644
index e0046f921a3..00000000000
--- a/dep/include/ace/IOStream_T.h
+++ /dev/null
@@ -1,298 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file IOStream_T.h
- *
- * $Id: IOStream_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author James CE Johnson <jcej@lads.com>
- * @author Jim Crossley <jim@lads.com>
- *
- * This file should not be included directly by application
- * code. Instead, it should include "ace/IOStream.h". That's because
- * we only put some conditional compilations in that file.
- */
-//=============================================================================
-
-#ifndef ACE_IOSTREAM_T_H
-#define ACE_IOSTREAM_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/IOStream.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_ACE_IOSTREAM)
-
-# include "ace/INET_Addr.h"
-# include "ace/Global_Macros.h"
-
-# if defined (ACE_LACKS_IOSTREAM_FX)
-# include "ace/os_include/os_ctype.h"
-# endif /**/
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_STRING_CLASS)
-template <class STREAM> STREAM & operator>> (STREAM &stream, ACE_Quoted_String &str);
-template <class STREAM> STREAM & operator<< (STREAM &stream, ACE_Quoted_String &str);
-# endif /* defined (ACE_HAS_STRING_CLASS) */
-
-template <class STREAM>
-class ACE_Streambuf_T : public ACE_Streambuf
-{
-public:
- /**
- * We will be given a STREAM by the iostream object which creates
- * us. See the ACE_IOStream template for how that works. Like
- * other streambuf objects, we can be input-only, output-only or
- * both.
- */
- ACE_Streambuf_T (STREAM *peer,
- u_int streambuf_size = ACE_STREAMBUF_SIZE,
- int io_mode = ios::in | ios::out);
-
- virtual ssize_t send (char *buf, ssize_t len);
-
- virtual ssize_t recv (char *buf,
- ssize_t len,
- ACE_Time_Value *tv = 0);
-
- virtual ssize_t recv (char *buf,
- ssize_t len,
- int flags,
- ACE_Time_Value * tv = 0);
-
- virtual ssize_t recv_n (char *buf,
- ssize_t len,
- int flags = 0,
- ACE_Time_Value *tv = 0);
-
-protected:
- virtual ACE_HANDLE get_handle (void);
-
- /// This will be our ACE_SOCK_Stream or similar object.
- STREAM *peer_;
-};
-
-/**
- * @class ACE_IOStream
- *
- * @brief A template adapter for creating an iostream-like object using
- * an ACE IPC Stream for the actual I/O. Iostreams use an
- * underlying streambuf object for the IO interface. The
- * iostream class and derivatives provide you with a host of
- * convenient operators that access the streambuf.
- *
- * We inherit all characteristics of iostream and your <STREAM>
- * class. When you create a new class from this template, you
- * can use it anywhere you would have used your original
- * <STREAM> class.
- * To create an iostream for your favorite ACE IPC class (e.g.,
- * ACE_SOCK_Stream), feed that class to this template's
- * <STREAM> parameter, e.g.,
- * typedef ACE_Svc_Handler<ACE_SOCK_iostream,
- * ACE_INET_Addr, ACE_NULL_SYNCH>
- * Service_Handler;
- * Because the operators in the iostream class are not virtual,
- * you cannot easily provide overloads in your custom
- * ACE_IOStream classes. To make these things work correctly,
- * you need to overload ALL operators of the ACE_IOStream you
- * create. I've attempted to do that here to make things easier
- * for you but there are no guarantees.
- * In the iostream.cpp file is an example of why it is necessary
- * to overload all of the get/put operators when you want to
- * customize only one or two.
- */
-template <class STREAM>
-class ACE_IOStream : public iostream, public STREAM
-{
-public:
- // = Initialization and termination methods.
- ACE_IOStream (STREAM &stream,
- u_int streambuf_size = ACE_STREAMBUF_SIZE);
-
- /**
- * The default constructor. This will initiailze your STREAM and
- * then setup the iostream baseclass to use a custom streambuf based
- * on STREAM.
- */
- ACE_IOStream (u_int streambuf_size = ACE_STREAMBUF_SIZE);
-
- /// We have to get rid of the <streambuf_> ourselves since we gave it
- /// to the <iostream> base class;
- virtual ~ACE_IOStream (void);
-
- /// The only ambituity in the multiple inheritance is the <close>
- /// function.
- virtual int close (void);
-
- /**
- * Returns 1 if we're at the end of the <STREAM>, i.e., if the
- * connection has closed down or an error has occurred, else 0.
- * Under the covers, <eof> calls the streambuf's @a timeout function
- * which will reset the timeout flag. As as result, you should save
- * the return of <eof> and check it instead of calling <eof>
- * successively.
- */
- int eof (void) const;
-
-# if defined (ACE_HAS_STRING_CLASS)
- /**
- * A simple string operator. The base <iostream> has them for char*
- * but that isn't always the best thing for a <String>. If we don't
- * provide our own here, we may not get what we want.
- */
- virtual ACE_IOStream<STREAM> &operator>> (ACE_IOStream_String &v);
-
- /// The converse of the <String::put> operator.
- virtual ACE_IOStream<STREAM> &operator<< (ACE_IOStream_String &v);
-
-# endif /* ACE_HAS_STRING_CLASS */
- // = Using the macros to provide get/set operators.
- GETPUT_FUNC_SET (ACE_IOStream<STREAM>)
-
-# if defined (ACE_LACKS_IOSTREAM_FX)
- virtual int ipfx (int noskip = 0)
- {
- if (good ())
- {
- if (tie () != 0)
- tie ()->flush ();
- if (!noskip && flags () & skipws)
- {
- int ch;
- while (isspace (ch = rdbuf ()->sbumpc ()))
- continue;
- if (ch != EOF)
- rdbuf ()->sputbackc (ch);
- }
- if (good ())
- return 1;
- }
-# if !defined (ACE_WIN32)
- // MS VC++ 5.0 doesn't declare setstate.
- setstate (failbit);
-# endif /* !ACE_WIN32 */
- return (0);
- }
- virtual int ipfx0 (void) { return ipfx (0); } // Optimized ipfx(0)
- virtual int ipfx1 (void) // Optimized ipfx(1)
- {
- if (good ())
- {
- if (tie () != 0)
- tie ()->flush ();
- if (good ())
- return 1;
- }
-# if !defined (ACE_WIN32)
- // MS VC++ 5.0 doesn't declare setstate.
- setstate (failbit);
-# endif /* !ACE_WIN32 */
- return (0);
- }
- virtual void isfx (void) { return; }
- virtual int opfx (void)
- {
- if (good () && tie () != 0)
- tie ()->flush ();
- return good ();
- }
- virtual void osfx (void) { if (flags () & unitbuf) flush (); }
-# else
-# if defined (__GNUC__)
- virtual int ipfx0 (void) { return iostream::ipfx0 (); } // Optimized ipfx(0)
- virtual int ipfx1 (void) { return iostream::ipfx1 (); } // Optimized ipfx(1)
-# else
- virtual int ipfx0 (void) { return iostream::ipfx (0); }
- virtual int ipfx1 (void) { return iostream::ipfx (1); }
-# endif /* __GNUC__ */
- virtual int ipfx (int need = 0) { return iostream::ipfx (need); }
- virtual void isfx (void) { iostream::isfx (); }
- virtual int opfx (void) { return iostream::opfx (); }
- virtual void osfx (void) { iostream::osfx (); }
-# endif /* ACE_LACKS_IOSTREAM_FX */
-
- /// Allow the programmer to provide a timeout for read operations.
- /// Give it a pointer to NULL to block forever.
- ACE_IOStream<STREAM> & operator>> (ACE_Time_Value *&tv);
-
-protected:
- /// This is where all of the action takes place. The streambuf_ is
- /// the interface to the underlying STREAM.
- ACE_Streambuf_T<STREAM> *streambuf_;
-
-private:
- // = Private methods.
-
- // We move these into the private section so that they cannot be
- // used by the application programmer. This is necessary because
- // streambuf_ will be buffering IO on the STREAM object. If these
- // functions were used in your program, there is a danger of getting
- // the datastream out of sync.
- ACE_UNIMPLEMENTED_FUNC (ssize_t send (...))
- ACE_UNIMPLEMENTED_FUNC (ssize_t recv (...))
- ACE_UNIMPLEMENTED_FUNC (ssize_t send_n (...))
- ACE_UNIMPLEMENTED_FUNC (ssize_t recv_n (...))
-};
-
-/**
- * @class ACE_SOCK_Dgram_SC
- *
- * @brief "Dgram_SC" is short for "Datagram Self-Contained."
- *
- * Datagrams don't have the notion of a "peer". Each send and
- * receive on a datagram can go to a different peer if you want.
- * If you're using datagrams for stream activity, you probably
- * want 'em all to go to (and come from) the same place. That's
- * what this class is for. Here, we keep an address object so
- * that we can remember who last sent us data. When we write
- * back, we're then able to write back to that same address.
- */
-template <class STREAM>
-class ACE_SOCK_Dgram_SC : public STREAM
-{
-public:
- ACE_SOCK_Dgram_SC (void);
- ACE_SOCK_Dgram_SC (STREAM &source,
- ACE_INET_Addr &dest);
- ssize_t send_n (char *buf, ssize_t len);
- ssize_t recv (char *buf,
- ssize_t len,
- ACE_Time_Value *tv = 0);
- ssize_t recv (char *buf,
- ssize_t len,
- int flags,
- ACE_Time_Value *tv = 0);
- ssize_t recv_n (char *buf,
- ssize_t len,
- int flags = 0,
- ACE_Time_Value *tv = 0);
- int get_remote_addr (ACE_INET_Addr &addr) const;
-
-protected:
- ACE_INET_Addr peer_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (__ACE_INLINE__)
-# include "ace/IOStream_T.inl"
-# endif /* __ACE_INLINE__ */
-
-# if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-# include "ace/IOStream_T.cpp"
-# endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-# if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-# pragma implementation ("IOStream_T.cpp")
-# endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-#endif /* ACE_LACKS_ACE_IOSTREAM */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_IOSTREAM_T_H */
-
diff --git a/dep/include/ace/IOStream_T.inl b/dep/include/ace/IOStream_T.inl
deleted file mode 100644
index 513d6ecb1d2..00000000000
--- a/dep/include/ace/IOStream_T.inl
+++ /dev/null
@@ -1,123 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: IOStream_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Handle_Set.h"
-#include "ace/OS_NS_errno.h"
-#include "ace/OS_NS_sys_select.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class STREAM> ACE_INLINE int
-ACE_IOStream<STREAM>::eof (void) const
-{
- // Get the timeout value of the streambuf
- ACE_Time_Value *timeout = this->streambuf_->recv_timeout (0);
-
- // Reset the timeout value of the streambuf.
- (void) this->streambuf_->recv_timeout (timeout);
-
- char c;
- int rval = this->streambuf_->recv_n (&c,
- sizeof c,
- MSG_PEEK,
- timeout);
-
- // Timeout, not an eof
- if (this->streambuf_->timeout())
- return 0;
-
- // No timeout, got enough data: not eof
- if (rval == sizeof(char))
- return 0;
-
- // No timeout, not enough data: definately eof
- return 1;
-}
-
-template <class STREAM> ACE_INLINE
-ACE_SOCK_Dgram_SC<STREAM>::ACE_SOCK_Dgram_SC (void)
-{
-}
-
-template <class STREAM> ACE_INLINE
-ACE_SOCK_Dgram_SC<STREAM>::ACE_SOCK_Dgram_SC (STREAM &source,
- ACE_INET_Addr &dest)
- : STREAM (source),
- peer_ (dest)
-{
-}
-
-template <class STREAM> ACE_INLINE ssize_t
-ACE_SOCK_Dgram_SC<STREAM>::send_n (char *buf,
- ssize_t len)
-{
- return STREAM::send (buf, len, peer_);
-}
-
-template <class STREAM> ACE_INLINE ssize_t
-ACE_SOCK_Dgram_SC<STREAM>::recv (char *buf,
- ssize_t len,
- ACE_Time_Value *tv)
-{
- //FUZZ: disable check_for_lack_ACE_OS
- return recv (buf, len, 0, tv);
- //FUZZ: enable check_for_lack_ACE_OS
-}
-
-template <class STREAM> ACE_INLINE ssize_t
-ACE_SOCK_Dgram_SC<STREAM>::recv (char *buf,
- ssize_t len,
- int flags,
- ACE_Time_Value *tv)
-{
- if (tv != 0)
- {
- ACE_HANDLE handle = this->get_handle ();
- ACE_Handle_Set handle_set;
-
- handle_set.set_bit (handle);
-
- switch (ACE_OS::select (int (handle) + 1,
- (fd_set *) handle_set, // read_fds.
- (fd_set *) 0, // write_fds.
- (fd_set *) 0, // exception_fds.
- tv))
- {
- case 0:
- errno = ETIME;
- case -1:
- return -1;
- default:
- ; // Do the 'recv' below
- }
- }
-
- int rval = STREAM::recv (buf, len, peer_, flags);
-#if defined (ACE_WIN32)
- if (rval == SOCKET_ERROR)
- if (::WSAGetLastError () == WSAEMSGSIZE)
- if (ACE_BIT_ENABLED (flags, MSG_PEEK))
- rval = len;
-#endif /* ACE_WIN32 */
- return rval < len ? rval : len;
-}
-
-template <class STREAM> ACE_INLINE ssize_t
-ACE_SOCK_Dgram_SC<STREAM>::recv_n (char *buf,
- ssize_t len,
- int flags,
- ACE_Time_Value *tv)
-{
- int rval = this->recv (buf, len, flags, tv);
- return rval;
-}
-
-template <class STREAM> ACE_INLINE int
-ACE_SOCK_Dgram_SC<STREAM>::get_remote_addr (ACE_INET_Addr &addr) const
-{
- addr = peer_;
- return 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/IO_Cntl_Msg.h b/dep/include/ace/IO_Cntl_Msg.h
deleted file mode 100644
index fafc1fc7e1a..00000000000
--- a/dep/include/ace/IO_Cntl_Msg.h
+++ /dev/null
@@ -1,112 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file IO_Cntl_Msg.h
- *
- * $Id: IO_Cntl_Msg.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//==========================================================================
-
-#ifndef ACE_IO_CNTL_MSG_H
-#define ACE_IO_CNTL_MSG_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-#include "ace/os_include/os_stddef.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_IO_Cntl_Msg
- *
- * @brief Data format for IOCTL messages
- */
-class ACE_Export ACE_IO_Cntl_Msg
-{
-public:
- enum
- {
- /// Set the low water mark.
- SET_LWM = 1,
- /// Get the low water mark.
- GET_LWM = 2,
- /// Set the high water mark.
- SET_HWM = 3,
- /// Get the high water mark.
- GET_HWM = 4,
- /// Link modules
- MOD_LINK = 5,
- /// Unlink modules
- MOD_UNLINK = 6
- };
-
- typedef unsigned short ACE_IO_Cntl_Cmds;
-
- // = Initialization method.
- /// Initialize the control message.
- ACE_IO_Cntl_Msg (ACE_IO_Cntl_Cmds c);
-
- // = Get/set methods
-
- /// Get command.
- ACE_IO_Cntl_Cmds cmd (void);
-
- /// Set command.
- void cmd (ACE_IO_Cntl_Cmds c);
-
- /// Get count.
- size_t count (void);
-
- /// Set count.
- void count (size_t c);
-
- /// Get error.
- int error (void);
-
- /// Set error.
- void error (int e);
-
- /// Get return value.
- int rval (void);
-
- /// Set return value.
- void rval (int r);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Command.
- ACE_IO_Cntl_Cmds cmd_;
-
- /// Count.
- size_t count_;
-
- /// Error.
- int error_;
-
- /// Return value
- int rval_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/IO_Cntl_Msg.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_IO_CNTL_MSG_H */
-
diff --git a/dep/include/ace/IO_Cntl_Msg.inl b/dep/include/ace/IO_Cntl_Msg.inl
deleted file mode 100644
index 6b8558e0806..00000000000
--- a/dep/include/ace/IO_Cntl_Msg.inl
+++ /dev/null
@@ -1,61 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: IO_Cntl_Msg.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_IO_Cntl_Msg::ACE_IO_Cntl_Msg (ACE_IO_Cntl_Cmds c)
-{
- this->cmd_ = c;
-}
-
-ACE_INLINE ACE_IO_Cntl_Msg::ACE_IO_Cntl_Cmds
-ACE_IO_Cntl_Msg::cmd (void)
-{
- return this->cmd_;
-}
-
-ACE_INLINE void
-ACE_IO_Cntl_Msg::cmd (ACE_IO_Cntl_Cmds c)
-{
- this->cmd_ = c;
-}
-
-ACE_INLINE size_t
-ACE_IO_Cntl_Msg::count (void)
-{
- return this->count_;
-}
-
-ACE_INLINE void
-ACE_IO_Cntl_Msg::count (size_t c)
-{
- this->count_ = c;
-}
-
-ACE_INLINE int
-ACE_IO_Cntl_Msg::error (void)
-{
- return this->error_;
-}
-
-ACE_INLINE void
-ACE_IO_Cntl_Msg::error (int e)
-{
- this->error_ = e;
-}
-
-ACE_INLINE int
-ACE_IO_Cntl_Msg::rval (void)
-{
- return this->rval_;
-}
-
-ACE_INLINE void
-ACE_IO_Cntl_Msg::rval (int r)
-{
- this->rval_ = r;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/IO_SAP.h b/dep/include/ace/IO_SAP.h
deleted file mode 100644
index a9826995195..00000000000
--- a/dep/include/ace/IO_SAP.h
+++ /dev/null
@@ -1,95 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file IO_SAP.h
- *
- * $Id: IO_SAP.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_IO_SAP_H
-#define ACE_IO_SAP_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Flag_Manip.h"
-#include "ace/os_include/sys/os_types.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_IO_SAP
- *
- * @brief Defines the methods for the base class of the ACE_IO_SAP
- * abstraction, which includes ACE_FILE and ACE_DEV.
- */
-class ACE_Export ACE_IO_SAP
-{
-public:
- enum
- {
- /// Be consistent with Winsock
- INVALID_HANDLE = -1
- };
-
- /// Default dtor.
- ~ACE_IO_SAP (void);
-
- /// Interface for ioctl.
- int control (int cmd, void *) const;
-
- // = Common I/O handle options related to files.
-
- /**
- * Enable asynchronous I/O (ACE_SIGIO), urgent data (ACE_SIGURG),
- * non-blocking I/O (ACE_NONBLOCK), or close-on-exec (ACE_CLOEXEC),
- * which is passed as the @a value.
- */
- int enable (int value) const;
-
- /**
- * Disable asynchronous I/O (ACE_SIGIO), urgent data (ACE_SIGURG),
- * non-blocking I/O (ACE_NONBLOCK), or close-on-exec (ACE_CLOEXEC),
- * which is passed as the @a value.
- */
- int disable (int value) const;
-
- /// Get the underlying handle.
- ACE_HANDLE get_handle (void) const;
-
- /// Set the underlying handle.
- void set_handle (ACE_HANDLE handle);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Ensure that ACE_IO_SAP is an abstract base class.
- ACE_IO_SAP (void);
-
-private:
- /// Underlying I/O handle.
- ACE_HANDLE handle_;
-
- /// Cache the process ID.
- static pid_t pid_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/IO_SAP.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_IO_SAP_H */
-
diff --git a/dep/include/ace/IO_SAP.inl b/dep/include/ace/IO_SAP.inl
deleted file mode 100644
index 78b2ee31fc0..00000000000
--- a/dep/include/ace/IO_SAP.inl
+++ /dev/null
@@ -1,42 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: IO_SAP.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_stropts.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_IO_SAP::~ACE_IO_SAP (void)
-{
- ACE_TRACE ("ACE_IO_SAP::~ACE_IO_SAP");
-}
-
-// Used to return the underlying handle_.
-
-ACE_INLINE ACE_HANDLE
-ACE_IO_SAP::get_handle (void) const
-{
- ACE_TRACE ("ACE_IO_SAP::get_handle");
- return this->handle_;
-}
-
-// Used to set the underlying handle_.
-
-ACE_INLINE void
-ACE_IO_SAP::set_handle (ACE_HANDLE handle)
-{
- ACE_TRACE ("ACE_IO_SAP::set_handle");
- this->handle_ = handle;
-}
-
-// Provides access to the ACE_OS::ioctl system call.
-
-ACE_INLINE int
-ACE_IO_SAP::control (int cmd, void *arg) const
-{
- ACE_TRACE ("ACE_IO_SAP::control");
- return ACE_OS::ioctl (this->handle_, cmd, arg);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/IPC_SAP.h b/dep/include/ace/IPC_SAP.h
deleted file mode 100644
index cc924a24ade..00000000000
--- a/dep/include/ace/IPC_SAP.h
+++ /dev/null
@@ -1,97 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file IPC_SAP.h
- *
- * $Id: IPC_SAP.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_IPC_SAP_H
-#define ACE_IPC_SAP_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Flag_Manip.h"
-#include "ace/os_include/sys/os_types.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_IPC_SAP
- *
- * @brief Defines the member functions for the base class of the
- * ACE_IPC_SAP abstraction.
- */
-class ACE_Export ACE_IPC_SAP
-{
-public:
-
- /// Interface for <ioctl>.
- int control (int cmd, void *) const;
-
- // = Common I/O handle options related to sockets.
-
- /**
- * Enable asynchronous I/O (ACE_SIGIO), urgent data (ACE_SIGURG),
- * non-blocking I/O (ACE_NONBLOCK), or close-on-exec (ACE_CLOEXEC),
- * which is passed as the @a value.
- */
- int enable (int value) const;
-
- /**
- * Disable asynchronous I/O (ACE_SIGIO), urgent data (ACE_SIGURG),
- * non-blocking I/O (ACE_NONBLOCK), or close-on-exec (ACE_CLOEXEC),
- * which is passed as the @a value.
- */
- int disable (int value) const;
-
- /// Get the underlying handle.
- ACE_HANDLE get_handle (void) const;
-
- /// Set the underlying handle.
- void set_handle (ACE_HANDLE handle);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
-
- // = Ensure that ACE_IPC_SAP is an abstract base class.
- /// Default constructor.
- ACE_IPC_SAP (void);
-
- /// Protected destructor.
- /**
- * Not a virtual destructor. Protected destructor to prevent
- * operator delete() from being called through a base class
- * ACE_IPC_SAP pointer/reference.
- */
- ~ACE_IPC_SAP (void);
-
-private:
- /// Underlying I/O handle.
- ACE_HANDLE handle_;
-
- /// Cache the process ID.
- static pid_t pid_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/IPC_SAP.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_IPC_SAP_H */
-
diff --git a/dep/include/ace/IPC_SAP.inl b/dep/include/ace/IPC_SAP.inl
deleted file mode 100644
index 5e80486902a..00000000000
--- a/dep/include/ace/IPC_SAP.inl
+++ /dev/null
@@ -1,40 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: IPC_SAP.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_stropts.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_IPC_SAP::~ACE_IPC_SAP (void)
-{
- // ACE_TRACE ("ACE_IPC_SAP::~ACE_IPC_SAP");
-}
-
-ACE_INLINE ACE_HANDLE
-ACE_IPC_SAP::get_handle (void) const
-{
- ACE_TRACE ("ACE_IPC_SAP::get_handle");
- return this->handle_;
-}
-
-// Used to set the underlying handle_.
-
-ACE_INLINE void
-ACE_IPC_SAP::set_handle (ACE_HANDLE handle)
-{
- ACE_TRACE ("ACE_IPC_SAP::set_handle");
- this->handle_ = handle;
-}
-
-// Provides access to the ACE_OS::ioctl system call.
-
-ACE_INLINE int
-ACE_IPC_SAP::control (int cmd, void *arg) const
-{
- ACE_TRACE ("ACE_IPC_SAP::control");
- return ACE_OS::ioctl (this->handle_, cmd, arg);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/If_Then_Else.h b/dep/include/ace/If_Then_Else.h
deleted file mode 100644
index 67f08f6f8e4..00000000000
--- a/dep/include/ace/If_Then_Else.h
+++ /dev/null
@@ -1,90 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file If_Then_Else.h
- *
- * @c ACE::If_Then_Else traits template based on the @c IfThenElse
- * template described in the book "C++ Templates" by Vandevoorde and
- * Josuttis.
- *
- * $Id: If_Then_Else.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Ossama Othman <ossama@dre.vanderbilt.edu>
- */
-//=============================================================================
-
-#ifndef ACE_IF_THEN_ELSE_H
-#define ACE_IF_THEN_ELSE_H
-
-#include "ace/config-lite.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE
-{
-
- /**
- * @struct If_Then_Else
- *
- * @brief Compile-time selection of type based on a boolean value.
- *
- * This primary template selects the second or third argument based
- * on the value of the boolean first argument.
- *
- * Usage example:
- *
- * \code
- *
- * template <typename T>
- * class Foo
- * {
- * public:
- * // Set "TheType" to be the larger of "T" and "int".
- * typedef typename If_Then_Else<(sizeof (T) > sizeof (int)),
- * T,
- * int>::result_type TheType;
- * };
- *
- * \endcode
- *
- * @note This merely a forward declaration since we really only care
- * about the partial specializations below.
- */
- template <bool C, typename Ta, typename Tb>
- struct If_Then_Else;
-
- /**
- * @struct If_Then_Else
- *
- * @brief Select of type @a Ta if boolean value is @c true.
- *
- * This partial specialization selects the type @a Ta if the boolean
- * first argument is @c true.
- */
- template <typename Ta, typename Tb>
- struct If_Then_Else<true, Ta, Tb>
- {
- typedef Ta result_type;
- };
-
- /**
- * @struct If_Then_Else
- *
- * @brief Select of type @a Tb if boolean value is @c false.
- *
- * This partial specialization selects the type @a Tb if the boolean
- * first argument is @c false.
- */
- template <typename Ta, typename Tb>
- struct If_Then_Else<false, Ta, Tb>
- {
- typedef Tb result_type;
- };
-
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_IF_THEN_ELSE_H */
-
diff --git a/dep/include/ace/Init_ACE.h b/dep/include/ace/Init_ACE.h
deleted file mode 100644
index cc3f5aa6b66..00000000000
--- a/dep/include/ace/Init_ACE.h
+++ /dev/null
@@ -1,62 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Init_ACE.h
- *
- * $Id: Init_ACE.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Initialize ACE library services. Can be called only once per
- * program invocation.
- */
-//=============================================================================
-
-#ifndef ACE_INIT_ACE_H
-#define ACE_INIT_ACE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE
-{
- /**
- * This class implements the functions for the initialization and
- * shutting down ACE. These functions are called only once per ACE
- * invokation.
- * @return Returns 0 on success, -1 on failure, and 1 if it had already been
- * called.
- */
- extern ACE_Export int init (void);
-
- /**
- * Shut down ACE library services. Can be called only once per
- * program invocation.
- * @return Returns 0 on success, -1 on failure, and 1 if it had already been
- * called.
- */
- extern ACE_Export int fini (void);
-
- // private:
- // Used internally, so not exported.
-
- /**
- * Counter to match <init()>/<fini()> calls. <init()> must increment it;
- * <fini()> must decrement it. <fini()> then does nothing until it
- * reaches 0.
- */
- extern unsigned int init_fini_count_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_INIT_ACE_H */
-
diff --git a/dep/include/ace/Intrusive_Auto_Ptr.h b/dep/include/ace/Intrusive_Auto_Ptr.h
deleted file mode 100644
index 375ec292527..00000000000
--- a/dep/include/ace/Intrusive_Auto_Ptr.h
+++ /dev/null
@@ -1,165 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Intrusive_Auto_Ptr.h
- *
- * $Id: Intrusive_Auto_Ptr.h 81388 2008-04-23 14:02:05Z johnnyw $
- *
- * @author Iliyan Jeliazkov <iliyan@ociweb.com>
- *
- * @note Modeled on http://www.boost.org/boost/intrusive_ptr.hpp
- */
-//=============================================================================
-
-#ifndef ACE_INTRUSIVE_AUTO_PTR_H
-#define ACE_INTRUSIVE_AUTO_PTR_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Auto_Ptr.h"
-#include "ace/Atomic_Op.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decl.
-template <class X> class ACE_Intrusive_Auto_Ptr;
-
-/**
- * @class ACE_Intrusive_Auto_Ptr
- *
- * @brief This class implements support for a reference counted
- * auto_ptr. It assumes reference counting abilities of the
- * parameterizing class.
- *
- * Assigning or copying instances of an ACE_Intrusive_Auto_Ptr will
- * automatically increment the reference count. When the last instance
- * that references a ACE_Intrusive_Auto_Ptr instance is destroyed or
- * overwritten, it will invoke delete on its underlying pointer.
- *
- * The ACE_Intrusive_Auto_Ptr works by maintaining a reference to a
- * separate representation object, ACE_Intrusive_Auto_Ptr_Rep. That
- * separate representation object contains the reference count and the
- * actual pointer value.
- */
-template <class X>
-class ACE_Intrusive_Auto_Ptr
-{
-protected:
-
- /// Used to define a proper boolean conversion for "if (sp) ..."
- static void unspecified_bool(ACE_Intrusive_Auto_Ptr<X>***){};
- typedef void (*unspecified_bool_type)(ACE_Intrusive_Auto_Ptr<X>***);
-
-public:
-
- /// Enables "if (sp) ..."
- operator unspecified_bool_type() const
- {
- return rep_ == 0 ? 0: unspecified_bool;
- }
-
- // = Initialization and termination methods.
-
- /// Constructor that initializes an ACE_Intrusive_Auto_Ptr to
- /// the specified pointer value.
- ACE_Intrusive_Auto_Ptr (X *p = 0, bool addref = true);
-
- /// Copy constructor binds the new ACE_Intrusive_Auto_Ptr to the
- /// representation object referenced by @a r.
- /// An ACE_Intrusive_Auto_Ptr_Rep is created if necessary.
- ACE_Intrusive_Auto_Ptr (const ACE_Intrusive_Auto_Ptr<X> &r);
-
- // Derived class copy ctor
- template<class U> ACE_Intrusive_Auto_Ptr(const ACE_Intrusive_Auto_Ptr<U> & rhs);
-
- /// Destructor. Releases the reference to the underlying representation.
- /// If the release of that reference causes its reference count to reach 0,
- /// the representation object will also be destroyed.
- virtual ~ACE_Intrusive_Auto_Ptr (void);
-
- /// Assignment operator that binds the current object and @a r to the same
- /// ACE_Intrusive_Auto_Ptr_Rep. An ACE_Intrusive_Auto_Ptr_Rep
- /// is created if necessary.
- void operator = (const ACE_Intrusive_Auto_Ptr<X> &r);
-
- /// Redirection operator
- X *operator-> (void) const;
-
- /// Accessor method.
- X &operator *() const;
-
- /// Releases the reference to the underlying representation object.
- /// @retval The pointer value prior to releasing it.
- X *release (void);
-
- /// Releases the current pointer value and then sets a new
- /// pointer value specified by @a p.
- void reset (X *p = 0);
-
- /// Get the pointer value.
- X *get (void) const;
-
- /// Get the reference count value.
- long count (void) const;
-
- /// Returns @c true if this object does not contain a valid pointer.
- // bool null (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
-
- /// Protect operations on the ACE_Intrusive_Auto_Ptr.
- X *rep_;
-};
-
- /// Equality operator that returns @c true if both
- /// ACE_Intrusive_Auto_Ptr objects point to the same underlying
- /// representation. It does not compare the actual pointers.
- /**
- * @note It also returns @c true if both objects have just been
- * instantiated and not used yet.
- */
-template<class T, class U>
-bool operator==(ACE_Intrusive_Auto_Ptr<T> const & a, ACE_Intrusive_Auto_Ptr<U> const & b);
-
-/// Inequality operator, which is the opposite of equality.
-template<class T, class U>
-bool operator!=(ACE_Intrusive_Auto_Ptr<T> const & a, ACE_Intrusive_Auto_Ptr<U> const & b);
-
-template<class T, class U>
-bool operator==(ACE_Intrusive_Auto_Ptr<T> const & a, U * b);
-
-template<class T, class U>
-bool operator!=(ACE_Intrusive_Auto_Ptr<T> & a, U * b);
-
-template<class T, class U>
-bool operator==(T * a, ACE_Intrusive_Auto_Ptr<U> const & b);
-
-template<class T, class U>
-bool operator!=(T * a, ACE_Intrusive_Auto_Ptr<U> const & b);
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Intrusive_Auto_Ptr.inl"
-#endif /* __ACE_INLINE __ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Intrusive_Auto_Ptr.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Intrusive_Auto_Ptr.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_INTRUSIVE_AUTO_PTR_H */
-
diff --git a/dep/include/ace/Intrusive_Auto_Ptr.inl b/dep/include/ace/Intrusive_Auto_Ptr.inl
deleted file mode 100644
index aa3e2659930..00000000000
--- a/dep/include/ace/Intrusive_Auto_Ptr.inl
+++ /dev/null
@@ -1,146 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Intrusive_Auto_Ptr.inl 81219 2008-04-02 20:23:32Z iliyan $
-
-#include "ace/Guard_T.h"
-#include "ace/Log_Msg.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class X> ACE_INLINE
-ACE_Intrusive_Auto_Ptr<X>::ACE_Intrusive_Auto_Ptr (X *p, bool addref)
- : rep_ (p)
-{
- if (rep_ != 0 && addref)
- X::intrusive_add_ref (rep_);
-}
-
-template <class X> ACE_INLINE
-ACE_Intrusive_Auto_Ptr<X>::ACE_Intrusive_Auto_Ptr (const ACE_Intrusive_Auto_Ptr<X> &r)
- : rep_ (r.rep_)
-{
- if (rep_ != 0)
- X::intrusive_add_ref (rep_);
-}
-
-template <class X> ACE_INLINE X *
-ACE_Intrusive_Auto_Ptr<X>::operator-> (void) const
-{
- return this->rep_;
-}
-
-template<class X> ACE_INLINE X &
-ACE_Intrusive_Auto_Ptr<X>::operator *() const
-{
- return *this->rep_;
-}
-
-template <class X> ACE_INLINE X*
-ACE_Intrusive_Auto_Ptr<X>::get (void) const
-{
- // We return the ACE_Future_rep.
- return this->rep_;
-}
-
-template<class X> ACE_INLINE X *
-ACE_Intrusive_Auto_Ptr<X>::release (void)
-{
- X *p = this->rep_;
- if (this->rep_ != 0)
- X::intrusive_remove_ref (this->rep_);
-
- this->rep_ = 0;
- return p;
-}
-
-template<class X> ACE_INLINE void
-ACE_Intrusive_Auto_Ptr<X>::reset (X *p)
-{
- // Avoid deleting the underlying auto_ptr if assigning the same actual
- // pointer value.
- if (this->rep_ == p)
- return;
-
- X *old_rep = this->rep_;
- this->rep_ = p;
-
- if (this->rep_ != 0)
- X::intrusive_add_ref (this->rep_);
-
- if (old_rep != 0)
- X::intrusive_remove_ref (old_rep);
-
- return;
-}
-
-template <class X> ACE_INLINE void
-ACE_Intrusive_Auto_Ptr<X>::operator = (const ACE_Intrusive_Auto_Ptr<X> &rhs)
-{
- // do nothing when aliasing
- if (this->rep_ == rhs.rep_)
- return;
-
- // assign a zero
- if (rhs.rep_ == 0)
- {
- X::intrusive_remove_ref (rhs.rep_);
- this->rep_ = 0;
- return;
- }
-
- // bind <this> to the same <ACE_Intrusive_Auto_Ptr_Rep> as <rhs>.
- X *old_rep = this->rep_;
- this->rep_ = rhs.rep_;
- X::intrusive_add_ref (this->rep_);
- X::intrusive_remove_ref (old_rep);
-}
-
-// Copy derived class constructor
-template<class X> template <class U> ACE_INLINE
-ACE_Intrusive_Auto_Ptr<X>::ACE_Intrusive_Auto_Ptr (const ACE_Intrusive_Auto_Ptr<U> & rhs)
-{
- // note implicit cast from U* to T* so illegal copy will generate a
- // compiler warning here
- this->rep_ = rhs.operator-> ();
- X::intrusive_add_ref(this->rep_);
-}
-
- /// Equality operator that returns @c true if both
- /// ACE_Intrusive_Auto_Ptr objects point to the same underlying
- /// representation. It does not compare the actual pointers.
- /**
- * @note It also returns @c true if both objects have just been
- * instantiated and not used yet.
- */
-template<class T, class U> ACE_INLINE bool operator==(ACE_Intrusive_Auto_Ptr<T> const & a, ACE_Intrusive_Auto_Ptr<U> const & b)
-{
- return a.get() == b.get();
-}
-
- /// Inequality operator, which is the opposite of equality.
- template<class T, class U> ACE_INLINE bool operator!=(ACE_Intrusive_Auto_Ptr<T> const & a, ACE_Intrusive_Auto_Ptr<U> const & b)
-{
- return a.get() != b.get();
-}
-
- template<class T, class U> ACE_INLINE bool operator==(ACE_Intrusive_Auto_Ptr<T> const & a, U * b)
-{
- return a.get() == b;
-}
-
- template<class T, class U> ACE_INLINE bool operator!=(ACE_Intrusive_Auto_Ptr<T> & a, U * b)
-{
- return a.get() != b;
-}
-
- template<class T, class U> ACE_INLINE bool operator==(T * a, ACE_Intrusive_Auto_Ptr<U> const & b)
-{
- return a == b.get();
-}
-
- template<class T, class U> ACE_INLINE bool operator!=(T * a, ACE_Intrusive_Auto_Ptr<U> const & b)
-{
- return a != b.get();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Intrusive_List.h b/dep/include/ace/Intrusive_List.h
deleted file mode 100644
index 24e7cedfc13..00000000000
--- a/dep/include/ace/Intrusive_List.h
+++ /dev/null
@@ -1,145 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Intrusive_List.h
- *
- * $Id: Intrusive_List.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Carlos O'Ryan <coryan@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_INTRUSIVE_LIST_H
-#define ACE_INTRUSIVE_LIST_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Intrusive_List
- *
- * @brief Implement an intrusive double linked list
- *
- * Intrusive lists assume that the elements they contain the pointers
- * required to build the list. They are useful as light-weight
- * containers and free-lists.
- *
- * The template argument T must implement the following methods:
- *
- * - T* T::next () const;
- * - void T::next (T *);
- * - T* T::prev () const;
- * - void T::prev (T* );
- *
- * A simple way to satisfy the Intrusive_List requirements would be to
- * implement a helper class:
- *
- * class My_Object : public ACE_Intrusive_List_Node<My_Object> {<BR>
- * ....<BR>
- * };<BR>
- *
- * typedef ACE_Intrusive_List<My_Object> My_Object_List;
- *
- * However, ACE is supported on platforms that would surely get
- * confused using such templates.
- *
- * @todo The ACE_Message_Queue is an example of an intrusive list (or
- * queue) but it is not implemented in terms of this class.
- *
- */
-template <class T>
-class ACE_Intrusive_List
-{
-public:
- // = Initialization and termination methods.
- /// Constructor. Use user specified allocation strategy
- /// if specified.
- ACE_Intrusive_List (void);
-
- /// Destructor.
- ~ACE_Intrusive_List (void);
-
- // = Check boundary conditions.
-
- /// Returns 1 if the container is empty, otherwise returns 0.
- int is_empty (void) const;
-
- /// Returns 1 if the container is empty, otherwise returns 0.
- /// @deprecated Use is_empty() instead.
- int empty (void) const;
-
- /// Insert an element at the beginning of the list
- void push_front (T *node);
-
- /// Insert an element at the end of the list
- void push_back (T *node);
-
- /// Remove the element at the beginning of the list
- T *pop_front (void);
-
- /// Remove the element at the end of the list
- T *pop_back (void);
-
- /// Get the element at the head of the queue
- T *head (void) const;
-
- /// Get the element at the tail of the queue
- T *tail (void) const;
-
- /// Remove a element from the list
- /**
- * Verify that the element is still in the list before removing it.
- */
- void remove (T *node);
-
- /// Swap two lists
- void swap(ACE_Intrusive_List<T> & rhs);
-
- /// Remove a element from the list without checking
- /**
- * No attempts are performed to check if T* really belongs to the
- * list. The effects of removing an invalid element are unspecified
- */
- void unsafe_remove (T *node);
-
-private:
- /** @name Disallow copying
- *
- */
- //@{
- ACE_Intrusive_List (const ACE_Intrusive_List<T> &);
- ACE_Intrusive_List<T>& operator= (const ACE_Intrusive_List<T> &);
- //@}
-
-private:
- /// Head of the list
- T *head_;
-
- /// Tail of the list
- T *tail_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Intrusive_List.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Intrusive_List.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Intrusive_List.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_INTRUSIVE_LIST_H */
-
diff --git a/dep/include/ace/Intrusive_List.inl b/dep/include/ace/Intrusive_List.inl
deleted file mode 100644
index aac3306962b..00000000000
--- a/dep/include/ace/Intrusive_List.inl
+++ /dev/null
@@ -1,40 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Intrusive_List.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include <algorithm>
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template<class T> ACE_INLINE int
-ACE_Intrusive_List<T>::is_empty (void) const
-{
- return this->head_ == 0;
-}
-
-template<class T> ACE_INLINE int
-ACE_Intrusive_List<T>::empty (void) const
-{
- return this->is_empty ();
-}
-
-template<class T> ACE_INLINE T *
-ACE_Intrusive_List<T>::head (void) const
-{
- return this->head_;
-}
-
-template<class T> ACE_INLINE T *
-ACE_Intrusive_List<T>::tail (void) const
-{
- return this->tail_;
-}
-
-template<class T> ACE_INLINE void
-ACE_Intrusive_List<T>::swap(ACE_Intrusive_List<T> & rhs)
-{
- std::swap(head_, rhs.head_);
- std::swap(tail_, rhs.tail_);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Intrusive_List_Node.h b/dep/include/ace/Intrusive_List_Node.h
deleted file mode 100644
index 21ea961f220..00000000000
--- a/dep/include/ace/Intrusive_List_Node.h
+++ /dev/null
@@ -1,86 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Intrusive_List_Node.h
- *
- * $Id: Intrusive_List_Node.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Carlos O'Ryan <coryan@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_INTRUSIVE_LIST_NODE_H
-#define ACE_INTRUSIVE_LIST_NODE_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Intrusive_List_Node
- *
- * @brief Implement the requirements for ACE_Intrusive_List
- *
- * The class should be used as follows:
- *
- * class My_Object : public ACE_Intrusive_List_Node<My_Object> {<BR>
- * ....<BR>
- * };<BR>
- *
- * However, ACE is supported on platforms that would surely get
- * confused using such templates, the class is provided as a helper
- * for our lucky users that only need portability to modern C++
- * compilers.
- *
- */
-template <class T>
-class ACE_Intrusive_List_Node
-{
-public:
- /** @name Accesors and modifiers to the next and previous pointers
- *
- */
- //@{
- T *prev (void) const;
- void prev (T *);
- T *next (void) const;
- void next (T *);
- //@}
-
-protected:
- /// Constructor
- /**
- * The constructor is protected, because only derived classes should
- * be instantiated.
- */
- ACE_Intrusive_List_Node (void);
-
-private:
- /// Head and tail of the list
- T *prev_;
- T *next_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Intrusive_List_Node.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Intrusive_List_Node.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Intrusive_List_Node.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_INTRUSIVE_LIST_NODE_H */
-
diff --git a/dep/include/ace/Intrusive_List_Node.inl b/dep/include/ace/Intrusive_List_Node.inl
deleted file mode 100644
index 52c4f7dec1b..00000000000
--- a/dep/include/ace/Intrusive_List_Node.inl
+++ /dev/null
@@ -1,31 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Intrusive_List_Node.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template<class T> ACE_INLINE T*
-ACE_Intrusive_List_Node<T>::prev (void) const
-{
- return this->prev_;
-}
-
-template<class T> ACE_INLINE void
-ACE_Intrusive_List_Node<T>::prev (T *x)
-{
- this->prev_ = x;
-}
-
-template<class T> ACE_INLINE T*
-ACE_Intrusive_List_Node<T>::next (void) const
-{
- return this->next_;
-}
-
-template<class T> ACE_INLINE void
-ACE_Intrusive_List_Node<T>::next (T *x)
-{
- this->next_ = x;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/LOCK_SOCK_Acceptor.h b/dep/include/ace/LOCK_SOCK_Acceptor.h
deleted file mode 100644
index 1271b1d9060..00000000000
--- a/dep/include/ace/LOCK_SOCK_Acceptor.h
+++ /dev/null
@@ -1,67 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file LOCK_SOCK_Acceptor.h
- *
- * $Id: LOCK_SOCK_Acceptor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author James Hu and Irfan Pyarali
- */
-//=============================================================================
-
-#ifndef ACE_LOCK_SOCK_ACCEPTOR_H
-#define ACE_LOCK_SOCK_ACCEPTOR_H
-#include /**/ "ace/pre.h"
-
-#include "ace/SOCK_Acceptor.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_LOCK_SOCK_Acceptor
- *
- * @brief Specialize ACE_SOCK_Acceptor to lock around <accept>;
- *
- * This class is necessary since some OS platforms (e.g.,
- * Solaris 2.5) do not allow multiple threads/processes to
- * simultaneously call <accept> on the same listen-mode
- * port/socket. Thus, we need to protect against multiple
- * concurrent accesses by using the appropriate type of lock.
- */
-template <class ACE_LOCK>
-class ACE_LOCK_SOCK_Acceptor : public ACE_SOCK_Acceptor
-{
-public:
- /// Accept the connection under the control of the <ACE_LOCK>.
- int accept (ACE_SOCK_Stream &new_stream,
- ACE_Addr *remote_addr = 0,
- ACE_Time_Value *timeout = 0,
- int restart = 1,
- int reset_new_handle = 0) const;
-
- /// Return a reference to the lock.
- ACE_LOCK &lock (void);
-
-protected:
- /// Type of locking mechanism.
- ACE_LOCK lock_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/LOCK_SOCK_Acceptor.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("LOCK_SOCK_Acceptor.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_LOCK_SOCK_ACCEPTOR_H */
-
diff --git a/dep/include/ace/LSOCK.h b/dep/include/ace/LSOCK.h
deleted file mode 100644
index caec4362e0c..00000000000
--- a/dep/include/ace/LSOCK.h
+++ /dev/null
@@ -1,84 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file LSOCK.h
- *
- * $Id: LSOCK.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_LOCAL_SOCK_H
-#define ACE_LOCAL_SOCK_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_UNIX_DOMAIN_SOCKETS)
-
-#include "ace/SOCK.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_LSOCK
- *
- * @brief Create a Local ACE_SOCK, which is used for passing file
- * descriptors.
- */
-class ACE_Export ACE_LSOCK
-{
-public:
-#if defined (ACE_HAS_MSG)
- /// Send an open FD to another process.
- ssize_t send_handle (const ACE_HANDLE handle) const;
-
- /// Recv an open FD from another process.
- ssize_t recv_handle (ACE_HANDLE &handles,
- char *pbuf = 0,
- ssize_t *len = 0) const;
-#endif /* ACE_HAS_MSG */
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- // = Ensure that ACE_LSOCK is an abstract base class
-
- /// Default constructor.
- ACE_LSOCK (void);
-
- /// Initialize based on @a handle.
- ACE_LSOCK (ACE_HANDLE handle);
-
- /// Get handle.
- ACE_HANDLE get_handle (void) const;
-
- /// Set handle.
- void set_handle (ACE_HANDLE handle);
-
-private:
- /// An auxiliary handle used to avoid virtual base classes...
- ACE_HANDLE aux_handle_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/LSOCK.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_LACKS_UNIX_DOMAIN_SOCKETS */
-#include /**/ "ace/post.h"
-#endif /* ACE_LOCAL_SOCK_H */
-
diff --git a/dep/include/ace/LSOCK.inl b/dep/include/ace/LSOCK.inl
deleted file mode 100644
index 6bf726ad28c..00000000000
--- a/dep/include/ace/LSOCK.inl
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: LSOCK.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Simple-minded constructor.
-
-ACE_INLINE
-ACE_LSOCK::ACE_LSOCK (void)
- : aux_handle_ (ACE_INVALID_HANDLE)
-{
- ACE_TRACE ("ACE_LSOCK::ACE_LSOCK");
-}
-
-// Sets the underlying file descriptor.
-
-ACE_INLINE void
-ACE_LSOCK::set_handle (ACE_HANDLE handle)
-{
- ACE_TRACE ("ACE_LSOCK::set_handle");
- this->aux_handle_ = handle;
-}
-
-// Gets the underlying file descriptor.
-
-ACE_INLINE ACE_HANDLE
-ACE_LSOCK::get_handle (void) const
-{
- ACE_TRACE ("ACE_LSOCK::get_handle");
- return this->aux_handle_;
-}
-
-// Sets the underlying file descriptor.
-
-ACE_INLINE
-ACE_LSOCK::ACE_LSOCK (ACE_HANDLE handle)
- : aux_handle_ (handle)
-{
- ACE_TRACE ("ACE_LSOCK::ACE_LSOCK");
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/LSOCK_Acceptor.h b/dep/include/ace/LSOCK_Acceptor.h
deleted file mode 100644
index 625f8f72853..00000000000
--- a/dep/include/ace/LSOCK_Acceptor.h
+++ /dev/null
@@ -1,95 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file LSOCK_Acceptor.h
- *
- * $Id: LSOCK_Acceptor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_LOCAL_SOCK_ACCEPTOR_H
-#define ACE_LOCAL_SOCK_ACCEPTOR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_UNIX_DOMAIN_SOCKETS)
-
-#include "ace/SOCK_Acceptor.h"
-#include "ace/UNIX_Addr.h"
-#include "ace/LSOCK_Stream.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decl.
-class ACE_Reactor;
-
-/**
- * @class ACE_LSOCK_Acceptor
- *
- * @brief Defines the format and interface for the acceptor side of the
- * local ACE_SOCK ACE_Stream.
- */
-class ACE_Export ACE_LSOCK_Acceptor : public ACE_SOCK_Acceptor
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_LSOCK_Acceptor (void);
-
- /// Initiate a passive mode socket.
- ACE_LSOCK_Acceptor (const ACE_Addr &local_sap,
- int reuse_addr = 0,
- int protocol_family = PF_UNIX,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 0);
-
- /// Initiate a passive mode socket.
- int open (const ACE_Addr &local_sap,
- int reuse_addr = 0,
- int protocol_family = PF_UNIX,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 0);
-
- /// Accept a new data transfer connection.
- int accept (ACE_LSOCK_Stream &new_ipc_sap,
- ACE_Addr * = 0,
- ACE_Time_Value *timeout = 0,
- int restart = 1,
- int reset_new_handle = 0) const;
-
- /// Close down the ACE_LSOCK and remove the rendezvous point from the
- /// file system.
- int remove (void);
-
- /// Return the local endpoint address.
- int get_local_addr (ACE_Addr &) const;
-
- // = Meta-type info
- typedef ACE_UNIX_Addr PEER_ADDR;
- typedef ACE_LSOCK_Stream PEER_STREAM;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Address of our rendezvous point.
- ACE_UNIX_Addr local_addr_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_LACKS_UNIX_DOMAIN_SOCKETS */
-#include /**/ "ace/post.h"
-#endif /* ACE_LOCAL_SOCK_ACCEPTOR_H */
-
diff --git a/dep/include/ace/LSOCK_CODgram.h b/dep/include/ace/LSOCK_CODgram.h
deleted file mode 100644
index 48fb9c63bcf..00000000000
--- a/dep/include/ace/LSOCK_CODgram.h
+++ /dev/null
@@ -1,78 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file LSOCK_CODgram.h
- *
- * $Id: LSOCK_CODgram.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_LOCAL_SOCK_CODGRAM_H
-#define ACE_LOCAL_SOCK_CODGRAM_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_UNIX_DOMAIN_SOCKETS)
-
-#include "ace/LSOCK.h"
-#include "ace/SOCK_CODgram.h"
-#include "ace/Addr.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_LSOCK_CODgram
- *
- * @brief Defines the member functions for the <ACE_LSOCK> connected
- * datagram abstraction.
- */
-class ACE_Export ACE_LSOCK_CODgram : public ACE_SOCK_CODgram, public ACE_LSOCK
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_LSOCK_CODgram (void);
-
- /// Initiate a connected-datagram.
- ACE_LSOCK_CODgram (const ACE_Addr &remote_sap,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int protocol_family = PF_UNIX,
- int protocol = 0);
-
- /// Initiate a connected-datagram.
- int open (const ACE_Addr &remote_sap,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int protocol_family = PF_UNIX,
- int protocol = 0);
-
- /// Get underlying handle.
- ACE_HANDLE get_handle (void) const;
-
- /// Set underlying handle.
- void set_handle (ACE_HANDLE);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/LSOCK_CODgram.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_LACKS_UNIX_DOMAIN_SOCKETS */
-#include /**/ "ace/post.h"
-#endif /* ACE_LOCAL_SOCK_CODGRAM_H */
-
diff --git a/dep/include/ace/LSOCK_CODgram.inl b/dep/include/ace/LSOCK_CODgram.inl
deleted file mode 100644
index 02870c65ab6..00000000000
--- a/dep/include/ace/LSOCK_CODgram.inl
+++ /dev/null
@@ -1,30 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: LSOCK_CODgram.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Do nothing constructor.
-
-ACE_INLINE
-ACE_LSOCK_CODgram::ACE_LSOCK_CODgram (void)
-{
- ACE_TRACE ("ACE_LSOCK_CODgram::ACE_LSOCK_CODgram");
-}
-
-ACE_INLINE void
-ACE_LSOCK_CODgram::set_handle (ACE_HANDLE h)
-{
- ACE_TRACE ("ACE_LSOCK_CODgram::set_handle");
- this->ACE_SOCK_CODgram::set_handle (h);
- this->ACE_LSOCK::set_handle (h);
-}
-
-ACE_INLINE ACE_HANDLE
-ACE_LSOCK_CODgram::get_handle (void) const
-{
- ACE_TRACE ("ACE_LSOCK_CODgram::get_handle");
- return this->ACE_SOCK_CODgram::get_handle ();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/LSOCK_Connector.h b/dep/include/ace/LSOCK_Connector.h
deleted file mode 100644
index 84946d63a66..00000000000
--- a/dep/include/ace/LSOCK_Connector.h
+++ /dev/null
@@ -1,92 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file LSOCK_Connector.h
- *
- * $Id: LSOCK_Connector.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_LOCAL_SOCK_CONNECTOR_H
-#define ACE_LOCAL_SOCK_CONNECTOR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_UNIX_DOMAIN_SOCKETS)
-
-#include "ace/SOCK_Connector.h"
-#include "ace/LSOCK_Stream.h"
-#include "ace/UNIX_Addr.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_LSOCK_Connector
- *
- * @brief Defines the format and interface for the connector side of
- * the ACE_LSOCK_Stream.
- */
-class ACE_Export ACE_LSOCK_Connector : public ACE_SOCK_Connector
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_LSOCK_Connector (void);
-
- /**
- * Actively connect and produce a @a new_stream if things go well.
- * All arguments are relayed to the ACE_SOCK_Connector constructor
- * for handling.
- * @see ACE_SOCK_Connector().
- */
- ACE_LSOCK_Connector (ACE_LSOCK_Stream &new_stream,
- const ACE_UNIX_Addr &remote_sap,
- ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = 0,
- int perms = 0);
-
- /**
- * Actively connect and produce a @a new_stream if things go well.
- * The @c ACE_SOCK_Connector::connect() method is called to perform
- * the actual connection attempt.
- * @see ACE_SOCK_Connector::connect().
- */
- int connect (ACE_LSOCK_Stream &new_stream,
- const ACE_UNIX_Addr &remote_sap,
- ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = 0,
- int perms = 0);
-
- // = Meta-type info
- typedef ACE_UNIX_Addr PEER_ADDR;
- typedef ACE_LSOCK_Stream PEER_STREAM;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/LSOCK_Connector.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_LACKS_UNIX_DOMAIN_SOCKETS */
-#include /**/ "ace/post.h"
-#endif /* ACE_LOCAL_SOCK_CONNECTOR_H */
-
diff --git a/dep/include/ace/LSOCK_Connector.inl b/dep/include/ace/LSOCK_Connector.inl
deleted file mode 100644
index 31e79c9690a..00000000000
--- a/dep/include/ace/LSOCK_Connector.inl
+++ /dev/null
@@ -1,27 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: LSOCK_Connector.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Establish a connection.
-ACE_INLINE int
-ACE_LSOCK_Connector::connect (ACE_LSOCK_Stream &new_stream,
- const ACE_UNIX_Addr &remote_sap,
- ACE_Time_Value *timeout,
- const ACE_Addr &local_sap,
- int reuse_addr,
- int flags,
- int perms)
-{
- ACE_TRACE ("ACE_LSOCK_Connector::connect");
- int result = ACE_SOCK_Connector::connect (new_stream, remote_sap,
- timeout, local_sap,
- reuse_addr, flags, perms);
- if (result != -1)
- // This is necessary due to the weird inheritance relationships of ACE_LSOCK_Stream.
- new_stream.set_handle (new_stream.get_handle ());
- return result;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/LSOCK_Dgram.h b/dep/include/ace/LSOCK_Dgram.h
deleted file mode 100644
index 26a3950a726..00000000000
--- a/dep/include/ace/LSOCK_Dgram.h
+++ /dev/null
@@ -1,74 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file LSOCK_Dgram.h
- *
- * $Id: LSOCK_Dgram.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_LOCAL_SOCK_DGRAM_H
-#define ACE_LOCAL_SOCK_DGRAM_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_UNIX_DOMAIN_SOCKETS)
-
-#include "ace/SOCK_Dgram.h"
-#include "ace/LSOCK.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_LSOCK_Dgram
- *
- * @brief Create a Local ACE_SOCK datagram.
- */
-class ACE_Export ACE_LSOCK_Dgram : public ACE_SOCK_Dgram, public ACE_LSOCK
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_LSOCK_Dgram (void);
-
- /// Initiate a local dgram.
- ACE_LSOCK_Dgram (const ACE_Addr &local,
- int protocol_family = PF_UNIX,
- int protocol = 0);
-
- /// Initiate a local dgram.
- int open (const ACE_Addr &local,
- int protocol_family = PF_UNIX,
- int protocol = 0);
-
- /// Get handle.
- ACE_HANDLE get_handle (void) const;
-
- /// Set handle.
- void set_handle (ACE_HANDLE);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/LSOCK_Dgram.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_LACKS_UNIX_DOMAIN_SOCKETS */
-#include /**/ "ace/post.h"
-#endif /* ACE_LOCAL_SOCK_DGRAM_H */
-
diff --git a/dep/include/ace/LSOCK_Dgram.inl b/dep/include/ace/LSOCK_Dgram.inl
deleted file mode 100644
index 3174adf00da..00000000000
--- a/dep/include/ace/LSOCK_Dgram.inl
+++ /dev/null
@@ -1,22 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: LSOCK_Dgram.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE void
-ACE_LSOCK_Dgram::set_handle (ACE_HANDLE h)
-{
- ACE_TRACE ("ACE_LSOCK_Dgram::set_handle");
- this->ACE_SOCK_Dgram::set_handle (h);
- this->ACE_LSOCK::set_handle (h);
-}
-
-ACE_INLINE ACE_HANDLE
-ACE_LSOCK_Dgram::get_handle (void) const
-{
- ACE_TRACE ("ACE_LSOCK_Dgram::get_handle");
- return this->ACE_SOCK_Dgram::get_handle ();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/LSOCK_Stream.h b/dep/include/ace/LSOCK_Stream.h
deleted file mode 100644
index 41bb5311d94..00000000000
--- a/dep/include/ace/LSOCK_Stream.h
+++ /dev/null
@@ -1,82 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file LSOCK_Stream.h
- *
- * $Id: LSOCK_Stream.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_LOCAL_SOCK_STREAM_H
-#define ACE_LOCAL_SOCK_STREAM_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_UNIX_DOMAIN_SOCKETS)
-
-#include "ace/SOCK_Stream.h"
-#include "ace/UNIX_Addr.h"
-#include "ace/LSOCK.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_LSOCK_Stream
- *
- * @brief Create a Local ACE_SOCK stream.
- */
-class ACE_Export ACE_LSOCK_Stream : public ACE_SOCK_Stream, public ACE_LSOCK
-{
-public:
- // = Send/recv methods.
- /// Send iovecs via <::writev>.
- ssize_t send_msg (const iovec iov[],
- size_t n,
- ACE_HANDLE handle);
-
- /// Send iovecs via <::writev>.
- ssize_t recv_msg (iovec iov[],
- size_t n,
- ACE_HANDLE &handle);
-
- /// Get handle.
- ACE_HANDLE get_handle (void) const;
-
- /// Overrides set_handle from the base classes.
- void set_handle (ACE_HANDLE fd);
-
- // = Meta-type info
- typedef ACE_UNIX_Addr PEER_ADDR;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /// This method simply returns the "local" addr.
- int get_local_addr (ACE_Addr &) const;
-
- /// This method returns the "local" addr since it's the same value
- /// for UNIX domain sockets.
- int get_remote_addr (ACE_Addr &) const;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/LSOCK_Stream.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_LACKS_UNIX_DOMAIN_SOCKETS */
-#include /**/ "ace/post.h"
-#endif /* ACE_LOCAL_SOCK_STREAM_H */
-
diff --git a/dep/include/ace/LSOCK_Stream.inl b/dep/include/ace/LSOCK_Stream.inl
deleted file mode 100644
index 0d9421115f2..00000000000
--- a/dep/include/ace/LSOCK_Stream.inl
+++ /dev/null
@@ -1,25 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: LSOCK_Stream.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Sets both the file descriptors... Overrides handle from the base
-// classes.
-
-ACE_INLINE void
-ACE_LSOCK_Stream::set_handle (ACE_HANDLE fd)
-{
- ACE_TRACE ("ACE_LSOCK_Stream::set_handle");
- this->ACE_SOCK_Stream::set_handle (fd);
- this->ACE_LSOCK::set_handle (fd);
-}
-
-ACE_INLINE ACE_HANDLE
-ACE_LSOCK_Stream::get_handle (void) const
-{
- ACE_TRACE ("ACE_LSOCK_Stream::get_handle");
- return this->ACE_SOCK_Stream::get_handle ();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Lib_Find.h b/dep/include/ace/Lib_Find.h
deleted file mode 100644
index 05bd068fdb3..00000000000
--- a/dep/include/ace/Lib_Find.h
+++ /dev/null
@@ -1,131 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Lib_Find.h
- *
- * All the static function calls needed to search and open shared
- * libraries.
- *
- * $Id: Lib_Find.h 80826 2008-03-04 14:51:23Z wotte $
- */
-//=============================================================================
-
-#ifndef ACE_LIB_FIND_H
-#define ACE_LIB_FIND_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-#include /**/ "ace/ACE_export.h"
-#include "ace/os_include/os_stdio.h"
-#if defined (ACE_OPENVMS)
-# include "ace/OS_NS_dlfcn.h"
-#endif
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE
-{
- // = Methods for searching and opening shared libraries.
-
- /**
- * Finds the file @a filename either using an absolute path or using
- * a relative path in conjunction with ACE_LD_SEARCH_PATH (e.g.,
- * $LD_LIBRARY_PATH on UNIX or the directories scaned by Win32 API
- * SearchPath on Win32). This function will add appropriate suffix
- * (e.g., .dll on Win32 or .so on UNIX) according to the OS
- * platform. In addition, this function will apply the appropriate
- * prefix (e.g., "lib" on UNIX and "" on Win32) if the @a filename
- * doesn't match directly.
- */
- extern ACE_Export int ldfind (const ACE_TCHAR* filename,
- ACE_TCHAR pathname[],
- size_t maxpathnamelen);
-
- /**
- * Uses @c ldfind to locate and open the appropriate @a filename and
- * returns a pointer to the file, else it returns a NULL
- * pointer. @a type specifies how the file should be open.
- */
- extern ACE_Export FILE *ldopen (const ACE_TCHAR *filename,
- const ACE_TCHAR *type);
-
- /**
- * Transforms @a entry_point into a form that can be located in a
- * dynamic library using <dlsym>. For example, with Win32/Borland
- * extern "C" functions which use the default calling convention
- * have a '_' prepended. Always returns a buffer that has been
- * dynamically allocated using <operator new>.
- */
- extern ACE_Export ACE_TCHAR *ldname (const ACE_TCHAR *entry_point);
-
-#if defined (ACE_OPENVMS)
- /**
- * Registers an @a entry_point and its address for later retrieval
- * through the ACE::ldsymbol () method.
- * For use in cases where the OS compiler encodes long symbolnames.
- */
- extern ACE_Export void ldregister (const ACE_TCHAR *entry_point,
- void* entry_addr);
-
- /**
- * Looks up an @a entry_point address either from previously registered
- * symbols or through ACE_OS::dlsym ().
- * Returns 0 in case the entry_point is not found, otherwise nonzero.
- * For use in cases where the OS compiler encodes long symbolnames.
- */
- extern ACE_Export void *ldsymbol (ACE_SHLIB_HANDLE sh,
- const ACE_TCHAR *entry_point);
-#endif
-
- /**
- * Returns the temporary directory including the trailing slash in
- * @a buffer. Returns -1 for an error or if the buffer_len is not
- * long enough.
- */
- extern ACE_Export int get_temp_dir (ACE_TCHAR *buffer, size_t buffer_len);
-
- /// Opening the temp file. File is automagically unlinked when it is
- /// closed. This is useful for have temp files.
- extern ACE_Export ACE_HANDLE open_temp_file (const ACE_TCHAR *name,
- int mode,
- int perm = 0);
-
- // @@ Though the following functions dont come under the same category as
- // above, these are used only in the functions in this class. So it makes
- // more sense to move these functions too to this class.
- //
- /// Replace all instances of @a search in @a s with @a replace. Returns
- /// the number of replacements made.
- extern ACE_Export size_t strrepl (char *s, char search, char replace);
-
- /**
- * Splits string <s> into pieces separated by the string <token>.
- * <next_start> is an opaque cookie handed back by the call to store
- * its state for the next invocation, thus making it re-entrant.
- * This operates very similar to Perl's <split> function except that
- * it returns pieces one at a time instead of into an array.
- */
- extern ACE_Export char *strsplit_r (char *s,
- const char *token,
- char *&next_start);
-
-#if defined (ACE_HAS_WCHAR)
- /// As strrepl, but for wide characters.
- extern ACE_Export size_t strrepl (wchar_t *s,
- wchar_t search,
- wchar_t replace);
-
- /// As strsplit_r, but for wide characters.
- extern ACE_Export wchar_t *strsplit_r (wchar_t *s,
- const wchar_t *token,
- wchar_t *&next_start);
-#endif /* ACE_HAS_WCHAR */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_LIB_FIND_H */
-
-
diff --git a/dep/include/ace/Local_Memory_Pool.h b/dep/include/ace/Local_Memory_Pool.h
deleted file mode 100644
index f02b101c0dc..00000000000
--- a/dep/include/ace/Local_Memory_Pool.h
+++ /dev/null
@@ -1,134 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Local_Memory_Pool.h
- *
- * $Id: Local_Memory_Pool.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Dougls C. Schmidt <schmidt@cs.wustl.edu>
- * @author Prashant Jain <pjain@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_LOCAL_MEMORY_POOL_H
-#define ACE_LOCAL_MEMORY_POOL_H
-#include /**/ "ace/pre.h"
-
-#include "ace/os_include/sys/os_mman.h" /* Need PROT_RDWR */
-#include "ace/ACE.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Unbounded_Set.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Local_Memory_Pool_Options
- *
- * @brief Helper class for Local Memory Pool constructor options.
- *
- * This should be a nested class, but that breaks too many
- * compilers.
- */
-class ACE_Export ACE_Local_Memory_Pool_Options
-{
-};
-
-/**
- * @class ACE_Local_Memory_Pool
- *
- * @brief Make a memory pool that is based on C++ new/delete. This is
- * useful for integrating existing components that use new/delete
- * into the ACE Malloc scheme...
- */
-class ACE_Export ACE_Local_Memory_Pool
-{
-public:
- typedef ACE_Local_Memory_Pool_Options OPTIONS;
-
- /// Initialize the pool.
- ACE_Local_Memory_Pool (const ACE_TCHAR *backing_store_name = 0,
- const OPTIONS *options = 0);
-
- virtual ~ACE_Local_Memory_Pool (void);
-
- /// Ask system for initial chunk of local memory.
- virtual void *init_acquire (size_t nbytes,
- size_t &rounded_bytes,
- int &first_time);
-
- /// Acquire at least @a nbytes from the memory pool. @a rounded_bytes is
- /// the actual number of bytes allocated.
- virtual void *acquire (size_t nbytes,
- size_t &rounded_bytes);
-
- /// Instruct the memory pool to release all of its resources.
- virtual int release (int destroy = 1);
-
- /**
- * Sync @a len bytes of the memory region to the backing store
- * starting at <this->base_addr_>. If @a len == -1 then sync the
- * whole region.
- */
- virtual int sync (ssize_t len = -1, int flags = MS_SYNC);
-
- /// Sync @a len bytes of the memory region to the backing store
- /// starting at @a add_.
- virtual int sync (void *addr, size_t len, int flags = MS_SYNC);
-
- /**
- * Change the protection of the pages of the mapped region to @a prot
- * starting at <this->base_addr_> up to @a len bytes. If @a len == -1
- * then change protection of all pages in the mapped region.
- */
- virtual int protect (ssize_t len = -1, int prot = PROT_RDWR);
-
- /// Change the protection of the pages of the mapped region to @a prot
- /// starting at @a addr up to @a len bytes.
- virtual int protect (void *addr, size_t len, int prot = PROT_RDWR);
-
-#if defined (ACE_WIN32)
- /**
- * Win32 Structural exception selector. The return value decides
- * how to handle memory pool related structural exceptions. Returns
- * 1, 0, or , -1.
- */
- virtual int seh_selector (void *);
-#endif /* ACE_WIN32 */
-
- /**
- * Try to extend the virtual address space so that @a addr is now
- * covered by the address mapping. Always returns 0 since we can't
- * remap a local memory pool.
- */
- virtual int remap (void *addr);
-
- /// Return the base address of this memory pool, 0 if base_addr
- /// never changes.
- virtual void *base_addr (void) const;
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// List of memory that we have allocated.
- ACE_Unbounded_Set<char *> allocated_chunks_;
-
- /// Implement the algorithm for rounding up the request to an
- /// appropriate chunksize.
- virtual size_t round_up (size_t nbytes);
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_LOCAL_MEMORY_POOL_H */
-
diff --git a/dep/include/ace/Local_Name_Space.h b/dep/include/ace/Local_Name_Space.h
deleted file mode 100644
index 09aadcaa4de..00000000000
--- a/dep/include/ace/Local_Name_Space.h
+++ /dev/null
@@ -1,133 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Local_Name_Space.h
- *
- * $Id: Local_Name_Space.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Prashant Jain (pjain@cs.wustl.edu)
- * @author Irfan Pyarali (irfan@wuerl.wustl.edu)
- * @author Douglas C. Schmidt (schmidt@cs.wustl.edu).
- */
-//=============================================================================
-
-#ifndef ACE_LOCAL_NAME_SPACE_H
-#define ACE_LOCAL_NAME_SPACE_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Malloc_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_NS_WString;
-
-/**
- * @class ACE_NS_String
- *
- * @brief This class and ACE_NS_Internal are used as Adapters to work
- * with the Map_Manager.
- *
- * In order to work correctly, this class must be able to
- * convert back and forth with <ACE_NS_WStrings>.
- */
-class ACE_Export ACE_NS_String
-{
-public:
- // = Initialization.
- /// Default "no-op" constructor.
- ACE_NS_String (void);
-
- /// Initialization method.
- ACE_NS_String (ACE_WCHAR_T *dst,
- const ACE_WCHAR_T *src,
- size_t len);
-
- /// Converts an ACE_NS_WString to an ACE_NS_String;
- ACE_NS_String (const ACE_NS_WString &);
-
- /// Destructor
- ~ACE_NS_String (void);
-
- /// Converts an ACE_NS_String to fresh copy of an ACE_NS_WString;
- operator ACE_NS_WString () const;
-
- /// Return the ASCII character representation.
- char *char_rep (void) const;
-
- /// Matches on substrings.
- int strstr (const ACE_NS_String &) const;
-
- /// Compare an ACE_NS_String.
- bool operator == (const ACE_NS_String &) const;
-
- /// Compare an ACE_NS_String.
- bool operator != (const ACE_NS_String &) const;
-
- /// Returns length of the string
- size_t len (void) const;
-
- /// Returns the underlying representation.
- ACE_WCHAR_T *fast_rep (void) const;
-
- /// Returns a hash value for this string.
- u_long hash (void) const;
-
-private:
- /// Length of the string.
- size_t len_;
-
- /// This actually points into shared/persistent memory.
- ACE_WCHAR_T *rep_;
-
- /// Should rep_ be deleted when destructed (only used
- /// for WString conversions)
- bool delete_rep_;
-};
-
-/**
- * @class ACE_NS_Internal
- *
- * @brief This class and ACE_NS_String are used as Adapters to work
- * with the Map_Manager.
- */
-class ACE_Export ACE_NS_Internal
-{
-public:
- /// No-op constructor.
- ACE_NS_Internal (void);
-
- /// Constructor.
- ACE_NS_Internal (ACE_NS_String &value, const char *type);
-
- /// Compare an ACE_NS_Internal
- bool operator == (const ACE_NS_Internal &) const;
-
- /// Return value.
- ACE_NS_String value (void);
-
- /// Return type.
- const char *type (void);
-
-private:
- /// Contains the value of the string.
- ACE_NS_String value_;
-
- /// Contains the type of the string.
- const char *type_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// Include the ACE_Local_Name_Space templates stuff at this point.
-#include "ace/Local_Name_Space_T.h"
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_LOCAL_NAME_SPACE_H */
-
diff --git a/dep/include/ace/Local_Name_Space_T.h b/dep/include/ace/Local_Name_Space_T.h
deleted file mode 100644
index a8d556a4eb1..00000000000
--- a/dep/include/ace/Local_Name_Space_T.h
+++ /dev/null
@@ -1,280 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Local_Name_Space_T.h
- *
- * $Id: Local_Name_Space_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Prashant Jain <pjain@cs.wustl.edu>
- * @author Irfan Pyarali <irfan@wuerl.wustl.edu> and
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_LOCAL_NAME_SPACE_T_H
-#define ACE_LOCAL_NAME_SPACE_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Name_Space.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Naming_Context.h"
-#include "ace/SString.h"
-#include "ace/Local_Name_Space.h"
-#include "ace/Null_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/// A short-hand name for our set of name/value/type tuples passed back
-/// to callers.
-typedef ACE_Unbounded_Set<ACE_NS_WString> ACE_WSTRING_SET;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// Simplify later usage by defining typedefs.
-#if (1)
-# include "ace/Hash_Map_Manager_T.h"
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef ACE_Hash_Map_Manager_Ex<ACE_NS_String, ACE_NS_Internal, ACE_Hash<ACE_NS_String>, ACE_Equal_To<ACE_NS_String>, ACE_Null_Mutex> MAP_MANAGER;
-ACE_END_VERSIONED_NAMESPACE_DECL
-#else
-# include "ace/Map_Manager.h"
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef ACE_Map_Manager<ACE_NS_String, ACE_NS_Internal, ACE_Null_Mutex> MAP_MANAGER;
-ACE_END_VERSIONED_NAMESPACE_DECL
-#endif /* 0 */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/// @deprecated Deprecated typedefs. Use the map's traits instead.
-typedef MAP_MANAGER::ITERATOR MAP_ITERATOR;
-typedef MAP_MANAGER::ENTRY MAP_ENTRY;
-
-/**
- * @class ACE_Name_Space_Map
- *
- * @brief This class serves as a Proxy that ensures our process always
- * has the appropriate allocator in place for every operation
- * that accesses or updates the Map Manager.
- *
- * We need this class because otherwise the ALLOCATOR
- * pointer will be stored in the Map_Manager that resides within
- * shared memory. Naturally, this will cause horrible problems
- * since only the first process to set that pointer will be
- * guaranteed the address of the ALLOCATOR is meaningful!
- */
-template <class ALLOCATOR>
-class ACE_Name_Space_Map : public MAP_MANAGER
-{
-public:
- /// Constructor.
- ACE_Name_Space_Map (ALLOCATOR *alloc);
-
- // = The following methods are Proxies to the underlying methods
- // provided by ACE_Hash_Map_Manager. When they are called, they
- // acquire the lock, set the allocator to the one specific to this
- // process, and then call down to perform the intended operation.
- int bind (const ACE_NS_String &,
- const ACE_NS_Internal &,
- ALLOCATOR *alloc);
-
- int unbind (const ACE_NS_String &,
- ACE_NS_Internal &,
- ALLOCATOR *alloc);
-
- int rebind (const ACE_NS_String &,
- const ACE_NS_Internal &,
- ACE_NS_String &,
- ACE_NS_Internal &,
- ALLOCATOR *alloc);
-
- int find (const ACE_NS_String &,
- ACE_NS_Internal &,
- ALLOCATOR *alloc);
-
- int close (ALLOCATOR *alloc);
-};
-
-/**
- * @class ACE_Local_Name_Space
- *
- * @brief Maintaining accesses Local Name Server Database. Allows to
- * add NameBindings, change them, remove them and resolve
- * NameBindings.
- *
- * Manages a Naming Service for a local name space which
- * includes bindings for node_local and host_local naming
- * contexts. All strings are stored in wide character format.
- * A Name Binding consists of a name (that's the key), a value
- * string and an optional type string (no wide chars).
- */
-template <ACE_MEM_POOL_1, class ACE_LOCK>
-class ACE_Local_Name_Space : public ACE_Name_Space
-{
-public:
- // = Initialization and termination methods.
- /// "Do-nothing" constructor.
- ACE_Local_Name_Space (void);
-
- /**
- * Specifies the scope of this namespace, opens and memory-maps the
- * associated file (if accessible) or contacts the dedicated name
- * server process for NET_LOCAL namespace.
- */
- ACE_Local_Name_Space (ACE_Naming_Context::Context_Scope_Type scope_in,
- ACE_Name_Options *name_options);
-
- /**
- * Specifies the scope of this namespace, opens and memory-maps the
- * associated file (if accessible) or contacts the dedicated name
- * server process for NET_LOCAL namespace.
- */
- int open (ACE_Naming_Context::Context_Scope_Type scope_in);
-
- /// Destructor, do some cleanup :TBD: last dtor should "compress"
- /// file
- ~ACE_Local_Name_Space (void);
-
- /// Bind a new name to a naming context (Wide character strings).
- virtual int bind (const ACE_NS_WString &name,
- const ACE_NS_WString &value,
- const char *type = "");
-
- /**
- * Overwrite the value or type of an existing name in a
- * ACE_Local_Name_Space or bind a new name to the context, if it
- * didn't exist yet. (Wide charcter strings interface).
- */
- virtual int rebind (const ACE_NS_WString &name,
- const ACE_NS_WString &value,
- const char *type = "");
-
- /// Delete a name from a ACE_Local_Name_Space (Wide charcter strings
- /// Interface).
- virtual int unbind (const ACE_NS_WString &name);
- virtual int unbind_i (const ACE_NS_WString &name);
-
- /// Get value and type of a given name binding (Wide chars). The
- /// caller is responsible for deleting @a type!
- virtual int resolve (const ACE_NS_WString &name,
- ACE_NS_WString &value,
- char *&type);
- virtual int resolve_i (const ACE_NS_WString &name,
- ACE_NS_WString &value,
- char *&type);
-
- /// Get a set of names matching a specified pattern (wchars). Matching
- /// means the names must begin with the pattern string.
- virtual int list_names (ACE_WSTRING_SET &set,
- const ACE_NS_WString &pattern);
- virtual int list_names_i (ACE_WSTRING_SET &set,
- const ACE_NS_WString &pattern);
-
- /// Get a set of values matching a specified pattern (wchars). Matching
- /// means the values must begin with the pattern string.
- virtual int list_values (ACE_WSTRING_SET &set,
- const ACE_NS_WString &pattern);
- virtual int list_values_i (ACE_WSTRING_SET &set,
- const ACE_NS_WString &pattern);
-
- /// Get a set of types matching a specified pattern (wchars). Matching
- /// means the types must begin with the pattern string.
- virtual int list_types (ACE_WSTRING_SET &set,
- const ACE_NS_WString &pattern);
- virtual int list_types_i (ACE_WSTRING_SET &set,
- const ACE_NS_WString &pattern);
-
- /**
- * Get a set of names matching a specified pattern (wchars). Matching
- * means the names must begin with the pattern string. Returns the
- * complete binding associated each pattern match.
- */
- virtual int list_name_entries (ACE_BINDING_SET &set,
- const ACE_NS_WString &pattern);
- virtual int list_name_entries_i (ACE_BINDING_SET &set,
- const ACE_NS_WString &pattern);
-
- /**
- * Get a set of values matching a specified pattern (wchars). Matching
- * means the values must begin with the pattern string. Returns the
- * complete binding associated each pattern match.
- */
- virtual int list_value_entries (ACE_BINDING_SET &set,
- const ACE_NS_WString &pattern);
- virtual int list_value_entries_i (ACE_BINDING_SET &set,
- const ACE_NS_WString &pattern);
-
- /**
- * Get a set of types matching a specified pattern (wchars). Matching
- * means the types must begin with the pattern string. Returns the
- * complete binding associated each pattern match.
- */
- virtual int list_type_entries (ACE_BINDING_SET &set,
- const ACE_NS_WString &pattern);
- virtual int list_type_entries_i (ACE_BINDING_SET &set,
- const ACE_NS_WString &pattern);
-
- /// Dump the state of the object
- virtual void dump (void) const;
- virtual void dump_i (void) const;
-
- // = I just know this is going to cause problems on some platform...
- typedef ACE_Allocator_Adapter <ACE_Malloc <ACE_MEM_POOL_2, ACE_LOCK> >
- ALLOCATOR;
-
-private:
-#if defined (ACE_WIN32)
- /// Remap the backing store
- int remap (EXCEPTION_POINTERS *ep);
-#endif /* ACE_WIN32 */
-
- /// Factor out code from bind() and rebind().
- int shared_bind (const ACE_NS_WString &name,
- const ACE_NS_WString &value,
- const char *type, int rebind);
- int shared_bind_i (const ACE_NS_WString &name,
- const ACE_NS_WString &value,
- const char *type, int rebind);
-
- /// Allocate the appropriate type of map manager that stores the
- /// key/value binding.
- int create_manager (void);
- int create_manager_i (void);
-
- /// Pointer to the allocator
- ALLOCATOR *allocator_;
-
- /// Pointer to the allocated map manager.
- ACE_Name_Space_Map <ALLOCATOR> *name_space_map_;
-
- /// Scope of this naming context (e.g., PROC_LOCAL, NODE_LOCAL, or
- /// NET_LOCAL).
- ACE_Naming_Context::Context_Scope_Type ns_scope_;
-
- /// Keep track of the options such as database name etc
- ACE_Name_Options *name_options_;
-
- /// Name of the file used as the backing store.
- ACE_TCHAR context_file_[MAXPATHLEN + MAXNAMELEN];
-
- /// Synchronization variable.
- ACE_LOCK *lock_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Local_Name_Space_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Local_Name_Space_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_LOCAL_NAME_SPACE_T_H */
-
diff --git a/dep/include/ace/Local_Tokens.h b/dep/include/ace/Local_Tokens.h
deleted file mode 100644
index 611643b7752..00000000000
--- a/dep/include/ace/Local_Tokens.h
+++ /dev/null
@@ -1,1122 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Local_Tokens.h
- *
- * $Id: Local_Tokens.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Karl-Heinz Dorn <kdorn@erlh.siemens.de>
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Tim Harrison <harrison@cs.wustl.edu>
- *
- * This file contains definitions for the following classes:
- *
- * public:
- * 7. ACE_Token_Proxy
- * 8. ACE_Null_Token : public ACE_Token_Proxy
- * 9. ACE_Local_Mutex : public ACE_Token_Proxy
- * *. ACE_Local_RLock : public ACE_Local_Mutex
- * &. ACE_Local_WLock : public ACE_Local_Mutex
- * private:
- * 1. ACE_TOKEN_CONST
- * 3. ACE_TPQ_Entry
- * b. ACE_TSS_TPQ_Entry
- * c. ACE_TPQ_Iterator
- * 4. ACE_Token_Proxy_Queue
- * 5. ACE_Tokens
- * 6. ACE_Mutex_Token : public ACE_Tokens
- * 12. ACE_RW_Token : public ACE_Tokens
- * a. ACE_Token_Name
- *
- * Note that the locking classes defined in this file are *not*
- * intended to be used as general-purpose synchronization
- * mechanisms, such as mutexes or semaphores. Instead, you should
- * use the ACE_Recursive_Thread_Mutex, ACE_Thread_Mutex,
- * ACE_Thread_Semaphore, etc., that are defined in
- * $ACE_ROOT/ace/Synch.h and $ACE_ROOT/ace/Synch_T.h or the
- * ACE_Token that's defined in $ACE_ROOT/ace/Token.h.
- *
- *
- */
-//=============================================================================
-
-#ifndef ACE_LOCAL_MUTEX_H
-#define ACE_LOCAL_MUTEX_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_TOKENS_LIBRARY)
-
-#include "ace/Synch_Traits.h"
-#include "ace/Condition_Thread_Mutex.h"
-#include "ace/TSS_T.h"
-#include "ace/Containers.h"
-#include "ace/Synch_Options.h"
-#include "ace/Map_Manager.h"
-#include "ace/Log_Msg.h"
-#include "ace/OS_NS_string.h"
-#include "ace/os_include/os_netdb.h"
-
-#if !(defined (ACE_HAS_THREADS) && defined (ACE_HAS_THREAD_SPECIFIC_STORAGE))
-# define ACE_NO_TSS_TOKENS 1
-#endif /* !(defined (ACE_HAS_THREADS) && defined (ACE_HAS_THREAD_SPECIFIC_STORAGE)) */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// 1.
-/**
- * @class ACE_TOKEN_CONST
- *
- * @brief Not a public interface.
- *
- * Constant definitions and typedefs for Token library. Mostly,
- * this class is necessary to fight the compiler with order of
- * declaration errors.
- */
-namespace ACE_TOKEN_CONST
-{
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
- // ACE platform supports some form of threading.
- typedef ACE_Condition_Thread_Mutex COND_VAR;
- typedef ACE_Thread_Mutex MUTEX;
- typedef ACE_Guard<ACE_Thread_Mutex> GUARD;
-#else
- typedef ACE_Null_Condition COND_VAR;
- typedef ACE_Null_Mutex MUTEX;
- typedef ACE_Guard<ACE_Null_Mutex> GUARD;
-#endif /* ACE_HAS_THREADS */
-}
-
-// Forward decl.
-class ACE_Token_Proxy;
-
-// 3..
-/**
- * @class ACE_TPQ_Entry
- *
- * @brief Token Proxy Queue entry. Used in the ACE_Token_Proxy_Queue
- *
- * Not a public interface.
- */
-class ACE_Export ACE_TPQ_Entry
-{
- friend class ACE_Token_Manager;
-public:
- typedef void (*PTVF) (void *);
-
- /// Null constructor.
- ACE_TPQ_Entry (void);
-
- /// Constructor.
- ACE_TPQ_Entry (const ACE_Token_Proxy *proxy,
- const ACE_TCHAR *client_id);
-
- /// Copy constructor.
- ACE_TPQ_Entry (const ACE_TPQ_Entry &rhs);
-
- /// Destructor.
- ~ACE_TPQ_Entry (void);
-
- /// Copy operator use by the queue.
- void operator= (const ACE_TPQ_Entry &rhs);
-
- /// Get top of the queue.
- ACE_Token_Proxy *proxy (void) const;
-
- /// Set top of the queue.
- void proxy (ACE_Token_Proxy *);
-
- /// Get nesting level of the entry.
- int nesting_level (void) const;
-
- /// Delta nesting level of the entry.
- void nesting_level (int delta);
-
- /// Get client_id of the entry.
- const ACE_TCHAR *client_id (void) const;
-
- /// Set client_id of the entry.
- void client_id (const ACE_TCHAR *);
-
- /// Returns 1 if @a id == client id. Does not check for @a id == 0.
- int equal_client_id (const ACE_TCHAR *id);
-
- /// One method for arg and sleep_hook.
- void set (void (*sleep_hook)(void *));
-
- /// Set sleep hook of the entry.
- void sleep_hook (void (*sh)(void *));
-
- /// Get sleep hook of the entry.
- PTVF sleep_hook (void) const;
-
- /// Call the sleep hook function or method passing arg.
- void call_sleep_hook (void);
-
- /// Dump the state of the class.
- void dump (void) const;
-
- // = Used to block the thread if an acquire fails with EWOULDBLOCK.
- ACE_TOKEN_CONST::COND_VAR cond_var_;
- ACE_TOKEN_CONST::MUTEX lock_;
-
- /// Pointer to next in list.
- ACE_TPQ_Entry *next_;
-
- /// Get whether this client is blocked waiting for a token.
- int waiting (void) const;
-
- /// Set whether this client is blocked waiting for a token.
- void waiting (int w);
-
-private:
- /// This client is waiting for a token.
- int waiting_;
-
- /// Proxy.
- ACE_Token_Proxy *proxy_;
-
- /// Nesting level.
- int nesting_level_;
-
- /// Arg.
- void *arg_;
-
- /// Client id.
- ACE_TCHAR client_id_[ACE_MAXCLIENTIDLEN];
-
- /// Sleep hook.
- void (*sleep_hook_)(void *);
-};
-
-// b..
-#if defined (ACE_NO_TSS_TOKENS)
-typedef ACE_TPQ_Entry ACE_TPQ_ENTRY;
-#else
-typedef ACE_TSS<ACE_TPQ_Entry> ACE_TPQ_ENTRY;
-#endif /* ACE_NO_TSS_TOKENS */
-
-/**
- * @class ACE_TSS_TPQ_Entry
- *
- * @brief ACE_TSS_TPQ_Entry
- *
- * Not a public interface.
- */
-class ACE_Export ACE_TSS_TPQ_Entry : public ACE_TPQ_ENTRY
-{
-public:
- /// These are passed to the constructor of ACE_TPQ_Entry in
- /// make_TSS_TYPE
- ACE_TSS_TPQ_Entry (const ACE_Token_Proxy *proxy,
- const ACE_TCHAR *client_id);
-
- /// Destructor.
- virtual ~ACE_TSS_TPQ_Entry (void);
-
- /// Allows us to pass args to the construction of the TSS object.
- virtual ACE_TPQ_Entry *make_TSS_TYPE (void) const;
-
- /// Operator overloading and inheritence don't mix.
- operator ACE_TPQ_Entry *(void);
-
- /// Dump the state of the class.
- void dump (void) const;
-
-#if defined (ACE_NO_TSS_TOKENS)
- ACE_TPQ_Entry *operator-> (void)
- {
- return (ACE_TPQ_Entry *) this;
- }
-#endif /* ACE_NO_TSS_TOKENS */
-
-private:
- /// Private: should not be used
- ACE_TSS_TPQ_Entry (const ACE_TSS_TPQ_Entry &);
- void operator= (const ACE_TSS_TPQ_Entry &);
-
- // = These are passed to the constructor of ACE_TPQ_Entry in
- // make_TSS_TYPE
-
- /// Proxy.
- const ACE_Token_Proxy *proxy_;
-
- /// Client_id.
- const ACE_TCHAR *client_id_;
-};
-
-class ACE_Token_Proxy_Queue;
-
-// c..
-/**
- * @class ACE_TPQ_Iterator
- *
- * @brief Iterates through ACE_Token_Proxy_Queues.
- *
- * Not a public interface.
- */
-class ACE_Export ACE_TPQ_Iterator
-{
-public:
- /// Constructor.
- ACE_TPQ_Iterator (ACE_Token_Proxy_Queue &q);
-
- /// Destructor.
- ~ACE_TPQ_Iterator (void);
-
- /// Pass back the <next_item>.
- int next (ACE_TPQ_Entry *&next_item);
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Move forward by one element in the queue.
- void advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
-private:
- ACE_TPQ_Entry *current_;
-};
-
-// 4..
-/**
- * @class ACE_Token_Proxy_Queue
- *
- * @brief Token waiter list.
- *
- * Not a public interface.
- * This queue holds all the token proxies waiting for ownership
- * of a token. Along with the proxy reference, it also stores
- * the nesting level, client id, and a magic cookie from the
- * proxy. This queue stores the ACE_TPQ_Entries by pointer
- * values. It DOES NOT make copies. Thus, the user is
- * responsible to ensure that the TPQ's stick around. This is
- * motivated by the need to reduce dynamic memory allocation.
- */
-class ACE_Export ACE_Token_Proxy_Queue
-{
-public:
- friend class ACE_TPQ_Iterator;
-
- /// Constructor.
- ACE_Token_Proxy_Queue (void);
-
- /// Destructor.
- ~ACE_Token_Proxy_Queue (void);
-
- /**
- * Enqueue a proxy, nesting level, client_id, and a magic cookie at
- * the given position in the list. If the position is -1, we
- * enqueue at the end of the list (I think).
- */
- void enqueue (ACE_TPQ_Entry* new_entry,
- int position);
-
- /// Top of the queue.
- const ACE_TPQ_Entry* head (void);
-
-// int member (const ACE_TCHAR *id);
- // Is this id in the waiter list?
-
- /// Remove the top waiter.
- void dequeue (void);
-
- /// Remove the waiter whose proxy ref matches @a remove_me.
- void remove (const ACE_TPQ_Entry *remove_me);
-
- /// The number of waiters.
- int size (void);
-
- /// Dump the state of the class.
- void dump (void) const;
-
-protected:
- /// Head.
- ACE_TPQ_Entry *head_;
-
- /// Tail.
- ACE_TPQ_Entry *tail_;
-
- /// Size.
- int size_;
-};
-
-// 5..
-/**
- * @class ACE_Tokens
- *
- * @brief Abstract representation of ACE tokens.
- *
- * Not a public interface.
- * Currently, I don't see a reason for providing an abstract
- * interface at this level of the library. As of yet, no one
- * uses ACE_Tokens derivatives through this abstract interface
- * except for ACE_Token_Manager. It only uses the statistical
- * methods which are shared by all Tokens. For that reason, it
- * still makes since to have a common base class. However,
- * acquire, renew, and release do not need to have matching
- * interfaces throughout all Tokens.
- * To add a new type of token (e.g. semaphore), this class must
- * be subtyped to define the new semantics. See
- * ACE_Token_Manager for details.
- */
-class ACE_Export ACE_Tokens
-{
-public:
-
- /// Null constructor.
- ACE_Tokens (void);
-
- /// Destructor
- virtual ~ACE_Tokens (void);
-
- /// No implementation.
- virtual int acquire (ACE_TPQ_Entry *caller,
- int ignore_deadlock,
- int notify) = 0;
-
- /// No implementation.
- virtual int tryacquire (ACE_TPQ_Entry *caller) = 0;
-
- /// No implementation.
- virtual int renew (ACE_TPQ_Entry *caller,
- int requeue_position) = 0;
-
- /// No implementation.
- virtual int release (ACE_TPQ_Entry *caller) = 0;
-
- /// Move the caller to the front of the waiter list. This is for use
- /// with remote mutexes and shadow mutexes.
- void make_owner (ACE_TPQ_Entry *caller);
-
- /// Remove the caller from the waiter list.
- void remove (ACE_TPQ_Entry *caller);
-
- // = Accessor methods.
-
- /// Stack of owners.
- typedef ACE_Unbounded_Stack<ACE_TPQ_Entry *> OWNER_STACK;
-
- /// Returns a stack of the current owners. Returns -1 on error, 0 on
- /// success. If <id> is non-zero, returns 1 if id is an owner.
- virtual int owners (OWNER_STACK &o, const ACE_TCHAR *id) = 0;
-
- /// Returns 1 if <id> is waiting for this token. 0 otherwise.
- virtual int is_waiting_for (const ACE_TCHAR *id) = 0;
-
- /// Returns 1 if <id> is an owner of this token. 0 otherwise.
- virtual int is_owner (const ACE_TCHAR *id) = 0;
-
- /// Return the queue of waiters.
- virtual ACE_Token_Proxy_Queue *waiters (void);
-
- /// Return the number of proxies that are currently waiting to get
- /// the token.
- virtual int no_of_waiters (void);
-
- /// The current owner.
- const ACE_TCHAR *owner_id (void);
-
- /// Token name.
- const ACE_TCHAR* name (void);
-
- // = Reference counting. These are only called by the
- // Token_Manager.
- void inc_reference (void);
- int dec_reference (void);
-
- /// Dump the state of the class.
- void dump (void) const;
-
- /**
- * These are the Token types supported by the library at ship time.
- * There is no restriction on the number of Token types added by
- * "3rd parties." These are only necessary for the Token Server.
- */
- enum TOKEN_TYPES { MUTEX, RWLOCK };
-
- /**
- * Provides a manual RTTI mechanism. This method is used only by
- * ACE_Token_Request so that the type of a token can be sent to a
- * remote Token Server.
- */
- virtual int type (void) const = 0;
-
- // = The following methods allow the deadlock detection algorithm to
- // check if this token has been visited.
-
- /// Mark or unmark the token as visited.
- void visit (int v);
-
- /// Check if the token has been visited.
- int visited (void);
-
- /// All the data of the current owner.
- ACE_TPQ_Entry *owner (void);
-
-protected:
-
- /// For the deadlock detection algorithm.
- int visited_;
-
- /// Reference count.
- int reference_count_;
-
- /// List of client's owning and waiting the token.
- ACE_Token_Proxy_Queue waiters_;
-
- /// Name of token.
- ACE_TCHAR token_name_[ACE_MAXTOKENNAMELEN];
-};
-
-class ACE_Local_Mutex;
-
-// 6..
-/**
- * @class ACE_Mutex_Token
- *
- * @brief Class that acquires, renews, and releases a process-local
- * synchronization token.
- *
- * Not a public interface.
- * This class is a more general-purpose synchronization mechanism
- * than SunOS 5.x mutexes. For example, it implements "recursive
- * mutex" semantics, where a thread that owns the token can
- * reacquire it without deadlocking. In addition, threads that
- * are blocked awaiting the token are serviced in strict FIFO
- * order as other threads release the token (SunOS 5.x mutexes
- * don't strictly enforce an acquisition order).
- */
-class ACE_Export ACE_Mutex_Token : public ACE_Tokens
-{
-public:
- /// Constructor
- explicit ACE_Mutex_Token (const ACE_TCHAR* name);
-
- /// Destructor
- virtual ~ACE_Mutex_Token (void);
-
- // = Synchronization operations.
- // With acquire, renew, and release, the caller must be specified so
- // that multiple proxies (e.g. ACE_Local_Mutex) can use the same
- // token.
-
- /**
- * Returns 0 on success, -1 on failure with <ACE_Log_Msg::errnum> as
- * the reason. If errnum == EWOULDBLOCK, and notify == 1,
- * <ACE_Token_Proxy::sleep_hook> has been called on the current
- * owner of the token. If ignore_deadlock is passed as 1 and errnum
- * == EDEADLK, then deadlock was detected via ace_token_manager.
- */
- virtual int acquire (ACE_TPQ_Entry *caller,
- int ignore_deadlock,
- int notify);
-
- /// Same as acquire, but fails if would block
- virtual int tryacquire (ACE_TPQ_Entry *caller);
-
- /**
- * An optimized method that efficiently reacquires the token if no
- * other threads are waiting. This is useful for situations where
- * you don't want to degrade the quality of service if there are
- * other threads waiting to get the token. If <requeue_position> ==
- * -1 and there are other threads waiting to obtain the token we are
- * queued at the end of the list of waiters. If <requeue_position>
- * > -1 then it indicates how many entries to skip over before
- * inserting our thread into the list of waiters (e.g.,
- * <requeue_position> == 0 means "insert at front of the queue").
- * Renew has the rather odd semantics such that if there are other
- * waiting threads it will give up the token even if the
- * nesting_level_ > 1. I'm not sure if this is really the right
- * thing to do (since it makes it possible for shared data to be
- * changed unexpectedly) so use with caution... Returns 0 on
- * success, -1 on failure with <ACE_Log_Msg::errnum> as the reason.
- * If errnum == EWOULDBLOCK, and notify == 1,
- * <ACE_Token_Proxy::sleep_hook> has been called on the current
- * owner of the token.
- */
- virtual int renew (ACE_TPQ_Entry *caller,
- int requeue_position);
-
- /**
- * Relinquish the token. If there are any waiters then the next one
- * in line gets it. If the caller is not the owner, caller is
- * removed from the waiter list.
- */
- virtual int release (ACE_TPQ_Entry *caller);
-
- /// Dump the state of the class.
- void dump (void) const;
-
- /// Returns ACE_Tokens::MUTEX.
- virtual int type (void) const;
-
- /// Returns a stack of the current owners. Returns -1 on error, 0 on
- /// success. If <id> is non-zero, returns 1 if id is an owner.
- virtual int owners (OWNER_STACK &o, const ACE_TCHAR *id);
-
- /// Returns 1 if <id> is waiting for this token. 0 otherwise.
- virtual int is_waiting_for (const ACE_TCHAR *id);
-
- /// Returns 1 if <id> is an owner of this token. 0 otherwise.
- virtual int is_owner (const ACE_TCHAR *id);
-
-private:
- /// ACE_Mutex_Token used to lock internal data structures.
- ACE_TOKEN_CONST::MUTEX lock_;
-};
-
-// 12..
-/**
- * @class ACE_RW_Token
- *
- * @brief Class that acquires, renews, and releases a process-local
- * synchronization token.
- *
- * Not a public interface.
- * This class is a more general-purpose synchronization mechanism
- * than SunOS 5.x mutexes. For example, it implements "recursive
- * mutex" semantics, where a thread that owns the token can
- * reacquire it without deadlocking. In addition, threads that are
- * blocked awaiting the token are serviced in strict FIFO order as
- * other threads release the token (SunOS 5.x mutexes don't strictly
- * enforce an acquisition order).
- */
-class ACE_Export ACE_RW_Token : public ACE_Tokens
-{
-public:
- /// Constructor.
- explicit ACE_RW_Token (const ACE_TCHAR* name);
-
- /// Destructor.
- virtual ~ACE_RW_Token (void);
-
- // = Synchronization operations.
- // With acquire, renew, and release, the caller must be specified so
- // that multiple proxies (e.g. ACE_Local_Mutex) can use the same
- // token.
-
- /**
- * Returns 0 on success, -1 on failure with <ACE_Log_Msg::errnum> as
- * the reason. If errnum == EWOULDBLOCK, and notify == 1,
- * <ACE_Token_Proxy::sleep_hook> has been called on the current
- * owner of the token. If @a ignore_deadlock is passed as 1 and errnum
- * == EDEADLK, then deadlock was detected via ACE_Token_Manager.
- */
- virtual int acquire (ACE_TPQ_Entry *caller,
- int ignore_deadlock,
- int notify);
-
- /// Same as acquire except fails on would block
- virtual int tryacquire (ACE_TPQ_Entry *caller);
-
- /**
- * An optimized method that efficiently reacquires the token if no
- * other threads are waiting. This is useful for situations where
- * you don't want to degrade the quality of service if there are
- * other threads waiting to get the token. If <requeue_position> ==
- * -1 and there are other threads waiting to obtain the token we are
- * queued at the end of the list of waiters. If <requeue_position>
- * > -1 then it indicates how many entries to skip over before
- * inserting our thread into the list of waiters (e.g.,
- * <requeue_position> == 0 means "insert at front of the queue").
- * Renew has the rather odd semantics such that if there are other
- * waiting threads it will give up the token even if the
- * nesting_level_ > 1. I'm not sure if this is really the right
- * thing to do (since it makes it possible for shared data to be
- * changed unexpectedly) so use with caution... Returns 0 on
- * success, -1 on failure with <ACE_Log_Msg::errnum> as the reason.
- * If errnum == EWOULDBLOCK, and notify == 1,
- * <ACE_Token_Proxy::sleep_hook> has been called on the current
- * owner of the token.
- */
- virtual int renew (ACE_TPQ_Entry *caller,
- int requeue_position);
-
- /**
- * Relinquish the token. If there are any waiters then the next one
- * in line gets it. If the caller is not the owner, caller is
- * removed from the waiter list.
- */
- virtual int release (ACE_TPQ_Entry *caller);
-
- /// Dump the state of the class.
- void dump (void) const;
-
- /// These are the types that proxies can be.
- enum PROXY_TYPE { READER, WRITER };
-
- /// Returns READER or WRITER.
- virtual int type (void) const;
-
- /// Returns a stack of the current owners. Returns -1 on error, 0 on
- /// success. If <id> is non-zero, returns 1 if id is an owner.
- virtual int owners (OWNER_STACK &o, const ACE_TCHAR *id);
-
- /// Returns 1 if <id> is waiting for this token. 0 otherwise.
- virtual int is_waiting_for (const ACE_TCHAR *id);
-
- /// Returns 1 if <id> is an owner of this token. 0 otherwise.
- virtual int is_owner (const ACE_TCHAR *id);
-
-protected:
- /// The number of waiting writers.
- int num_writers_;
-
- /// ACE_Mutex_Token used to lock internal data structures.
- ACE_TOKEN_CONST::MUTEX lock_;
-
- /// Sets the new owner.
- void notify_new_owner (ACE_TPQ_Entry *caller);
-};
-
-// a..
-/**
- * @class ACE_Token_Name
- *
- * @brief Allows Token_Manger to identify tokens.
- *
- * For now, this is just a string. We need a string class
- * anyway to use in ACE_Map_Manager. Having this class
- * (instead of <ACE_SString>) allows us to easily change if
- * needed. For instance, we may choose to identify tokens by
- * name and *type* in the future.
- */
-class ACE_Export ACE_Token_Name
-{
-public:
- /// Construction.
- ACE_Token_Name (const ACE_TCHAR *token_name = 0);
-
- /// Copy construction.
- ACE_Token_Name (const ACE_Token_Name &rhs);
-
- /// Destructor.
- virtual ~ACE_Token_Name (void);
-
- /// Copy.
- void operator= (const ACE_Token_Name &rhs);
-
- /// Comparison.
- bool operator== (const ACE_Token_Name &rhs) const;
-
- /// Get the token name.
- const ACE_TCHAR *name (void) const;
-
- /// Set the token name.
- void name (const ACE_TCHAR *new_name);
-
- /// Dump the state of the class.
- void dump (void) const;
-
-private:
- /// Name of the token.
- ACE_TCHAR token_name_[ACE_MAXTOKENNAMELEN];
-};
-
-// 7..
-/**
- * @class ACE_Token_Proxy
- *
- * @brief Abstract representation of ACE tokens.
- *
- * Interface for all Tokens in ACE. This class implements the
- * synchronization needed for tokens (condition variables etc.)
- * The algorithms for the operations (acquire, release, etc.)
- * operate on the generic ACE_Tokens interface. Thus, the _type_
- * of token (mutex, rwlock) can be set at construction of
- * ACE_Token_Proxy. You can use all Tokens in ACE through the
- * ACE_Token_Proxy by passing the proper values at construction.
- * Alternatively, there are class definitions which "know" how to
- * do this (ACE_Local_Mutex, ACE_Local_RLock, ACE_Local_WLock).
- * To add a new type of token (e.g. semaphore), this class is not
- * changed. See ACE_Token_Manager for details.
- * Tokens (e.g. ACE_Mutex_Token) assume that it can always call
- * <ACE_Token_Proxy::token_acquired> on a new token owner. This
- * is not a problem for synchronous use of token proxies (that is,
- * when acquires block until successful.) However, for
- * implementations of the Token Server, which may use asynch
- * operations, the proxy can not go away after an acquire until
- * the token is acquired. This is not really a problem, but
- * should be understood.
- */
-class ACE_Export ACE_Token_Proxy
-{
-public:
- friend class ACE_Token_Manager;
- friend class ACE_Token_Invariant_Manager; // For testing.
-
- // Initialization and termination methods.
- /// Construction.
- ACE_Token_Proxy (void);
-
- /// Destructor.
- virtual ~ACE_Token_Proxy (void);
-
- /**
- * Open the <ACE_Token>.
- * @param name The string uniquely identifying the token.
- * @param ignore_deadlock Can be 1 to disable deadlock notifications.
- * @param debug Prints debug messages.
- */
- virtual int open (const ACE_TCHAR *name,
- int ignore_deadlock = 0,
- int debug = 0);
-
- // = The following methods have implementations which are
- // independent of the token semantics (mutex, rwlock, etc.) They
- // forward operations to the underlying token and perform the
- // necessary blocking semantics for operations (condition variables
- // etc.) This allows reuse of the blocking code as well as having
- // multiple proxies to the same token.
-
- /// Calls acquire on the token. Blocks the calling thread if would
- /// block.
- virtual int acquire (int notify = 0,
- void (*sleep_hook)(void *) = 0,
- ACE_Synch_Options &options =
- ACE_Synch_Options::defaults);
-
- /// Calls renew on the token. Blocks the calling thread if would block.
- virtual int renew (int requeue_position = -1,
- ACE_Synch_Options &options =
- ACE_Synch_Options::defaults);
-
- /// Calls renew on the token.
- virtual int tryacquire (void (*sleep_hook)(void *) = 0);
-
- /// Calls release on the token.
- virtual int release (ACE_Synch_Options &options =
- ACE_Synch_Options::defaults);
-
- /// Calls remove on the token.
- virtual int remove (ACE_Synch_Options &options =
- ACE_Synch_Options::defaults);
-
- /// Since the locking mechanism doesn't support read locks then this
- /// just calls <acquire>.
- virtual int acquire_read (int notify = 0,
- void (*sleep_hook)(void *) = 0,
- ACE_Synch_Options &options =
- ACE_Synch_Options::defaults);
-
- /// Since the locking mechanism doesn't support write locks then this
- /// just calls <acquire>.
- virtual int acquire_write (int notify = 0,
- void (*sleep_hook)(void *) = 0,
- ACE_Synch_Options &options =
- ACE_Synch_Options::defaults);
-
- /// Since the locking mechanism doesn't support read locks then this
- /// just calls <tryacquire>.
- virtual int tryacquire_read (void (*sleep_hook)(void *) = 0);
-
- /// Since the locking mechanism doesn't support write locks then this
- /// just calls <tryacquire>.
- virtual int tryacquire_write (void (*sleep_hook)(void *) = 0);
-
- // = Utility methods.
-
- /// Get the client id of the proxy. This is implemented as
- /// thread-specific data.
- virtual const ACE_TCHAR *client_id (void) const;
-
- /**
- * Set the client_id for the calling thread. I strongly recommend
- * that this not be used unless you really know what you're doing.
- * I use this in the Token Server, and it caused many headaches.
- */
- virtual void client_id (const ACE_TCHAR *client_id);
-
- /**
- * Return the name of the token. This is important for use within
- * the token servers (local and remote) as well as with token
- * collections. So, all derivations of ACE_Token_Proxy must be able to
- * stringify some name. The name must uniquely identify a token.
- * So, for instance, the token within the reactor should probably be
- * called "Reactor Token."
- */
- virtual const ACE_TCHAR *name (void) const;
-
- /**
- * This should really be called <someone_waiting>. This is called
- * by ACE_Token_xx's when another proxy enters the waiting list and
- * requests that the current token holder be notified.
- */
- virtual void sleep_hook (void);
-
- /// This is called when a queued (waiting) proxy is removed from the
- /// waiters list and given the token.
- virtual void token_acquired (ACE_TPQ_Entry *);
-
- /// The client id of the current token holder
- virtual const ACE_TCHAR *owner_id (void);
-
- /// Return a dynamically allocated clone of the derived class.
- virtual ACE_Token_Proxy *clone (void) const = 0;
-
- /// Dump the state of the class.
- void dump (void) const;
-
- /**
- * This method can be used be Tokens (e.g. Readers/Writer Tokens) to
- * distinguish between Proxy types. For instance a Reader proxy
- * should return a different type value than a Writer proxy. The
- * default implementation returns 0.
- */
- virtual int type (void) const;
-
-protected:
- /// Duplication.
- ACE_Token_Proxy (const ACE_Token_Proxy &);
-
- /// If this is set, we ignore deadlock.
- int ignore_deadlock_;
-
- /// Print a bunch of debug messages.
- int debug_;
-
- /// Reference to the actual logical token. Many ACE_Local_Mutex
- /// proxies can reference the same ACE_Mutex_Token.
- ACE_Tokens *token_;
-
- /// Handles cond_var waits.
- int handle_options (ACE_Synch_Options &options,
- ACE_TOKEN_CONST::COND_VAR &cv);
-
- /// Waiter info used for asynchronous transactions.
- ACE_TSS_TPQ_Entry waiter_;
-
- /// Make the correct type of ACE_Tokens. This is called by the Token
- /// Manager.
- virtual ACE_Tokens *create_token (const ACE_TCHAR *name) = 0;
-};
-
-// 8..
-/**
- * @class ACE_Null_Token
- *
- * @brief No op class for nonthreaded platform protocols.
- */
-class ACE_Export ACE_Null_Token : public ACE_Token_Proxy
-{
-public:
-#if defined (ACE_LACKS_INLINE_FUNCTIONS)
- // @@ Hopefully, we can remove this ridicules ifdef when CE's compiler becomes more normal.
- /// Construction.
- ACE_Null_Token (void);
-
- /// Destructor.
- ~ACE_Null_Token (void);
-#endif /* ACE_LACKS_INLINE_FUNCTION */
-
- /// Acquire.
- virtual int acquire (int /* notify */ = 0,
- void (* /* sleep_hook */ )(void *) = 0,
- ACE_Synch_Options & /* options */ =
- ACE_Synch_Options::defaults) { return 0; }
-
- /// Renew.
- virtual int renew (int /* requeue_position */ = -1,
- ACE_Synch_Options & /* options */ =
- ACE_Synch_Options::defaults) { return 0; }
-
- /// Try acquire.
- virtual int tryacquire (void (* /* sleep_hook */)(void *) = 0) { return 0; }
-
- /// Release.
- virtual int release (ACE_Synch_Options & /* options */ =
- ACE_Synch_Options::defaults) { return 0; }
-
- /// Remove.
- virtual int remove (ACE_Synch_Options & /* options */ =
- ACE_Synch_Options::defaults) { return 0; }
-
- /// Return a dynamically allocated clone of the derived class.
- virtual ACE_Token_Proxy *clone (void) const { return new ACE_Null_Token; }
-
- /// Dump the state of the class.
- void dump (void) const;
-
- /// Do not allow the Token Manager to create us.
- virtual ACE_Tokens *create_token (const ACE_TCHAR *) { return 0; }
-};
-
-// 9..
-/**
- * @class ACE_Local_Mutex
- *
- * @brief Class that acquires, renews, and releases a synchronization
- * token local to the process.
- *
- * This class is a more general-purpose synchronization mechanism
- * than SunOS 5.x mutexes. For example, it implements "recursive
- * mutex" semantics, where a thread that owns the token can
- * reacquire it without deadlocking. In addition, threads that
- * are blocked awaiting the token are serviced in strict FIFO
- * order as other threads release the token (SunOS 5.x mutexes
- * don't strictly enforce an acquisition order). Lastly,
- * ACE_Local_Mutex performs deadlock detection on acquire calls.
- * The interfaces for acquire, tryacquire, renew, release,
- * etc. are defined in ACE_Token_Proxy. The semantics for
- * ACE_Local_Mutex are that of a mutex.
- */
-class ACE_Export ACE_Local_Mutex : public ACE_Token_Proxy
-{
-public:
- /**
- * Constructor.
- * @param token_name Uniquely id's the token.
- * @param ignore_deadlock Will allow deadlock to occur (useful for testing).
- * @param debug Prints a bunch of messages.
- */
- ACE_Local_Mutex (const ACE_TCHAR *token_name = 0,
- int ignore_deadlock = 0,
- int debug = 0);
-
- /// Destructor
- ~ACE_Local_Mutex (void);
-
- /// Dump the state of the class.
- void dump (void) const;
-
- /// Return deep copy.
- virtual ACE_Token_Proxy *clone (void) const;
-
-protected:
- /// Return a new ACE_Local_Mutex.
- virtual ACE_Tokens *create_token (const ACE_TCHAR *name);
-};
-
-// *.
-/**
- * @class ACE_Local_RLock
- *
- * @brief Class that acquires, renews, and releases a readers lock that
- * is local to the process.
- *
- * This class implements the reader interface to canonical
- * readers/writer locks. Multiple readers can hold the lock
- * simultaneously when no writers have the lock. Alternatively,
- * when a writer holds the lock, no other participants (readers
- * or writers) may hold the lock. This class is a more
- * general-purpose synchronization mechanism than SunOS 5.x
- * RLocks. For example, it implements "recursive RLock"
- * semantics, where a thread that owns the token can reacquire it
- * without deadlocking. In addition, threads that are blocked
- * awaiting the token are serviced in strict FIFO order as other
- * threads release the token (SunOS 5.x RLockes don't strictly
- * enforce an acquisition order).
- * The interfaces for acquire, tryacquire, renew, release,
- * etc. are defined in ACE_Token_Proxy. The semantics for
- * ACE_Local_RLock are that of a readers/writers lock. Acquire
- * for this class implies a reader acquisition. That is,
- * multiple clients may acquire a lock for read only.
- */
-class ACE_Export ACE_Local_RLock : public ACE_Token_Proxy
-{
-public:
- // = Initialization and termination.
-
- /**
- * Constructor.
- * @param token_name Uniquely id's the token.
- * @param ignore_deadlock Will allow deadlock to occur (useful for testing).
- * @param debug Prints a bunch of messages.
- */
- ACE_Local_RLock (const ACE_TCHAR *token_name = 0,
- int ignore_deadlock = 0,
- int debug = 0);
-
- /// Destructor
- ~ACE_Local_RLock (void);
-
- /// Dump the state of the class.
- void dump (void) const;
-
- /// Returns ACE_RW_Token::RLOCK.
- virtual int type (void) const;
-
- /// Return deep copy.
- virtual ACE_Token_Proxy *clone (void) const;
-
-protected:
- /// Return a new ACE_Local_Mutex.
- virtual ACE_Tokens *create_token (const ACE_TCHAR *name);
-};
-
-// *.
-/**
- * @class ACE_Local_WLock
- *
- * @brief Class that acquires, renews, and releases a writer lock that
- * is local to the process.
- *
- * This class implements the writer interface to canonical
- * readers/writer locks. Multiple readers can hold the lock
- * simultaneously when no writers have the lock. Alternatively,
- * when a writer holds the lock, no other participants (readers
- * or writers) may hold the lock. This class is a more
- * general-purpose synchronization mechanism than SunOS 5.x
- * WLock. For example, it implements "recursive WLock"
- * semantics, where a thread that owns the token can reacquire it
- * without deadlocking. In addition, threads that are blocked
- * awaiting the token are serviced in strict FIFO order as other
- * threads release the token (SunOS 5.x WLocks don't strictly
- * enforce an acquisition order).
- * The interfaces for acquire, tryacquire, renew, release,
- * etc. are defined in ACE_Token_Proxy. The semantics for
- * ACE_Local_WLock are that of a readers/writers lock. Acquire
- * for this class implies a writer acquisition. That is, only
- * one client may hold the lock for writing.
- */
-class ACE_Export ACE_Local_WLock : public ACE_Token_Proxy
-{
-public:
- // = Initialization and termination.
-
- /**
- * Constructor.
- * @param token_name Uniquely id's the token.
- * @param ignore_deadlock Will allow deadlock to occur (useful for testing).
- * @param debug Prints a bunch of messages.
- */
- ACE_Local_WLock (const ACE_TCHAR *token_name = 0,
- int ignore_deadlock = 0,
- int debug = 0);
-
- /// Destructor
- ~ACE_Local_WLock (void);
-
- /// Dump the state of the class.
- void dump (void) const;
-
- /// Returns ACE_RW_Token::WLOCK.
- virtual int type (void) const;
-
- /// Return deep copy.
- virtual ACE_Token_Proxy *clone (void) const;
-
-protected:
- /// Return a new ACE_Local_Mutex.
- ACE_Tokens *create_token (const ACE_TCHAR *name);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_TOKENS_LIBRARY */
-
-#if defined (__ACE_INLINE__)
-#include "ace/Local_Tokens.inl"
-#endif /* __ACE_INLINE__ */
-#include /**/ "ace/post.h"
-#endif /* ACE_LOCAL_MUTEX_H */
-
diff --git a/dep/include/ace/Local_Tokens.inl b/dep/include/ace/Local_Tokens.inl
deleted file mode 100644
index 3d59893f3cf..00000000000
--- a/dep/include/ace/Local_Tokens.inl
+++ /dev/null
@@ -1,288 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Local_Tokens.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#if defined (ACE_HAS_TOKENS_LIBRARY)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// ************************************************************
-
-ACE_INLINE int
-ACE_Token_Proxy_Queue::size (void)
-{
- ACE_TRACE ("ACE_Token_Proxy_Queue::size");
- return this->size_;
-}
-
-// ************************************************************
-
-ACE_INLINE int
-ACE_TPQ_Entry::waiting (void) const
-{
- ACE_TRACE ("ACE_TPQ_Entry::waiting");
- return waiting_;
-}
-
-ACE_INLINE void
-ACE_TPQ_Entry::waiting (int v)
-{
- ACE_TRACE ("ACE_TPQ_Entry::waiting");
- waiting_ = v;
-}
-
-ACE_INLINE const ACE_TCHAR *
-ACE_TPQ_Entry::client_id (void) const
-{
- ACE_TRACE ("ACE_TPQ_Entry::client_id");
- return this->client_id_;
-}
-
-ACE_INLINE ACE_Token_Proxy *
-ACE_TPQ_Entry::proxy (void) const
-{
- ACE_TRACE ("ACE_TPQ_Entry::proxy");
- return this->proxy_;
-}
-
-ACE_INLINE void
-ACE_TPQ_Entry::proxy (ACE_Token_Proxy *proxy)
-{
- ACE_TRACE ("ACE_TPQ_Entry::proxy");
- this->proxy_ = proxy;
-}
-
-ACE_INLINE
-ACE_TPQ_Iterator::~ACE_TPQ_Iterator (void)
-{
-}
-
-ACE_INLINE
-ACE_Token_Proxy_Queue::~ACE_Token_Proxy_Queue (void)
-{
-}
-
-ACE_INLINE void
-ACE_Tokens::remove (ACE_TPQ_Entry *caller)
-{
- this->waiters_.remove (caller);
-}
-
-ACE_INLINE int
-ACE_Tokens::dec_reference (void)
-{
- ACE_TRACE ("ACE_Tokens::dec_reference");
- if (this->reference_count_ == 0)
- {
- ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("dec_reference already zero")));
- return 0;
- }
-
- return --this->reference_count_;
-}
-
-ACE_INLINE void
-ACE_Tokens::inc_reference (void)
-{
- ACE_TRACE ("ACE_Tokens::inc_reference");
- ++this->reference_count_;
-}
-
-ACE_INLINE const ACE_TPQ_Entry *
-ACE_Token_Proxy_Queue::head (void)
-{
- ACE_TRACE ("ACE_Token_Proxy_Queue::head");
- if (this->head_ == 0)
- return 0;
- else
- return this->head_;
-}
-
-// **************************************************
-// **************************************************
-// **************************************************
-
-ACE_INLINE void
-ACE_Tokens::visit (int v)
-{
- ACE_TRACE ("ACE_Tokens::visit");
- visited_ = v;
-}
-
-ACE_INLINE int
-ACE_Tokens::visited (void)
-{
- ACE_TRACE ("ACE_Tokens::visited");
- return visited_;
-}
-
-ACE_INLINE ACE_TPQ_Entry *
-ACE_Tokens::owner (void)
-{
- ACE_TRACE ("ACE_Tokens::owner");
- return (ACE_TPQ_Entry *) this->waiters_.head ();
-}
-
-ACE_INLINE const ACE_TCHAR*
-ACE_Tokens::owner_id ()
-{
- ACE_TRACE ("ACE_Tokens::owner_id");
- if (this->owner () == 0)
- return ACE_TEXT ("no owner");
- else
- return this->owner ()->client_id ();
-}
-
-ACE_INLINE const ACE_TCHAR*
-ACE_Tokens::name (void)
-{
- ACE_TRACE ("ACE_Tokens::name");
- return this->token_name_;
-}
-
-#if 0
-ACE_INLINE ACE_Token_Proxy *
-ACE_Tokens::current_owner (void)
-{
- ACE_TRACE ("ACE_Tokens::current_owner");
- // ACE_GUARD_RETURN ???
-
- if (this->owner () == 0)
- return 0;
- else
- return this->owner ()->proxy ();
-}
-#endif /* 0 */
-
-// ************************************************************
-
-ACE_INLINE int
-ACE_TPQ_Entry::nesting_level (void) const
-{
- ACE_TRACE ("ACE_TPQ_Entry::nesting_level");
- return this->nesting_level_;
-}
-
-ACE_INLINE void
-ACE_TPQ_Entry::nesting_level (int delta)
-{
- ACE_TRACE ("ACE_TPQ_Entry::nesting_level");
- this->nesting_level_ += delta;
-}
-
-ACE_INLINE ACE_TPQ_Entry::PTVF
-ACE_TPQ_Entry::sleep_hook (void) const
-{
- ACE_TRACE ("ACE_TPQ_Entry::sleep_hook");
- return this->sleep_hook_;
-}
-
-ACE_INLINE void
-ACE_TPQ_Entry::sleep_hook (void (*sh)(void *))
-{
- ACE_TRACE ("ACE_TPQ_Entry::sleep_hook");
- this->sleep_hook_ = sh;
-}
-
-ACE_INLINE void
-ACE_TPQ_Entry::call_sleep_hook (void)
-{
- ACE_TRACE ("ACE_TPQ_Entry::call_sleep_hook");
-
- // if a function has been registered, call it.
- if (this->sleep_hook () != 0)
- this->sleep_hook () ((void *) this->proxy ());
- else
- // otherwise, call back the sleep_hook method
- this->proxy ()->sleep_hook ();
-}
-
-ACE_INLINE int
-ACE_TPQ_Entry::equal_client_id (const ACE_TCHAR *id)
-{
- ACE_TRACE ("ACE_TPQ_Entry::equal_client_id");
- return (ACE_OS::strcmp (this->client_id (), id) == 0);
-}
-
-// ************************************************************
-// ************************************************************
-// ************************************************************
-
-ACE_INLINE
-ACE_Local_Mutex::ACE_Local_Mutex (const ACE_TCHAR *token_name,
- int ignore_deadlock,
- int debug)
-{
- ACE_TRACE ("ACE_Local_Mutex::ACE_Local_Mutex");
- this->open (token_name, ignore_deadlock, debug);
-}
-
-ACE_INLINE void
-ACE_Token_Name::name (const ACE_TCHAR *new_name)
-{
- ACE_TRACE ("ACE_Token_Name::name");
-
- if (new_name == 0)
- new_name = ACE_TEXT ("no name");
-
- size_t n = ACE_OS::strlen (new_name) + 1;
-
- if (n >= ACE_MAXTOKENNAMELEN)
- n = ACE_MAXTOKENNAMELEN - 1;
-
- ACE_OS::strsncpy (this->token_name_, (ACE_TCHAR *) new_name, n);
-}
-
-ACE_INLINE const ACE_TCHAR*
-ACE_Token_Name::name (void) const
-{
- ACE_TRACE ("ACE_Token_Name::name");
- return this->token_name_;
-}
-
-// ************************************************************
-
-ACE_INLINE
-ACE_Local_RLock::ACE_Local_RLock (const ACE_TCHAR *token_name,
- int ignore_deadlock,
- int debug)
-{
- ACE_TRACE ("ACE_Local_RLock::ACE_Local_RLock");
- this->open (token_name, ignore_deadlock, debug);
-}
-
-// ************************************************************
-
-ACE_INLINE
-ACE_Local_WLock::ACE_Local_WLock (const ACE_TCHAR *token_name,
- int ignore_deadlock,
- int debug)
-{
- ACE_TRACE ("ACE_Local_WLock::ACE_Local_WLock");
- this->open (token_name, ignore_deadlock, debug);
-}
-
-// ************************************************************
-
-ACE_INLINE void
-ACE_Token_Name::operator= (const ACE_Token_Name &rhs)
-{
- ACE_TRACE ("ACE_Token_Name::operator=");
- if (&rhs == this)
- return;
- else
- this->name (rhs.name ());
-}
-
-ACE_INLINE bool
-ACE_Token_Name::operator== (const ACE_Token_Name &rhs) const
-{
- ACE_TRACE ("ACE_Token_Name::operator==");
-
- // the name and type must be the same
- return (ACE_OS::strcmp (this->token_name_, rhs.name ()) == 0);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_TOKENS_LIBRARY */
diff --git a/dep/include/ace/Lock.h b/dep/include/ace/Lock.h
deleted file mode 100644
index 8a2db49e3d0..00000000000
--- a/dep/include/ace/Lock.h
+++ /dev/null
@@ -1,162 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Lock.h
- *
- * $Id: Lock.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_LOCK_H
-#define ACE_LOCK_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Lock
- *
- * @brief This is the abstract base class that contains the uniform
- * locking API that is supported by all the ACE synchronization
- * mechanisms.
- *
- * This class is typically used in conjunction with the
- * ACE_Lock_Adapter in order to provide a polymorphic
- * interface to the ACE synchronization mechanisms (e.g.,
- * ACE_Mutex, ACE_Semaphore, ACE_RW_Mutex, etc). Note that
- * the reason that all of ACE doesn't use polymorphic locks is
- * that (1) they add ~20% extra overhead for virtual function
- * calls and (2) objects with virtual functions can't be placed
- * into shared memory.
- */
-class ACE_Export ACE_Lock
-{
-public:
- /// CE needs a default ctor here.
- ACE_Lock (void);
-
- /// Noop virtual destructor
- virtual ~ACE_Lock (void);
-
- /**
- * Explicitly destroy the lock. Note that only one thread should
- * call this method since it doesn't protect against race
- * conditions.
- */
- virtual int remove (void) = 0;
-
- /// Block the thread until the lock is acquired. Returns -1 on
- /// failure.
- virtual int acquire (void) = 0;
-
- /**
- * Conditionally acquire the lock (i.e., won't block). Returns -1
- * on failure. If we "failed" because someone else already had the
- * lock, @c errno is set to @c EBUSY.
- */
- virtual int tryacquire (void) = 0;
-
- /// Release the lock. Returns -1 on failure.
- virtual int release (void) = 0;
-
- /**
- * Block until the thread acquires a read lock. If the locking
- * mechanism doesn't support read locks then this just calls
- * <acquire>. Returns -1 on failure.
- */
- virtual int acquire_read (void) = 0;
-
- /**
- * Block until the thread acquires a write lock. If the locking
- * mechanism doesn't support read locks then this just calls
- * <acquire>. Returns -1 on failure.
- */
- virtual int acquire_write (void) = 0;
-
- /**
- * Conditionally acquire a read lock. If the locking mechanism
- * doesn't support read locks then this just calls <acquire>.
- * Returns -1 on failure. If we "failed" because someone else
- * already had the lock, @c errno is set to @c EBUSY.
- */
- virtual int tryacquire_read (void) = 0;
-
- /**
- * Conditionally acquire a write lock. If the locking mechanism
- * doesn't support read locks then this just calls <acquire>.
- * Returns -1 on failure. If we "failed" because someone else
- * already had the lock, @c errno is set to @c EBUSY.
- */
- virtual int tryacquire_write (void) = 0;
-
- /**
- * Conditionally try to upgrade a lock held for read to a write lock.
- * If the locking mechanism doesn't support read locks then this just
- * calls <acquire>. Returns 0 on success, -1 on failure.
- */
- virtual int tryacquire_write_upgrade (void) = 0;
-};
-
-/**
- * @class ACE_Adaptive_Lock
- *
- * @brief An adaptive general locking class that defers the decision of
- * lock type to run time.
- *
- * This class, as ACE_Lock, provide a set of general locking APIs.
- * However, it defers our decision of what kind of lock to use
- * to the run time and delegates all locking operations to the actual
- * lock. Users must define a constructor in their subclass to
- * initialize <lock_>.
- */
-class ACE_Export ACE_Adaptive_Lock : public ACE_Lock
-{
-public:
- /// You must also override the destructor function to match with how
- /// you construct the underneath <lock_>.
- virtual ~ACE_Adaptive_Lock (void);
-
- // = Lock/unlock operations.
-
- virtual int remove (void);
- virtual int acquire (void);
- virtual int tryacquire (void);
- virtual int release (void);
- virtual int acquire_read (void);
- virtual int acquire_write (void);
- virtual int tryacquire_read (void);
- virtual int tryacquire_write (void);
- virtual int tryacquire_write_upgrade (void);
- void dump (void) const;
-
-protected:
- /**
- * Create and initialize create the actual lcok used in the class.
- * The default constructor simply set the <lock_> to 0 (null). You
- * must overwrite this method for this class to work.
- */
- ACE_Adaptive_Lock (void);
-
- ACE_Lock *lock_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Lock.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_LOCK_H */
-
diff --git a/dep/include/ace/Lock.inl b/dep/include/ace/Lock.inl
deleted file mode 100644
index 7e3ae68396a..00000000000
--- a/dep/include/ace/Lock.inl
+++ /dev/null
@@ -1,12 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Lock.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Lock::ACE_Lock (void)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Lock_Adapter_T.h b/dep/include/ace/Lock_Adapter_T.h
deleted file mode 100644
index 1f0f4521dc5..00000000000
--- a/dep/include/ace/Lock_Adapter_T.h
+++ /dev/null
@@ -1,124 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Lock_Adapter_T.h
- *
- * $Id: Lock_Adapter_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_LOCK_ADAPTER_T_H
-#define ACE_LOCK_ADAPTER_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Lock.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Lock_Adapter
- *
- * @brief This is an adapter that allows applications to transparently
- * combine the <ACE_Lock> abstract base class (which contains
- * pure virtual methods) with any of the other concrete ACE
- * synchronization classes (e.g., ACE_Mutex, ACE_Semaphore,
- * ACE_RW_Mutex, etc.).
- *
- * This class uses a form of the Adapter pattern.
- */
-template <class ACE_LOCKING_MECHANISM>
-class ACE_Lock_Adapter : public ACE_Lock
-{
-public:
- typedef ACE_LOCKING_MECHANISM ACE_LOCK;
-
- // = Initialization/Finalization methods.
-
- /// Constructor. All locking requests will be forwarded to <lock>.
- ACE_Lock_Adapter (ACE_LOCKING_MECHANISM &lock);
-
- /// Constructor. Since no lock is provided by the user, one will be
- /// created internally.
- ACE_Lock_Adapter (void);
-
- /// Destructor. If <lock_> was not passed in by the user, it will be
- /// deleted.
- virtual ~ACE_Lock_Adapter (void);
-
- // = Lock accessors.
- /// Block the thread until the lock is acquired.
- virtual int acquire (void);
-
- /// Conditionally acquire the lock (i.e., won't block).
- virtual int tryacquire (void);
-
- /// Release the lock.
- virtual int release (void);
-
- /**
- * Block until the thread acquires a read lock. If the locking
- * mechanism doesn't support read locks then this just calls
- * <acquire>.
- */
- virtual int acquire_read (void);
-
- /**
- * Block until the thread acquires a write lock. If the locking
- * mechanism doesn't support read locks then this just calls
- * <acquire>.
- */
- virtual int acquire_write (void);
-
- /// Conditionally acquire a read lock. If the locking mechanism
- /// doesn't support read locks then this just calls <acquire>.
- virtual int tryacquire_read (void);
-
- /// Conditionally acquire a write lock. If the locking mechanism
- /// doesn't support read locks then this just calls <acquire>.
- virtual int tryacquire_write (void);
-
- /**
- * Conditionally try to upgrade a lock held for read to a write lock.
- * If the locking mechanism doesn't support read locks then this just
- * calls <acquire>. Returns 0 on success, -1 on failure.
- */
- virtual int tryacquire_write_upgrade (void);
-
- /// Explicitly destroy the lock.
- virtual int remove (void);
-
-private:
- /// The concrete locking mechanism that all the methods delegate to.
- ACE_LOCKING_MECHANISM *lock_;
-
- /// This flag keep track of whether we are responsible for deleting
- /// the lock
- bool delete_lock_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Lock_Adapter_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Lock_Adapter_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Lock_Adapter_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_LOCK_ADAPTER_T_H */
-
diff --git a/dep/include/ace/Lock_Adapter_T.inl b/dep/include/ace/Lock_Adapter_T.inl
deleted file mode 100644
index ff102b59d4a..00000000000
--- a/dep/include/ace/Lock_Adapter_T.inl
+++ /dev/null
@@ -1,16 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Lock_Adapter_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class ACE_LOCKING_MECHANISM>
-ACE_INLINE
-ACE_Lock_Adapter<ACE_LOCKING_MECHANISM>::ACE_Lock_Adapter (
- ACE_LOCKING_MECHANISM &lock)
- : lock_ (&lock),
- delete_lock_ (false)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Log_Msg.h b/dep/include/ace/Log_Msg.h
deleted file mode 100644
index 3c5eb5e2f23..00000000000
--- a/dep/include/ace/Log_Msg.h
+++ /dev/null
@@ -1,747 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Log_Msg.h
- *
- * $Id: Log_Msg.h 82511 2008-08-05 16:52:44Z shuston $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_LOG_MSG_H
-#define ACE_LOG_MSG_H
-#include /**/ "ace/pre.h"
-
-// This stuff must come first to avoid problems with circular
-// headers...
-// ... but ACE_NDEBUG and ACE_NLOGGING can come from the config.h file, so
-// pull that one early.
-#include /**/ "ace/config-all.h"
-#include /**/ "ace/ACE_export.h"
-#include "ace/Global_Macros.h"
-#include "ace/Default_Constants.h"
-#include "ace/Log_Priority.h"
-#include "ace/os_include/os_limits.h"
-
-// The ACE_ASSERT macro used to be defined here, include ace/Assert.h
-// for backwards compatibility.
-#include "ace/Assert.h"
-
-#if defined (ACE_NLOGGING)
-#define ACE_HEX_DUMP(X) do {} while (0)
-#define ACE_RETURN(Y) do { return (Y); } while (0)
-#define ACE_ERROR_RETURN(X, Y) return (Y)
-#define ACE_ERROR_BREAK(X) { break; }
-#define ACE_ERROR(X) do {} while (0)
-#define ACE_DEBUG(X) do {} while (0)
-#define ACE_ERROR_INIT(VALUE, FLAGS)
-#else
-#if !defined (ACE_HEX_DUMP)
-#define ACE_HEX_DUMP(X) \
- do { \
- int __ace_error = ACE_Log_Msg::last_error_adapter (); \
- ACE_Log_Msg *ace___ = ACE_Log_Msg::instance (); \
- ace___->conditional_set (__FILE__, __LINE__, 0, __ace_error); \
- ace___->log_hexdump X; \
- } while (0)
-#endif
-#if !defined (ACE_RETURN)
-#define ACE_RETURN(Y) \
- do { \
- int __ace_error = ACE_Log_Msg::last_error_adapter (); \
- ACE_Log_Msg *ace___ = ACE_Log_Msg::instance (); \
- ace___->set (__FILE__, __LINE__, Y, __ace_error, ace___->restart (), \
- ace___->msg_ostream (), ace___->msg_callback ()); \
- return Y; \
- } while (0)
-#endif
-#if !defined (ACE_ERROR_RETURN)
-#define ACE_ERROR_RETURN(X, Y) \
- do { \
- int __ace_error = ACE_Log_Msg::last_error_adapter (); \
- ACE_Log_Msg *ace___ = ACE_Log_Msg::instance (); \
- ace___->conditional_set (__FILE__, __LINE__, Y, __ace_error); \
- ace___->log X; \
- return Y; \
- } while (0)
-#endif
-#if !defined (ACE_ERROR)
-#define ACE_ERROR(X) \
- do { \
- int __ace_error = ACE_Log_Msg::last_error_adapter (); \
- ACE_Log_Msg *ace___ = ACE_Log_Msg::instance (); \
- ace___->conditional_set (__FILE__, __LINE__, -1, __ace_error); \
- ace___->log X; \
- } while (0)
-#endif
-#if !defined (ACE_DEBUG)
-#define ACE_DEBUG(X) \
- do { \
- int __ace_error = ACE_Log_Msg::last_error_adapter (); \
- ACE_Log_Msg *ace___ = ACE_Log_Msg::instance (); \
- ace___->conditional_set (__FILE__, __LINE__, 0, __ace_error); \
- ace___->log X; \
- } while (0)
-#endif
-#if !defined (ACE_ERROR_INIT)
-#define ACE_ERROR_INIT(VALUE, FLAGS) \
- do { \
- ACE_Log_Msg *ace___ = ACE_Log_Msg::instance (); \
- ace___->set_flags (FLAGS); ace___->op_status (VALUE); \
- } while (0)
-#endif
-#if !defined (ACE_ERROR_BREAK)
-#define ACE_ERROR_BREAK(X) { ACE_ERROR (X); break; }
-#endif
-#endif /* ACE_NLOGGING */
-
-#include "ace/OS_Log_Msg_Attributes.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// These workarounds are necessary for nasty libraries or platforms
-// that #define STDERR or THREAD (e.g. LynxOS). We simply #undef
-// these macros as there is no way to save the macro definition using
-// the pre-processor. See Bugzilla Bug #299 for more info.
-
-#if defined (STDERR)
-# undef STDERR
-#endif /* STDERR */
-
-#if defined (THREAD)
-# undef THREAD
-#endif /* THREAD */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Log_Msg_Callback;
-class ACE_Log_Msg_Backend;
-
-// ****************************************************************
-
-#define ACE_LOG_MSG ACE_Log_Msg::instance ()
-
-// Forward declaration
-class ACE_Thread_Descriptor;
-class ACE_Log_Record;
-
-/**
- * @class ACE_Log_Msg
- *
- * @brief Provides a variable length argument message logging
- * abstraction.
- *
- * This class is very flexible since it allows formatted error
- * messages to be printed in a thread-safe manner to various
- * locations, such as stderr, cerr, a distributed logger, etc. The
- * current message is also kept in a thread-specific storage location
- * (threads spawned using ACE_Thread_Manager automatically get an
- * ACE_Log_Msg object that inherits the spawning thread's settings),
- * which can be used to communicate errors between framework methods
- * and callers. A message is logged by the log() method, only if the
- * message priority is currently enabled. Moreover, only the current
- * log message is stored here -- it will be overwritten by the
- * subsequent call to log().
- *
- * The ACE_Log_Msg class uses two priority masks to control its
- * logging behavior. The @c priority_mask_ object attribute is
- * thread- specific and specifies the priority levels logged by the
- * thread. The @c process_priority_mask_ class attribute is not
- * thread-specific and specifies the priority levels that will be
- * logged by all threads in the process. By default, all levels are
- * disabled for @c priority_mask_ and all levels are enabled for @c
- * process_priority_mask_ (i.e. the process-wide mask controls the
- * settings, and each instance can expand on it if desired). Both
- * priority masks can be modified using the priority_mask() method of
- * this class.
- */
-class ACE_Export ACE_Log_Msg
-{
-public:
- // Logger Flags.
- enum
- {
- /// Write messages to stderr.
- STDERR = 1,
- /// Write messages to the local client logger deamon.
- LOGGER = 2,
- /// Write messages to the ostream * stored in thread-specific
- /// storage.
- OSTREAM = 4,
- /// Write messages to the callback object.
- MSG_CALLBACK = 8,
- /// Display messages in a verbose manner.
- VERBOSE = 16,
- /// Display messages in a less verbose manner (i.e., only print
- /// information that can change between calls).
- VERBOSE_LITE = 32,
- /// Do not print messages at all (just leave in thread-specific
- /// storage for later inspection).
- SILENT = 64,
- /// Write messages to the system's event log.
- SYSLOG = 128,
- /// Write messages to the user provided backend
- CUSTOM = 256
- };
-
- // = Initialization and termination routines.
-
- /// Returns a pointer to the Singleton.
- static ACE_Log_Msg *instance (void);
-
- /// Returns last error.
- static int last_error_adapter (void);
-
- /// Returns non-null if an ACE_Log_Msg exists for the calling thread.
- static int exists (void);
-
- /// Returns the current program name used for logging.
- static const ACE_TCHAR * program_name (void);
-
- /// Clears the flag from the default priority mask used to
- /// initialize ACE_Log_Msg instances.
- static void disable_debug_messages (ACE_Log_Priority priority = LM_DEBUG);
-
- /// Sets the flag in the default priority mask used to initialize
- /// ACE_Log_Msg instances.
- static void enable_debug_messages (ACE_Log_Priority priority = LM_DEBUG);
-
- /// Initialize logger.
- ACE_Log_Msg (void);
-
- /// cleanup logger.
- ~ACE_Log_Msg (void);
-
- /// Initialize the ACE logging facility.
- /**
- * Initialize the ACE logging facility. Supplies the program name
- * that is available to each logging message call. Default arguments
- * set up logging to STDERR only.
- *
- * @param prog_name The name of the calling program.
- * @param options_flags A bitwise-or of options flags used to set the
- * initial behavior and logging sink(s). (see the
- * enum above for the valid values).
- * @param logger_key The name of ACE_FIFO rendezvous point where the
- * local client logger daemon is listening for logging
- * messages if the LOGGER bit is set in the @a flags
- * argument. If the SYSLOG bit is set in @a flags,
- * @a logger_key is the source/program name specified
- * in the syslog facility (UNIX/Linux) or the Windows
- * event log (Windows). In the SYSLOG case, if
- * @a logger_key is 0, @a prog_name is used.
- */
- int open (const ACE_TCHAR *prog_name,
- u_long options_flags = ACE_Log_Msg::STDERR,
- const ACE_TCHAR *logger_key = 0);
-
- // = Set/get the options flags.
-
- /**
- * Enable the bits in the logger's options flags.
- */
- void set_flags (u_long f);
-
- /**
- * Disable the bits in the logger's options flags.
- */
- void clr_flags (u_long f);
-
- /**
- * Return the bits in the logger's options flags.
- */
- u_long flags (void);
-
- /** @name Allow apps to acquire and release internal synchronization
- * lock
- *
- * This lock is used internally by the ACE_Log_Msg
- * implementation. By exporting the lock, applications can hold the
- * lock atomically over a number of calls to ACE_Log_Msg.
- */
- //@{
-
- /// Acquire the internal lock.
- int acquire (void);
-
- /// Release the internal lock.
- int release (void);
- //@}
-
- /// Call after doing a @c fork() to resynchronize the process id and
- /// @c program_name_ variables.
- void sync (const ACE_TCHAR *program_name);
-
- // = Set/get methods. Note that these are non-static and thus will
- // be thread-specific.
-
- /// Set the result of the operation status (by convention, -1 means
- /// error).
- void op_status (int status);
-
- /// Get the result of the operation status (by convention, -1 means
- /// error).
- int op_status (void) const;
-
- /// Set the value of the errnum (by convention this corresponds to
- /// errno).
- void errnum (int);
-
- /// Get the value of the errnum (by convention this corresponds to
- /// errno).
- int errnum (void) const;
-
- /// Set the line number where an error occurred.
- void linenum (int);
-
- /// Get the line number where an error occurred.
- int linenum (void) const;
-
- /// Set the file name where an error occurred.
- void file (const char *);
-
- /// Get the file name where an error occurred.
- const char *file (void);
-
- /// Set the message that describes what type of error occurred.
- void msg (const ACE_TCHAR *);
-
- /// Get the message that describes what type of error occurred.
- const ACE_TCHAR *msg (void);
-
- /// Set the field that indicates whether interrupted calls should be
- /// restarted.
- void restart (int);
-
- /// Get the field that indicates whether interrupted calls should be
- /// restarted.
- int restart (void) const;
-
- // = Notice that the following two function is equivalent to
- // "void msg_ostream (HANDLE)" and "HANDLE msg_ostream (void)"
- // on Windows CE. There is no <iostream.h> support on CE.
-
- /// Update the ostream without overwriting the delete_ostream_ flag.
- void msg_ostream (ACE_OSTREAM_TYPE *);
-
- /**
- * delete_stream == true, forces Log_Msg.h to delete the stream in
- * its own ~dtor (assumes control of the stream)
- * use only with proper ostream (eg: fstream), not (cout, cerr)
- */
- void msg_ostream (ACE_OSTREAM_TYPE *, bool delete_ostream);
-
- /// Get the ostream that is used to print error messages.
- ACE_OSTREAM_TYPE *msg_ostream (void) const;
-
- /**
- * Set a new callback object and return the existing callback to
- * allow "chaining". Note that ACE_Log_Msg_Callback objects are not
- * inherited when spawning a new thread, so you'll need to reset
- * them in each thread.
- */
- ACE_Log_Msg_Callback *msg_callback (ACE_Log_Msg_Callback *c);
- ACE_Log_Msg_Callback *msg_callback (void) const;
-
- /**
- * Set a new backend object and return the existing backend to
- * allow "chaining". Note that as opposed to ACE_Log_Msg_Callback,
- * ACE_Log_Msg_Backend is a per-process entity.
- *
- * @note Be aware that because of the current architecture there is
- * no guarantee that open (), reset () and close () will be called
- * on a backend object.
- *
- */
- static ACE_Log_Msg_Backend *msg_backend (ACE_Log_Msg_Backend *b);
- static ACE_Log_Msg_Backend *msg_backend (void);
-
- /// Nesting depth increment.
- int inc (void);
-
- /// Nesting depth decrement.
- int dec (void);
-
- /// Get trace depth.
- int trace_depth (void) const;
-
- /// Set trace depth.
- void trace_depth (int);
-
- /// Get trace active status.
- bool trace_active (void) const;
-
- /// Set trace active status.
- void trace_active (bool value);
-
- /// Get the TSS thread descriptor.
- ACE_Thread_Descriptor *thr_desc (void) const;
-
- /**
- * Set the TSS thread descriptor. This method will call
- * td->acquire_release to block execution until this call
- * return.
- */
- void thr_desc (ACE_Thread_Descriptor *td);
-
-#if defined (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS) && defined(ACE_LEGACY_MODE)
- // These functions are disabled without ACE_LEGACY_MODE
- // because the *semantics* have changed (the objects are no longer
- // TSS).
- /// Get TSS exception action.
- /// @note The action is no longer TSS, they are global!
- ACE_SEH_EXCEPT_HANDLER seh_except_selector (void);
-
- /// Set TSS exception action.
- /// @note The action is no longer TSS, they are global!
- ACE_SEH_EXCEPT_HANDLER seh_except_selector (ACE_SEH_EXCEPT_HANDLER);
-
- /// Get TSS exception handler.
- /// @note The handler is no longer TSS, they are global!
- ACE_SEH_EXCEPT_HANDLER seh_except_handler (void);
-
- /// Set TSS exception handler.
- /// @note The handler is no longer TSS, they are global!
- ACE_SEH_EXCEPT_HANDLER seh_except_handler (ACE_SEH_EXCEPT_HANDLER);
-#endif /* ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS && ACE_LEGACY_MODE */
-
- /// Stop tracing status on a per-thread basis...
- void stop_tracing (void);
-
- /// Start tracing status on a per-thread basis...
- void start_tracing (void);
-
- /// Query tracing status on a per-thread basis...
- bool tracing_enabled (void) const;
-
- typedef enum
- {
- PROCESS = 0,
- THREAD = 1
- } MASK_TYPE;
-
- // = Get/set the priority mask.
- /// Get the current ACE_Log_Priority mask.
- u_long priority_mask (MASK_TYPE = THREAD);
-
- /// Set the ACE_Log_Priority mask, returns original mask.
- u_long priority_mask (u_long, MASK_TYPE = THREAD);
-
- /// Return true if the requested priority is enabled.
- int log_priority_enabled (ACE_Log_Priority log_priority);
-
- /// Return true if the requested priority is enabled.
- int log_priority_enabled (ACE_Log_Priority log_priority,
- const char *,
- ...);
-
-#if defined (ACE_USES_WCHAR)
- // We are not using ACE_TCHAR for this since ACE_HEX_DUMP
- // doesn't take in a ACE_TCHAR. log_hexdump takes in a char
- // string, so this must be able to take in a char string even
- // when using ACE_USES_WCHAR.
- /// Return true if the requested priority is enabled.
- int log_priority_enabled (ACE_Log_Priority log_priority,
- const wchar_t *,
- ...);
-#endif /* ACE_USES_WCHAR */
-
- /// Optimize reading of the pid (avoids a system call if the value is
- /// cached...).
- pid_t getpid (void) const;
-
- /// Get the name of the local host.
- const ACE_TCHAR *local_host (void) const;
-
- /// Set the name of the local host.
- void local_host (const ACE_TCHAR *);
-
- /**
- * Set the line number, file name, operational status, error number,
- * restart flag, ostream, and the callback object. This combines
- * all the other set methods into a single method.
- */
- void set (const char *file,
- int line,
- int op_status = -1,
- int errnum = 0,
- int restart = 1,
- ACE_OSTREAM_TYPE *os = 0,
- ACE_Log_Msg_Callback *c = 0);
-
- /// These values are only actually set if the requested priority is
- /// enabled.
- void conditional_set (const char *file,
- int line,
- int op_status,
- int errnum);
-
- /**
- * Format a message to the thread-safe ACE logging mechanism. Valid
- * options (prefixed by '%', as in printf format strings) include:
- * - 'A': print an ACE_timer_t value (which could be either double
- * or ACE_UINT32.)
- * - 'a': abort the program at this point abruptly.
- * - 'b': print a ssize_t value
- * - 'B': print a size_t value
- * - 'c': print a character
- * - 'C': print a char* character string (also see s and W)
- * - 'i', 'd': print a decimal number
- * - 'I': indent according to nesting depth (obtained from
- * ACE_Trace::get_nesting_indent()).
- * - 'e', 'E', 'f', 'F', 'g', 'G': print a double
- * - 'l': print line number where an error occurred.
- * - 'M': print the name of the priority of the message.
- * - 'm': return the message corresponding to errno value, e.g., as
- * done by strerror()
- * - 'N': print file name where the error occurred.
- * - 'n': print the name of the program (or "<unknown>" if not set)
- * - 'o': print as an octal number
- * - 'P': print out the current process id
- * - 'p': print out the appropriate errno message from sys_errlist,
- * e.g., as done by perror()
- * - 'Q': print out the uint64 number
- * - 'q': print out the int64 number
- * - '@': print a void* pointer (in hexadecimal)
- * - 'r': call the function pointed to by the corresponding argument
- * - 'R': print return status
- * - 'S': print out the appropriate _sys_siglist entry corresponding
- * to var-argument.
- * - 's': prints a ACE_TCHAR* character string (also see C and W)
- * - 'T': print timestamp in hour:minute:sec:usec format.
- * - 'D': print timestamp as Weekday Month day year hour:minute:sec.usec
- * - 't': print thread id (1 if single-threaded)
- * - 'u': print as unsigned int
- * - 'w': prints a wide character
- * - 'W': prints a wchar_t* character string (also see C and s)
- * - 'x': print as a hex number
- * - 'X': print as a hex number
- * - 'z': print an ACE_OS::WChar character
- * - 'Z': print an ACE_OS::WChar character string
- * - ':': print a time_t value as an integral number
- * - '%': print out a single percent sign, '%'
- * - '?': print out stack trace (see Stack_Trace.h header comments)
- */
- ssize_t log (ACE_Log_Priority priority, const ACE_TCHAR *format, ...);
-
-#if defined (ACE_HAS_WCHAR)
- ssize_t log (ACE_Log_Priority priority, const ACE_ANTI_TCHAR *format, ...);
-#endif /* ACE_HAS_WCHAR */
-
- /**
- * An alternative logging mechanism that makes it possible to
- * integrate variable argument lists from other logging mechanisms
- * into the ACE mechanism.
- */
- ssize_t log (const ACE_TCHAR *format,
- ACE_Log_Priority priority,
- va_list argp);
-
- /// Log a custom built log record to the currently enabled logging
- /// sinks.
- ssize_t log (ACE_Log_Record &log_record,
- int suppress_stderr = 0);
-
- /**
- * Method to log hex dump. This is useful for debugging. Calls
- * log() to do the actual print, but formats first to make the chars
- * printable.
- */
- int log_hexdump (ACE_Log_Priority log_priority,
- const char *buffer,
- size_t size,
- const ACE_TCHAR *text = 0);
-
- static void init_hook (ACE_OS_Log_Msg_Attributes &attributes
-# if defined (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS)
- , ACE_SEH_EXCEPT_HANDLER selector = 0
- , ACE_SEH_EXCEPT_HANDLER handler = 0
-# endif /* ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS */
- /**
- * Init hook, create a Log_Msg_Attribute object, initialize its
- * attributes from the TSS Log_Msg and save the object in the
- * @a attributes argument
- */
- );
-
- /**
- * Inherit hook, the @a attributes field is a ACE_OS_Log_Msg_Attributes
- * object, invoke the inherit_log_msg() method on it, then destroy
- * it and set the @a attribute argument to 0.
- */
- static void inherit_hook (ACE_OS_Thread_Descriptor *thr_desc,
- ACE_OS_Log_Msg_Attributes &attributes);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Status of operation (-1 means failure, >= 0 means success).
- int status_;
-
- /// Type of error that occurred (see <sys/errno.h>).
- int errnum_;
-
- /// Line number where the error occurred.
- int linenum_;
-
- /// File where the error occurred.
- char file_[MAXPATHLEN + 1];
-
- /// The log message, which resides in thread-specific storage. Note
- /// that only the current log message is stored here -- it will be
- /// overwritten by the subsequent call to log().
- ACE_TCHAR* msg_; // Add one for NUL-terminator.
-
- /// Indicates whether we should restart system calls that are
- /// interrupted.
- int restart_;
-
- /// The ostream where logging messages can be written.
- ACE_OSTREAM_TYPE *ostream_;
-
- /// The callback object.
- ACE_Log_Msg_Callback *msg_callback_;
-
- /// Depth of the nesting for printing traces.
- int trace_depth_;
-
- /// Are we already within an ACE_Trace constructor call?
- bool trace_active_;
-
- /// Are we allowing tracing in this thread?
- bool tracing_enabled_;
-
- /// Are we deleting this ostream?
- bool delete_ostream_;
-
- /**
- * If we're running in the context of an ACE_Thread_Manager this
- * will point to the thread descriptor adapter which holds the
- * thread descriptor of the thread. This can be used to repidly
- * access all thread data kept in ACE_Thread_Descriptor.
- */
- ACE_Thread_Descriptor *thr_desc_;
-
- /**
- * Keeps track of all the per-thread ACE_Log_Priority values that
- * are currently enabled. Default is for all logging priorities to
- * be disabled.
- */
- u_long priority_mask_;
-
- /// Always timestamp?
- int timestamp_;
-
- // = The following fields are *not* kept in thread-specific storage.
-
- // We only want one instance for the entire process!
-
- /**
- * Keeps track of all the per-process ACE_Log_Priority values that
- * are currently enabled. Default is for all logging priorities to
- * be enabled.
- */
- static u_long process_priority_mask_;
-
- /// Records the program name.
- static const ACE_TCHAR *program_name_;
-
- /// Name of the local host (used when printing messages).
- static const ACE_TCHAR *local_host_;
-
- /// Process id of the current process.
- static pid_t pid_;
-
- /// Options flags used to hold the logger flag options, e.g.,
- /// STDERR, LOGGER, OSTREAM, MSG_CALLBACK, etc.
- static u_long flags_;
-
- /// Offset of msg_[].
- static ptrdiff_t msg_off_;
-
- /**
- * Number of existing ACE_Log_Msg instances; when 0, delete program/host
- * names
- */
- static int instance_count_;
-
- /**
- * Priority mask to use for each new instance
- */
- static u_long default_priority_mask_;
-
- /// Anonymous struct since there will only be one instance. This
- /// struct keeps information stored away in case we actually end up
- /// calling log() if the log priority is correct.
- struct
- {
- bool is_set_;
- const char *file_;
- int line_;
- int op_status_;
- int errnum_;
- } conditional_values_;
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
- static bool key_created_;
-#endif /* ACE_MT_SAFE */
-
- /// For cleanup, at program termination.
- static void close (void);
-
- /// Decouple the OS layer from the ACE_Log_Msg layer.
- static void sync_hook (const ACE_TCHAR *prg_name);
-
- /// Return the TSS singleton thread descriptor
- static ACE_OS_Thread_Descriptor *thr_desc_hook (void);
-
- //friend void ACE_OS::cleanup_tss (const u_int);
-
- // = Disallow these operations.
- ACE_Log_Msg &operator= (const ACE_Log_Msg &);
- ACE_Log_Msg (const ACE_Log_Msg &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
-# if defined (ACE_HAS_THREAD_SPECIFIC_STORAGE) || \
- defined (ACE_HAS_TSS_EMULATION)
-/* static */
-# if defined (ACE_HAS_THR_C_DEST)
-# define LOCAL_EXTERN_PREFIX extern "C"
-# else
-# define LOCAL_EXTERN_PREFIX
-# endif /* ACE_HAS_THR_C_DEST */
-
-#if (defined (ACE_HAS_VERSIONED_NAMESPACE) && ACE_HAS_VERSIONED_NAMESPACE == 1)
-# define ACE_TSS_CLEANUP_NAME ACE_PREPROC_CONCATENATE(ACE_,ACE_PREPROC_CONCATENATE(ACE_VERSIONED_NAMESPACE_NAME, _TSS_cleanup))
-#else
-# define ACE_TSS_CLEANUP_NAME ACE_TSS_cleanup
-#endif /* ACE_HAS_VERSIONED_NAMESPACE == 1 */
-
-LOCAL_EXTERN_PREFIX
-void
-ACE_TSS_CLEANUP_NAME (void *ptr);
-# endif /* ACE_HAS_THREAD_SPECIFIC_STORAGE || ACE_HAS_TSS_EMULATION */
-#endif /* ACE_MT_SAFE */
-
-#if defined(ACE_LEGACY_MODE)
-#include "ace/Log_Msg_Callback.h"
-#endif /* ACE_LEGACY_MODE */
-
-#if defined (__ACE_INLINE__)
-#include "ace/Log_Msg.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_LOG_MSG_H */
-
diff --git a/dep/include/ace/Log_Msg.inl b/dep/include/ace/Log_Msg.inl
deleted file mode 100644
index e69b59140c7..00000000000
--- a/dep/include/ace/Log_Msg.inl
+++ /dev/null
@@ -1,233 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Log_Msg.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_string.h"
-#include "ace/OS_NS_unistd.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-u_long
-ACE_Log_Msg::priority_mask (MASK_TYPE mask_type)
-{
- return mask_type == THREAD
- ? this->priority_mask_
- : ACE_Log_Msg::process_priority_mask_;
-}
-
-ACE_INLINE
-int
-ACE_Log_Msg::log_priority_enabled (ACE_Log_Priority log_priority)
-{
- return ACE_BIT_ENABLED (this->priority_mask_ |
- ACE_Log_Msg::process_priority_mask_,
- log_priority);
-}
-
-ACE_INLINE
-void
-ACE_Log_Msg::op_status (int status)
-{
- this->status_ = status;
-}
-
-ACE_INLINE
-int
-ACE_Log_Msg::op_status (void) const
-{
- return this->status_;
-}
-
-ACE_INLINE
-void
-ACE_Log_Msg::restart (int r)
-{
- this->restart_ = r;
-}
-
-ACE_INLINE
-int
-ACE_Log_Msg::restart (void) const
-{
- return this->restart_;
-}
-
-ACE_INLINE
-int
-ACE_Log_Msg::errnum (void) const
-{
- return this->errnum_;
-}
-
-ACE_INLINE
-void
-ACE_Log_Msg::errnum (int e)
-{
- this->errnum_ = e;
-}
-
-ACE_INLINE
-int
-ACE_Log_Msg::linenum (void) const
-{
- return this->linenum_;
-}
-
-ACE_INLINE
-void
-ACE_Log_Msg::linenum (int l)
-{
- this->linenum_ = l;
-}
-
-ACE_INLINE
-int
-ACE_Log_Msg::inc (void)
-{
- return this->trace_depth_++;
-}
-
-ACE_INLINE
-int
-ACE_Log_Msg::dec (void)
-{
- return this->trace_depth_ == 0 ? 0 : --this->trace_depth_;
-}
-
-ACE_INLINE
-int
-ACE_Log_Msg::trace_depth (void) const
-{
- return this->trace_depth_;
-}
-
-ACE_INLINE
-void
-ACE_Log_Msg::trace_depth (int depth)
-{
- this->trace_depth_ = depth;
-}
-
-ACE_INLINE
-bool
-ACE_Log_Msg::trace_active (void) const
-{
- return this->trace_active_;
-}
-
-ACE_INLINE
-void
-ACE_Log_Msg::trace_active (bool value)
-{
- this->trace_active_ = value;
-}
-
-ACE_INLINE
-ACE_Thread_Descriptor *
-ACE_Log_Msg::thr_desc (void) const
-{
- return this->thr_desc_;
-}
-
-/// Enable the tracing facility on a per-thread basis.
-ACE_INLINE
-void
-ACE_Log_Msg::start_tracing (void)
-{
- this->tracing_enabled_ = true;
-}
-
-/// Disable the tracing facility on a per-thread basis.
-ACE_INLINE
-void
-ACE_Log_Msg::stop_tracing (void)
-{
- this->tracing_enabled_ = false;
-}
-
-ACE_INLINE
-bool
-ACE_Log_Msg::tracing_enabled (void) const
-{
- return this->tracing_enabled_;
-}
-
-ACE_INLINE
-const char *
-ACE_Log_Msg::file (void)
-{
- return this->file_;
-}
-
-ACE_INLINE
-void
-ACE_Log_Msg::file (const char *s)
-{
- ACE_OS::strsncpy (this->file_, s, sizeof this->file_);
-}
-
-ACE_INLINE
-const ACE_TCHAR *
-ACE_Log_Msg::msg (void)
-{
- return this->msg_ + ACE_Log_Msg::msg_off_;
-}
-
-ACE_INLINE
-void
-ACE_Log_Msg::msg (const ACE_TCHAR *m)
-{
- ACE_OS::strsncpy (this->msg_, m,
- ((ACE_MAXLOGMSGLEN+1) / sizeof (ACE_TCHAR)));
-}
-
-ACE_INLINE
-ACE_Log_Msg_Callback *
-ACE_Log_Msg::msg_callback (void) const
-{
- return this->msg_callback_;
-}
-
-ACE_INLINE
-ACE_Log_Msg_Callback *
-ACE_Log_Msg::msg_callback (ACE_Log_Msg_Callback *c)
-{
- ACE_Log_Msg_Callback *old = this->msg_callback_;
- this->msg_callback_ = c;
- return old;
-}
-
-ACE_INLINE
-ACE_OSTREAM_TYPE *
-ACE_Log_Msg::msg_ostream (void) const
-{
- return this->ostream_;
-}
-
-ACE_INLINE
-void
-ACE_Log_Msg::msg_ostream (ACE_OSTREAM_TYPE *m)
-{
- this->ostream_ = m;
-}
-
-ACE_INLINE
-const ACE_TCHAR *
-ACE_Log_Msg::local_host (void) const
-{
- return ACE_Log_Msg::local_host_;
-}
-
-ACE_INLINE
-pid_t
-ACE_Log_Msg::getpid (void) const
-{
- if (ACE_Log_Msg::pid_ == -2)
- ACE_Log_Msg::pid_ = ACE_OS::getpid ();
-
- return ACE_Log_Msg::pid_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
diff --git a/dep/include/ace/Log_Msg_Backend.h b/dep/include/ace/Log_Msg_Backend.h
deleted file mode 100644
index 84e4956f36b..00000000000
--- a/dep/include/ace/Log_Msg_Backend.h
+++ /dev/null
@@ -1,88 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Log_Msg_Backend.h
- *
- * $Id: Log_Msg_Backend.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_LOG_MSG_BACKEND_H
-#define ACE_LOG_MSG_BACKEND_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Log_Record;
-
-/**
- * @class ACE_Log_Msg_Backend
- *
- * @brief Defines the interface for ACE_Log_Msg back end processing.
- *
- * The ACE_Log_Msg class uses ACE_Log_Msg_Backend as the target interface
- * for back end log record procesing. In addition to the classes ACE
- * derives from this (ACE_Log_Msg_NT_Event_Log, ACE_Log_Msg_UNIX_Syslog, and
- * ACE_Log_Msg_IPC) users can derive classes from ACE_Log_Msg_Backend for
- * use as a custom logger back end.
- */
-class ACE_Export ACE_Log_Msg_Backend
-{
-public:
- /// No-op virtual destructor.
- virtual ~ACE_Log_Msg_Backend (void);
-
- /**
- * Open the back end object. Perform any actions needed to prepare
- * the object for later logging operations.
- *
- * @param logger_key The character string passed to ACE_Log_Msg::open().
- * If the @c LOGGER logging destination is not being
- * used, any string can be passed through to the back end.
- *
- * @retval 0 for success.
- * @retval -1 for failure.
- */
- virtual int open (const ACE_TCHAR *logger_key) = 0;
-
- /**
- * Reset the backend. If ACE_Log_Msg is reopened during execution, this
- * hook will be called. This method should perform any needed cleanup
- * activity (similar to close()) because this object won't be reopened
- * if the new open call does not specify use of this back end being reset.
- *
- * @retval Currently ignored, but to be safe, return 0 for success;
- * -1 for failure.
- */
- virtual int reset (void) = 0;
-
- /// Close the backend completely.
- virtual int close (void) = 0;
-
- /**
- * Process a log record.
- *
- * @param log_record The ACE_Log_Record to process.
- *
- * @retval -1 for failure; else it is customarily the number of bytes
- * processed, but can also be 0 to signify success.
- */
- virtual ssize_t log (ACE_Log_Record &log_record) = 0;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_LOG_MSG_BACKEND_H */
-
diff --git a/dep/include/ace/Log_Msg_Callback.h b/dep/include/ace/Log_Msg_Callback.h
deleted file mode 100644
index 4a3f6f77495..00000000000
--- a/dep/include/ace/Log_Msg_Callback.h
+++ /dev/null
@@ -1,70 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Log_Msg_Callback.h
- *
- * $Id: Log_Msg_Callback.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_LOG_MSG_CALLBACK_H
-#define ACE_LOG_MSG_CALLBACK_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Log_Record;
-
-/**
- * @class ACE_Log_Msg_Callback
- *
- * @brief An interface class used to get logging callbacks.
- *
- * Users who are interested in getting the logging messages
- * directly, can subclass this interface and override the log()
- * method. They must then register their subclass with the
- * Log_Msg class and make sure that they turn on the
- * ACE_Log_Msg::MSG_CALLBACK flag.
- *
- * Your <log> routine is called with an instance of
- * ACE_Log_Record. From this class, you can get the log
- * message, the verbose log message, message type, message
- * priority, and so on.
- *
- * Remember that there is one Log_Msg object per thread.
- * Therefore, you may need to register your callback object with
- * many ACE_Log_Msg objects (and have the correct
- * synchronization in the <log> method) or have a separate
- * callback object per Log_Msg object. Moreover,
- * <ACE_Log_Msg_Callbacks> are not inherited when a new thread
- * is spawned because it might have been allocated off of the
- * stack of the original thread, in which case all hell would
- * break loose... Therefore, you'll need to reset these in each
- * new thread.
- */
-class ACE_Export ACE_Log_Msg_Callback
-{
-public:
- /// No-op virtual destructor.
- virtual ~ACE_Log_Msg_Callback (void);
-
- /// Callback routine. This is called when we want to log a message.
- /// Since this routine is pure virtual, it must be overwritten by the
- /// subclass.
- virtual void log (ACE_Log_Record &log_record) = 0;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_LOG_MSG_CALLBACK_H */
-
diff --git a/dep/include/ace/Log_Msg_IPC.h b/dep/include/ace/Log_Msg_IPC.h
deleted file mode 100644
index 09c975b1c73..00000000000
--- a/dep/include/ace/Log_Msg_IPC.h
+++ /dev/null
@@ -1,80 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Log_Msg_IPC.h
- *
- * $Id: Log_Msg_IPC.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Carlos O'Ryan <coryan@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_LOG_MSG_LOGGER_H
-#define ACE_LOG_MSG_LOGGER_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Log_Msg_Backend.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// IPC conduit between sender and client daemon. This should be
-// included in the ACE_Log_Msg class, but due to "order of include"
-// problems it can't be...
-#if defined (ACE_HAS_STREAM_PIPES)
-# include "ace/SPIPE_Connector.h"
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef ACE_SPIPE_Stream ACE_LOG_MSG_IPC_STREAM;
-typedef ACE_SPIPE_Connector ACE_LOG_MSG_IPC_CONNECTOR;
-typedef ACE_SPIPE_Addr ACE_LOG_MSG_IPC_ADDR;
-ACE_END_VERSIONED_NAMESPACE_DECL
-#else
-# include "ace/SOCK_Connector.h"
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef ACE_SOCK_Stream ACE_LOG_MSG_IPC_STREAM;
-typedef ACE_SOCK_Connector ACE_LOG_MSG_IPC_CONNECTOR;
-typedef ACE_INET_Addr ACE_LOG_MSG_IPC_ADDR;
-ACE_END_VERSIONED_NAMESPACE_DECL
-#endif /* ACE_HAS_STREAM_PIPES */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/// Defines the interfaces for ACE_Log_Msg backend.
-/**
- * Implement an ACE_Log_Msg_Backend that logs to a remote logging
- * process.
- */
-class ACE_Export ACE_Log_Msg_IPC : public ACE_Log_Msg_Backend
-{
-public:
- /// Constructor
- ACE_Log_Msg_IPC (void);
-
- /// Destructor
- virtual ~ACE_Log_Msg_IPC (void);
-
- /// Open a new connection
- virtual int open (const ACE_TCHAR *logger_key);
-
- /**
- * Reset the backend. When changing the logging destination the
- * backend may need to properly disconnect from the remote logging
- * daemon and reclaim some local resources. But we try to reduce
- * the number of local allocations/deallocations.
- */
- virtual int reset (void);
-
- virtual int close (void);
- virtual ssize_t log (ACE_Log_Record &log_record);
-
-private:
- ACE_LOG_MSG_IPC_STREAM message_queue_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_LOG_MSG_H */
-
diff --git a/dep/include/ace/Log_Msg_NT_Event_Log.h b/dep/include/ace/Log_Msg_NT_Event_Log.h
deleted file mode 100644
index 66920903ab6..00000000000
--- a/dep/include/ace/Log_Msg_NT_Event_Log.h
+++ /dev/null
@@ -1,73 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Log_Msg_NT_Event_Log.h
- *
- * $Id: Log_Msg_NT_Event_Log.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Christopher Kohlhoff <chris@kohlhoff.com>
- */
-//=============================================================================
-
-#ifndef ACE_LOG_MSG_NT_EVENT_LOG_H
-#define ACE_LOG_MSG_NT_EVENT_LOG_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined ACE_HAS_LOG_MSG_NT_EVENT_LOG
-
-#include "ace/Log_Msg_Backend.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Log_Msg_NT_Event_Log
- *
- * @brief Implements an ACE_Log_Msg_Backend that logs to the WinNT system
- * event log.
- */
-class ACE_Export ACE_Log_Msg_NT_Event_Log : public ACE_Log_Msg_Backend
-{
-public:
- /// Constructor
- ACE_Log_Msg_NT_Event_Log (void);
-
- /// Destructor
- virtual ~ACE_Log_Msg_NT_Event_Log (void);
-
- /// Open a new event log.
- /**
- * Initialize the event logging facility.
- * @param logger_key The name of the calling program. This name is
- * used in the Source field of the event log. If
- * it is 0 (no name), the application name as
- * returned from ACE_Log_Msg::program_name() is used.
- */
- virtual int open (const ACE_TCHAR *logger_key);
-
- /// Reset the backend.
- virtual int reset (void);
-
- /// Close the backend completely.
- virtual int close (void);
-
- /// This is called when we want to log a message.
- virtual ssize_t log (ACE_Log_Record &log_record);
-
-private:
- HANDLE evlog_handle_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_LOG_MSG_NT_EVENT_LOG */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_LOG_MSG_NT_EVENT_LOG_H */
-
diff --git a/dep/include/ace/Log_Msg_UNIX_Syslog.h b/dep/include/ace/Log_Msg_UNIX_Syslog.h
deleted file mode 100644
index c781d6ab3e1..00000000000
--- a/dep/include/ace/Log_Msg_UNIX_Syslog.h
+++ /dev/null
@@ -1,77 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Log_Msg_UNIX_Syslog.h
- *
- * $Id: Log_Msg_UNIX_Syslog.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Jerry D. De Master <jdemaster@rite-solutions.com>
- */
-//=============================================================================
-
-#ifndef ACE_LOG_MSG_UNIX_SYSLOG_H
-#define ACE_LOG_MSG_UNIX_SYSLOG_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_UNIX_SYSLOG)
-
-#include "ace/Log_Msg_Backend.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Log_Msg_UNIX_Syslog
- *
- * @brief Implements an ACE_Log_Msg_Backend that logs messages to a UNIX
- * system's syslog facility.
- */
-class ACE_Export ACE_Log_Msg_UNIX_Syslog : public ACE_Log_Msg_Backend
-{
-public:
- /// Constructor
- ACE_Log_Msg_UNIX_Syslog (void);
-
- /// Destructor
- virtual ~ACE_Log_Msg_UNIX_Syslog (void);
-
- /// Open a new event log.
- /**
- * Initialize the event logging facility.
- * @param logger_key The name of the calling program. This name is
- * used as the @c ident in the syslog entries. If
- * it is 0 (no name), the application name as
- * returned from ACE_Log_Msg::program_name() is used.
- */
- virtual int open (const ACE_TCHAR *logger_key);
-
- /// Reset the backend.
- virtual int reset (void);
-
- /// Close the backend completely.
- virtual int close (void);
-
- /// This is called when we want to log a message.
- virtual ssize_t log (ACE_Log_Record &log_record);
-
-private:
- /// Convert an ACE_Log_Priority value to the corresponding syslog priority.
- int convert_log_priority (ACE_UINT32 lm_priority);
-
- /// Convert an ACE_Log_Priority mask to the corresponding syslog mask value.
- int convert_log_mask (int lm_mask);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* !ACE_LACKS_UNIX_SYSLOG */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_LOG_MSG_UNIX_SYSLOG_H */
-
diff --git a/dep/include/ace/Log_Priority.h b/dep/include/ace/Log_Priority.h
deleted file mode 100644
index 6abffaa0756..00000000000
--- a/dep/include/ace/Log_Priority.h
+++ /dev/null
@@ -1,86 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Log_Priority.h
- *
- * $Id: Log_Priority.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_LOG_PRIORITY_H
-#define ACE_LOG_PRIORITY_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @enum ACE_Log_Priority
- *
- * @brief This data type indicates the relative priorities of the
- * logging messages, from lowest to highest priority.
- *
- * These values are defined using powers of two so that it's
- * possible to form a mask to turn them on or off dynamically.
- * We only use 12 bits, however, so users are free to use the
- * remaining 19 bits to define their own priority masks.
- */
-enum ACE_Log_Priority
-{
- // = Note, this first argument *must* start at 1!
-
- /// Shutdown the logger (decimal 1).
- LM_SHUTDOWN = 01,
-
- /// Messages indicating function-calling sequence (decimal 2).
- LM_TRACE = 02,
-
- /// Messages that contain information normally of use only when
- /// debugging a program (decimal 4).
- LM_DEBUG = 04,
-
- /// Informational messages (decimal 8).
- LM_INFO = 010,
-
- /// Conditions that are not error conditions, but that may require
- /// special handling (decimal 16).
- LM_NOTICE = 020,
-
- /// Warning messages (decimal 32).
- LM_WARNING = 040,
-
- /// Initialize the logger (decimal 64).
- LM_STARTUP = 0100,
-
- /// Error messages (decimal 128).
- LM_ERROR = 0200,
-
- /// Critical conditions, such as hard device errors (decimal 256).
- LM_CRITICAL = 0400,
-
- /// A condition that should be corrected immediately, such as a
- /// corrupted system database (decimal 512).
- LM_ALERT = 01000,
-
- /// A panic condition. This is normally broadcast to all users
- /// (decimal 1024).
- LM_EMERGENCY = 02000,
-
- /// The maximum logging priority.
- LM_MAX = LM_EMERGENCY,
-
- /// Do not use!! This enum value ensures that the underlying
- /// integral type for this enum is at least 32 bits.
- LM_ENSURE_32_BITS = 0x7FFFFFFF
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_LOG_PRIORITY_H */
-
diff --git a/dep/include/ace/Log_Record.h b/dep/include/ace/Log_Record.h
deleted file mode 100644
index 0a19e1f57c4..00000000000
--- a/dep/include/ace/Log_Record.h
+++ /dev/null
@@ -1,223 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Log_Record.h
- *
- * $Id: Log_Record.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-// These need to go outside of the #ifdef to avoid problems with
-// circular dependencies...
-
-#include "ace/Log_Priority.h"
-
-#ifndef ACE_LOG_RECORD_H
-#define ACE_LOG_RECORD_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Default_Constants.h"
-#include "ace/Basic_Types.h"
-#include "ace/iosfwd.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-/// Defines the structure of an ACE logging record.
-class ACE_Export ACE_Log_Record
-{
-public:
- enum
- {
- /// Maximum size of a logging message.
- MAXLOGMSGLEN = ACE_MAXLOGMSGLEN+1,
-
- /// Most restrictive alignment.
- ALIGN_WORDB = 8,
-
- /// Size used by verbose mode.
- /// 20 (date) + 15 (host_name) + 10 (pid) + 10 (type)
- /// + 4 (@) ... + ? (progname)
- VERBOSE_LEN = 128,
-
- /// Maximum size of a logging message with the verbose headers
- MAXVERBOSELOGMSGLEN = VERBOSE_LEN + MAXLOGMSGLEN
- };
-
- // = Initialization
- /**
- * Create a <Log_Record> and set its priority, time stamp, and
- * process id.
- */
- ACE_Log_Record (void);
- ACE_Log_Record (ACE_Log_Priority lp,
- time_t time_stamp,
- long pid);
- ACE_Log_Record (ACE_Log_Priority lp,
- const ACE_Time_Value &time_stamp,
- long pid);
-
- /// Default dtor.
- ~ACE_Log_Record (void);
-
- /// Write the contents of the logging record to the appropriate
- /// <FILE> iff the corresponding type is enabled.
- int print (const ACE_TCHAR host_name[],
- u_long verbose_flag,
-#if !defined (ACE_HAS_WINCE)
- FILE *fp = stderr);
-#else
- FILE *fp);
-#endif /* ACE_HAS_WINCE */
-
-#if !defined (ACE_LACKS_IOSTREAM_TOTALLY)
- /// Write the contents of the logging record to the appropriate
- /// <ostream> iff the corresponding type is enabled.
- int print (const ACE_TCHAR host_name[],
- u_long verbose_flag,
- ACE_OSTREAM_TYPE &stream);
-#endif /* ! ACE_LACKS_IOSTREAM_TOTALLY */
-
- int format_msg (const ACE_TCHAR host_name[],
- u_long verbose_flag,
- ACE_TCHAR *verbose_msg);
-
- /**
- * Returns a character array with the string form of the
- * <ACE_Log_Priority> parameter. This is used for the verbose
- * printing format.
- */
- static const ACE_TCHAR *priority_name (ACE_Log_Priority p);
-
- // IMPORTANT: @a name must be a statically allocated const ACE_TCHAR*
- static void priority_name (ACE_Log_Priority p,
- const ACE_TCHAR *name);
-
- // = Marshall/demarshall
- /// Encode the <Log_Record> for transmission on the network.
- /// @deprecated The encode() and decode() metods are deprecated; please use
- /// the CDR insertion and extraction operators to properly encode and decode
- /// ACE_Log_Record objects.
- void encode (void);
-
- /// Decode the <Log_Record> received from the network.
- /// @deprecated The encode() and decode() metods are deprecated; please use
- /// the CDR insertion and extraction operators to properly encode and decode
- /// ACE_Log_Record objects.
- void decode (void);
-
- // = Set/get methods
-
- /// Get the type of the <Log_Record>.
- ACE_UINT32 type (void) const;
-
- /// Set the type of the <Log_Record>.
- void type (ACE_UINT32);
-
- /**
- * Get the priority of the <Log_Record> <type_>. This is computed
- * as the base 2 logarithm of <type_> (which must be a power of 2,
- * as defined by the enums in <ACE_Log_Priority>).
- */
- u_long priority (void) const;
-
- /// Set the priority of the <Log_Record> <type_> (which must be a
- /// power of 2, as defined by the enums in <ACE_Log_Priority>).
- void priority (u_long num);
-
- /// Get the total length of the <Log_Record>, which includes the
- /// size of the various data member fields.
- long length (void) const;
-
- /// Set the total length of the <Log_Record>, which needs to account for
- /// the size of the various data member fields.
- void length (long);
-
- /// Get the time stamp of the <Log_Record>.
- ACE_Time_Value time_stamp (void) const;
-
- /// Set the time stamp of the <Log_Record>.
- void time_stamp (const ACE_Time_Value &ts);
-
- /// Get the process id of the <Log_Record>.
- long pid (void) const;
-
- /// Set the process id of the <Log_Record>.
- void pid (long);
-
- /// Get the message data of the <Log_Record>.
- const ACE_TCHAR *msg_data (void) const;
-
- /// Set the message data of the record. If @a data is longer than the
- /// current msg_data_ buffer, a new msg_data_ buffer is allocated to
- /// fit. If such a reallocation faisl, this method returns -1, else 0.
- int msg_data (const ACE_TCHAR *data);
-
- /// Get the size of the message data of the <Log_Record>, including
- /// a byte for the NUL.
- size_t msg_data_len (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Round up to the alignment restrictions.
- void round_up (void);
-
- /**
- * Total length of the logging record in bytes. This field *must*
- * come first in order for various IPC framing mechanisms to work
- * correctly. In addition, the field must be an ACE_INT32 in order
- * to be passed portably across platforms.
- */
- ACE_INT32 length_;
-
- /// Type of logging record.
- ACE_UINT32 type_;
-
- /// Time that the logging record was generated.
- time_t secs_;
- ACE_UINT32 usecs_;
-
- /// Id of process that generated the logging record.
- ACE_UINT32 pid_;
-
- /// Logging record data
- ACE_TCHAR *msg_data_; // Heap-allocated text message area
- size_t msg_data_size_; // Allocated size of msg_data_ in ACE_TCHARs
-
- /// disallow copying...
- ACE_Log_Record (const ACE_Log_Record& rhs);
- ACE_Log_Record& operator= (const ACE_Log_Record& rhs);
-};
-
-// Forward decls.
-class ACE_InputCDR;
-class ACE_OutputCDR;
-
-// iostream operators for ACE_Log_Record.
-ACE_Export int operator>> (ACE_InputCDR &cdr, ACE_Log_Record &log_record);
-ACE_Export int operator<< (ACE_OutputCDR &cdr, const ACE_Log_Record &log_record);
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Log_Record.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_LOG_RECORD_H */
-
diff --git a/dep/include/ace/Log_Record.inl b/dep/include/ace/Log_Record.inl
deleted file mode 100644
index 4fe84ecab07..00000000000
--- a/dep/include/ace/Log_Record.inl
+++ /dev/null
@@ -1,123 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Log_Record.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Global_Macros.h"
-#include "ace/os_include/arpa/os_inet.h"
-#include "ace/Time_Value.h"
-#include "ace/OS_NS_string.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Log_Record::~ACE_Log_Record (void)
-{
- if (this->msg_data_)
- delete [] this->msg_data_;
-}
-
-ACE_INLINE void
-ACE_Log_Record::encode (void)
-{
- ACE_TRACE ("ACE_Log_Record::encode");
-#if !defined (ACE_LACKS_HTONL)
- this->length_ = htonl (this->length_);
- this->type_ = htonl (this->type_);
- // Make sure we don't enclose the sec() and usec() fields until
- // they've been normalized.
- // secs_ is commented out because it can be 64 bits. This method is
- // deprecated; use the CDR operations instead.
- // this->secs_ = htonl (this->secs_);
- this->usecs_ = htonl (this->usecs_);
- this->pid_ = htonl (this->pid_);
-#endif /* ACE_LACKS_HTONL */
-}
-
-ACE_INLINE void
-ACE_Log_Record::decode (void)
-{
- ACE_TRACE ("ACE_Log_Record::decode");
-#if !defined (ACE_LACKS_NTOHL)
- ACE_Time_Value tv (this->secs_,
- ntohl (this->usecs_));
-
- this->secs_ = tv.sec ();
- this->usecs_ = tv.usec ();
- this->type_ = ntohl (this->type_);
- this->pid_ = ntohl (this->pid_);
- this->length_ = ntohl (this->length_);
-#endif /* ACE_LACKS_NTOHL */
-}
-
-ACE_INLINE ACE_UINT32
-ACE_Log_Record::type (void) const
-{
- ACE_TRACE ("ACE_Log_Record::type");
- return this->type_;
-}
-
-ACE_INLINE void
-ACE_Log_Record::type (ACE_UINT32 t)
-{
- ACE_TRACE ("ACE_Log_Record::type");
- this->type_ = t;
-}
-
-ACE_INLINE long
-ACE_Log_Record::length (void) const
-{
- ACE_TRACE ("ACE_Log_Record::length");
- return (long) this->length_;
-}
-
-ACE_INLINE void
-ACE_Log_Record::length (long l)
-{
- ACE_TRACE ("ACE_Log_Record::length");
- this->length_ = static_cast<ACE_UINT32> (l);
-}
-
-ACE_INLINE ACE_Time_Value
-ACE_Log_Record::time_stamp (void) const
-{
- ACE_TRACE ("ACE_Log_Record::time_stamp");
- return ACE_Time_Value (this->secs_, (long) this->usecs_);
-}
-
-ACE_INLINE void
-ACE_Log_Record::time_stamp (const ACE_Time_Value &ts)
-{
- ACE_TRACE ("ACE_Log_Record::time_stamp");
- this->secs_ = ts.sec ();
- this->usecs_ = (ACE_UINT32) ts.usec ();
-}
-
-ACE_INLINE long
-ACE_Log_Record::pid (void) const
-{
- ACE_TRACE ("ACE_Log_Record::pid");
- return (long) this->pid_;
-}
-
-ACE_INLINE void
-ACE_Log_Record::pid (long p)
-{
- ACE_TRACE ("ACE_Log_Record::pid");
- this->pid_ = (ACE_UINT32) p;
-}
-
-ACE_INLINE const ACE_TCHAR *
-ACE_Log_Record::msg_data (void) const
-{
- ACE_TRACE ("ACE_Log_Record::msg_data");
- return this->msg_data_;
-}
-
-ACE_INLINE size_t
-ACE_Log_Record::msg_data_len (void) const
-{
- ACE_TRACE ("ACE_Log_Record::msg_data_len");
- return ACE_OS::strlen (this->msg_data_) + 1;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Logging_Strategy.h b/dep/include/ace/Logging_Strategy.h
deleted file mode 100644
index 8af68b32593..00000000000
--- a/dep/include/ace/Logging_Strategy.h
+++ /dev/null
@@ -1,196 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Logging_Strategy.h
- *
- * $Id: Logging_Strategy.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Prashant Jain <pjain@cs.wustl.edu>
- * @author Orlando Ribeiro <oribeiro@inescporto.pt>
- */
-//=============================================================================
-
-#ifndef ACE_LOGGING_STRATEGY_H
-#define ACE_LOGGING_STRATEGY_H
-
-#include "ace/Service_Object.h"
-#include "ace/Log_Msg.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_DEFAULT_LOGFILE_POLL_INTERVAL)
-#define ACE_DEFAULT_LOGFILE_POLL_INTERVAL 600 /* Seconds */
-#endif /* ACE_DEFAULT_LOGFILE_POLL_INTERVAL */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Logging_Strategy
- *
- * @brief This class provides a way to dynamically configure the ACE logging
- * mechanism at run time as well as enable the mechanisms for limiting
- * log file size and log file backup/rotation capability.
- *
- * Depending upon when this service is invoked and with what
- * flags, the output of other network services can be
- * controlled. The output can be streamed to stderr, to a file,
- * to a logging daemon, or it can be set to be "silent".
- * If logging records are output to a file, the file can be set
- * to a maximum size and repeatedly split into new files. The
- * log file size can be limited at any logging point (i.e.,
- * application, client logging daemon, or server logging daemon)
- * by specifying the -i @param sample_interval_in_secs and -m
- * @param max_size_in_KB options for the Logging_Strategy class in a
- * svc.conf file.
- *
- * By default, two logfiles are generated. It's possible, however, to
- * generate as many logfiles as necessary to store all the
- * information. To achieve this, it is only necessary to indicate the
- * maximum size of the logfiles via the -m option and the process will
- * generate automatically the logfiles. You can control the total
- * number of logfiles created via the -n option.
- *
- * By using the -o option we can also choose the mode of organization
- * of the files, e.g., the first one is the normal used in Unix
- * systems (when cron rotates the logs it keeps the lowest number the
- * most recent one), the second is for increasing speed (we only
- * create a new log file, and don't rotate the others (fewer accesses
- * to disk)).
- *
- * By default, the @c ACE_Logging_Strategy uses the singleton reactor,
- * i.e., what's returned by @c ACE_Reactor::instance(). If you want
- * to set the reactor used by @c ACE_Logging_Strategy to something
- * other than the singleton reactor you'll need to get a pointer to
- * the @c ACE_Logging_Strategy instance and do this
- *
- * ACE_Reactor my_reactor;
- * ACE_Logging_Strategy *logging_strategy = ...... // Get instance.
- *
- * logging_strategy->reactor (&my_reactor);
- *
- * and then logging_strategy will use your reactor. If you're
- * dynamically linking the @c ACE_Logging_Strategy then you can use
- * the @c ACE_Dynamic_Service template to get a pointer to the
- * @c ACE_Logging_Strategy.
- */
-class ACE_Export ACE_Logging_Strategy : public ACE_Service_Object
-{
-public:
- /// Constructor.
- ACE_Logging_Strategy (void);
-
- /// Destructor.
- ~ACE_Logging_Strategy (void);
-
- /// Dynamic linking initialization hook.
- virtual int init (int argc, ACE_TCHAR *argv[]);
-
- /// Dynamic linking termination hook.
- virtual int fini (void);
-
- /**
- * Timeout handler which tests logfile size. If the current logfile
- * size exceeds <max_size_>, the current logfile is closed, saved to
- * logfile.old, and a new logfile is reopened.
- */
- virtual int handle_timeout (const ACE_Time_Value& tv,
- const void* arg);
-
- /**
- * Parse arguments provided in svc.conf file.
- * @arg '-f' Pass in the flags (such as OSTREAM, STDERR, LOGGER, VERBOSE,
- * SILENT, VERBOSE_LITE) used to control logging.
- * @arg '-i' The interval (in seconds) at which the logfile size is sampled
- * (default is 0, i.e., do not sample by default).
- * @arg '-k' Set the logging key.
- * @arg '-m' Maximum logfile size in Kbytes.
- * @arg '-n' Set the program name for the %n format specifier.
- * @arg '-N' The maximum number of logfiles that we want created.
- * @arg '-o' Specifies that we want the no standard logfiles ordering
- * (fastest processing in <handle_timeout>). Default is not to
- * order logfiles.
- * @arg '-p' Pass in the process-wide priorities to either enable (e.g.,
- * DEBUG, INFO, WARNING, NOTICE, ERROR, CRITICAL, ALERT,
- * EMERGENCY) or to disable (e.g., ~DEBUG, ~INFO, ~WARNING,
- * ~NOTICE, ~ERROR, ~CRITICAL, ~ALERT, ~EMERGENCY).
- * @arg '-s' Ensure that the OSTREAM flag is set and log to the @a filename.
- * @arg '-t' Pass in the thread-wide priorities to either enable (e.g.,
- * DEBUG, INFO, WARNING, NOTICE, ERROR, CRITICAL, ALERT,
- * EMERGENCY) or to disable (e.g., ~DEBUG, ~INFO, ~WARNING,
- * ~NOTICE, ~ERROR, ~CRITICAL, ~ALERT, ~EMERGENCY).
- * @arg '-w' Cause the logfile to be wiped out, both on startup and on
- * reconfiguration.
- */
- int parse_args (int argc, ACE_TCHAR *argv[]);
-
- void log_msg (ACE_Log_Msg *log_msg);
-
-protected:
- /// Tokenize to set all the flags
- void tokenize (ACE_TCHAR *flag_string);
-
- /// Tokenize to set priorities (either process or thread one).
- void priorities (ACE_TCHAR *priority_string,
- ACE_Log_Msg::MASK_TYPE mask);
-
- /// Current thread's priority mask set by <priorities>
- u_long thread_priority_mask_;
-
- /// Process-wide priority mask set by <priorities>
- u_long process_priority_mask_;
-
- /// Flags we keep track of.
- u_long flags_;
-
- /// File name we're logging to.
- ACE_TCHAR *filename_;
-
- /// Logger key for distributed logging.
- ACE_TCHAR *logger_key_;
-
- /// Program name to be used for %n format specifier.
- ACE_TCHAR *program_name_;
-
- /// If non-0 then wipeout the logfile, otherwise append to it.
- /// Default value is 0.
- bool wipeout_logfile_;
-
- /// If non-0 we have a maximum number of log files we can write.
- /// Default value is 0, i.e., no maximum number.
- bool fixed_number_;
-
- /// If non-0 we order the files as we rotate them. Default value
- /// is 0, i.e., we do not rotate files by default.
- bool order_files_;
-
- /// This tells us in what file we last wrote. It will be increased
- /// to enable multiple log files
- int count_;
-
- /// Tells us what is the maximum log file to write. We will write
- /// <max_file_number_> + 1 files (includes the current log file).
- /// Default value is 1, i.e., 2 files by default.
- int max_file_number_;
-
- /// If non-zero, sampling interval (in secs) at which maximum logfile
- /// size is checked, otherwise logfile size can grow indefinitely.
- /// Default value is 0.
- u_long interval_;
-
- /// Maximum logfile size (in KB). Default value is
- /// <ACE_DEFAULT_MAX_LOGFILE_SIZE>.
- u_long max_size_;
-
- /// ACE_Log_Msg instance to work with
- ACE_Log_Msg *log_msg_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-ACE_FACTORY_DECLARE (ACE, ACE_Logging_Strategy)
-
-#endif /* ACE_LOGGING_STRATEGY_H */
-
diff --git a/dep/include/ace/MEM_Acceptor.h b/dep/include/ace/MEM_Acceptor.h
deleted file mode 100644
index b982ab81642..00000000000
--- a/dep/include/ace/MEM_Acceptor.h
+++ /dev/null
@@ -1,193 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file MEM_Acceptor.h
- *
- * $Id: MEM_Acceptor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Nanbor Wang <nanbor@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_MEM_ACCEPTOR_H
-#define ACE_MEM_ACCEPTOR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#include "ace/SOCK_Acceptor.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if (ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1)
-
-#include "ace/MEM_Stream.h"
-#include "ace/MEM_Addr.h"
-
-#if !defined (ACE_HAS_WINCE)
-#include "ace/OS_QoS.h"
-#endif // ACE_HAS_WINCE
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decl.
-class ACE_Reactor;
-
-/**
- * @class ACE_MEM_Acceptor
- *
- * @brief Defines the format and interface for the acceptor side of the
- * local mmap stream.
- *
- * This class should be modified to prevent user passing a
- * non-localhost endpoint as the acceptor listen point because
- * it doesn't make any sense at all to make the listening
- * endpoint visible (or connectable) anywhere outside of this
- * machine. However, the type of endpoint is left as <ACE_Addr>
- * so we can later changed to use UNIX-domain sockets with mmap stream
- * if so desired. (Currently, using UNIX-domain sockets, i.e.,
- * ACE_LSOCK_*, with this class will not work.)
- */
-class ACE_Export ACE_MEM_Acceptor : public ACE_SOCK_Acceptor
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_MEM_Acceptor (void);
-
- /// destructor.
- ~ACE_MEM_Acceptor (void);
-
- /// Initiate a passive mode socket.
- ACE_MEM_Acceptor (const ACE_MEM_Addr &remote_sap,
- int reuse_addr = 0,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 0);
-
- /**
- * Initialize a passive-mode BSD-style acceptor socket (no QoS).
- * @a local_sap is the address that we're going to listen for
- * connections on. If @a reuse_addr is 1 then we'll use the
- * @c SO_REUSEADDR to reuse this address. Returns 0 on success and
- * -1 on failure.
- */
- int open (const ACE_MEM_Addr &local_sap,
- int reuse_addr = 0,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 0);
-
- /// Accept a new data transfer connection.
- int accept (ACE_MEM_Stream &new_ipc_sap,
- ACE_MEM_Addr *remote_addr = 0,
- ACE_Time_Value *timeout = 0,
- int restart = 1,
- int reset_new_handle = 0);
-
- /// Perform operations that must occur after <ACE_OS::accept> is
- /// called.
- int shared_accept_finish (ACE_MEM_Stream new_stream,
- int in_blocking_mode,
- int reset_new_handle) const;
-
- /**
- * Accessor/mutator of mmap filename prefix. By default, the
- * <mmap_prefix_> is not set and the mmap filename is
- * ${(TMP|TEMP)}//ACE_MEM_Acceptor_(port-number)_(&stream),
- * otherwise, it is <mmap_prefix_>_(port-number)_(&stream),
- * <mmap_prefix_> should include _absolute_ path so the connector
- * within the same host can located the mmap file. Example:
- * /tmp/mmapfile.
- */
- const ACE_TCHAR *mmap_prefix (void) const;
- void mmap_prefix (const ACE_TCHAR *prefix);
-
- /**
- * Change the initial MMAP buffer size (in bytes) of the MEM_Stream
- * this MEM_Acceptor creates.
- */
- void init_buffer_size (ACE_OFF_T bytes);
-
- /// Get the preferred signaling strategy.
- ACE_MEM_IO::Signal_Strategy preferred_strategy (void) const;
-
- /// Set the preferred signaling strategy.
- void preferred_strategy (ACE_MEM_IO::Signal_Strategy strategy);
-
- /// Return the local endpoint address in the referenced <ACE_Addr>.
- /// Returns 0 if successful, else -1.
- int get_local_addr (ACE_MEM_Addr &) const;
-
- /// Accessor to the mmap options.
- /// @deprecated This method has been deprecated.
- ACE_MEM_SAP::MALLOC_OPTIONS& malloc_options (void);
-
- // = Meta-type info
- typedef ACE_MEM_Addr PEER_ADDR;
- typedef ACE_MEM_Stream PEER_STREAM;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- // = The following methods should not be accessable externally
- // because MEM_Acceptor do not support their semantics.
- int open (const ACE_Addr &local_sap,
- int reuse_addr = 0,
- int protocol_family = PF_INET,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 0);
-
- int open (const ACE_Addr &local_sap,
- ACE_Protocol_Info *protocolinfo,
- ACE_SOCK_GROUP g,
- u_long flags,
- int reuse_addr,
- int protocol_family,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 0);
-
- int accept (ACE_SOCK_Stream &new_stream,
- ACE_Addr *remote_addr = 0,
- ACE_Time_Value *timeout = 0,
- int restart = 1,
- int reset_new_handle = 0) const;
-
-#if !defined (ACE_HAS_WINCE)
- int accept (ACE_SOCK_Stream &new_stream,
- ACE_Accept_QoS_Params qos_params,
- ACE_Addr *remote_addr = 0,
- ACE_Time_Value *timeout = 0,
- int restart = 1,
- int reset_new_handle = 0) const;
-#endif // ACE_HAS_WINCE
-
-private:
- /// The filename prefix of the created mmap files. It should
- /// contains the absolute path name of the file.
- ACE_TCHAR *mmap_prefix_;
-
- /// A cached MALLOC_OPTIONS. MEM_Accaptor use it to create the shared
- /// mamory malloc upon every incoming connection.
- ACE_MEM_SAP::MALLOC_OPTIONS malloc_options_;
-
- /// Preferred signaling strategy.
- ACE_MEM_IO::Signal_Strategy preferred_strategy_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/MEM_Acceptor.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1 */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_MEM_ACCEPTOR_H */
-
diff --git a/dep/include/ace/MEM_Acceptor.inl b/dep/include/ace/MEM_Acceptor.inl
deleted file mode 100644
index 9bcc211e2b4..00000000000
--- a/dep/include/ace/MEM_Acceptor.inl
+++ /dev/null
@@ -1,103 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: MEM_Acceptor.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_MEM_Acceptor::open (const ACE_Addr &local_sap,
- ACE_Protocol_Info *protocolinfo,
- ACE_SOCK_GROUP g,
- u_long flags,
- int reuse_addr,
- int protocol_family,
- int backlog,
- int protocol)
-{
- return this->ACE_SOCK_Acceptor::open
- (local_sap, protocolinfo, g, flags, reuse_addr, protocol_family,
- backlog, protocol);
-}
-
-ACE_INLINE int
-ACE_MEM_Acceptor::accept (ACE_SOCK_Stream &new_stream,
- ACE_Addr *remote_addr,
- ACE_Time_Value *timeout,
- int restart,
- int reset_new_handle) const
-{
- return this->ACE_SOCK_Acceptor::accept
- (new_stream, remote_addr, timeout, restart, reset_new_handle);
-}
-
-#if !defined (ACE_HAS_WINCE)
-ACE_INLINE int
-ACE_MEM_Acceptor::accept (ACE_SOCK_Stream &new_stream,
- ACE_Accept_QoS_Params qos_params,
- ACE_Addr *remote_addr,
- ACE_Time_Value *timeout,
- int restart,
- int reset_new_handle) const
-{
- return this->ACE_SOCK_Acceptor::accept
- (new_stream, qos_params, remote_addr, timeout, restart, reset_new_handle);
-}
-#endif // ACE_HAS_WINCE
-
-ACE_INLINE int
-ACE_MEM_Acceptor::get_local_addr (ACE_MEM_Addr &sap) const
-{
- ACE_INET_Addr temp;
-
- this->ACE_SOCK_Acceptor::get_local_addr (temp);
- sap.set_port_number (temp.get_port_number ());
- return 0;
-}
-
-ACE_INLINE const ACE_TCHAR *
-ACE_MEM_Acceptor::mmap_prefix (void) const
-{
- return this->mmap_prefix_;
-}
-
-ACE_INLINE void
-ACE_MEM_Acceptor::mmap_prefix (const ACE_TCHAR *prefix)
-{
- if (prefix == 0)
- {
- this->mmap_prefix_ = 0;
- }
- else
- {
- this->mmap_prefix_ = ACE::strnew (prefix);
- }
-}
-
-ACE_INLINE ACE_MEM_IO::Signal_Strategy
-ACE_MEM_Acceptor::preferred_strategy (void) const
-{
- return this->preferred_strategy_;
-}
-
-ACE_INLINE void
-ACE_MEM_Acceptor::preferred_strategy (ACE_MEM_IO::Signal_Strategy strategy)
-{
- this->preferred_strategy_ = strategy;
-}
-
-ACE_INLINE void
-ACE_MEM_Acceptor::init_buffer_size (ACE_OFF_T bytes)
-{
- this->malloc_options_.minimum_bytes_ = bytes;
-}
-
-ACE_INLINE ACE_MEM_SAP::MALLOC_OPTIONS &
-ACE_MEM_Acceptor::malloc_options (void)
-{
- // @@ This function has been deprecated and will be removed in the
- // future.
-
- return this->malloc_options_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/MEM_Addr.h b/dep/include/ace/MEM_Addr.h
deleted file mode 100644
index fa7da740f5d..00000000000
--- a/dep/include/ace/MEM_Addr.h
+++ /dev/null
@@ -1,155 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file MEM_Addr.h
- *
- * $Id: MEM_Addr.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Nanbor Wang <nanbor@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_MEM_ADDR_H
-#define ACE_MEM_ADDR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if (ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1)
-
-#include "ace/INET_Addr.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_MEM_Addr
- *
- * @brief Defines a C++ wrapper facade for the shared memory transport
- * address family format.
- */
-class ACE_Export ACE_MEM_Addr : public ACE_Addr
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_MEM_Addr (void);
-
- /// Copy constructor.
- ACE_MEM_Addr (const ACE_MEM_Addr &);
-
- /// Creates an ACE_MEM_Addr from a @a port_number
- ACE_MEM_Addr (u_short port_number);
-
- /// Creates an ACE_MEM_Addr from a @a port_name.
- explicit ACE_MEM_Addr (const ACE_TCHAR port_name[]);
-
- /// Default dtor.
- ~ACE_MEM_Addr (void);
-
- // = Direct initialization methods.
-
- /// Default initialization routine.
- int initialize_local (u_short port);
-
- /// Check if @a sap designates an endpoint on the same host.
- int same_host (const ACE_INET_Addr& sap);
-
- // These methods are useful after the object has been constructed.
-
- /**
- * Initializes an ACE_MEM_Addr from a @a port_number. If @a encode
- * is enabled then @a port_number is converted into network byte order,
- * otherwise it is assumed to be in network byte order already and
- * are passed straight through.
- */
- int set (u_short port_number, int encode = 1);
-
- /// Uses <getservbyname> to initialize an ACE_MEM_Addr from a
- /// <port_name>, the remote <host_name>, and the <protocol>.
- int set (const ACE_TCHAR port_name[]);
-
- /// Return a pointer to the underlying network address.
- virtual void *get_addr (void) const;
-
- /// Set a pointer to the address.
- virtual void set_addr (void *, int len);
-
- /// Transform the external ACE_MEM_Addr address into string
- /// format.
- virtual int addr_to_string (ACE_TCHAR buffer[],
- size_t size,
- int ipaddr_format = 1) const;
-
- /// Initializes the external ACE_MEM_Addr from the @a address.
- virtual int string_to_addr (const ACE_TCHAR address[]);
-
- /// Sets the port number.
- void set_port_number (u_short,
- int encode = 1);
-
- /// Return the port number, converting it into host byte order.
- u_short get_port_number (void) const;
-
- /// Return the character representation of the hostname.
- int get_host_name (ACE_TCHAR hostname[],
- size_t hostnamelen) const;
-
- /**
- * Return the character representation of the hostname (this version
- * is non-reentrant since it returns a pointer to a static data
- * area).
- */
- const char *get_host_name (void) const;
-
- /// Return the "dotted decimal" external address.
- const char *get_host_addr (void) const;
-
- /// Return the 4-byte external IP address, converting it into host byte
- /// order.
- ACE_UINT32 get_ip_address (void) const;
-
- const ACE_INET_Addr &get_remote_addr (void) const;
- const ACE_INET_Addr &get_local_addr (void) const;
-
- /// Compare two addresses for equality. The addresses are considered
- /// equal if they contain the same IP address and port number.
- bool operator == (const ACE_MEM_Addr &SAP) const;
- bool operator == (const ACE_INET_Addr &SAP) const;
-
- /// Compare two addresses for inequality.
- bool operator != (const ACE_MEM_Addr &SAP) const;
- bool operator != (const ACE_INET_Addr &SAP) const;
-
- /// Computes and returns hash value.
- virtual u_long hash (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// External INET addr used for identifying host.
- ACE_INET_Addr external_;
-
- /// Internal INET addr for accepting/connecting.
- ACE_INET_Addr internal_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/MEM_Addr.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1 */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_MEM_ADDR_H */
-
diff --git a/dep/include/ace/MEM_Addr.inl b/dep/include/ace/MEM_Addr.inl
deleted file mode 100644
index 3d7a4235f07..00000000000
--- a/dep/include/ace/MEM_Addr.inl
+++ /dev/null
@@ -1,110 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: MEM_Addr.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Global_Macros.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Set the port number.
-
-ACE_INLINE void
-ACE_MEM_Addr::set_port_number (u_short port_number,
- int encode)
-{
- ACE_TRACE ("ACE_MEM_Addr::set_port_number");
-
- this->external_.set_port_number (port_number, encode);
- this->internal_.set_port_number (port_number, encode);
-}
-
-ACE_INLINE int
-ACE_MEM_Addr::set (u_short port_number, int encode)
-{
- ACE_TRACE ("ACE_MEM_Addr::set");
- this->set_port_number (port_number, encode);
- return 0;
-}
-
-ACE_INLINE int
-ACE_MEM_Addr::set (const ACE_TCHAR port_number[])
-{
- ACE_TRACE ("ACE_MEM_Addr::set");
- return this->string_to_addr (port_number);
-}
-
-// Return the port number.
-
-ACE_INLINE u_short
-ACE_MEM_Addr::get_port_number (void) const
-{
- ACE_TRACE ("ACE_MEM_Addr::get_port_number");
- return this->internal_.get_port_number ();
-}
-
-// Return the dotted Internet address.
-
-ACE_INLINE const char *
-ACE_MEM_Addr::get_host_addr (void) const
-{
- ACE_TRACE ("ACE_MEM_Addr::get_host_addr");
- return this->internal_.get_host_addr ();
-}
-
-// Return the 4-byte IP address, converting it into host byte order.
-
-ACE_INLINE ACE_UINT32
-ACE_MEM_Addr::get_ip_address (void) const
-{
- ACE_TRACE ("ACE_MEM_Addr::get_ip_address");
- return this->external_.get_ip_address ();
-}
-
-ACE_INLINE const ACE_INET_Addr &
-ACE_MEM_Addr::get_local_addr (void) const
-{
- return this->internal_;
-}
-
-ACE_INLINE const ACE_INET_Addr &
-ACE_MEM_Addr::get_remote_addr (void) const
-{
- return this->external_;
-}
-
-// Compare two addresses for equality.
-
-ACE_INLINE bool
-ACE_MEM_Addr::operator == (const ACE_MEM_Addr &sap) const
-{
- ACE_TRACE ("ACE_MEM_Addr::operator ==");
-
- return this->external_ == sap.external_ &&
- this->internal_ == sap.internal_;
-}
-
-ACE_INLINE bool
-ACE_MEM_Addr::operator == (const ACE_INET_Addr &sap) const
-{
- ACE_TRACE ("ACE_MEM_Addr::operator ==");
-
- return this->external_ == sap;
-}
-
-// Compare two addresses for inequality.
-
-ACE_INLINE bool
-ACE_MEM_Addr::operator != (const ACE_MEM_Addr &sap) const
-{
- ACE_TRACE ("ACE_MEM_Addr::operator !=");
- return !((*this) == sap);
-}
-
-ACE_INLINE bool
-ACE_MEM_Addr::operator != (const ACE_INET_Addr &sap) const
-{
- ACE_TRACE ("ACE_MEM_Addr::operator !=");
- return !((*this) == sap);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/MEM_Connector.h b/dep/include/ace/MEM_Connector.h
deleted file mode 100644
index d976d8d91bf..00000000000
--- a/dep/include/ace/MEM_Connector.h
+++ /dev/null
@@ -1,180 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file MEM_Connector.h
- *
- * $Id: MEM_Connector.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Nanbor Wang <nanbor@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_MEM_CONNECTOR_H
-#define ACE_MEM_CONNECTOR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if (ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1)
-
-#include "ace/SOCK_Connector.h"
-#include "ace/MEM_Stream.h"
-#include "ace/MEM_Addr.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_MEM_Connector
- *
- * @brief Defines the format and interface for connecting to a peer
- * on a @c ACE_MEM_Stream object.
- */
-class ACE_Export ACE_MEM_Connector : public ACE_SOCK_Connector
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_MEM_Connector (void);
-
- /**
- * Actively connect to a peer, producing a connected @c ACE_MEM_Stream
- * object if the connection succeeds.
- *
- * @param new_stream The @c ACE_MEM_Stream object that will be connected
- * to the peer.
- * @param remote_sap The address that we are trying to connect to.
- * The protocol family of @c remote_sap is used for
- * the connected socket. That is, if @c remote_sap
- * contains an IPv6 address, a socket with family
- * PF_INET6 will be used, else it will be PF_INET.
- * @note remote_sap must be an address on the local
- * host.
- * @param timeout Pointer to an @c ACE_Time_Value object with amount
- * of time to wait to connect. If the pointer is 0
- * then the call blocks until the connection attempt
- * is complete, whether it succeeds or fails. If
- * *timeout == {0, 0} then the connection is done
- * using nonblocking mode. In this case, if the
- * connection can't be made immediately, this method
- * returns -1 and errno == EWOULDBLOCK.
- * If *timeout > {0, 0} then this is the maximum amount
- * of time to wait before timing out; if the specified
- * amount of time passes before the connection is made,
- * this method returns -1 and errno == ETIME. Note
- * the difference between this case and when a blocking
- * connect is attmpted that TCP times out - in the latter
- * case, errno will be ETIMEDOUT.
- * @param local_sap (optional) The local address to bind to. If it's
- * the default value of @c ACE_Addr::sap_any then the
- * OS will choose an unused port.
- * @param reuse_addr (optional) If the value is 1, the local address
- * (@c local_sap) is reused, even if it hasn't been
- * cleaned up yet.
- * @param flags Ignored.
- * @param perms Ignored.
- */
- ACE_MEM_Connector (ACE_MEM_Stream &new_stream,
- const ACE_INET_Addr &remote_sap,
- ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = 0,
- int perms = 0);
-
- /**
- * Actively connect to a peer, producing a connected @c ACE_MEM_Stream
- * object if the connection succeeds.
- *
- * @param new_stream The @c ACE_MEM_Stream object that will be connected
- * to the peer.
- * @param remote_sap The address that we are trying to connect to.
- * The protocol family of @c remote_sap is used for
- * the connected socket. That is, if @c remote_sap
- * contains an IPv6 address, a socket with family
- * PF_INET6 will be used, else it will be PF_INET.
- * @note remote_sap must be an address on the local
- * host.
- * @param timeout Pointer to an @c ACE_Time_Value object with amount
- * of time to wait to connect. If the pointer is 0
- * then the call blocks until the connection attempt
- * is complete, whether it succeeds or fails. If
- * *timeout == {0, 0} then the connection is done
- * using nonblocking mode. In this case, if the
- * connection can't be made immediately, this method
- * returns -1 and errno == EWOULDBLOCK.
- * If *timeout > {0, 0} then this is the maximum amount
- * of time to wait before timing out; if the specified
- * amount of time passes before the connection is made,
- * this method returns -1 and errno == ETIME. Note
- * the difference between this case and when a blocking
- * connect is attmpted that TCP times out - in the latter
- * case, errno will be ETIMEDOUT.
- * @param local_sap (optional) The local address to bind to. If it's
- * the default value of @c ACE_Addr::sap_any then the
- * OS will choose an unused port.
- * @param reuse_addr (optional) If the value is 1, the local address
- * (@c local_sap) is reused, even if it hasn't been
- * cleaned up yet.
- * @param flags Ignored.
- * @param perms Ignored.
- *
- * @return Returns 0 if the connection succeeds. If it fails,
- * -1 is returned and errno contains a specific error
- * code.
- */
- int connect (ACE_MEM_Stream &new_stream,
- const ACE_INET_Addr &remote_sap,
- ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = 0,
- int perms = 0);
-
- /// Get the preferred signaling strategy.
- ACE_MEM_IO::Signal_Strategy preferred_strategy (void) const;
-
- /// Set the preferred signaling strategy.
- void preferred_strategy (ACE_MEM_IO::Signal_Strategy strategy);
-
- /// Accessor to underlying malloc options.
- /// @deprecated This method has been deprecated.
- ACE_MEM_SAP::MALLOC_OPTIONS &malloc_options (void);
-
- // = Meta-type info
- typedef ACE_INET_Addr PEER_ADDR;
- typedef ACE_MEM_Stream PEER_STREAM;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// The acceptor address this connector is connecting to.
- ACE_MEM_Addr address_;
-
- /// A cached MALLOC_OPTIONS that the MEM_Connector used to initialize
- /// the shared memory malloc update connection establishment.
- ACE_MEM_SAP::MALLOC_OPTIONS malloc_options_;
-
- /// Preferred signaling strategy.
- ACE_MEM_IO::Signal_Strategy preferred_strategy_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/MEM_Connector.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1 */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_MEM_CONNECTOR_H */
-
diff --git a/dep/include/ace/MEM_Connector.inl b/dep/include/ace/MEM_Connector.inl
deleted file mode 100644
index e61399ea936..00000000000
--- a/dep/include/ace/MEM_Connector.inl
+++ /dev/null
@@ -1,30 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: MEM_Connector.inl 80826 2008-03-04 14:51:23Z wotte $
-
-// Establish a connection.
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ACE_MEM_IO::Signal_Strategy
-ACE_MEM_Connector::preferred_strategy (void) const
-{
- return this->preferred_strategy_;
-}
-
-ACE_INLINE void
-ACE_MEM_Connector::preferred_strategy (ACE_MEM_IO::Signal_Strategy strategy)
-{
- this->preferred_strategy_ = strategy;
-}
-
-ACE_INLINE ACE_MEM_SAP::MALLOC_OPTIONS &
-ACE_MEM_Connector::malloc_options (void)
-{
- // @@ This function has been deprecated and will be removed in the
- // future.
-
- return this->malloc_options_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/MEM_IO.h b/dep/include/ace/MEM_IO.h
deleted file mode 100644
index 5c05bdc444c..00000000000
--- a/dep/include/ace/MEM_IO.h
+++ /dev/null
@@ -1,308 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file MEM_IO.h
- *
- * $Id: MEM_IO.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Nanbor Wang <nanbor@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_MEM_IO_H
-#define ACE_MEM_IO_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if (ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1)
-
-#include "ace/SOCK.h"
-#include "ace/MEM_SAP.h"
-#include "ace/Message_Block.h"
-#include "ace/Process_Semaphore.h"
-#include "ace/Process_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Export ACE_Reactive_MEM_IO : public ACE_MEM_SAP
-{
-public:
- ACE_Reactive_MEM_IO (void);
-
- virtual ~ACE_Reactive_MEM_IO (void);
-
- /**
- * Initialize the MEM_SAP object.
- *
- * @a options is used to pass in the Malloc_Options to initialize
- * underlying ACE_MMAP.
- */
- virtual int init (ACE_HANDLE handle,
- const ACE_TCHAR *name,
- MALLOC_OPTIONS *options);
-
- /**
- * Fetch location of next available data into <recv_buffer_>.
- * As this operation read the address of the data off the socket
- * using ACE::recv, @a timeout only applies to ACE::recv.
- */
- virtual ssize_t recv_buf (ACE_MEM_SAP_Node *&buf,
- int flags,
- const ACE_Time_Value *timeout);
-
- /**
- * Wait to to @a timeout amount of time to send @a buf. If <send>
- * times out a -1 is returned with @c errno == ETIME. If it succeeds
- * the number of bytes sent is returned. */
- virtual ssize_t send_buf (ACE_MEM_SAP_Node *buf,
- int flags,
- const ACE_Time_Value *timeout);
-
- /**
- * Convert the buffer offset <off> to absolute address to @a buf.
- * Return the size of valid information containing in the @a buf,
- * -1 if <shm_malloc_> is not initialized.
- */
- ssize_t get_buf_len (const ACE_OFF_T off, ACE_MEM_SAP_Node *&buf);
-};
-
-#if defined (ACE_WIN32) || !defined (_ACE_USE_SV_SEM)
-class ACE_Export ACE_MT_MEM_IO : public ACE_MEM_SAP
-{
-public:
- typedef struct
- {
- ACE_MEM_SAP_Node::ACE_MEM_SAP_NODE_PTR head_;
- ACE_MEM_SAP_Node::ACE_MEM_SAP_NODE_PTR tail_;
- } MQ_Struct; // Structure for a simple queue
-
- class Simple_Queue
- {
- public:
- Simple_Queue (void);
- Simple_Queue (MQ_Struct *mq);
-
- int init (MQ_Struct *mq, ACE_MEM_SAP::MALLOC_TYPE *malloc);
-
- int write (ACE_MEM_SAP_Node *new_msg);
-
- ACE_MEM_SAP_Node *read (void);
- private:
- MQ_Struct *mq_;
- ACE_MEM_SAP::MALLOC_TYPE *malloc_;
- };
-
- typedef struct
- {
- ACE_SYNCH_PROCESS_SEMAPHORE *sema_;
- ACE_SYNCH_PROCESS_MUTEX *lock_;
- Simple_Queue queue_;
- } Channel;
-
- ACE_MT_MEM_IO (void);
-
- virtual ~ACE_MT_MEM_IO (void);
-
- /**
- * Initialize the MEM_SAP object.
- */
- virtual int init (ACE_HANDLE handle,
- const ACE_TCHAR *name,
- MALLOC_OPTIONS *options);
-
- /**
- * Fetch location of next available data into <recv_buffer_>.
- * As this operation read the address of the data off the socket
- * using ACE::recv, @a timeout only applies to ACE::recv.
- */
- virtual ssize_t recv_buf (ACE_MEM_SAP_Node *&buf,
- int flags,
- const ACE_Time_Value *timeout);
-
- /**
- * Wait to to @a timeout amount of time to send @a buf. If <send>
- * times out a -1 is returned with @c errno == ETIME. If it succeeds
- * the number of bytes sent is returned. */
- virtual ssize_t send_buf (ACE_MEM_SAP_Node *buf,
- int flags,
- const ACE_Time_Value *timeout);
-
-private:
- Channel recv_channel_;
- Channel send_channel_;
-};
-#endif /* ACE_WIN32 || !_ACE_USE_SV_SEM */
-
-/**
- * @class ACE_MEM_IO
- *
- * @brief Defines the methods for the ACE shared memeory wrapper I/O
- * routines (e.g., send/recv).
- * The shared memory transport uses ACE_SOCK_* class to
- * implement the signaling mechanism so we can easily use the
- * new mechanism with the Reactor pattern (which uses select
- * under the hood.)
- * ACE_MEM_Acceptor and ACE_MEM_Connector are used to establish
- * connections. When a connection is established,
- * ACE_MEM_Acceptor creates the MMAP file for data exchange and
- * sends the location of the file (complete path name) to
- * ACE_MEM_Connector thru the socket. ACE_MEM_Connector then
- * reads the location of the file off the socket and opens up
- * the same MMAP file. ACE_MEM_Stream at each side then
- * contains a reference to the ACE_Mallo object using the same
- * MMAP file.
- * When sending information using methods provided in this
- * class, ACE_MEM_IO requests a chunk of memory from the
- * MALLOC_TYPE object, copy the data into the shared memory and
- * send the memory offset (from the start of the ACE_Malloc)
- * across the socket. This action also servers as a signal to
- * the other end. The receiving side then reverses the
- * procedures and copies the information into user buffer.
- */
-class ACE_Export ACE_MEM_IO : public ACE_SOCK
-{
-public:
- // = Initialization and termination methods.
- /// Constructor.
- ACE_MEM_IO (void);
-
- /// Destructor.
- ~ACE_MEM_IO (void);
-
- typedef enum
- {
- Reactive,
- MT
- } Signal_Strategy;
-
- /**
- * Initialize the MEM_SAP object.
- */
- int init (const ACE_TCHAR *name,
- ACE_MEM_IO::Signal_Strategy type = ACE_MEM_IO::Reactive,
- ACE_MEM_SAP::MALLOC_OPTIONS *options = 0);
-
- /**
- * Finalizing the MEM_IO object. This method doesn't invoke
- * the <remove> method.
- */
- int fini (void);
-
- /// Send an @a n byte buffer to the other process using shm_malloc_
- /// connected thru the socket.
- ssize_t send (const void *buf,
- size_t n,
- int flags) ;
-
- /// Recv an @a n byte buffer from the shm_malloc_ thru connected socket.
- ssize_t recv (void *buf,
- size_t n,
- int flags) ;
-
- /// Send an @a n byte buffer to the other process using shm_malloc_
- /// connected thru the socket.
- ssize_t send (const void *buf,
- size_t n) ;
-
- /// Recv an @a n byte buffer from the shm_malloc_ thru connected socket.
- ssize_t recv (void *buf,
- size_t n) ;
-
- /**
- * Wait to to @a timeout amount of time to send up to @a n bytes into
- * @a buf from <handle> (uses the <send> call). If <send> times out
- * a -1 is returned with @c errno == ETIME. If it succeeds the
- * number of bytes sent is returned.
- */
- ssize_t send (const void *buf,
- size_t n,
- const ACE_Time_Value *timeout);
-
- /**
- * Wait to to @a timeout amount of time to send up to @a n bytes into
- * @a buf from <handle> (uses the <send> call). If <send> times out
- * a -1 is returned with @c errno == ETIME. If it succeeds the
- * number of bytes sent is returned.
- */
- ssize_t send (const void *buf,
- size_t n,
- int flags,
- const ACE_Time_Value *timeout);
-
- /**
- * Wait to to @a timeout amount of time to send the @a message_block.
- * If <send> times out a -1 is returned with @c errno == ETIME. If
- * it succeeds the number of bytes sent is returned.
- */
- ssize_t send (const ACE_Message_Block *message_block,
- const ACE_Time_Value *timeout);
-
- /**
- * Wait up to @a timeout amount of time to receive up to @a n bytes
- * into @a buf from <handle> (uses the <recv> call). If <recv> times
- * out a -1 is returned with @c errno == ETIME. If it succeeds the
- * number of bytes received is returned.
- */
- ssize_t recv (void *buf,
- size_t n,
- const ACE_Time_Value *timeout);
-
- /**
- * Wait up to @a timeout amount of time to receive up to @a n bytes
- * into @a buf from <handle> (uses the <recv> call). If <recv> times
- * out a -1 is returned with @c errno == ETIME. If it succeeds the
- * number of bytes received is returned.
- */
- ssize_t recv (void *buf,
- size_t n,
- int flags,
- const ACE_Time_Value *timeout);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /// Return the local endpoint port number. Returns 0 if successful,
- /// else -1.
- /* int get_local_port (u_short &) const;
-
- /// Return the port number of the remotely connected peer (if there
- /// is one). Returns 0 if successful, else -1.
- int get_remote_port (u_short &) const;
- */
-
-private:
- ssize_t fetch_recv_buf (int flag, const ACE_Time_Value *timeout);
-
- /// Actual deliverying mechanism.
- ACE_MEM_SAP *deliver_strategy_;
-
- /// Internal pointer for support recv/send.
- ACE_MEM_SAP_Node *recv_buffer_;
-
- /// Record the current total buffer size of <recv_buffer_>.
- ssize_t buf_size_;
-
- /// Record the current read pointer location in <recv_buffer_>.
- ssize_t cur_offset_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/MEM_IO.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1 */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SOCK_IO_H */
-
diff --git a/dep/include/ace/MEM_IO.inl b/dep/include/ace/MEM_IO.inl
deleted file mode 100644
index 7e24f74a1eb..00000000000
--- a/dep/include/ace/MEM_IO.inl
+++ /dev/null
@@ -1,247 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: MEM_IO.inl 82559 2008-08-07 20:23:07Z parsons $
-
-#include "ace/OS_NS_string.h"
-#include "ace/Truncate.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Reactive_MEM_IO::ACE_Reactive_MEM_IO ()
-{
-}
-
-#if defined (ACE_WIN32) || !defined (_ACE_USE_SV_SEM)
-ACE_INLINE
-ACE_MT_MEM_IO::Simple_Queue::Simple_Queue (void)
- : mq_ (0),
- malloc_ (0)
-{
-}
-
-ACE_INLINE
-ACE_MT_MEM_IO::ACE_MT_MEM_IO ()
-{
- this->recv_channel_.sema_ = 0;
- this->recv_channel_.lock_ = 0;
- this->send_channel_.sema_ = 0;
- this->send_channel_.lock_ = 0;
-}
-
-ACE_INLINE
-ACE_MT_MEM_IO::Simple_Queue::Simple_Queue (MQ_Struct *mq)
- : mq_ (mq),
- malloc_ (0)
-{
-}
-
-ACE_INLINE int
-ACE_MT_MEM_IO::Simple_Queue::init (MQ_Struct *mq,
- ACE_MEM_SAP::MALLOC_TYPE *malloc)
-{
- if (this->mq_ != 0)
- return -1;
-
- this->mq_ = mq;
- this->malloc_ = malloc;
- return 0;
-}
-#endif /* ACE_WIN32 || !_ACE_USE_SV_SEM */
-
-ACE_INLINE ssize_t
-ACE_Reactive_MEM_IO::get_buf_len (const ACE_OFF_T off, ACE_MEM_SAP_Node *&buf)
-{
-#if !defined (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS)
- ACE_TRACE ("ACE_Reactive_MEM_IO::get_buf_len");
-#endif /* ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS */
-
- if (this->shm_malloc_ == 0)
- {
- return -1;
- }
-
- ssize_t retv = 0;
-
- ACE_SEH_TRY
- {
- buf =
- reinterpret_cast<ACE_MEM_SAP_Node *> (
- static_cast<char *> (this->shm_malloc_->base_addr ()) + off);
- retv = ACE_Utils::truncate_cast<ssize_t> (buf->size ());
- }
- ACE_SEH_EXCEPT (this->shm_malloc_->memory_pool ().seh_selector (GetExceptionInformation ()))
- {
- }
-
- return retv;
-}
-
-// Send an n byte message to the connected socket.
-ACE_INLINE
-ACE_MEM_IO::ACE_MEM_IO (void)
- : deliver_strategy_ (0),
- recv_buffer_ (0),
- buf_size_ (0),
- cur_offset_ (0)
-{
- // ACE_TRACE ("ACE_MEM_IO::ACE_MEM_IO");
-}
-
-ACE_INLINE ssize_t
-ACE_MEM_IO::fetch_recv_buf (int flag, const ACE_Time_Value *timeout)
-{
- ACE_TRACE ("ACE_MEM_IO::fetch_recv_buf");
-
- if (this->deliver_strategy_ == 0)
- return -1;
-
- // This method can only be called when <buf_size_> == <cur_offset_>.
- ACE_ASSERT (this->buf_size_ == this->cur_offset_);
-
- // We have done using the previous buffer, return it to malloc.
- if (this->recv_buffer_ != 0)
- this->deliver_strategy_->release_buffer (this->recv_buffer_);
-
- this->cur_offset_ = 0;
- ssize_t retv = 0;
-
- if ((retv = this->deliver_strategy_->recv_buf (this->recv_buffer_,
- flag,
- timeout)) > 0)
- this->buf_size_ = retv;
- else
- this->buf_size_ = 0;
-
- return retv;
-}
-
-ACE_INLINE
-ACE_MEM_IO::~ACE_MEM_IO (void)
-{
- delete this->deliver_strategy_;
-}
-
-ACE_INLINE ssize_t
-ACE_MEM_IO::send (const void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout)
-{
- ACE_TRACE ("ACE_MEM_IO::send");
-
- if (this->deliver_strategy_ == 0)
- {
- return 0;
- }
-
- ACE_MEM_SAP_Node *sbuf =
- this->deliver_strategy_->acquire_buffer (
- ACE_Utils::truncate_cast<ssize_t> (len));
-
- if (sbuf == 0)
- {
- return -1; // Memory buffer not initialized.
- }
-
- ACE_OS::memcpy (sbuf->data (), buf, len);
-
- ///
-
- sbuf->size_ = len;
-
- return this->deliver_strategy_->send_buf (sbuf,
- flags,
- timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_MEM_IO::recv (void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout)
-{
- ACE_TRACE ("ACE_MEM_IO::recv");
-
- size_t count = 0;
-
- size_t buf_len = this->buf_size_ - this->cur_offset_;
-
- if (buf_len == 0)
- {
- ssize_t blen = // Buffer length
- this->fetch_recv_buf (flags, timeout);
-
- if (blen <= 0)
- {
- return blen;
- }
-
- buf_len = this->buf_size_;
- }
-
- size_t length = (len > buf_len ? buf_len : len);
-
- ACE_OS::memcpy ((char *) buf + count,
- (char *) this->recv_buffer_->data () + this->cur_offset_,
- length);
- this->cur_offset_ += ACE_Utils::truncate_cast<ssize_t> (length);
- count += length;
-
- return ACE_Utils::truncate_cast<ssize_t> (count);
-}
-
-ACE_INLINE ssize_t
-ACE_MEM_IO::send (const void *buf, size_t n, int flags)
-{
- ACE_TRACE ("ACE_MEM_IO::send");
- return this->send (buf, n, flags, 0);
-}
-
-// Recv an n byte message from the connected socket.
-
-ACE_INLINE ssize_t
-ACE_MEM_IO::recv (void *buf, size_t n, int flags)
-{
- ACE_TRACE ("ACE_MEM_IO::recv");
- return this->recv (buf, n, flags, 0);
-}
-
-// Send an n byte message to the connected socket.
-
-ACE_INLINE ssize_t
-ACE_MEM_IO::send (const void *buf, size_t n)
-{
- ACE_TRACE ("ACE_MEM_IO::send");
- return this->send (buf, n, 0);
-}
-
-// Recv an n byte message from the connected socket.
-
-ACE_INLINE ssize_t
-ACE_MEM_IO::recv (void *buf, size_t n)
-{
- ACE_TRACE ("ACE_MEM_IO::recv");
-
- return this->recv (buf, n, 0);
-}
-
-ACE_INLINE ssize_t
-ACE_MEM_IO::recv (void *buf,
- size_t len,
- const ACE_Time_Value *timeout)
-{
- ACE_TRACE ("ACE_MEM_IO::recv");
- return this->recv (buf, len, 0, timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_MEM_IO::send (const void *buf,
- size_t len,
- const ACE_Time_Value *timeout)
-{
- ACE_TRACE ("ACE_MEM_IO::send");
- return this->send (buf, len, 0, timeout);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/MEM_SAP.h b/dep/include/ace/MEM_SAP.h
deleted file mode 100644
index e50b14b0853..00000000000
--- a/dep/include/ace/MEM_SAP.h
+++ /dev/null
@@ -1,170 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file MEM_SAP.h
- *
- * $Id: MEM_SAP.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Nanbor Wang <nanbor@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_MEM_SAP_H
-#define ACE_MEM_SAP_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// MEM_SAP requries position independent pointers to work
-#if (ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1)
-
-#include "ace/PI_Malloc.h"
-#include "ace/Malloc_T.h"
-#include "ace/MMAP_Memory_Pool.h"
-#include "ace/Process_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_MEM_SAP;
-class ACE_Reactive_MEM_IO;
-class ACE_MT_MEM_IO;
-class ACE_MEM_IO;
-
-// Internal data structure
-// MEM_SAP uses to queue up
-// data.
-class ACE_MEM_SAP_Node
-{
-public:
-// friend class ACE_MEM_SAP;
-// friend class ACE_Reactive_MEM_IO;
-// friend class ACE_MT_MEM_IO;
-// friend class ACE_MEM_IO;
-
- typedef ACE_Based_Pointer<ACE_MEM_SAP_Node> ACE_MEM_SAP_NODE_PTR;
-
- /// Initialize the node with its capacity.
- ACE_MEM_SAP_Node (size_t cap);
-
- /// Get the size of the data we hold.
- size_t size (void) const;
-
- /// Get the capacity of this block of data.
- size_t capacity (void) const;
-
- /// Get the pointer to the block of data we hold.
- void *data (void);
-
- /// The maximum size of this memory block.
- size_t capacity_;
-
- /// The actualy size used.
- size_t size_;
-
- ACE_MEM_SAP_NODE_PTR next_;
-};
-
-/**
- * @class ACE_MEM_SAP
- *
- * @brief Defines the methods of shared memory management for
- * shared memory transport.
- */
-class ACE_Export ACE_MEM_SAP
-{
-public:
- // = Initialization and termination methods.
-
- typedef ACE_Malloc_T<ACE_MMAP_MEMORY_POOL, ACE_Process_Mutex, ACE_PI_Control_Block> MALLOC_TYPE;
- typedef ACE_MMAP_Memory_Pool_Options MALLOC_OPTIONS;
-
- /// Destructor.
- virtual ~ACE_MEM_SAP (void);
-
- /**
- * Initialize the MEM_SAP object.
- */
- virtual int init (ACE_HANDLE handle,
- const ACE_TCHAR *name,
- MALLOC_OPTIONS *options) = 0;
-
- /**
- * Finalizing the MEM_SAP object. This method doesn't invoke
- * the <remove> method.
- */
- virtual int fini ();
-
- /**
- * Fetch location of next available data into <recv_buffer_>.
- * As this operation read the address of the data off the socket
- * using ACE::recv, @a timeout only applies to ACE::recv.
- */
- virtual ssize_t recv_buf (ACE_MEM_SAP_Node *&buf,
- int flags,
- const ACE_Time_Value *timeout) = 0;
-
- /**
- * Wait to to @a timeout amount of time to send @a buf. If <send>
- * times out a -1 is returned with @c errno == ETIME. If it succeeds
- * the number of bytes sent is returned. */
- virtual ssize_t send_buf (ACE_MEM_SAP_Node *buf,
- int flags,
- const ACE_Time_Value *timeout) = 0;
-
- /// request a buffer of size @a size. Return 0 if the <shm_malloc_> is
- /// not initialized.
- ACE_MEM_SAP_Node *acquire_buffer (const ssize_t size);
-
- /// release a buffer pointed by @a buf. Return -1 if the <shm_malloc_>
- /// is not initialized.
- int release_buffer (ACE_MEM_SAP_Node *buf);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- // = Class initializing methods to create/connect to a shared memory pool.
-
- /**
- * Create a new shm_malloc object. Return 0 if succeed and -1
- * otherwise. This method should only be called from an acceptor
- * class that wants to create a new memory pool for inter process
- * communication.
- */
- int create_shm_malloc (const ACE_TCHAR *name,
- MALLOC_OPTIONS *options);
-
- /// Close down the share memory pool. Clean up the
- /// mmap file if we are the last one using it.
- int close_shm_malloc (void);
-
- ACE_HANDLE handle_;
-
- /// Data exchange channel.
- MALLOC_TYPE *shm_malloc_;
-
- /// Constructor. Prevent this class from being instantiated.
- ACE_MEM_SAP (void);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/MEM_SAP.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1 */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SOCK_IO_H */
-
diff --git a/dep/include/ace/MEM_SAP.inl b/dep/include/ace/MEM_SAP.inl
deleted file mode 100644
index 94339ac2d78..00000000000
--- a/dep/include/ace/MEM_SAP.inl
+++ /dev/null
@@ -1,63 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: MEM_SAP.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/RW_Thread_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_MEM_SAP_Node::ACE_MEM_SAP_Node (size_t cap)
- : capacity_ (cap),
- size_ (0),
- next_ (0)
-{
-}
-
-ACE_INLINE size_t
-ACE_MEM_SAP_Node::size (void) const
-{
- return this->size_;
-}
-
-ACE_INLINE size_t
-ACE_MEM_SAP_Node::capacity (void) const
-{
- return this->capacity_;
-}
-
-ACE_INLINE void *
-ACE_MEM_SAP_Node::data (void)
-{
- return this + 1;
-}
-
-ACE_INLINE ACE_MEM_SAP_Node *
-ACE_MEM_SAP::acquire_buffer (const ssize_t size)
-{
- ACE_TRACE ("ACE_MEM_SAP::acquire_buffer");
- if (this->shm_malloc_ == 0)
- return 0; // not initialized.
-
- ACE_MEM_SAP_Node *buf = 0;
-
- ACE_NEW_MALLOC_RETURN (buf,
- static_cast<ACE_MEM_SAP_Node *>
- (this->shm_malloc_->malloc (sizeof (ACE_MEM_SAP_Node) + size)),
- ACE_MEM_SAP_Node (size),
- 0);
- return buf;
-}
-
-ACE_INLINE int
-ACE_MEM_SAP::release_buffer (ACE_MEM_SAP_Node *buf)
-{
- ACE_TRACE ("ACE_MEM_SAP::release_buffer");
- if (this->shm_malloc_ == 0)
- return -1; // not initialized.
-
- this->shm_malloc_->free (buf);
- return 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/MEM_Stream.h b/dep/include/ace/MEM_Stream.h
deleted file mode 100644
index 0a50cabfe94..00000000000
--- a/dep/include/ace/MEM_Stream.h
+++ /dev/null
@@ -1,158 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file MEM_Stream.h
- *
- * $Id: MEM_Stream.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Nanbor Wang <nanbor@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_MEM_STREAM_H
-#define ACE_MEM_STREAM_H
-#include /**/ "ace/pre.h"
-
-#include "ace/MEM_IO.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if (ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1)
-
-#include "ace/INET_Addr.h"
-
-#if !defined (ACE_MEM_STREAM_MIN_BUFFER)
-# define ACE_MEM_STREAM_MIN_BUFFER 4096
-#endif /* ACE_MEM_STREAM_MIN_BUFFER */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_MEM_Acceptor;
-class ACE_MEM_Connector;
-
-/**
- * @class ACE_MEM_Stream
- *
- * @brief Defines the methods in the ACE_MEM_Stream abstraction.
- *
- * This adds additional wrapper methods atop the ACE_MEM_IO
- * class. Notice that ACE_MEM_Stream can only send messages no bigger
- * than the underlying MMAP file size minus sizeof (ACE_MEM_SAP_Node).
- * The size of the MMAP file is default to ACE_MEM_STREAM_MIN_BUFFER.
- * (Define above in this file, to 4096 bytes.)
- * If you need to increase the size of allowable message
- * ACE_MEM_Stream can handle, you can set it to either
- * @c ACE_MEM_Acceptor::malloc_options(). minimal_bytes_
- * @c ACE_MEM_Acceptor::init_buffer_size (size_t size);
- * before establishing a connection.
- */
-class ACE_Export ACE_MEM_Stream : public ACE_MEM_IO
-{
-public:
-
- friend class ACE_MEM_Acceptor;
- friend class ACE_MEM_Connector;
-
- // Initialization and termination methods.
- /// Constructor.
- ACE_MEM_Stream (void);
-
- /// Constructor (sets the underlying ACE_HANDLE with <h>).
- ACE_MEM_Stream (ACE_HANDLE h);
-
- /// Destructor.
- ~ACE_MEM_Stream (void);
-
- //= The following two methods use write and read system calls.
- /// Send n bytes, keep trying until n are sent.
- /// Recv n bytes, keep trying until n are received.
- ssize_t send_n (const void *buf, size_t n);
- ssize_t recv_n (void *buf, size_t n);
-
- // = The following two methods use the send and recv system calls.
- /// Send n bytes, keep trying until n are sent.
- /// Recv n bytes, keep trying until n are received.
- ssize_t send_n (const void *buf, size_t n, int flags);
- ssize_t recv_n (void *buf, size_t n, int flags);
-
-#if 0
- /**
- * Try to send exactly @a len bytes into @a buf from <handle> (uses
- * the <send> call). If <send> blocks for longer than @a timeout the
- * number of bytes actually sent is returned with @c errno == ETIME.
- * If a timeout does not occur, <send_n> return @a len (i.e., the
- * number of bytes requested to be sent).
- */
- ssize_t send_n (const void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout);
-
- /**
- * Try to recv exactly @a len bytes into @a buf from <handle> (uses
- * the <ACE::recv_n> call). The ACE_Time_Value indicates how long
- * to blocking trying to receive. If @a timeout == 0, the caller
- * will block until action is possible, else will wait until the
- * relative time specified in *@a timeout elapses). If <recv> blocks
- * for longer than @a timeout the number of bytes actually read is
- * returned with @c errno == ETIME. If a timeout does not occur,
- * <recv_n> return @a len (i.e., the number of bytes requested to be
- * read).
- */
- ssize_t recv_n (void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout);
-
- /**
- * Send an <iovec> of size @a n to the connected socket (uses
- * <ACE::sendv_n>). Will block until all bytes are sent or an error
- * occurs.
- */
- ssize_t sendv_n (const iovec iov[],
- size_t n) const;
-
- /// Receive an <iovec> of size @a n to the connected socket.
- ssize_t recvv_n (iovec iov[],
- size_t n) const;
-#endif /* 0 */
-
- // = Selectively close endpoints.
-
- /// Close down the reader.
- int close_reader (void);
-
- /// Close down the writer.
- int close_writer (void);
-
- /**
- * Close down the socket (we need this to make things work correctly
- * on Win32, which requires use to do a <close_writer> before doing
- * the close to avoid losing data).
- */
- int close (void);
-
- // = Meta-type info
- typedef ACE_Addr PEER_ADDR;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/MEM_Stream.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1 */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_MEM_STREAM_H */
-
diff --git a/dep/include/ace/MEM_Stream.inl b/dep/include/ace/MEM_Stream.inl
deleted file mode 100644
index 1e965aff1b5..00000000000
--- a/dep/include/ace/MEM_Stream.inl
+++ /dev/null
@@ -1,179 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: MEM_Stream.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/MEM_Stream.h"
-#include "ace/OS_NS_sys_socket.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_MEM_Stream::ACE_MEM_Stream (void)
-{
- // ACE_TRACE ("ACE_MEM_Stream::ACE_MEM_Stream");
-}
-
-ACE_INLINE
-ACE_MEM_Stream::ACE_MEM_Stream (ACE_HANDLE h)
-{
- // ACE_TRACE ("ACE_MEM_Stream::ACE_MEM_Stream");
- this->set_handle (h);
-}
-
-ACE_INLINE
-ACE_MEM_Stream::~ACE_MEM_Stream (void)
-{
- // ACE_TRACE ("ACE_MEM_Stream::~ACE_MEM_Stream");
-}
-
-ACE_INLINE int
-ACE_MEM_Stream::close_reader (void)
-{
- ACE_TRACE ("ACE_MEM_Stream::close_reader");
- if (this->get_handle () != ACE_INVALID_HANDLE)
- return ACE_OS::shutdown (this->get_handle (), ACE_SHUTDOWN_READ);
- else
- return 0;
-}
-
-// Shut down just the writing end of a ACE_SOCK.
-
-ACE_INLINE int
-ACE_MEM_Stream::close_writer (void)
-{
- ACE_TRACE ("ACE_MEM_Stream::close_writer");
- if (this->get_handle () != ACE_INVALID_HANDLE)
- return ACE_OS::shutdown (this->get_handle (), ACE_SHUTDOWN_WRITE);
- else
- return 0;
-}
-
-ACE_INLINE ssize_t
-ACE_MEM_Stream::send_n (const void *buf, size_t n)
-{
- return this->send (buf, n);
-}
-
-ACE_INLINE ssize_t
-ACE_MEM_Stream::recv_n (void *buf, size_t n)
-{
- return this->recv (buf, n);
-}
-
-ACE_INLINE ssize_t
-ACE_MEM_Stream::send_n (const void *buf, size_t n, int flags)
-{
- return this->send (buf, n, flags);
-}
-
-ACE_INLINE ssize_t
-ACE_MEM_Stream::recv_n (void *buf, size_t n, int flags)
-{
- return this->recv (buf, n, flags);
-}
-
-#if 0
-ACE_INLINE ssize_t
-ACE_MEM_Stream::recv_n (void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_MEM_Stream::recv_n");
- return ACE::recv_n (this->get_handle (),
- buf,
- len,
- flags,
- timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_MEM_Stream::recv_n (void *buf,
- size_t len,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_MEM_Stream::recv_n");
- return ACE::recv_n (this->get_handle (),
- buf,
- len,
- timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_MEM_Stream::recvv_n (iovec iov[],
- size_t n,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_MEM_Stream::recvv_n");
- return ACE::recvv_n (this->get_handle (),
- iov,
- n,
- timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_MEM_Stream::send_n (const void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_MEM_Stream::send_n");
- return ACE::send_n (this->get_handle (),
- buf,
- len,
- flags,
- timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_MEM_Stream::send_n (const void *buf,
- size_t len,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_MEM_Stream::send_n");
- return ACE::send_n (this->get_handle (),
- buf,
- len,
- timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_MEM_Stream::sendv_n (iovec iov[],
- size_t n,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_MEM_Stream::sendv_n");
- return ACE::sendv_n (this->get_handle (),
- iov,
- n,
- timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_MEM_Stream::send_urg (const void *ptr,
- size_t len,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_MEM_Stream::send_urg");
- return ACE::send (this->get_handle (),
- ptr,
- len,
- MSG_OOB,
- timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_MEM_Stream::recv_urg (void *ptr,
- size_t len,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_MEM_Stream::recv_urg");
- return ACE::recv (this->get_handle (),
- ptr,
- len,
- MSG_OOB,
- timeout);
-}
-#endif /* 0 */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/MMAP_Memory_Pool.h b/dep/include/ace/MMAP_Memory_Pool.h
deleted file mode 100644
index aca39757152..00000000000
--- a/dep/include/ace/MMAP_Memory_Pool.h
+++ /dev/null
@@ -1,348 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file MMAP_Memory_Pool.h
- *
- * $Id: MMAP_Memory_Pool.h 81589 2008-05-02 13:07:33Z johnnyw $
- *
- * @author Dougls C. Schmidt <schmidt@cs.wustl.edu>
- * @author Prashant Jain <pjain@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_MMAP_MEMORY_POOL_H
-#define ACE_MMAP_MEMORY_POOL_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/ACE.h"
-#include "ace/Event_Handler.h"
-#include "ace/Sig_Handler.h"
-#include "ace/Mem_Map.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_MMAP_Memory_Pool_Options
- *
- * @brief Helper class for MMAP Memory Pool constructor options.
- *
- * This should be a nested class, but that breaks too many
- * compilers.
- */
-class ACE_Export ACE_MMAP_Memory_Pool_Options
-{
-public:
- enum
- {
- /**
- * The base address from the first call to mmap will be used for subsequent
- * calls to mmap.
- */
- FIRSTCALL_FIXED = 0,
-
- /**
- * The base address specified in base_addr will be used in all calls to
- * mmap.
- */
- ALWAYS_FIXED = 1,
-
- /**
- * The base address will be selected by the OS for each call to mmap.
- * Caution should be used with this mode since a call that requires the
- * backing store to grow may change pointers that are cached by the
- * application.
- */
- NEVER_FIXED = 2
- };
-
- /// Constructor
- ACE_MMAP_Memory_Pool_Options (const void *base_addr = ACE_DEFAULT_BASE_ADDR,
- int use_fixed_addr = ALWAYS_FIXED,
- bool write_each_page = true,
- size_t minimum_bytes = 0,
- u_int flags = 0,
- bool guess_on_fault = true,
- LPSECURITY_ATTRIBUTES sa = 0,
- mode_t file_mode = ACE_DEFAULT_FILE_PERMS,
- bool unique_ = false,
- bool install_signal_handler = true);
-
- /// Base address of the memory-mapped backing store.
- const void *base_addr_;
-
- /**
- * Determines whether we set @c base_addr_ or if mmap(2) selects it
- * FIRSTCALL_FIXED The base address from the first call to mmap
- * will be used for subsequent calls to mmap
- * ALWAYS_FIXED The base address specified in base_addr will be
- * used in all calls to mmap.
- * NEVER_FIXED The base address will be selected by the OS for
- * each call to mmap. Caution should be used with
- * this mode since a call that requires the backing
- * store to grow may change pointers that are
- * cached by the application.
- */
- int use_fixed_addr_;
-
- /// Should each page be written eagerly to avoid surprises later
- /// on?
- bool write_each_page_;
-
- /// What the minimim bytes of the initial segment should be.
- size_t minimum_bytes_;
-
- /// Any special flags that need to be used for @c mmap.
- u_int flags_;
-
- /**
- * Try to remap without knowing the faulting address. This
- * parameter is ignored on platforms that know the faulting address
- * (UNIX with SI_ADDR and Win32).
- */
- bool guess_on_fault_;
-
- /// Pointer to a security attributes object. Only used on NT.
- LPSECURITY_ATTRIBUTES sa_;
-
- /// File mode for mmaped file, if it is created.
- mode_t file_mode_;
-
- /// Do we want an unique backing store name?
- bool unique_;
-
- /// Should we install a signal handler
- bool install_signal_handler_;
-
-private:
- // Prevent copying
- ACE_MMAP_Memory_Pool_Options (const ACE_MMAP_Memory_Pool_Options &);
- ACE_MMAP_Memory_Pool_Options &operator= (const ACE_MMAP_Memory_Pool_Options &);
-};
-
-/**
- * @class ACE_MMAP_Memory_Pool
- *
- * @brief Make a memory pool that is based on @c mmap(2). This
- * implementation allows memory to be shared between processes.
- */
-class ACE_Export ACE_MMAP_Memory_Pool : public ACE_Event_Handler
-{
-public:
- typedef ACE_MMAP_Memory_Pool_Options OPTIONS;
-
- // = Initialization and termination methods.
-
- /// Initialize the pool.
- ACE_MMAP_Memory_Pool (const ACE_TCHAR *backing_store_name = 0,
- const OPTIONS *options = 0);
-
- /// Destructor.
- virtual ~ACE_MMAP_Memory_Pool (void);
-
- /// Ask system for initial chunk of shared memory.
- virtual void *init_acquire (size_t nbytes,
- size_t &rounded_bytes,
- int &first_time);
-
- /**
- * Acquire at least @a nbytes from the memory pool. @a rounded_bytes
- * is the actual number of bytes allocated. Also acquires an
- * internal semaphore that ensures proper serialization of
- * ACE_MMAP_Memory_Pool initialization across processes.
- */
- virtual void *acquire (size_t nbytes,
- size_t &rounded_bytes);
-
- /// Instruct the memory pool to release all of its resources.
- virtual int release (int destroy = 1);
-
- /// Sync the memory region to the backing store starting at
- /// @c this->base_addr_.
- virtual int sync (size_t len, int flags = MS_SYNC);
-
- /// Sync the memory region to the backing store starting at
- /// @c this->base_addr_. Will sync as much as the backing file
- /// allows.
- virtual int sync (int flags = MS_SYNC);
-
- /// Sync the memory region to the backing store starting at @a addr.
- virtual int sync (void *addr, size_t len, int flags = MS_SYNC);
-
- /**
- * Change the protection of the pages of the mapped region to @a prot
- * starting at @c this->base_addr_ up to @a len bytes. If @a len == -1
- * then change protection of all pages in the mapped region.
- */
- virtual int protect (size_t len, int prot = PROT_RDWR);
-
- /**
- * Change the protection of all the pages of the mapped region to @a prot
- * starting at @c this->base_addr_.
- */
- virtual int protect (int prot = PROT_RDWR);
-
- /// Change the protection of the pages of the mapped region to @a prot
- /// starting at @a addr up to @a len bytes.
- virtual int protect (void *addr, size_t len, int prot = PROT_RDWR);
-
-#if defined (ACE_WIN32)
- /**
- * Win32 Structural exception selector. The return value decides
- * how to handle memory pool related structural exceptions. Returns
- * 1, 0, or , -1.
- */
- virtual int seh_selector (void *);
-#endif /* ACE_WIN32 */
-
- /**
- * Try to extend the virtual address space so that @a addr is now
- * covered by the address mapping. The method succeeds and returns
- * 0 if the backing store has adequate memory to cover this address.
- * Otherwise, it returns -1. This method is typically called by a
- * UNIX signal handler for SIGSEGV or a Win32 structured exception
- * when another process has grown the backing store (and its
- * mapping) and our process now incurs a fault because our mapping
- * isn't in range (yet).
- */
- virtual int remap (void *addr);
-
- /// Return the base address of this memory pool.
- virtual void *base_addr (void) const;
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Get reference to underlying ACE_Mem_Map object.
- ACE_Mem_Map const & mmap (void) const;
-
- /// Get reference to underlying ACE_Mem_Map object.
- ACE_Mem_Map & mmap (void);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Implement the algorithm for rounding up the request to an
- /// appropriate chunksize.
- virtual size_t round_up (size_t nbytes);
-
- /// Compute the new @a map_size of the backing store and commit the
- /// memory.
- virtual int commit_backing_store_name (size_t rounded_bytes,
- size_t & map_size);
-
- /// Memory map the file up to @a map_size bytes.
- virtual int map_file (size_t map_size);
-
-#if !defined (ACE_WIN32)
- /**
- * Handle SIGSEGV and SIGBUS signals to remap memory properly. When a
- * process reads or writes to non-mapped memory a signal (SIGBUS or
- * SIGSEGV) will be triggered. At that point, the ACE_Sig_Handler
- * (which is part of the ACE_Reactor) will catch the signal and
- * dispatch the handle_signal() method defined here. If the SIGSEGV
- * signal occurred due to the fact that the mapping wasn't uptodate
- * with respect to the backing store, the handler method below will
- * update the mapping accordingly. When the signal handler returns,
- * the instruction should be restarted and the operation should work.
- */
- virtual int handle_signal (int signum, siginfo_t *, ucontext_t *);
-#endif
-
-#if !defined (ACE_WIN32)
- /// Handles SIGSEGV.
- ACE_Sig_Handler signal_handler_;
-#endif
-
- /// Memory-mapping object.
- ACE_Mem_Map mmap_;
-
- /**
- * Base of mapped region. If this has the value of 0 then the OS is
- * free to select any address to map the file, otherwise this value
- * is what the OS must try to use to mmap the file.
- */
- void *base_addr_;
-
- /// Must we use the @c base_addr_ or can we let mmap(2) select it?
- int use_fixed_addr_;
-
- /// Flags passed into ACE_OS::mmap().
- int flags_;
-
- /// Should we write a byte to each page to forceably allocate memory
- /// for this backing store?
- bool write_each_page_;
-
- /// What the minimum bytes of the initial segment should be.
- size_t minimum_bytes_;
-
- /// Name of the backing store where the shared memory pool is kept.
- ACE_TCHAR backing_store_name_[MAXPATHLEN + 1];
-
- /**
- * Try to remap without knowing the faulting address. This
- * parameter is ignored on platforms that know the faulting address
- * (UNIX with SI_ADDR and Win32).
- */
- bool guess_on_fault_;
-
- /// Security attributes object, only used on NT.
- LPSECURITY_ATTRIBUTES sa_;
-
- /// Protection mode for mmaped file.
- mode_t file_mode_;
-
- /// Should we install a signal handler
- bool install_signal_handler_;
-};
-
-/**
- * @class ACE_Lite_MMAP_Memory_Pool
- *
- * @brief Make a ``lighter-weight'' memory pool based ACE_Mem_Map.
- *
- * This implementation allows memory to be shared between
- * processes. However, unlike the ACE_MMAP_Memory_Pool
- * the @c sync methods are no-ops, which means that we don't pay
- * for the price of flushing the memory to the backing store on
- * every update. Naturally, this trades off increased
- * performance for less reliability if the machine crashes.
- */
-class ACE_Export ACE_Lite_MMAP_Memory_Pool : public ACE_MMAP_Memory_Pool
-{
-public:
- /// Initialize the pool.
- ACE_Lite_MMAP_Memory_Pool (const ACE_TCHAR *backing_store_name = 0,
- const OPTIONS *options = 0);
-
- /// Destructor.
- virtual ~ACE_Lite_MMAP_Memory_Pool (void);
-
- /// Overwrite the default sync behavior with no-op
- virtual int sync (size_t len, int flags = MS_SYNC);
-
- /// Overwrite the default sync behavior with no-op
- virtual int sync (int flags = MS_SYNC);
-
- /// Overwrite the default sync behavior with no-op
- virtual int sync (void *addr, size_t len, int flags = MS_SYNC);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/MMAP_Memory_Pool.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_MMAP_MEMORY_POOL_H */
-
diff --git a/dep/include/ace/MMAP_Memory_Pool.inl b/dep/include/ace/MMAP_Memory_Pool.inl
deleted file mode 100644
index 80df932233b..00000000000
--- a/dep/include/ace/MMAP_Memory_Pool.inl
+++ /dev/null
@@ -1,21 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: MMAP_Memory_Pool.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Mem_Map const &
-ACE_MMAP_Memory_Pool::mmap (void) const
-{
- return mmap_;
-}
-
-ACE_INLINE
-ACE_Mem_Map &
-ACE_MMAP_Memory_Pool::mmap (void)
-{
- return mmap_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Malloc.h b/dep/include/ace/Malloc.h
deleted file mode 100644
index 4fd88802933..00000000000
--- a/dep/include/ace/Malloc.h
+++ /dev/null
@@ -1,394 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Malloc.h
- *
- * $Id: Malloc.h 81796 2008-05-28 13:46:21Z sma $
- *
- * @author Doug Schmidt and Irfan Pyarali
- */
-//==========================================================================
-
-#ifndef ACE_MALLOC_H
-#define ACE_MALLOC_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Log_Msg.h"
-
-#if defined (ACE_HAS_MALLOC_STATS)
-# include "ace/Atomic_Op.h"
-# if defined (ACE_HAS_THREADS)
-# include "ace/Process_Mutex.h"
-# define ACE_PROCESS_MUTEX ACE_Process_Mutex
-# else /* ACE_HAS_THREADS */
-# include "ace/SV_Semaphore_Simple.h"
-# define ACE_PROCESS_MUTEX ACE_SV_Semaphore_Simple
-# endif /* ACE_HAS_THREADS */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-typedef ACE_Atomic_Op<ACE_PROCESS_MUTEX, int> ACE_INT;
-
-/******************************************************************
-
-* Assume that ACE_MALLOC_ALIGN is the number of bytes of the alignment
- of the platform. Usually, this will be 4 on most platforms. Some
- platforms require this to be 8. In any case, this macro should
- always be a 2's power.
-
-* Malloc_Header structure.
-
- Notice that sizeof (ACE_Malloc_Header) must be multiple of
- ACE_MALLOC_ALIGN
-
- +-----------------------------------------+
- |MALLOC_HEADER_PTR *next_block_; |
- | // Points to next free Malloc_Header |
- | // in this chain. |
- +-----------------------------------------+
- |size_t size_; |
- | // Size of buffer associate with |
- | // this Malloc_Header |
- } // The size is in number of |
- | // Malloc_Header (including this one.)|
- +-----------------------------------------+
- |char paddings_[ACE_MALLOC_PADDING_SIZE]; |
- | // Padding array. This purpose |
- | // of this padding array is to adjust |
- | // the sizeof (Malloc_Header) to be |
- | // multiple of ACE_MALLOC_ALIGN. |
- +-----------------------------------------+
-
-* Name_Node
-
- ACE_Malloc allows searching thru it's allocated buffer using names.
- Name_Node is an internal data structure that ACE_Malloc used to
- maintain a linked list that manages this (name, buffer) mappings.
-
- +-----------------------------------------+
- |char *name_; |
- | // Points to a dynamically allocated |
- | // char buffer that holds the name |
- | // of this node. This buffer is |
- | // allocated from using this |
- | // ACE_MALLOC instance that owns this |
- | // Name_Node (so it always points to |
- | // a buffer owned by its Malloc. |
- +-----------------------------------------+
- |char *pointer_; |
- | // Points to the content that <name_> |
- | // referring to. Like <name_>, the |
- | // context always resides within the |
- | // Malloc. |
- +-----------------------------------------+
- |NAME_NODE_PTR next_; |
- +-----------------------------------------+
- |NAME_NODE_PTR prev_; |
- | // Name Node linked list pointers. |
- +-----------------------------------------+
-
-* Control_Block
-
- Only the first ACE_Malloc instance that uses
- the shared memory will initialize the control block because all
- later instances are supposed to share the memory with the first
- instance. The following diagram shows the initial value of a
- Control_Block.
-
- +-----------------------------------------+
- |NAME_NODE_PTR name_head_; |<---- NULL.
- | // Entry point for double-linked list.|
- | // Initialized to NULL pointer to |
- | // indicate an empty list. |
- +-----------------------------------------+
- |MALLOC_HEADER_PTR freep_; |
- | // Pointer to last un-allocated |
- | // malloc_header linked list. |---+
- +-----------------------------------------+ |
- |char lock_name_[MAXNAMELEN]; | |
- | // The global name of the lock. | |
- +-----------------------------------------+ |
- |Malloc_Stats malloc_stats_; | |
- | // (Optional statistic information. | |
- | // Do not exist if | |
- | // ACE_HAS_MALLOC_STATS is not | |
- | // defined. | |
- +-----------------------------------------+ |
- |char align_[CONTROL_BLOCK_ALIGN_BYTES]; | |
- | // | |
- +-----------------------------------------+ |
- |Malloc_Header base_; |<--+
- | // Dummy node used to anchor the |
- | // freelist. |<--+
- | +-------------+ |
- | |next_ |---+
- | +-------------+
- | |size_ |----> 0
- +-----------------------------------------+
-
- The first ACE_Malloc initializes the control block by allocating a
- memory block of size equal to or greater than sizeof (control block)
- (rounded to the closest <rounded_bytes>) and invokes the placement
- new's on to initialize the control block and its internal
- pointers/data structures. If the extra memory (memory after the
- <base_> in the following diagram) is enough to create a
- Malloc_Header chain, one is created and added to the freelist list.
- That is, if the memory size returned by init_acquire() is greater
- than the sizeof Control_Block, the control block is initialized to
- the following diagram:
-
- +-------------------------------------
- |name_head_; |
- +-------------------------------------+
- |MALLOC_HEADER_PTR freep_; |--+
- +-------------------------------------+ |
- |lock_name_[...]; | |
- +-------------------------------------+ |
- |malloc_stats_; (Optional) | |
- +-------------------------------------+ |
- |align_[...]; | |
- +-------------------------------------+ |
- |Malloc_Header base_; |<-+
- | +-----------+
- | |next_; |--+
- | +-----------+ |
- | |size_ = 0; | |
- +=====================================+ |
- |Malloc_Header base_; |<-+
- | +-----------+
- | |next_; |
- | +-----------+
- | |size_ = 3; |
- +-------------------------------------+
- |Malloc_Header base_; |
- | +-----------+
- | (Uninitialized) |next_; |
- | +-----------+
- | |size_; |
- +-------------------------------------+
- |Malloc_Header base_; |
- | +-----------+
- | (Uninitialized) |next_; |
- | +-----------+
- | |size_; |
- +-------------------------------------+
-
-***********************************************************/
-
-/// This keeps stats on the usage of the memory manager.
-struct ACE_Export ACE_Malloc_Stats
-{
- ACE_Malloc_Stats (void);
- void dump (void) const;
-
- /// Coarse-grained unit of allocation.
- ACE_INT nchunks_;
-
- /// Fine-grained unit of allocation.
- ACE_INT nblocks_;
-
- /// Number of blocks in use
- ACE_INT ninuse_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# define ACE_MALLOC_STATS(X) X
-#else
-# define ACE_MALLOC_STATS(X)
-#endif /* ACE_HAS_MALLOC_STATS */
-
-#if !defined (ACE_MALLOC_PADDING)
-// ACE_MALLOC_PADDING allows you to insure that allocated regions are
-// at least <ACE_MALLOC_PADDING> bytes long. It is especially useful
-// when you want areas to be at least a page long, or 32K long, or
-// something like that.
-
-# define ACE_MALLOC_PADDING 1
-#endif /* ACE_MALLOC_PADDING */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-union ACE_max_align_info
-{
- int (*i)();
- void* p;
- long l;
- double d;
-};
-
-#if !defined (ACE_MALLOC_ALIGN)
-// Align the malloc header size to a multiple of a double.
-# define ACE_MALLOC_ALIGN (sizeof (ACE_max_align_info))
-#endif /* ACE_MALLOC_ALIGN */
-
-#if !defined ACE_MALLOC_ROUNDUP
-# define ACE_MALLOC_ROUNDUP(X, Y) (((X) + ((Y) - 1)) & ~((Y) - 1))
-#endif
-
-// ACE_MALLOC_HEADER_SIZE is the normalized malloc header size.
-#define ACE_MALLOC_HEADER_SIZE ACE_MALLOC_ROUNDUP(ACE_MALLOC_PADDING, ACE_MALLOC_ALIGN)
-
-/**
- * @class ACE_Control_Block
- *
- * @brief This information is stored in memory allocated by the <Memory_Pool>.
- *
- * This class defines the "old" control block class for use in
- * ACE_Malloc_T. This control block implementation is
- * considerable more efficient than the "position independent"
- * one below (ACE_PI_Control_Block) but if you are going to use
- * it to construct a ACE_Malloc_T and access the memory from
- * several different processes, you must "map" the underlying
- * memory pool to the same address.
- */
-class ACE_Export ACE_Control_Block
-{
-public:
-
- /**
- * @class ACE_Malloc_Header
- *
- * @brief This is the control block header. It's used by <ACE_Malloc>
- * to keep track of each chunk of data when it's in the free
- * list or in use.
- */
- class ACE_Export ACE_Malloc_Header
- {
- public:
- ACE_Malloc_Header (void);
-
- /// Points to next block if on free list.
- ACE_Malloc_Header *next_block_;
-
- /// Initialize a malloc header pointer.
- static void init_ptr (ACE_Malloc_Header **ptr,
- ACE_Malloc_Header *init,
- void *base_addr);
-
- /// Size of this header control block.
- size_t size_;
-
-# if !defined (ACE_MALLOC_PADDING_SIZE)
-# define ACE_MALLOC_PADDING_SIZE ACE_MALLOC_ROUNDUP (ACE_MALLOC_HEADER_SIZE + sizeof (ACE_Malloc_Header*) + sizeof (size_t), ACE_MALLOC_ALIGN) - (sizeof (ACE_Malloc_Header*) + sizeof (size_t))
-# endif /* !ACE_MALLOC_PADDING_SIZE */
- char padding_[(ACE_MALLOC_PADDING_SIZE) ? ACE_MALLOC_PADDING_SIZE : ACE_MALLOC_ALIGN];
-
- /// Dump the state of the object.
- void dump (void) const;
- };
-
- /**
- * @class ACE_Name_Node
- *
- * @brief This class supports "named memory regions" within ACE_Malloc.
- *
- * Internally, the named memory regions are stored as a
- * doubly-linked list within the @c Memory_Pool. This makes
- * it easy to iterate over the items in the list in both FIFO
- * and LIFO order.
- */
- class ACE_Export ACE_Name_Node
- {
- public:
- // = Initialization methods.
- /// Constructor.
- ACE_Name_Node (const char *name,
- char *name_ptr,
- char *pointer,
- ACE_Name_Node *head);
-
- /// Constructor.
- ACE_Name_Node (void);
-
- /// Constructor.
- ~ACE_Name_Node (void);
-
- /// Initialize a name node pointer.
- static void init_ptr (ACE_Name_Node **ptr,
- ACE_Name_Node *init,
- void *base_addr);
-
- /// Return a pointer to the name of this node.
- const char *name (void) const;
-
- /// Name of the Node.
- char *name_;
-
- /// Pointer to the contents.
- char *pointer_;
-
- /// Pointer to the next node in the doubly-linked list.
- ACE_Name_Node *next_;
-
- /// Pointer to the previous node in the doubly-linked list.
- ACE_Name_Node *prev_;
-
- /// Dump the state of the object.
- void dump (void) const;
- private:
- /// Copy constructor.
- ACE_Name_Node (const ACE_Name_Node &);
- };
-
- /// Print out a bunch of size info for debugging.
- static void print_alignment_info (void);
-
- /// Reference counter.
- int ref_counter_;
-
- /// Head of the linked list of Name Nodes.
- ACE_Name_Node *name_head_;
-
- /// Current head of the freelist.
- ACE_Malloc_Header *freep_;
-
- /// Name of lock thats ensures mutual exclusion.
- char lock_name_[MAXNAMELEN];
-
-#if defined (ACE_HAS_MALLOC_STATS)
- /// Keep statistics about ACE_Malloc state and performance.
- ACE_Malloc_Stats malloc_stats_;
-#define ACE_CONTROL_BLOCK_SIZE ((int)(sizeof (ACE_Name_Node*) \
- + sizeof (ACE_Malloc_Header*) \
- + sizeof (int) \
- + MAXNAMELEN \
- + sizeof (ACE_Malloc_Stats)))
-#else
-#define ACE_CONTROL_BLOCK_SIZE ((int)(sizeof (ACE_Name_Node*) \
- + sizeof (ACE_Malloc_Header*) \
- + sizeof (int) \
- + MAXNAMELEN))
-#endif /* ACE_HAS_MALLOC_STATS */
-
-# if !defined (ACE_CONTROL_BLOCK_ALIGN_BYTES)
-# define ACE_CONTROL_BLOCK_ALIGN_BYTES \
- ACE_MALLOC_ROUNDUP (ACE_CONTROL_BLOCK_SIZE, ACE_MALLOC_ALIGN) - ACE_CONTROL_BLOCK_SIZE
-# endif /* !ACE_CONTROL_BLOCK_ALIGN_BYTES */
- char align_[(ACE_CONTROL_BLOCK_ALIGN_BYTES) ? ACE_CONTROL_BLOCK_ALIGN_BYTES : ACE_MALLOC_ALIGN];
-
- /// Dummy node used to anchor the freelist. This needs to come last...
- ACE_Malloc_Header base_;
-
- /// Dump the state of the object.
- void dump (void) const;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Malloc.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_MALLOC_H */
-
diff --git a/dep/include/ace/Malloc.inl b/dep/include/ace/Malloc.inl
deleted file mode 100644
index caf48684f41..00000000000
--- a/dep/include/ace/Malloc.inl
+++ /dev/null
@@ -1,26 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Malloc.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Control_Block::ACE_Name_Node::~ACE_Name_Node (void)
-{
-}
-
-ACE_INLINE void
-ACE_Control_Block::ACE_Malloc_Header::init_ptr
- (ACE_Malloc_Header **ptr, ACE_Malloc_Header *init, void *)
-{
- *ptr = init;
-}
-
-ACE_INLINE void
-ACE_Control_Block::ACE_Name_Node::init_ptr
- (ACE_Name_Node **ptr, ACE_Name_Node *init, void *)
-{
- *ptr = init;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Malloc_Allocator.h b/dep/include/ace/Malloc_Allocator.h
deleted file mode 100644
index bd01df8e6a2..00000000000
--- a/dep/include/ace/Malloc_Allocator.h
+++ /dev/null
@@ -1,147 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Malloc_Allocator.h
- *
- * $Id: Malloc_Allocator.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Based on code that formerly existed in another ACE file.
- */
-//==========================================================================
-
-#ifndef ACE_MALLOC_ALLOCATOR_H
-#define ACE_MALLOC_ALLOCATOR_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Malloc_Base.h"
-
-#if defined (ACE_HAS_MALLOC_STATS)
-#if defined (ACE_HAS_THREADS)
-#include "ace/Process_Mutex.h"
-#define ACE_PROCESS_MUTEX ACE_Process_Mutex
-#else
-#include "ace/SV_Semaphore_Simple.h"
-#define ACE_PROCESS_MUTEX ACE_SV_Semaphore_Simple
-#endif /* ACE_HAS_THREADS */
-
-#endif /* ACE_HAS_MALLOC_STATS */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_New_Allocator
- *
- * @brief Defines a class that provided a simple implementation of
- * memory allocation.
- *
- * This class uses the new/delete operators to allocate and free up
- * memory. Please note that the only methods that are supported are
- * <malloc>, <calloc>, and <free>. All other methods are no-ops that
- * return -1 and set @c errno to <ENOTSUP>. If you require this
- * functionality, please use: ACE_Allocator_Adapter <ACE_Malloc
- * <ACE_LOCAL_MEMORY_POOL, MUTEX> >, which will allow you to use the
- * added functionality of bind/find/etc. while using the new/delete
- * operators.
- */
-class ACE_Export ACE_New_Allocator : public ACE_Allocator
-{
-public:
- /// These methods are defined.
- virtual void *malloc (size_t nbytes);
- virtual void *calloc (size_t nbytes, char initial_value = '\0');
- virtual void *calloc (size_t n_elem, size_t elem_size, char initial_value = '\0');
- virtual void free (void *ptr);
-
- /// These methods are no-ops.
- virtual int remove (void);
- virtual int bind (const char *name, void *pointer, int duplicates = 0);
- virtual int trybind (const char *name, void *&pointer);
- virtual int find (const char *name, void *&pointer);
- virtual int find (const char *name);
- virtual int unbind (const char *name);
- virtual int unbind (const char *name, void *&pointer);
- virtual int sync (ssize_t len = -1, int flags = MS_SYNC);
- virtual int sync (void *addr, size_t len, int flags = MS_SYNC);
- virtual int protect (ssize_t len = -1, int prot = PROT_RDWR);
- virtual int protect (void *addr, size_t len, int prot = PROT_RDWR);
-#if defined (ACE_HAS_MALLOC_STATS)
- virtual void print_stats (void) const;
-#endif /* ACE_HAS_MALLOC_STATS */
- virtual void dump (void) const;
-
-private:
- // DO NOT ADD ANY STATE (DATA MEMBERS) TO THIS CLASS!!!! See the
- // <ACE_Allocator::instance> implementation for explanation.
-};
-
-/**
- * @class ACE_Static_Allocator_Base
- *
- * @brief Defines a class that provided a highly optimized memory
- * management scheme for allocating memory statically.
- *
- * This class manages a fixed-size <POOL_SIZE> of memory. Every
- * time <malloc>/<calloc> is called, it simply moves an internal
- * index forward and returns a pointer to the requested chunk.
- * All memory is allocated statically (typically via the
- * ACE_Static_Allocator template) and <free> is a no-op. This
- * behavior is useful for use-cases where all the memory
- * allocation needs are known in advance and no deletions ever
- * occur.
- */
-class ACE_Export ACE_Static_Allocator_Base : public ACE_Allocator
-{
-public:
- ACE_Static_Allocator_Base (char *buffer, size_t size);
- virtual void *malloc (size_t nbytes);
- virtual void *calloc (size_t nbytes, char initial_value = '\0');
- virtual void *calloc (size_t n_elem, size_t elem_size, char initial_value = '\0');
- virtual void free (void *ptr);
- virtual int remove (void);
- virtual int bind (const char *name, void *pointer, int duplicates = 0);
- virtual int trybind (const char *name, void *&pointer);
- virtual int find (const char *name, void *&pointer);
- virtual int find (const char *name);
- virtual int unbind (const char *name);
- virtual int unbind (const char *name, void *&pointer);
- virtual int sync (ssize_t len = -1, int flags = MS_SYNC);
- virtual int sync (void *addr, size_t len, int flags = MS_SYNC);
- virtual int protect (ssize_t len = -1, int prot = PROT_RDWR);
- virtual int protect (void *addr, size_t len, int prot = PROT_RDWR);
-#if defined (ACE_HAS_MALLOC_STATS)
- virtual void print_stats (void) const;
-#endif /* ACE_HAS_MALLOC_STATS */
- virtual void dump (void) const;
-
-protected:
- /// Don't allow direct instantiations of this class.
- ACE_Static_Allocator_Base (void);
-
- /// Pointer to the buffer.
- char *buffer_;
-
- /// Size of the buffer.
- size_t size_;
-
- /// Pointer to the current offset in the <buffer_>.
- size_t offset_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Malloc_Allocator.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* MALLOC_ALLOCATOR_H */
-
diff --git a/dep/include/ace/Malloc_Allocator.inl b/dep/include/ace/Malloc_Allocator.inl
deleted file mode 100644
index 050d7353894..00000000000
--- a/dep/include/ace/Malloc_Allocator.inl
+++ /dev/null
@@ -1,16 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Malloc_Allocator.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Static_Allocator_Base::ACE_Static_Allocator_Base (char * buffer,
- size_t size)
- : buffer_ (buffer),
- size_ (size),
- offset_ (0)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Malloc_Base.h b/dep/include/ace/Malloc_Base.h
deleted file mode 100644
index 42feebbc41f..00000000000
--- a/dep/include/ace/Malloc_Base.h
+++ /dev/null
@@ -1,168 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Malloc_Base.h
- *
- * $Id: Malloc_Base.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt and Irfan Pyarali
- */
-//=============================================================================
-
-#ifndef ACE_MALLOC_BASE_H
-#define ACE_MALLOC_BASE_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-#include "ace/os_include/sys/os_mman.h"
-#include "ace/os_include/sys/os_types.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// The definition of this class is located in Malloc.cpp.
-
-/**
- * @class ACE_Allocator
- *
- * @brief Interface for a dynamic memory allocator that uses inheritance
- * and dynamic binding to provide extensible mechanisms for
- * allocating and deallocating memory.
- */
-class ACE_Export ACE_Allocator
-{
-public:
-
- /// Unsigned integer type used for specifying memory block lengths.
- typedef size_t size_type;
-
- // = Memory Management
-
- /// Get pointer to a default ACE_Allocator.
- static ACE_Allocator *instance (void);
-
- /// Set pointer to a process-wide ACE_Allocator and return existing
- /// pointer.
- static ACE_Allocator *instance (ACE_Allocator *);
-
- /// Delete the dynamically allocated Singleton
- static void close_singleton (void);
-
- /// "No-op" constructor (needed to make certain compilers happy).
- ACE_Allocator (void);
-
- /// Virtual destructor
- virtual ~ACE_Allocator (void);
-
- /// Allocate @a nbytes, but don't give them any initial value.
- virtual void *malloc (size_type nbytes) = 0;
-
- /// Allocate @a nbytes, giving them @a initial_value.
- virtual void *calloc (size_type nbytes, char initial_value = '\0') = 0;
-
- /// Allocate <n_elem> each of size @a elem_size, giving them
- /// @a initial_value.
- virtual void *calloc (size_type n_elem,
- size_type elem_size,
- char initial_value = '\0') = 0;
-
- /// Free <ptr> (must have been allocated by <ACE_Allocator::malloc>).
- virtual void free (void *ptr) = 0;
-
- /// Remove any resources associated with this memory manager.
- virtual int remove (void) = 0;
-
- // = Map manager like functions
-
- /**
- * Associate @a name with @a pointer. If @a duplicates == 0 then do
- * not allow duplicate @a name/@a pointer associations, else if
- * @a duplicates != 0 then allow duplicate @a name/@a pointer
- * assocations. Returns 0 if successfully binds (1) a previously
- * unbound @a name or (2) @a duplicates != 0, returns 1 if trying to
- * bind a previously bound @a name and @a duplicates == 0, else
- * returns -1 if a resource failure occurs.
- */
- virtual int bind (const char *name, void *pointer, int duplicates = 0) = 0;
-
- /**
- * Associate @a name with @a pointer. Does not allow duplicate
- * @a name/@a pointer associations. Returns 0 if successfully binds
- * (1) a previously unbound @a name, 1 if trying to bind a previously
- * bound @a name, or returns -1 if a resource failure occurs. When
- * this call returns @a pointer's value will always reference the
- * void * that @a name is associated with. Thus, if the caller needs
- * to use @a pointer (e.g., to free it) a copy must be maintained by
- * the caller.
- */
- virtual int trybind (const char *name, void *&pointer) = 0;
-
- /// Locate @a name and pass out parameter via pointer. If found,
- /// return 0, returns -1 if failure occurs.
- virtual int find (const char *name, void *&pointer) = 0;
-
- /// Returns 0 if the name is in the mapping. -1, otherwise.
- virtual int find (const char *name) = 0;
-
- /// Unbind (remove) the name from the map. Don't return the pointer
- /// to the caller
- virtual int unbind (const char *name) = 0;
-
- /// Break any association of name. Returns the value of pointer in
- /// case the caller needs to deallocate memory.
- virtual int unbind (const char *name, void *&pointer) = 0;
-
- // = Protection and "sync" (i.e., flushing memory to persistent
- // backing store).
-
- /**
- * Sync @a len bytes of the memory region to the backing store
- * starting at @c this->base_addr_. If @a len == -1 then sync the
- * whole region.
- */
- virtual int sync (ssize_t len = -1, int flags = MS_SYNC) = 0;
-
- /// Sync @a len bytes of the memory region to the backing store
- /// starting at @a addr.
- virtual int sync (void *addr, size_type len, int flags = MS_SYNC) = 0;
-
- /**
- * Change the protection of the pages of the mapped region to @a prot
- * starting at <this->base_addr_> up to @a len bytes. If @a len == -1
- * then change protection of all pages in the mapped region.
- */
- virtual int protect (ssize_t len = -1, int prot = PROT_RDWR) = 0;
-
- /// Change the protection of the pages of the mapped region to @a prot
- /// starting at @a addr up to @a len bytes.
- virtual int protect (void *addr, size_type len, int prot = PROT_RDWR) = 0;
-
-#if defined (ACE_HAS_MALLOC_STATS)
- /// Dump statistics of how malloc is behaving.
- virtual void print_stats (void) const = 0;
-#endif /* ACE_HAS_MALLOC_STATS */
-
- /// Dump the state of the object.
- virtual void dump (void) const = 0;
-private:
- // DO NOT ADD ANY STATE (DATA MEMBERS) TO THIS CLASS!!!! See the
- // <ACE_Allocator::instance> implementation for explanation.
-
- /// Pointer to a process-wide ACE_Allocator instance.
- static ACE_Allocator *allocator_;
-
- /// Must delete the <allocator_> if non-0.
- static int delete_allocator_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_MALLOC_BASE_H */
-
diff --git a/dep/include/ace/Malloc_T.h b/dep/include/ace/Malloc_T.h
deleted file mode 100644
index ade2e37f9e4..00000000000
--- a/dep/include/ace/Malloc_T.h
+++ /dev/null
@@ -1,932 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Malloc_T.h
- *
- * $Id: Malloc_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu> and
- * Irfan Pyarali <irfan@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_MALLOC_T_H
-#define ACE_MALLOC_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Malloc.h" /* Need ACE_Control_Block */
-#include "ace/Malloc_Base.h" /* Need ACE_Allocator */
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Malloc_Allocator.h"
-#include "ace/Free_List.h"
-#include "ace/Guard_T.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Cached_Mem_Pool_Node
- *
- * @brief ACE_Cached_Mem_Pool_Node keeps unused memory within a free
- * list.
- *
- * The length of a piece of unused memory must be greater than
- * sizeof (void*). This makes sense because we'll waste even
- * more memory if we keep them in a separate data structure.
- * This class should really be placed within the ACE_Cached_Allocator
- * class but this can't be done due to C++ compiler portability problems.
- */
-template <class T>
-class ACE_Cached_Mem_Pool_Node
-{
-public:
- /// Return the address of free memory.
- T *addr (void);
-
- /// Get the next ACE_Cached_Mem_Pool_Node in a list.
- ACE_Cached_Mem_Pool_Node<T> *get_next (void);
-
- /// Set the next ACE_Cached_Mem_Pool_Node.
- void set_next (ACE_Cached_Mem_Pool_Node<T> *ptr);
-
-private:
- /**
- * Since memory is not used when placed in a free list,
- * we can use it to maintain the structure of free list.
- * I was using union to hide the fact of overlapping memory
- * usage. However, that cause problem on MSVC. So, I now turn
- * back to hack this with casting.
- */
- ACE_Cached_Mem_Pool_Node<T> *next_;
-};
-
-/**
- * @class ACE_Cached_Allocator
- *
- * @brief A fixed-size allocator that caches items for quicker access.
- *
- * This class enables caching of dynamically allocated,
- * fixed-sized classes. Notice that the <code>sizeof (TYPE)</code>
- * must be greater than or equal to <code> sizeof (void*) </code> for
- * this to work properly.
- *
- * This class can be configured flexibly with different types of
- * ACE_LOCK strategies that support the @a ACE_Thread_Mutex,
- * @a ACE_Thread_Semaphore, @a ACE_Process_Mutex, and @a
- * ACE_Process_Semaphore constructor API.
- *
- * @sa ACE_Dynamic_Cached_Allocator
- */
-template <class T, class ACE_LOCK>
-class ACE_Cached_Allocator : public ACE_New_Allocator
-{
-public:
- /// Create a cached memory pool with @a n_chunks chunks
- /// each with sizeof (TYPE) size.
- ACE_Cached_Allocator (size_t n_chunks);
-
- /// Clear things up.
- ~ACE_Cached_Allocator (void);
-
- /**
- * Get a chunk of memory from free list cache. Note that @a nbytes is
- * only checked to make sure that it's less or equal to sizeof T, and is
- * otherwise ignored since @c malloc() always returns a pointer to an
- * item of sizeof (T).
- */
- void *malloc (size_t nbytes = sizeof (T));
-
- /**
- * Get a chunk of memory from free list cache, giving them
- * @a initial_value. Note that @a nbytes is only checked to make sure
- * that it's less or equal to sizeof T, and is otherwise ignored since
- * calloc() always returns a pointer to an item of sizeof (T).
- */
- virtual void *calloc (size_t nbytes,
- char initial_value = '\0');
-
- /// This method is a no-op and just returns 0 since the free list
- /// only works with fixed sized entities.
- virtual void *calloc (size_t n_elem,
- size_t elem_size,
- char initial_value = '\0');
-
- /// Return a chunk of memory back to free list cache.
- void free (void *);
-
- /// Return the number of chunks available in the cache.
- size_t pool_depth (void);
-
-private:
- /// Remember how we allocate the memory in the first place so
- /// we can clear things up later.
- char *pool_;
-
- /// Maintain a cached memory free list.
- ACE_Locked_Free_List<ACE_Cached_Mem_Pool_Node<T>, ACE_LOCK> free_list_;
-};
-
-/**
- * @class ACE_Dynamic_Cached_Allocator
- *
- * @brief A size-based allocator that caches blocks for quicker access.
- *
- * This class enables caching of dynamically allocated,
- * fixed-size chunks. Notice that the <code>chunk_size</code>
- * must be greater than or equal to <code> sizeof (void*) </code> for
- * this to work properly.
- *
- * This class can be configured flexibly with different types of
- * ACE_LOCK strategies that support the @a ACE_Thread_Mutex and @a
- * ACE_Process_Mutex constructor API.
- *
- * @sa ACE_Cached_Allocator
- */
-template <class ACE_LOCK>
-class ACE_Dynamic_Cached_Allocator : public ACE_New_Allocator
-{
-public:
- /// Create a cached memory pool with @a n_chunks chunks
- /// each with @a chunk_size size.
- ACE_Dynamic_Cached_Allocator (size_t n_chunks, size_t chunk_size);
-
- /// Clear things up.
- ~ACE_Dynamic_Cached_Allocator (void);
-
- /**
- * Get a chunk of memory from free list cache. Note that @a nbytes is
- * only checked to make sure that it's less or equal to @a chunk_size,
- * and is otherwise ignored since malloc() always returns a pointer to an
- * item of @a chunk_size size.
- */
- void *malloc (size_t nbytes = 0);
-
- /**
- * Get a chunk of memory from free list cache, giving them
- * @a initial_value. Note that @a nbytes is only checked to make sure
- * that it's less or equal to @a chunk_size, and is otherwise ignored
- * since calloc() always returns a pointer to an item of @a chunk_size.
- */
- virtual void *calloc (size_t nbytes,
- char initial_value = '\0');
-
- /// This method is a no-op and just returns 0 since the free list
- /// only works with fixed sized entities.
- virtual void *calloc (size_t n_elem,
- size_t elem_size,
- char initial_value = '\0');
-
- /// Return a chunk of memory back to free list cache.
- void free (void *);
-
- /// Return the number of chunks available in the cache.
- size_t pool_depth (void);
-
-private:
- /// Remember how we allocate the memory in the first place so
- /// we can clear things up later.
- char *pool_;
-
- /// Maintain a cached memory free list. We use @c char as template
- /// parameter, although sizeof(char) is usually less than
- /// sizeof(void*). Really important is that @a chunk_size
- /// must be greater or equal to sizeof(void*).
- ACE_Locked_Free_List<ACE_Cached_Mem_Pool_Node<char>, ACE_LOCK> free_list_;
-
- /// Remember the size of our chunks.
- size_t chunk_size_;
-};
-
-/**
- * @class ACE_Allocator_Adapter
- *
- * @brief This class is an adapter that allows the ACE_Allocator to
- * use the ACE_Malloc class below.
- */
-template <class MALLOC>
-class ACE_Allocator_Adapter : public ACE_Allocator
-{
-public:
- // Trait.
- typedef MALLOC ALLOCATOR;
-
-#if defined (ACE_HAS_TEMPLATE_TYPEDEFS)
- // The following code will break C++ compilers that don't support
- // template typedefs correctly.
- typedef const typename MALLOC::MEMORY_POOL_OPTIONS *MEMORY_POOL_OPTIONS;
-#else
- typedef const void *MEMORY_POOL_OPTIONS;
-#endif /* ACE_HAS_TEMPLATE_TYPEDEFS */
-
- // = Initialization.
- /**
- * Note that @a pool_name should be located in
- * a directory with the appropriate visibility and protection so
- * that all processes that need to access it can do so. */
- ACE_Allocator_Adapter (const char *pool_name = 0);
-
- /**
- * Note that @a pool_name should be located in
- * a directory with the appropriate visibility and protection so
- * that all processes that need to access it can do so.
- * This constructor must be inline to avoid bugs with some C++
- * compilers. */
- ACE_Allocator_Adapter (const char *pool_name,
- const char *lock_name,
- MEMORY_POOL_OPTIONS options = 0)
- : allocator_ (ACE_TEXT_CHAR_TO_TCHAR (pool_name),
- ACE_TEXT_CHAR_TO_TCHAR (lock_name),
- options)
- {
- ACE_TRACE ("ACE_Allocator_Adapter<MALLOC>::ACE_Allocator_Adapter");
- }
-
-#if defined (ACE_HAS_WCHAR)
- /**
- * Note that @a pool_name should be located in
- * a directory with the appropriate visibility and protection so
- * that all processes that need to access it can do so. */
- ACE_Allocator_Adapter (const wchar_t *pool_name);
-
- /**
- * Note that @a pool_name should be located in
- * a directory with the appropriate visibility and protection so
- * that all processes that need to access it can do so.
- * This constructor must be inline to avoid bugs with some C++
- * compilers. */
- ACE_Allocator_Adapter (const wchar_t *pool_name,
- const wchar_t *lock_name,
- MEMORY_POOL_OPTIONS options = 0)
- : allocator_ (ACE_TEXT_WCHAR_TO_TCHAR (pool_name),
- ACE_TEXT_WCHAR_TO_TCHAR (lock_name),
- options)
- {
- ACE_TRACE ("ACE_Allocator_Adapter<MALLOC>::ACE_Allocator_Adapter");
- }
-#endif /* ACE_HAS_WCHAR */
-
- /// Destructor.
- virtual ~ACE_Allocator_Adapter (void);
-
- // = Memory Management
-
- /// Allocate @a nbytes, but don't give them any initial value.
- virtual void *malloc (size_t nbytes);
-
- /// Allocate @a nbytes, giving them all an @a initial_value.
- virtual void *calloc (size_t nbytes, char initial_value = '\0');
-
- /// Allocate @a n_elem each of size @a elem_size, giving them
- /// @a initial_value.
- virtual void *calloc (size_t n_elem,
- size_t elem_size,
- char initial_value = '\0');
-
- /// Free @a ptr (must have been allocated by ACE_Allocator::malloc()).
- virtual void free (void *ptr);
-
- /// Remove any resources associated with this memory manager.
- virtual int remove (void);
-
- // = Map manager like functions
-
- /**
- * Associate @a name with @a pointer. If @a duplicates == 0 then do
- * not allow duplicate @a name/pointer associations, else if
- * @a duplicates != 0 then allow duplicate @a name/pointer
- * assocations. Returns 0 if successfully binds (1) a previously
- * unbound @a name or (2) @a duplicates != 0, returns 1 if trying to
- * bind a previously bound @a name and @a duplicates == 0, else
- * returns -1 if a resource failure occurs.
- */
- virtual int bind (const char *name, void *pointer, int duplicates = 0);
-
- /**
- * Associate @a name with @a pointer. Does not allow duplicate
- * name/pointer associations. Returns 0 if successfully binds
- * (1) a previously unbound @a name, 1 if trying to bind a previously
- * bound @a name, or returns -1 if a resource failure occurs. When
- * this call returns, @a pointer's value will always reference the
- * void * that @a name is associated with. Thus, if the caller needs
- * to use @a pointer (e.g., to free it) a copy must be maintained by
- * the caller.
- */
- virtual int trybind (const char *name, void *&pointer);
-
- /// Locate @a name and pass out parameter via pointer. If found,
- /// return 0, returns -1 if @a name isn't found.
- virtual int find (const char *name, void *&pointer);
-
- /// Returns 0 if the name is in the mapping and -1 if not.
- virtual int find (const char *name);
-
- /// Unbind (remove) the name from the map. Don't return the pointer
- /// to the caller
- virtual int unbind (const char *name);
-
- /// Break any association of name. Returns the value of pointer in
- /// case the caller needs to deallocate memory.
- virtual int unbind (const char *name, void *&pointer);
-
- // = Protection and "sync" (i.e., flushing data to backing store).
-
- /**
- * Sync @a len bytes of the memory region to the backing store
- * starting at @c this->base_addr_. If @a len == -1 then sync the
- * whole region.
- */
- virtual int sync (ssize_t len = -1, int flags = MS_SYNC);
-
- /// Sync @a len bytes of the memory region to the backing store
- /// starting at @c addr_.
- virtual int sync (void *addr, size_t len, int flags = MS_SYNC);
-
- /**
- * Change the protection of the pages of the mapped region to @a prot
- * starting at @c this->base_addr_ up to @a len bytes. If @a len == -1
- * then change protection of all pages in the mapped region.
- */
- virtual int protect (ssize_t len = -1, int prot = PROT_RDWR);
-
- /// Change the protection of the pages of the mapped region to @a prot
- /// starting at @a addr up to @a len bytes.
- virtual int protect (void *addr, size_t len, int prot = PROT_RDWR);
-
- /// Returns the underlying allocator.
- ALLOCATOR &alloc (void);
-
-#if defined (ACE_HAS_MALLOC_STATS)
- /// Dump statistics of how malloc is behaving.
- virtual void print_stats (void) const;
-#endif /* ACE_HAS_MALLOC_STATS */
-
- /// Dump the state of the object.
- virtual void dump (void) const;
-
-private:
- /// ALLOCATOR instance, which is owned by the adapter.
- ALLOCATOR allocator_;
-};
-
-/**
- * @class ACE_Static_Allocator
- *
- * @brief Defines a class that provided a highly optimized memory
- * management scheme for allocating memory statically.
- *
- * This class allocates a fixed-size @c POOL_SIZE of memory and
- * uses the ACE_Static_Allocator_Base class implementations of
- * malloc() and calloc() to optimize memory allocation from this
- * pool.
- */
-template <size_t POOL_SIZE>
-class ACE_Static_Allocator : public ACE_Static_Allocator_Base
-{
-public:
- ACE_Static_Allocator (void)
- : ACE_Static_Allocator_Base (pool_, POOL_SIZE)
- {
- // This function <{must}> be inlined!!!
- }
-
-private:
- /// Pool contents.
- char pool_[POOL_SIZE];
-};
-
-// Forward declaration.
-template <ACE_MEM_POOL_1, class ACE_LOCK, class ACE_CB>
-class ACE_Malloc_LIFO_Iterator_T;
-
-// Ensure backwards compatibility...
-#define ACE_Malloc_Iterator ACE_Malloc_LIFO_Iterator
-
-// Forward declaration.
-template <ACE_MEM_POOL_1, class ACE_LOCK, class ACE_CB>
-class ACE_Malloc_FIFO_Iterator_T;
-
-/**
- * @class ACE_Malloc_T
- *
- * @brief A class template that uses parameterized types to provide
- * an extensible mechanism for encapsulating various dynamic
- * memory management strategies.
- *
- * This class can be configured flexibly with different
- * MEMORY_POOL strategies and different types of ACE_LOCK
- * strategies that support the ACE_Thread_Mutex and ACE_Process_Mutex
- * constructor API.
- *
- * Common MEMORY_POOL strategies to use with this class are:
- * - ACE_Local_Memory_Pool
- * - ACE_MMAP_Memory_Pool
- * - ACE_Pagefile_Memory_Pool
- * - ACE_Shared_Memory_Pool
- * - ACE_Sbrk_Memory_Pool
- *
- * The MEMORY_POOL class must provide the following methods:
- * - constructor (const ACE_TCHAR *pool_name)
- * - constructor (const ACE_TCHAR *pool_name, const MEMORY_POOL_OPTIONS *options)
- * - void dump (void) const (needed if ACE is built with ACE_HAS_DUMP defined)
- * - void *init_acquire (size_t nbytes, size_t &rounded_bytes, int &first_time);
- * - int release (void)
- * - void *acquire (size_t nbytes, size_t &rounded_bytes)
- * - void *base_addr (void)
- * - seh_selector() (only needed on Windows)
- *
- * Note that the ACE_Allocator_Adapter class can be used to integrate allocator
- * classes which do not meet the interface requirements of ACE_Malloc_T.
- *
- * @Note The bind() and find() methods use linear search, so
- * it's not a good idea to use them for managing a large number of
- * entities. If you need to manage a large number of entities, it's
- * recommended that you bind() an ACE_Hash_Map_Manager that
- * resides in shared memory, use find() to locate it, and then
- * store/retrieve the entities in the hash map.
- */
-template <ACE_MEM_POOL_1, class ACE_LOCK, class ACE_CB>
-class ACE_Malloc_T
-{
-public:
- friend class ACE_Malloc_LIFO_Iterator_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB>;
- friend class ACE_Malloc_FIFO_Iterator_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB>;
- typedef ACE_MEM_POOL MEMORY_POOL;
- typedef ACE_MEM_POOL_OPTIONS MEMORY_POOL_OPTIONS;
- typedef typename ACE_CB::ACE_Name_Node NAME_NODE;
- typedef typename ACE_CB::ACE_Malloc_Header MALLOC_HEADER;
-
- // = Initialization and termination methods.
- /**
- * Initialize ACE_Malloc. This constructor passes @a pool_name to
- * initialize the memory pool, and uses ACE::basename() to
- * automatically extract out the name used for the underlying lock
- * name (if necessary).
- *
- * Note that @a pool_name should be located in
- * a directory with the appropriate visibility and protection so
- * that all processes that need to access it can do so.
- */
- ACE_Malloc_T (const ACE_TCHAR *pool_name = 0);
-
- /**
- * Initialize ACE_Malloc. This constructor passes @a pool_name to
- * initialize the memory pool, and uses @a lock_name to automatically
- * extract out the name used for the underlying lock name (if
- * necessary). In addition, @a options is passed through to
- * initialize the underlying memory pool.
- *
- * Note that @a pool_name should be located in
- * a directory with the appropriate visibility and protection so
- * that all processes that need to access it can do so.
- */
- ACE_Malloc_T (const ACE_TCHAR *pool_name,
- const ACE_TCHAR *lock_name,
- const ACE_MEM_POOL_OPTIONS *options = 0);
-
- /**
- * Initialize an ACE_Malloc with an external ACE_LOCK.
- * This constructor passes @a pool_name and @a options to initialize
- * the memory pool. @a lock is used as the pool lock, and must be
- * properly set up and ready for use before being passed to this method.
- */
- ACE_Malloc_T (const ACE_TCHAR *pool_name,
- const ACE_MEM_POOL_OPTIONS *options,
- ACE_LOCK *lock);
-
-#if !defined (ACE_HAS_TEMPLATE_TYPEDEFS)
- /// This is necessary to work around template bugs with certain C++
- /// compilers.
- ACE_Malloc_T (const ACE_TCHAR *pool_name,
- const ACE_TCHAR *lock_name,
- const void *options = 0);
-#endif /* ACE_HAS_TEMPLATE_TYPEDEFS */
-
- /// Destructor
- ~ACE_Malloc_T (void);
-
- /// Get Reference counter.
- int ref_counter (void);
-
- /// Release ref counter.
- int release (int close = 0);
-
- /// Releases resources allocated by this object.
- int remove (void);
-
- // = Memory management
-
- /// Allocate @a nbytes, but don't give them any initial value.
- void *malloc (size_t nbytes);
-
- /// Allocate @a nbytes, giving them @a initial_value.
- void *calloc (size_t nbytes, char initial_value = '\0');
-
- /// Allocate @a n_elem each of size @a elem_size, giving them
- /// @a initial_value.
- void *calloc (size_t n_elem,
- size_t elem_size,
- char initial_value = '\0');
-
- /// Deallocate memory pointed to by @a ptr, which must have been
- /// allocated previously by malloc().
- void free (void *ptr);
-
- /// Returns a reference to the underlying memory pool.
- MEMORY_POOL &memory_pool (void);
-
- // = Map manager like functions
-
- /**
- * Associate @a name with @a pointer. If @a duplicates == 0 then do
- * not allow duplicate name/pointer associations, else if
- * @a duplicates != 0 then allow duplicate name/pointer
- * assocations. Returns 0 if successfully binds (1) a previously
- * unbound @a name or (2) @a duplicates != 0, returns 1 if trying to
- * bind a previously bound @a name and @a duplicates == 0, else
- * returns -1 if a resource failure occurs.
- */
- int bind (const char *name, void *pointer, int duplicates = 0);
-
- /**
- * Associate @a name with @a pointer. Does not allow duplicate
- * name/pointer associations. Returns 0 if successfully binds
- * (1) a previously unbound @a name, 1 if trying to bind a previously
- * bound @a name, or returns -1 if a resource failure occurs. When
- * this call returns @a pointer's value will always reference the
- * void * that @a name is associated with. Thus, if the caller needs
- * to use @a pointer (e.g., to free it) a copy must be maintained by
- * the caller.
- */
- int trybind (const char *name, void *&pointer);
-
- /// Locate @a name and pass out parameter via @a pointer. If found,
- /// return 0, returns -1 if failure occurs.
- int find (const char *name, void *&pointer);
-
- /// Returns 0 if @a name is in the mapping. -1, otherwise.
- int find (const char *name);
-
- /**
- * Unbind (remove) the name from the map. Don't return the pointer
- * to the caller. If you want to remove all occurrences of @a name
- * you'll need to call this method multiple times until it fails...
- */
- int unbind (const char *name);
-
- /**
- * Unbind (remove) one association of @a name to @a pointer. Returns
- * the value of pointer in case the caller needs to deallocate
- * memory. If you want to remove all occurrences of @a name you'll
- * need to call this method multiple times until it fails...
- */
- int unbind (const char *name, void *&pointer);
-
- // = Protection and "sync" (i.e., flushing data to backing store).
-
- /**
- * Sync @a len bytes of the memory region to the backing store
- * starting at @c this->base_addr_. If @a len == -1 then sync the
- * whole region.
- */
- int sync (ssize_t len = -1, int flags = MS_SYNC);
-
- /// Sync @a len bytes of the memory region to the backing store
- /// starting at @c addr_.
- int sync (void *addr, size_t len, int flags = MS_SYNC);
-
- /**
- * Change the protection of the pages of the mapped region to @a prot
- * starting at @c this->base_addr_ up to @a len bytes. If @a len == -1
- * then change protection of all pages in the mapped region.
- */
- int protect (ssize_t len = -1, int prot = PROT_RDWR);
-
- /// Change the protection of the pages of the mapped region to @a prot
- /// starting at @a addr up to @a len bytes.
- int protect (void *addr, size_t len, int prot = PROT_RDWR);
-
- /**
- * Returns a count of the number of available chunks that can hold
- * @a size byte allocations. Function can be used to determine if you
- * have reached a water mark. This implies a fixed amount of allocated
- * memory.
- *
- * @param size The chunk size of that you would like a count of
- * @return Function returns the number of chunks of the given size
- * that would fit in the currently allocated memory.
- */
- ssize_t avail_chunks (size_t size) const;
-
-#if defined (ACE_HAS_MALLOC_STATS)
- /// Dump statistics of how malloc is behaving.
- void print_stats (void) const;
-#endif /* ACE_HAS_MALLOC_STATS */
-
- /// Returns a pointer to the lock used to provide mutual exclusion to
- /// an ACE_Malloc allocator.
- ACE_LOCK &mutex (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /// Return cb_ptr value.
- void *base_addr (void);
-
- /**
- * Bad flag. This operation should be called immediately after the
- * construction of the Malloc object to query whether the object was
- * constructed successfully. If not, the user should invoke @c
- * remove and release the object (it is not usable.)
- * @retval 0 if all is fine. non-zero if this malloc object is
- * unuable.
- */
- int bad (void);
-
-private:
- /// Initialize the Malloc pool.
- int open (void);
-
- /// Associate @a name with @a pointer. Assumes that locks are held by
- /// callers.
- int shared_bind (const char *name,
- void *pointer);
-
- /**
- * Try to locate @a name. If found, return the associated
- * ACE_Name_Node, else returns 0 if can't find the @a name.
- * Assumes that locks are held by callers. Remember to cast the
- * return value to ACE_CB::ACE_Name_Node*.
- */
- void *shared_find (const char *name);
-
- /// Allocate memory. Assumes that locks are held by callers.
- void *shared_malloc (size_t nbytes);
-
- /// Deallocate memory. Assumes that locks are held by callers.
- void shared_free (void *ptr);
-
- /// Pointer to the control block that is stored in memory controlled
- /// by <MEMORY_POOL>.
- ACE_CB *cb_ptr_;
-
- /// Pool of memory used by ACE_Malloc to manage its freestore.
- MEMORY_POOL memory_pool_;
-
- /// Lock that ensures mutual exclusion for the memory pool.
- ACE_LOCK *lock_;
-
- /// True if destructor should delete the lock
- bool delete_lock_;
-
- /// Keep track of failure in constructor.
- int bad_flag_;
-};
-
-/*****************************************************************************/
-
-/**
- * @class ACE_Malloc_Lock_Adapter_T
- *
- * @brief Template functor adapter for lock strategies used with ACE_Malloc_T.
- *
- * This class acts as a factory for lock strategies that have various ctor
- * signatures. If the lock strategy's ctor takes an ACE_TCHAR* as the first
- * and only required parameter, it will just work. Otherwise use template
- * specialization to create a version that matches the lock strategy's ctor
- * signature. See ACE_Process_Semaphore and ACE_Thread_Semaphore for
- * examples.
- *
- */
-/*****************************************************************************/
-
-/**
- * @class ACE_Malloc_LIFO_Iterator_T
- *
- * @brief LIFO iterator for names stored in Malloc'd memory.
- *
- * This class can be configured flexibly with different types of
- * ACE_LOCK strategies that support the @a ACE_Thread_Mutex and @a
- * ACE_Process_Mutex constructor API.
- *
- * Does not support deletions while iteration is occurring.
- */
-template <ACE_MEM_POOL_1, class ACE_LOCK, class ACE_CB>
-class ACE_Malloc_LIFO_Iterator_T
-{
-public:
- typedef typename ACE_CB::ACE_Name_Node NAME_NODE;
- typedef typename ACE_CB::ACE_Malloc_Header MALLOC_HEADER;
-
- // = Initialization method.
- /// If @a name = 0 it will iterate through everything else only
- /// through those entries whose @a name match.
- ACE_Malloc_LIFO_Iterator_T (ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB> &malloc,
- const char *name = 0);
-
- /// Destructor.
- ~ACE_Malloc_LIFO_Iterator_T (void);
-
- // = Iteration methods.
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Pass back the next entry in the set that hasn't yet been
- /// visited. Returns 0 when all items have been seen, else 1.
- int next (void *&next_entry);
-
- /**
- * Pass back the next entry (and the name associated with it) in
- * the set that hasn't yet been visited. Returns 0 when all items
- * have been seen, else 1.
- */
- int next (void *&next_entry,
- const char *&name);
-
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Malloc we are iterating over.
- ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB> &malloc_;
-
- /// Keeps track of how far we've advanced...
- NAME_NODE *curr_;
-
- /// Lock Malloc for the lifetime of the iterator.
- ACE_Read_Guard<ACE_LOCK> guard_;
-
- /// Name that we are searching for.
- const char *name_;
-};
-
-/**
- * @class ACE_Malloc_FIFO_Iterator_T
- *
- * @brief FIFO iterator for names stored in Malloc'd memory.
- *
- * This class can be configured flexibly with different types of
- * ACE_LOCK strategies that support the @a ACE_Thread_Mutex and @a
- * ACE_Process_Mutex constructor API.
- *
- * Does not support deletions while iteration is occurring.
- */
-template <ACE_MEM_POOL_1, class ACE_LOCK, class ACE_CB>
-class ACE_Malloc_FIFO_Iterator_T
-{
-public:
- typedef typename ACE_CB::ACE_Name_Node NAME_NODE;
- typedef typename ACE_CB::ACE_Malloc_Header MALLOC_HEADER;
-
- // = Initialization method.
- /// If @a name = 0 it will iterate through everything else only
- /// through those entries whose @a name match.
- ACE_Malloc_FIFO_Iterator_T (ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB> &malloc,
- const char *name = 0);
-
- /// Destructor.
- ~ACE_Malloc_FIFO_Iterator_T (void);
-
- // = Iteration methods.
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Pass back the next entry in the set that hasn't yet been
- /// visited. Returns 0 when all items have been seen, else 1.
- int next (void *&next_entry);
-
- /**
- * Pass back the next entry (and the name associated with it) in
- * the set that hasn't yet been visited. Returns 0 when all items
- * have been seen, else 1.
- */
- int next (void *&next_entry,
- const char *&name);
-
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Go to the starting element that was inserted first. Returns 0
- /// when there is no item in the set, else 1.
- int start (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Malloc we are iterating over.
- ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB> &malloc_;
-
- /// Keeps track of how far we've advanced...
- NAME_NODE *curr_;
-
- /// Lock Malloc for the lifetime of the iterator.
- ACE_Read_Guard<ACE_LOCK> guard_;
-
- /// Name that we are searching for.
- const char *name_;
-};
-
-template <ACE_MEM_POOL_1, class ACE_LOCK>
-class ACE_Malloc : public ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_Control_Block>
-{
-public:
- // = Initialization and termination methods.
- /**
- * Initialize ACE_Malloc. This constructor passes @a pool_name to
- * initialize the memory pool, and uses ACE::basename() to
- * automatically extract out the name used for the underlying lock
- * name (if necessary). Note that @a pool_name should be located in
- * a directory with the appropriate visibility and protection so
- * that all processes that need to access it can do so.
- */
- ACE_Malloc (const ACE_TCHAR *pool_name = 0);
-
- /**
- * Initialize ACE_Malloc. This constructor passes @a pool_name to
- * initialize the memory pool, and uses @a lock_name to automatically
- * extract out the name used for the underlying lock name (if
- * necessary). In addition, @a options is passed through to
- * initialize the underlying memory pool. Note that @a pool_name
- * should be located in a directory with the appropriate visibility
- * and protection so that all processes that need to access it can
- * do so.
- */
- ACE_Malloc (const ACE_TCHAR *pool_name,
- const ACE_TCHAR *lock_name,
- const ACE_MEM_POOL_OPTIONS *options = 0);
-
-#if !defined (ACE_HAS_TEMPLATE_TYPEDEFS)
- /// This is necessary to work around template bugs with certain C++
- /// compilers.
- ACE_Malloc (const ACE_TCHAR *pool_name,
- const ACE_TCHAR *lock_name,
- const void *options = 0);
-#endif /* ACE_HAS_TEMPLATE_TYPEDEFS */
-};
-
-template <ACE_MEM_POOL_1, class ACE_LOCK>
-class ACE_Malloc_LIFO_Iterator : public ACE_Malloc_LIFO_Iterator_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_Control_Block>
-{
-public:
- // = Initialization method.
- /// If @a name = 0 it will iterate through everything else only
- /// through those entries whose @a name match.
- ACE_Malloc_LIFO_Iterator (ACE_Malloc<ACE_MEM_POOL_2, ACE_LOCK> &malloc,
- const char *name = 0);
-};
-
-template <ACE_MEM_POOL_1, class ACE_LOCK>
-class ACE_Malloc_FIFO_Iterator : public ACE_Malloc_FIFO_Iterator_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_Control_Block>
-{
-public:
- // = Initialization method.
- /// If @a name = 0 it will iterate through everything else only
- /// through those entries whose @a name match.
- ACE_Malloc_FIFO_Iterator (ACE_Malloc<ACE_MEM_POOL_2, ACE_LOCK> &malloc,
- const char *name = 0);
-};
-
-template <class ACE_LOCK>
-class ACE_Malloc_Lock_Adapter_T
-{
-public:
- ACE_LOCK * operator () (const ACE_TCHAR *myname);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Malloc_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Malloc_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Malloc_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_MALLOC_H */
-
diff --git a/dep/include/ace/Malloc_T.inl b/dep/include/ace/Malloc_T.inl
deleted file mode 100644
index ffc20dfbe51..00000000000
--- a/dep/include/ace/Malloc_T.inl
+++ /dev/null
@@ -1,183 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Malloc_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_string.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class T> ACE_INLINE T *
-ACE_Cached_Mem_Pool_Node<T>::addr (void)
-{
- // This should be done using a single reinterpret_cast, but Sun/CC
- // (4.2) gets awfully confused when T is a char[20] (and maybe other
- // types).
- return static_cast<T *> (static_cast <void *> (this));
-}
-
-template <class T> ACE_INLINE ACE_Cached_Mem_Pool_Node<T> *
-ACE_Cached_Mem_Pool_Node<T>::get_next (void)
-{
- return this->next_;
-}
-
-template <class T> ACE_INLINE void
-ACE_Cached_Mem_Pool_Node<T>::set_next (ACE_Cached_Mem_Pool_Node<T> *ptr)
-{
- this->next_ = ptr;
-}
-
-template <class T, class ACE_LOCK> ACE_INLINE size_t
-ACE_Cached_Allocator<T, ACE_LOCK>::pool_depth (void)
-{
- return this->free_list_.size ();
-}
-
-template <class ACE_LOCK> ACE_INLINE size_t
-ACE_Dynamic_Cached_Allocator<ACE_LOCK>::pool_depth (void)
-{
- return this->free_list_.size ();
-}
-
-template <ACE_MEM_POOL_1, class ACE_LOCK, class ACE_CB> ACE_INLINE int
-ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB>::ref_counter (void)
-{
- ACE_GUARD_RETURN (ACE_LOCK, ace_mon, *this->lock_, -1);
- if (this->cb_ptr_ != 0)
- return this->cb_ptr_->ref_counter_;
-
- return -1;
-}
-
-template <ACE_MEM_POOL_1, class ACE_LOCK, class ACE_CB> ACE_INLINE int
-ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB>::bad (void)
-{
- return this->bad_flag_;
-}
-
-template <ACE_MEM_POOL_1, class ACE_LOCK, class ACE_CB> ACE_INLINE int
-ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB>::release (int close)
-{
- ACE_GUARD_RETURN (ACE_LOCK, ace_mon, *this->lock_, -1);
- if (this->cb_ptr_ != 0)
- {
- int const retv = --this->cb_ptr_->ref_counter_;
-
-#if 0
- ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%P) ACE_Malloc_T::release ->%d\n"),
- this->cb_ptr_->ref_counter_ - 1));
-#endif /* 0 */
- if (close)
- this->memory_pool_.release (0);
-
- if (retv == 0)
- this->remove ();
- return retv;
- }
- return -1;
-}
-
-template <ACE_MEM_POOL_1, class ACE_LOCK, class ACE_CB> ACE_INLINE ACE_MEM_POOL &
-ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB>::memory_pool (void)
-{
- ACE_TRACE ("ACE_Malloc_T<MEMORY_POOL, ACE_LOCK, ACE_CB>::memory_pool");
- return this->memory_pool_;
-}
-
-template <ACE_MEM_POOL_1, class ACE_LOCK, class ACE_CB> ACE_INLINE int
-ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB>::sync (ssize_t len,
- int flags)
-{
- ACE_TRACE ("ACE_Malloc_T<MEMORY_POOL, ACE_LOCK, ACE_CB>::sync");
- return this->memory_pool_.sync (len, flags);
-}
-
-template <ACE_MEM_POOL_1, class ACE_LOCK, class ACE_CB> ACE_INLINE int
-ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB>::sync (void *addr,
- size_t len,
- int flags)
-{
- ACE_TRACE ("ACE_Malloc_T<MEMORY_POOL, ACE_LOCK, ACE_CB>::sync");
- return this->memory_pool_.sync (addr, len, flags);
-}
-
-template <ACE_MEM_POOL_1, class ACE_LOCK, class ACE_CB> ACE_INLINE int
-ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB>::protect (ssize_t len,
- int flags)
-{
- ACE_TRACE ("ACE_Malloc_T<MEMORY_POOL, ACE_LOCK, ACE_CB>::protect");
- return this->memory_pool_.protect (len, flags);
-}
-
-template <ACE_MEM_POOL_1, class ACE_LOCK, class ACE_CB> ACE_INLINE int
-ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB>::protect (void *addr,
- size_t len,
- int flags)
-{
- ACE_TRACE ("ACE_Malloc_T<MEMORY_POOL, ACE_LOCK, ACE_CB>::protect");
- return this->memory_pool_.protect (addr, len, flags);
-}
-
-template <ACE_MEM_POOL_1, class ACE_LOCK, class ACE_CB> ACE_INLINE ACE_LOCK &
-ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB>::mutex (void)
-{
- return *this->lock_;
-}
-
-template <ACE_MEM_POOL_1, class ACE_LOCK, class ACE_CB> ACE_INLINE void *
-ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB>::base_addr (void)
-{
- return this->cb_ptr_;
-}
-
-template <ACE_MEM_POOL_1, class ACE_LOCK> ACE_INLINE
-ACE_Malloc<ACE_MEM_POOL_2, ACE_LOCK>::ACE_Malloc (const ACE_TCHAR *pool_name)
- : ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_Control_Block> (pool_name)
-{
-}
-
-template <ACE_MEM_POOL_1, class ACE_LOCK> ACE_INLINE
-ACE_Malloc<ACE_MEM_POOL_2, ACE_LOCK>::ACE_Malloc (const ACE_TCHAR *pool_name,
- const ACE_TCHAR *lock_name,
- const ACE_MEM_POOL_OPTIONS *options)
- : ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_Control_Block> (pool_name, lock_name, options)
-{
-}
-
-#if !defined (ACE_HAS_TEMPLATE_TYPEDEFS)
-template <ACE_MEM_POOL_1, class ACE_LOCK> ACE_INLINE
-ACE_Malloc<ACE_MEM_POOL_2, ACE_LOCK>::ACE_Malloc (const ACE_TCHAR *pool_name,
- const ACE_TCHAR *lock_name,
- const void *options)
- : ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_Control_Block> (pool_name, lock_name, options)
-{
-}
-#endif /* !ACE_HAS_TEMPLATE_TYPEDEFS */
-
-template <ACE_MEM_POOL_1, class ACE_LOCK> ACE_INLINE
-ACE_Malloc_LIFO_Iterator<ACE_MEM_POOL_2, ACE_LOCK>::ACE_Malloc_LIFO_Iterator (ACE_Malloc<ACE_MEM_POOL_2, ACE_LOCK> &malloc,
- const char *name)
- : ACE_Malloc_LIFO_Iterator_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_Control_Block> (malloc, name)
-{
-}
-
-template <ACE_MEM_POOL_1, class ACE_LOCK> ACE_INLINE
-ACE_Malloc_FIFO_Iterator<ACE_MEM_POOL_2, ACE_LOCK>::ACE_Malloc_FIFO_Iterator (ACE_Malloc<ACE_MEM_POOL_2, ACE_LOCK> &malloc,
- const char *name)
- : ACE_Malloc_FIFO_Iterator_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_Control_Block> (malloc, name)
-{
-}
-
-#if 0
-template <ACE_MEM_POOL_1, class ACE_LOCK, class ACE_CB> ACE_INLINE void
-ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB>::init_malloc_header_ptr (void* ptr)
-{
-#if (ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1)
- new (ptr) ACE_MALLOC_HEADER_PTR (this->cb_ptr_, 0);
-#else
- ACE_UNUSED_ARG (ptr);
-#endif /* ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1 */
-}
-#endif /* 0 */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Managed_Object.h b/dep/include/ace/Managed_Object.h
deleted file mode 100644
index f4ac54834d4..00000000000
--- a/dep/include/ace/Managed_Object.h
+++ /dev/null
@@ -1,169 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Managed_Object.h
- *
- * $Id: Managed_Object.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author David L. Levine <levine@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_MANAGED_OBJECT_H
-#define ACE_MANAGED_OBJECT_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Object_Manager.h"
-#include "ace/Global_Macros.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Cleanup_Adapter
- *
- * @brief Adapter for ACE_Cleanup objects that allows them to be readily
- * managed by the ACE_Object_Manager.
- *
- * This template class adapts an object of any type to be an
- * ACE_Cleanup object. The object can then be destroyed
- * type-safely by the ACE_Object_Manager. This class is
- * typically used to replace a cast; but, it's a bit cleaner and
- * allows insertion of, say, run-time type identification
- * internally if desired.
- */
-template <class TYPE>
-class ACE_Cleanup_Adapter : public ACE_Cleanup
-{
-public:
- /// Default constructor.
- ACE_Cleanup_Adapter (void);
-
- /// Virtual destructor, needed by some compilers for vtable placement.
- virtual ~ACE_Cleanup_Adapter (void);
-
- /// Accessor for contained object.
- TYPE &object (void);
-
-private:
- ACE_UNIMPLEMENTED_FUNC (ACE_Cleanup_Adapter (const ACE_Cleanup_Adapter<TYPE> &))
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Cleanup_Adapter<TYPE> &))
-
- /// Contained object.
- TYPE object_;
-};
-
-/**
- * @class ACE_Managed_Object
- *
- * @brief Wrapper for interface to allocate an object managed by the
- * ACE_Object_Manager.
- *
- * This template class wraps an interface that is used to
- * allocate and access an object that is managed by the
- * ACE_Object_Manager. Because static template member functions
- * are not supported by some compilers, it is a separate
- * (template) class.
- * This interface is typically used to replace a static object
- * with one that is dynamically allocated. It helps to avoid
- * problems with order of static object
- * construction/destruction. Managed objects won't be allocated
- * until needed, but should be allocated when first needed. And
- * they are destroyed in the reverse order of construction.
- * <get_preallocated_object> accesses a "preallocated" object,
- * i.e., one that is identified by a value in the
- * ACE_Object_Manager:: Preallocated_Object enum. These objects
- * are used internally by the ACE library.
- * Hooks are provided for the application to preallocate objects
- * via the same mechanism.
- * ACE_APPLICATION_PREALLOCATED_OBJECT_DECLARATIONS can be used
- * to define enum values;
- * ACE_APPLICATION_PREALLOCATED_OBJECT_DEFINITIONS can be used
- * to define the corresponding objects. The format of the ACE
- * internal library definitions should be followed. And
- * similarly, ACE_APPLICATION_PREALLOCATED_ARRAY_DECLARATIONS
- * and ACE_APPLICATION_PREALLOCATED_ARRAY_DEFINITIONS can be
- * used to preallocate arrays.
- * By default, preallocation uses dynamic allocation. The
- * preallocated objects and arrays are allocated off the heap in
- * the ACE_Object_Manager constructor. To statically place the
- * preallocated objects in program global data instead of on the
- * heap, #define ACE_HAS_STATIC_PREALLOCATION prior to building
- * the ACE library.
- */
-template <class TYPE>
-class ACE_Managed_Object
-{
-public:
- static TYPE *get_preallocated_object (ACE_Object_Manager::Preallocated_Object identifier)
- {
- // The preallocated objects are in a separate, "read-only" array so
- // that this function doesn't need a lock. Also, because it is
- // intended _only_ for use with hard-code values, it performs no
- // range checking on "id".
-
- // Cast the return type of the the object pointer based
- // on the type of the function template parameter.
- return &((ACE_Cleanup_Adapter<TYPE> *)
- ACE_Object_Manager::preallocated_object[identifier])->object ();
- }
- // Get the preallocated object identified by "id". Returns a
- // pointer to the object. Beware: no error indication is provided,
- // because it can _only_ be used for accessing preallocated objects.
- // @note The function definition is inlined here so that it compiles
- // on AIX 4.1 w/xlC v. 3.01.
-
- static TYPE *get_preallocated_array (ACE_Object_Manager::Preallocated_Array identifier)
- {
- // The preallocated array are in a separate, "read-only" array so
- // that this function doesn't need a lock. Also, because it is
- // intended _only_ for use with hard-code values, it performs no
- // range checking on "id".
-
- // Cast the return type of the the object pointer based
- // on the type of the function template parameter.
- return &((ACE_Cleanup_Adapter<TYPE> *)
- ACE_Object_Manager::preallocated_array[identifier])->object ();
- }
- // Get the preallocated array identified by "id". Returns a
- // pointer to the array. Beware: no error indication is provided,
- // because it can _only_ be used for accessing preallocated arrays.
- // @note The function definition is inlined here so that it compiles
- // on AIX 4.1 w/xlC v. 3.01.
-
-protected:
-
- // Disallow instantiation of this class.
- ACE_UNIMPLEMENTED_FUNC (ACE_Managed_Object (void))
-
-private:
-
- ACE_UNIMPLEMENTED_FUNC (ACE_Managed_Object (const ACE_Managed_Object<TYPE> &))
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Managed_Object<TYPE> &))
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Managed_Object.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Managed_Object.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Managed_Object.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_MANAGED_OBJECT_H */
-
diff --git a/dep/include/ace/Managed_Object.inl b/dep/include/ace/Managed_Object.inl
deleted file mode 100644
index 2e77a1c4ed6..00000000000
--- a/dep/include/ace/Managed_Object.inl
+++ /dev/null
@@ -1,23 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Managed_Object.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class TYPE>
-ACE_INLINE
-ACE_Cleanup_Adapter<TYPE>::ACE_Cleanup_Adapter (void)
- // Note: don't explicitly initialize "object_", because TYPE may not
- // have a default constructor. Let the compiler figure it out . . .
-{
-}
-
-template <class TYPE>
-ACE_INLINE
-TYPE &
-ACE_Cleanup_Adapter<TYPE>::object (void)
-{
- return this->object_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Manual_Event.h b/dep/include/ace/Manual_Event.h
deleted file mode 100644
index ff7774f59fc..00000000000
--- a/dep/include/ace/Manual_Event.h
+++ /dev/null
@@ -1,74 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Manual_Event.h
- *
- * $Id: Manual_Event.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_MANUAL_EVENT_H
-#define ACE_MANUAL_EVENT_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Event.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Manual_Event
- *
- * @brief Manual Events.
- *
- * Specialization of Event mechanism which wakes up all waiting
- * thread on <signal>. All platforms support process-scope locking
- * support. However, only Win32 platforms support global naming and
- * system-scope locking support.
- */
-class ACE_Export ACE_Manual_Event : public ACE_Event
-{
-public:
- /// constructor which will create manual event
- ACE_Manual_Event (int initial_state = 0,
- int type = USYNC_THREAD,
- const char *name = 0,
- void *arg = 0);
-
-#if defined (ACE_HAS_WCHAR)
- /// constructor which will create manual event (wchar_t version)
- ACE_Manual_Event (int initial_state,
- int type,
- const wchar_t *name,
- void *arg = 0);
-#endif /* ACE_HAS_WCHAR */
-
- /// Default dtor.
- ~ACE_Manual_Event (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Manual_Event.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_MANUAL_EVENT_H */
-
diff --git a/dep/include/ace/Manual_Event.inl b/dep/include/ace/Manual_Event.inl
deleted file mode 100644
index 9872973f4ba..00000000000
--- a/dep/include/ace/Manual_Event.inl
+++ /dev/null
@@ -1,12 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Manual_Event.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Manual_Event::~ACE_Manual_Event (void)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Map.h b/dep/include/ace/Map.h
deleted file mode 100644
index 2095d833528..00000000000
--- a/dep/include/ace/Map.h
+++ /dev/null
@@ -1,32 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Map.h
- *
- * $Id: Map.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Backward compatibility header.
- *
- * @author Irfan Pyarali
- */
-//=============================================================================
-
-#ifndef ACE_MAP_H
-#define ACE_MAP_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// Include the templates here.
-#include "ace/Map_T.h"
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_MAP_H */
-
diff --git a/dep/include/ace/Map_Manager.h b/dep/include/ace/Map_Manager.h
deleted file mode 100644
index b6e141621fa..00000000000
--- a/dep/include/ace/Map_Manager.h
+++ /dev/null
@@ -1,720 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Map_Manager.h
- *
- * $Id: Map_Manager.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_MAP_MANAGER_H
-#define ACE_MAP_MANAGER_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Basic_Types.h"
-#include "ace/Global_Macros.h"
-#include "ace/Default_Constants.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declaration.
-class ACE_Allocator;
-
-/**
- * @class ACE_Map_Entry
- *
- * @brief An entry in the Map.
- */
-template <class EXT_ID, class INT_ID>
-class ACE_Map_Entry
-{
-public:
- /// Initialize member variables.
- ACE_Map_Entry (void);
-
- /// We need this destructor to keep some compilers from complaining.
- /// It's just a no-op, however.
- ~ACE_Map_Entry (void);
-
- /// Key used to look up an entry.
- EXT_ID ext_id_;
-
- /// The contents of the entry itself.
- INT_ID int_id_;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- // = These are really private, but unfortunately template friends
- // are not portable.
-
- /// Get next entry.
- ACE_UINT32 next (void) const;
-
- /// Set next entry.
- void next (ACE_UINT32 n);
-
- /// Get prev entry.
- ACE_UINT32 prev (void) const;
-
- /// Set prev entry.
- void prev (ACE_UINT32 p);
-
- /// Keeps track of the next entry.
- ACE_UINT32 next_;
-
- /// Keeps track of the previous entry.
- ACE_UINT32 prev_;
-
-#if defined (ACE_HAS_LAZY_MAP_MANAGER)
-
- /// Is this entry free?
- bool free_;
-
-#endif /* ACE_HAS_LAZY_MAP_MANAGER */
-
-};
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-class ACE_Map_Iterator_Base;
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-class ACE_Map_Const_Iterator_Base;
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-class ACE_Map_Iterator;
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-class ACE_Map_Const_Iterator;
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-class ACE_Map_Reverse_Iterator;
-
-/**
- * @class ACE_Map_Manager
- *
- * @brief Define a map abstraction that associates <EXT_ID>s with
- * <INT_ID>s.
- *
- * The <EXT_ID> must support <operator==>. This constraint can
- * be alleviated via template specialization, as shown in the
- * $ACE_ROOT/tests/Conn_Test.cpp test.
- * This class uses an ACE_Allocator to allocate memory. The
- * user can make this a persistant class by providing an
- * ACE_Allocator with a persistable memory pool.
- * This implementation of a map uses an array, which is searched
- * linearly. For more efficient searching you should use the
- * <ACE_Hash_Map_Manager>.
- */
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-class ACE_Map_Manager
-{
-public:
- friend class ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>;
- friend class ACE_Map_Const_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>;
- friend class ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK>;
- friend class ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK>;
- friend class ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK>;
-
- // = Traits.
- typedef EXT_ID KEY;
- typedef INT_ID VALUE;
- typedef ACE_LOCK lock_type;
- typedef ACE_Map_Entry<EXT_ID, INT_ID> ENTRY;
- typedef ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK> ITERATOR;
- typedef ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK> CONST_ITERATOR;
- typedef ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK> REVERSE_ITERATOR;
-
- typedef ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK> iterator;
- typedef ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK> const_iterator;
- typedef ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK> reverse_iterator;
-
- // = Initialization and termination methods.
- /// Initialize a ACE_Map_Manager with the ACE_DEFAULT_MAP_SIZE.
- ACE_Map_Manager (ACE_Allocator *alloc = 0);
-
- /// Initialize a ACE_Map_Manager with @a size entries.
- ACE_Map_Manager (size_t size,
- ACE_Allocator *alloc = 0);
-
- /// Initialize a ACE_Map_Manager with size @a length.
- int open (size_t length = ACE_DEFAULT_MAP_SIZE,
- ACE_Allocator *alloc = 0);
-
- /// Close down a ACE_Map_Manager and release dynamically allocated
- /// resources.
- int close (void);
-
- /// Close down a ACE_Map_Manager and release dynamically allocated
- /// resources.
- ~ACE_Map_Manager (void);
-
- /**
- * Associate @a ext_id with @a int_id. If @a ext_id is already in the
- * map then the ACE_Map_Entry is not changed.
- * @retval 0 If a new entry is bound successfully.
- * @retval 1 If an attempt is made to bind an existing entry.
- * @retval -1 If failures occur.
- */
- int bind (const EXT_ID &ext_id,
- const INT_ID &int_id);
-
- /**
- * Reassociate @a ext_id with @a int_id. If @a ext_id is not in the
- * map then behaves just like bind(). Otherwise, store the old
- * values of @a ext_id and @a int_id into the "out" parameters and
- * rebind the new parameters. This is very useful if you need to
- * have an atomic way of updating <Map_Entries> and you also need
- * full control over memory allocation.
- * @retval 0 If a new entry is bound successfully.
- * @retval 1 If an existing entry was rebound.
- * @retval -1 If failures occur.
- */
- int rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- EXT_ID &old_ext_id,
- INT_ID &old_int_id);
-
- /**
- * Reassociate @a ext_id with @a int_id. If @a ext_id is not in the
- * map then behaves just like <bind>. Otherwise, store the old
- * values of @a int_id into the "out" parameter and rebind the new
- * parameters.
- * @retval 0 If a new entry is bound successfully.
- * @retval 1 If an existing entry was rebound.
- * @retval -1 If failures occur.
- */
- int rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- INT_ID &old_int_id);
-
- /// Reassociate @a ext_id with @a int_id. Old values in the map are
- /// ignored.
- int rebind (const EXT_ID &ext_id,
- const INT_ID &int_id);
-
- /**
- * Associate @a ext_id with @a int_id if and only if @a ext_id is not
- * in the map. If @a ext_id is already in the map then the @a int_id
- * parameter is overwritten with the existing value in the map
- * @retval 0 If a new entry is bound successfully.
- * @retval 1 If an attempt is made to bind an existing entry.
- * @retval -1 If failures occur.
- */
- int trybind (const EXT_ID &ext_id,
- INT_ID &int_id);
-
- /**
- * Locate @a ext_id and pass out parameter via @a int_id.
- * @retval 0 If found.
- * @retval -1 If not found.
- */
- int find (const EXT_ID &ext_id,
- INT_ID &int_id) const;
-
- /// Returns 0 if the @a ext_id is in the mapping, otherwise -1.
- int find (const EXT_ID &ext_id) const;
-
- /**
- * Unbind (remove) the @a ext_id from the map. Don't return the
- * @a int_id to the caller (this is useful for collections where the
- * @a int_ids are *not* dynamically allocated...) Returns 0 if
- * successful, else -1.
- */
- int unbind (const EXT_ID &ext_id);
-
- /**
- * Break any association of @a ext_id. Returns the value of @a int_id
- * in case the caller needs to deallocate memory. Returns 0 if
- * successful, else -1.
- */
- int unbind (const EXT_ID &ext_id,
- INT_ID &int_id);
-
- /**
- * Unbind all entires.
- */
- void unbind_all (void);
-
- /// Return the current size of the map.
- size_t current_size (void) const;
-
- /// Return the total size of the map.
- size_t total_size (void) const;
-
- /**
- * Returns a reference to the underlying <ACE_LOCK>. This makes it
- * possible to acquire the lock explicitly, which can be useful in
- * some cases if you instantiate the ACE_Atomic_Op with an
- * ACE_Recursive_Mutex or ACE_Process_Mutex, or if you need to
- * guard the state of an iterator.
- * @note The right name would be <lock>, but HP/C++ will choke on that!
- */
- ACE_LOCK &mutex (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL styled iterator factory functions.
-
- /// Return forward iterator.
- ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK> begin (void);
- ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK> end (void);
-
- /// Return reverse iterator.
- ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK> rbegin (void);
- ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK> rend (void);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
-
- // = The following methods do the actual work.
-
- // These methods assume that the locks are held by the private
- // methods.
-
- /// Performs the binding of @a ext_id to @a int_id. Must be called
- /// with locks held.
- int bind_i (const EXT_ID &ext_id,
- const INT_ID &int_id);
-
- /// Bind an entry (without finding first). Must be called with locks
- /// held.
- int shared_bind (const EXT_ID &ext_id,
- const INT_ID &int_id);
-
- /// Performs a rebinding of <ext_it> to @a int_id. Also, recovers old
- /// values. Must be called with locks held.
- int rebind_i (const EXT_ID &ext_id,
- const INT_ID &int_id,
- EXT_ID &old_ext_id,
- INT_ID &old_int_id);
-
- /// Performs a rebinding of <ext_it> to @a int_id. Also, recovers old
- /// values. Must be called with locks held.
- int rebind_i (const EXT_ID &ext_id,
- const INT_ID &int_id,
- INT_ID &old_int_id);
-
- /// Performs a rebinding of <ext_it> to @a int_id. Must be called
- /// with locks held.
- int rebind_i (const EXT_ID &ext_id,
- const INT_ID &int_id);
-
- /// Performs a conditional bind of @a int_id using @a ext_id as the
- /// key. Must be called with locks held.
- int trybind_i (const EXT_ID &ext_id,
- INT_ID &int_id);
-
- /// Performs a find of @a int_id using @a ext_id as the key. Must be
- /// called with locks held.
- int find_i (const EXT_ID &ext_id,
- INT_ID &int_id);
-
- /// Performs a find using @a ext_id as the key. Must be called with
- /// locks held.
- int find_and_return_index (const EXT_ID &ext_id,
- ACE_UINT32 &slot);
-
- /// Performs an unbind of @a int_id using @a ext_id as the key. Must
- /// be called with locks held.
- int unbind_i (const EXT_ID &ext_id,
- INT_ID &int_id);
-
- /// Performs an unbind using @a ext_id as the key. Must be called
- /// with locks held.
- int unbind_i (const EXT_ID &ext_id);
-
- /// Performs an unbind using @a ext_id as the key. Must be called
- /// with locks held.
- int unbind_and_return_index (const EXT_ID &ext_id,
- ACE_UINT32 &slot);
-
- /// Unbind @a slot.
- void unbind_slot (ACE_UINT32 slot);
-
- /// Resize the map. Must be called with locks held.
- int resize_i (ACE_UINT32 size);
-
- /// Close down a <Map_Manager>. Must be called with locks held.
- int close_i (void);
-
- /// Returns 1 if <id1> == <id2>, else 0. This is defined as a
- /// separate method to facilitate template specialization.
- int equal (const EXT_ID &id1, const EXT_ID &id2);
-
- /// This function returns the new size of the Map Manager. This
- /// function is called when we run out of room and need to resize.
- ACE_UINT32 new_size (void);
-
- /// Explicitly call the destructors and free up the
- /// <search_structure_>.
- void free_search_structure (void);
-
- /// Id of the free list sentinel.
- ACE_UINT32 free_list_id (void) const;
-
- /// Id of the occupied list sentinel.
- ACE_UINT32 occupied_list_id (void) const;
-
- /// Finds the next free slot.
- int next_free (ACE_UINT32 &slot);
-
- /// Move from free list to occupied list.
- void move_from_free_list_to_occupied_list (ACE_UINT32 slot);
-
- /// Move from occupied list to free list.
- void move_from_occupied_list_to_free_list (ACE_UINT32 slot);
-
-#if defined (ACE_HAS_LAZY_MAP_MANAGER)
-
- /**
- * In the case of lazy map managers, the movement of free slots from
- * the occupied list to the free list is delayed until we run out of
- * free slots in the free list. This function goes through the
- * entire occupied list, moving free slots to the free list.
- */
- void move_all_free_slots_from_occupied_list (void);
-
-#endif /* ACE_HAS_LAZY_MAP_MANAGER */
-
- /// Move helper.
- void shared_move (ACE_UINT32 slot,
- ACE_Map_Entry<EXT_ID, INT_ID> &current_list,
- ACE_UINT32 current_list_id,
- ACE_Map_Entry<EXT_ID, INT_ID> &new_list,
- ACE_UINT32 new_list_id);
-
- /// Pointer to a memory allocator.
- ACE_Allocator *allocator_;
-
- /// Synchronization variable for the MT_SAFE ACE_Map_Manager.
- mutable ACE_LOCK lock_;
-
- /// Implement the Map as a resizeable array of ACE_Map_Entry.
- ACE_Map_Entry<EXT_ID, INT_ID> *search_structure_;
-
- /// Total number of elements in this->search_structure_.
- ACE_UINT32 total_size_;
-
- /// Current size of the map.
- ACE_UINT32 cur_size_;
-
- /// Free list.
- ACE_Map_Entry<EXT_ID, INT_ID> free_list_;
-
- /// Occupied list.
- ACE_Map_Entry<EXT_ID, INT_ID> occupied_list_;
-
- enum
- {
- /// Grow map exponentially up to 64K
- MAX_EXPONENTIAL = 64 * 1024,
-
- /// Afterwards grow in chunks of 32K
- LINEAR_INCREASE = 32 * 1024
- };
-
-private:
- // = Disallow these operations.
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Map_Manager (const ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> &))
-};
-
-/**
- * @class ACE_Map_Iterator_Base
- *
- * @brief Iterator for the ACE_Map_Manager.
- *
- * This class factors out common code from its templatized
- * subclasses.
- */
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-class ACE_Map_Iterator_Base
-{
-public:
- // = Initialization method.
- /// Contructor. If head != 0, the iterator constructed is positioned
- /// at the head of the map, it is positioned at the end otherwise.
- ACE_Map_Iterator_Base (ACE_Map_Manager <EXT_ID, INT_ID, ACE_LOCK> &mm);
-
- // = Iteration methods.
-
- /// Pass back the next <entry> that hasn't been seen in the Set.
- /// Returns 0 when all items have been seen, else 1.
- int next (ACE_Map_Entry<EXT_ID, INT_ID> *&next_entry) const;
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Returns a reference to the interal element @c this is pointing to.
- ACE_Map_Entry<EXT_ID, INT_ID>& operator* (void) const;
-
- /// Returns reference the Map_Manager that is being iterated
- /// over.
- ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>& map (void);
-
- /// Check if two iterators point to the same position
- bool operator== (const ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK> &) const;
- bool operator!= (const ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK> &) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Move forward by one element in the set. Returns 0 when there's
- /// no more item in the set after the current items, else 1.
- int forward_i (void);
-
- /// Move backware by one element in the set. Returns 0 when there's
- /// no more item in the set before the current item, else 1.
- int reverse_i (void);
-
- /// Dump the state of an object.
- void dump_i (void) const;
-
- /// Map we are iterating over.
- ACE_Map_Manager <EXT_ID, INT_ID, ACE_LOCK> *map_man_;
-
- /// Keeps track of how far we've advanced...
- ACE_UINT32 next_;
-};
-
-/**
- * @class ACE_Map_Const_Iterator_Base
- *
- * @brief Const iterator for the ACE_Map_Manager.
- *
- * This class factors out common code from its templatized
- * subclasses.
- */
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-class ACE_Map_Const_Iterator_Base
-{
-public:
- // = Initialization method.
- /// Contructor. If head != 0, the iterator constructed is positioned
- /// at the head of the map, it is positioned at the end otherwise.
- ACE_Map_Const_Iterator_Base (const ACE_Map_Manager <EXT_ID, INT_ID, ACE_LOCK> &mm);
-
- // = Iteration methods.
-
- /// Pass back the next <entry> that hasn't been seen in the Set.
- /// Returns 0 when all items have been seen, else 1.
- int next (ACE_Map_Entry<EXT_ID, INT_ID> *&next_entry) const;
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Returns a reference to the interal element @c this is pointing to.
- ACE_Map_Entry<EXT_ID, INT_ID>& operator* (void) const;
-
- /// Returns reference the Map_Manager that is being iterated
- /// over.
- const ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>& map (void) const;
-
- /// Check if two iterators point to the same position
- bool operator== (const ACE_Map_Const_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK> &) const;
- bool operator!= (const ACE_Map_Const_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK> &) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Move forward by one element in the set. Returns 0 when there's
- /// no more item in the set after the current items, else 1.
- int forward_i (void);
-
- /// Move backware by one element in the set. Returns 0 when there's
- /// no more item in the set before the current item, else 1.
- int reverse_i (void);
-
- /// Dump the state of an object.
- void dump_i (void) const;
-
- /// Map we are iterating over.
- const ACE_Map_Manager <EXT_ID, INT_ID, ACE_LOCK> *map_man_;
-
- /// Keeps track of how far we've advanced...
- ACE_UINT32 next_;
-};
-
-/**
- * @class ACE_Map_Iterator
- *
- * @brief Forward iterator for the ACE_Map_Manager.
- *
- * This class does not perform any internal locking of the
- * ACE_Map_Manager it is iterating upon since locking is
- * inherently inefficient and/or error-prone within an STL-style
- * iterator. If you require locking, you can explicitly use an
- * ACE_Guard or ACE_Read_Guard on the ACE_Map_Manager's
- * internal lock, which is accessible via its <mutex> method.
- */
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-class ACE_Map_Iterator : public ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>
-{
-public:
- // = Initialization method.
- ACE_Map_Iterator (ACE_Map_Manager <EXT_ID, INT_ID, ACE_LOCK> &mm,
- int pass_end = 0);
-
- // = Iteration methods.
-
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL styled iteration, compare, and reference functions.
-
- /// Prefix advance.
- ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK> &operator++ (void);
-
- /// Postfix advance.
- ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK> operator++ (int);
-
- /// Prefix reverse.
- ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK> &operator-- (void);
-
- /// Postfix reverse.
- ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK> operator-- (int);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-/**
- * @class ACE_Map_Const_Iterator
- *
- * @brief Forward const iterator for the ACE_Map_Manager.
- *
- * This class does not perform any internal locking of the
- * ACE_Map_Manager it is iterating upon since locking is
- * inherently inefficient and/or error-prone within an STL-style
- * iterator. If you require locking, you can explicitly use an
- * ACE_Guard or ACE_Read_Guard on the ACE_Map_Manager's
- * internal lock, which is accessible via its <mutex> method.
- */
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-class ACE_Map_Const_Iterator : public ACE_Map_Const_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>
-{
-public:
- // = Initialization method.
- ACE_Map_Const_Iterator (const ACE_Map_Manager <EXT_ID, INT_ID, ACE_LOCK> &mm,
- int pass_end = 0);
-
- // = Iteration methods.
-
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL styled iteration, compare, and reference functions.
-
- /// Prefix advance.
- ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK> &operator++ (void);
-
- /// Postfix advance.
- ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK> operator++ (int);
-
- /// Prefix reverse.
- ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK> &operator-- (void);
-
- /// Postfix reverse.
- ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK> operator-- (int);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-/**
- * @class ACE_Map_Reverse_Iterator
- *
- * @brief Reverse Iterator for the ACE_Map_Manager.
- *
- * This class does not perform any internal locking of the
- * ACE_Map_Manager it is iterating upon since locking is
- * inherently inefficient and/or error-prone within an STL-style
- * iterator. If you require locking, you can explicitly use an
- * ACE_Guard or ACE_Read_Guard on the ACE_Map_Manager's
- * internal lock, which is accessible via its <mutex> method.
- */
-template <class EXT_ID, class INT_ID, class ACE_LOCK>
-class ACE_Map_Reverse_Iterator : public ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>
-{
-public:
- // = Initialization method.
- ACE_Map_Reverse_Iterator (ACE_Map_Manager <EXT_ID, INT_ID, ACE_LOCK> &mm,
- int pass_end = 0);
-
- // = Iteration methods.
-
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL styled iteration, compare, and reference functions.
-
- /// Prefix reverse.
- ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK> &operator++ (void);
-
- /// Postfix reverse.
- ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK> operator++ (int);
-
- /// Prefix advance.
- ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK> &operator-- (void);
-
- /// Postfix advance.
- ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK> operator-- (int);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Map_Manager.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Map_Manager.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Map_Manager.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_MAP_MANAGER_H */
-
diff --git a/dep/include/ace/Map_Manager.inl b/dep/include/ace/Map_Manager.inl
deleted file mode 100644
index 62502c1c4d5..00000000000
--- a/dep/include/ace/Map_Manager.inl
+++ /dev/null
@@ -1,729 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Map_Manager.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Guard_T.h"
-#include "ace/Log_Msg.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class EXT_ID, class INT_ID> ACE_INLINE
-ACE_Map_Entry<EXT_ID, INT_ID>::ACE_Map_Entry (void)
- : next_ (0),
- prev_ (0)
-#if defined (ACE_HAS_LAZY_MAP_MANAGER)
- , free_ (1)
-#endif /* ACE_HAS_LAZY_MAP_MANAGER */
-{
-}
-
-template <class EXT_ID, class INT_ID> ACE_INLINE
-ACE_Map_Entry<EXT_ID, INT_ID>::~ACE_Map_Entry (void)
-{
- // No-op just to keep some compilers happy...
-}
-
-template <class EXT_ID, class INT_ID> ACE_INLINE ACE_UINT32
-ACE_Map_Entry<EXT_ID, INT_ID>::next (void) const
-{
- return this->next_;
-}
-
-template <class EXT_ID, class INT_ID> ACE_INLINE void
-ACE_Map_Entry<EXT_ID, INT_ID>::next (ACE_UINT32 n)
-{
- this->next_ = n;
-}
-
-template <class EXT_ID, class INT_ID> ACE_INLINE ACE_UINT32
-ACE_Map_Entry<EXT_ID, INT_ID>::prev (void) const
-{
- return this->prev_;
-}
-
-template <class EXT_ID, class INT_ID> ACE_INLINE void
-ACE_Map_Entry<EXT_ID, INT_ID>::prev (ACE_UINT32 p)
-{
- this->prev_ = p;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::ACE_Map_Manager (size_t size,
- ACE_Allocator *alloc)
- : allocator_ (0),
- search_structure_ (0),
- total_size_ (0),
- cur_size_ (0)
-{
- if (this->open (size, alloc) == -1)
- ACE_ERROR ((LM_ERROR, ACE_TEXT ("ACE_Map_Manager\n")));
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::ACE_Map_Manager (ACE_Allocator *alloc)
- : allocator_ (0),
- search_structure_ (0),
- total_size_ (0),
- cur_size_ (0)
-{
- if (this->open (ACE_DEFAULT_MAP_SIZE, alloc) == -1)
- ACE_ERROR ((LM_ERROR, ACE_TEXT ("ACE_Map_Manager\n")));
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::close (void)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->close_i ();
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::~ACE_Map_Manager (void)
-{
- this->close ();
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::bind (const EXT_ID &ext_id,
- const INT_ID &int_id)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->bind_i (ext_id,
- int_id);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- EXT_ID &old_ext_id,
- INT_ID &old_int_id)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->rebind_i (ext_id,
- int_id,
- old_ext_id,
- old_int_id);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- INT_ID &old_int_id)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->rebind_i (ext_id,
- int_id,
- old_int_id);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const INT_ID &int_id)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->rebind_i (ext_id,
- int_id);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::trybind (const EXT_ID &ext_id,
- INT_ID &int_id)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->trybind_i (ext_id,
- int_id);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::find (const EXT_ID &ext_id) const
-{
- ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> *nc_this =
- (ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> *) this;
- ACE_READ_GUARD_RETURN (ACE_LOCK, ace_mon, nc_this->lock_, -1);
-
- ACE_UINT32 slot = 0;
- return nc_this->find_and_return_index (ext_id, slot);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::find (const EXT_ID &ext_id,
- INT_ID &int_id) const
-{
- ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> *nc_this =
- (ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> *) this;
- ACE_READ_GUARD_RETURN (ACE_LOCK, ace_mon, nc_this->lock_, -1);
-
- return nc_this->find_i (ext_id, int_id);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::unbind_i (const EXT_ID &ext_id)
-{
- // Unbind the entry.
- ACE_UINT32 slot = 0;
- return this->unbind_and_return_index (ext_id,
- slot);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::unbind (const EXT_ID &ext_id,
- INT_ID &int_id)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->unbind_i (ext_id,
- int_id);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::unbind (const EXT_ID &ext_id)
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
- return this->unbind_i (ext_id);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE size_t
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::current_size (void) const
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, static_cast<size_t> (-1));
- return this->cur_size_;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE size_t
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::total_size (void) const
-{
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, static_cast<size_t> (-1));
- return this->total_size_;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE ACE_LOCK &
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::mutex (void)
-{
- return this->lock_;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE void
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::move_from_free_list_to_occupied_list (ACE_UINT32 slot)
-{
- this->shared_move (slot,
- this->free_list_,
- this->free_list_id (),
- this->occupied_list_,
- this->occupied_list_id ());
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE void
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::move_from_occupied_list_to_free_list (ACE_UINT32 slot)
-{
- this->shared_move (slot,
- this->occupied_list_,
- this->occupied_list_id (),
- this->free_list_,
- this->free_list_id ());
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::equal (const EXT_ID &id1,
- const EXT_ID &id2)
-{
- return id1 == id2;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE ACE_UINT32
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::free_list_id (void) const
-{
- // If you change ~0, please change
- // ACE_Active_Map_Manager_Key::ACE_Active_Map_Manager_Key()
- // accordingly.
- return (ACE_UINT32) ~0;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE ACE_UINT32
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::occupied_list_id (void) const
-{
- return (ACE_UINT32) ~1;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK>
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::begin (void)
-{
- return ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK> (*this);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK>
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::end (void)
-{
- return ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK> (*this, 1);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK>
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::rbegin (void)
-{
- return ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK> (*this);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK>
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::rend (void)
-{
- return ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK> (*this, 1);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>::ACE_Map_Iterator_Base (ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> &mm)
- : map_man_ (&mm),
- next_ (map_man_->occupied_list_id ())
-{
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>::next (ACE_Map_Entry<EXT_ID, INT_ID> *&mm) const
-{
- if (this->next_ != this->map_man_->occupied_list_id ())
- {
- mm = &this->map_man_->search_structure_[this->next_];
- return 1;
- }
- else
- return 0;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>::done (void) const
-{
- return this->next_ == this->map_man_->occupied_list_id ();
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>::forward_i (void)
-{
-
-#if defined (ACE_HAS_LAZY_MAP_MANAGER)
-
- while (1)
- {
- // Go to the next item in the list.
- this->next_ = this->map_man_->search_structure_[this->next_].next ();
-
- // Stop if we reach the end.
- if (this->done ())
- break;
-
- // Break if we find a non-free slot.
- if (!this->map_man_->search_structure_[this->next_].free_)
- {
- break;
- }
- }
-
-#else
-
- this->next_ = this->map_man_->search_structure_[this->next_].next ();
-
-#endif /* ACE_HAS_LAZY_MAP_MANAGER */
-
- return this->next_ != this->map_man_->occupied_list_id ();
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>::reverse_i (void)
-{
-
-#if defined (ACE_HAS_LAZY_MAP_MANAGER)
-
- while (1)
- {
- // Go to the prev item in the list.
- this->next_ = this->map_man_->search_structure_[this->next_].prev ();
-
- // Stop if we reach the end.
- if (this->done ())
- break;
-
- // Break if we find a non-free slot.
- if (!this->map_man_->search_structure_[this->next_].free_)
- {
- break;
- }
- }
-
-#else
-
- this->next_ = this->map_man_->search_structure_[this->next_].prev ();
-
-#endif /* ACE_HAS_LAZY_MAP_MANAGER */
-
- return this->next_ != this->map_man_->occupied_list_id ();
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> &
-ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>::map (void)
-{
- return *this->map_man_;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE bool
-ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>::operator== (const ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK> &rhs) const
-{
- return (this->map_man_ == rhs.map_man_ &&
- this->next_ == rhs.next_);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE bool
-ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>::operator!= (const ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK> &rhs) const
-{
- return !this->operator== (rhs);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Const_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>::ACE_Map_Const_Iterator_Base (const ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> &mm)
- : map_man_ (&mm),
- next_ (this->map_man_->occupied_list_id ())
-{
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Const_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>::next (ACE_Map_Entry<EXT_ID, INT_ID> *&mm) const
-{
- if (this->next_ != this->map_man_->occupied_list_id ())
- {
- mm = &this->map_man_->search_structure_[this->next_];
- return 1;
- }
- else
- return 0;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Const_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>::done (void) const
-{
- return this->next_ == this->map_man_->occupied_list_id ();
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Const_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>::forward_i (void)
-{
-
-#if defined (ACE_HAS_LAZY_MAP_MANAGER)
-
- while (1)
- {
- // Go to the next item in the list.
- this->next_ = this->map_man_->search_structure_[this->next_].next ();
-
- // Stop if we reach the end.
- if (this->done ())
- break;
-
- // Break if we find a non-free slot.
- if (!this->map_man_->search_structure_[this->next_].free_)
- {
- break;
- }
- }
-
-#else
-
- this->next_ = this->map_man_->search_structure_[this->next_].next ();
-
-#endif /* ACE_HAS_LAZY_MAP_MANAGER */
-
- return this->next_ != this->map_man_->occupied_list_id ();
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Const_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>::reverse_i (void)
-{
-
-#if defined (ACE_HAS_LAZY_MAP_MANAGER)
-
- while (1)
- {
- // Go to the prev item in the list.
- this->next_ = this->map_man_->search_structure_[this->next_].prev ();
-
- // Stop if we reach the end.
- if (this->done ())
- break;
-
- // Break if we find a non-free slot.
- if (!this->map_man_->search_structure_[this->next_].free_)
- {
- break;
- }
- }
-
-#else
-
- this->next_ = this->map_man_->search_structure_[this->next_].prev ();
-
-#endif /* ACE_HAS_LAZY_MAP_MANAGER */
-
- return this->next_ != this->map_man_->occupied_list_id ();
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-const ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> &
-ACE_Map_Const_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>::map (void) const
-{
- return *this->map_man_;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE bool
-ACE_Map_Const_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>::operator== (const ACE_Map_Const_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK> &rhs) const
-{
- return (this->map_man_ == rhs.map_man_ &&
- this->next_ == rhs.next_);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE bool
-ACE_Map_Const_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK>::operator!= (const ACE_Map_Const_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK> &rhs) const
-{
- return !this->operator== (rhs);
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK>::ACE_Map_Iterator (ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> &mm,
- int pass_end)
- : ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK> (mm)
-{
- if (!pass_end)
- {
-
-#if defined (ACE_HAS_LAZY_MAP_MANAGER)
-
- // Start here.
- this->next_ = this->map_man_->occupied_list_.next ();
-
- while (1)
- {
- // Stop if we reach the end.
- if (this->done ())
- break;
-
- // Break if we find a non-free slot.
- if (!this->map_man_->search_structure_[this->next_].free_)
- {
- break;
- }
-
- // Go to the next item in the list.
- this->next_ = this->map_man_->search_structure_[this->next_].next ();
- }
-
-#else
-
- this->next_ = this->map_man_->occupied_list_.next ();
-
-#endif /* ACE_HAS_LAZY_MAP_MANAGER */
-
- }
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK>::advance (void)
-{
- return this->forward_i ();
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK> &
-ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK>::operator++ (void)
-{
- this->forward_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK>
-ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK>::operator++ (int)
-{
- ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK> retv (*this);
- ++*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK> &
-ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK>::operator-- (void)
-{
- this->reverse_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK>
-ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK>::operator-- (int)
-{
- ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK> retv (*this);
- --*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK>::ACE_Map_Const_Iterator (const ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> &mm,
- int pass_end)
- : ACE_Map_Const_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK> (mm)
-{
- if (!pass_end)
- {
-
-#if defined (ACE_HAS_LAZY_MAP_MANAGER)
-
- // Start here.
- this->next_ = this->map_man_->occupied_list_.next ();
-
- while (1)
- {
- // Stop if we reach the end.
- if (this->done ())
- break;
-
- // Break if we find a non-free slot.
- if (!this->map_man_->search_structure_[this->next_].free_)
- {
- break;
- }
-
- // Go to the next item in the list.
- this->next_ = this->map_man_->search_structure_[this->next_].next ();
- }
-
-#else
-
- this->next_ = this->map_man_->occupied_list_.next ();
-
-#endif /* ACE_HAS_LAZY_MAP_MANAGER */
-
- }
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK>::advance (void)
-{
- return this->forward_i ();
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK> &
-ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK>::operator++ (void)
-{
- this->forward_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK>
-ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK>::operator++ (int)
-{
- ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK> retv (*this);
- ++*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK> &
-ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK>::operator-- (void)
-{
- this->reverse_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK>
-ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK>::operator-- (int)
-{
- ACE_Map_Const_Iterator<EXT_ID, INT_ID, ACE_LOCK> retv (*this);
- --*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK>::ACE_Map_Reverse_Iterator (ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK> &mm,
- int pass_end)
- : ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK> (mm)
-{
- if (!pass_end)
- {
-
-#if defined (ACE_HAS_LAZY_MAP_MANAGER)
-
- // Start here.
- this->next_ = this->map_man_->occupied_list_.prev ();
-
- while (1)
- {
- // Stop if we reach the end.
- if (this->done ())
- break;
-
- // Break if we find a non-free slot.
- if (!this->map_man_->search_structure_[this->next_].free_)
- {
- break;
- }
-
- // Go to the prev item in the list.
- this->next_ = this->map_man_->search_structure_[this->next_].prev ();
- }
-
-#else
-
- this->next_ = this->map_man_->occupied_list_.prev ();
-
-#endif /* ACE_HAS_LAZY_MAP_MANAGER */
-
-}
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE int
-ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK>::advance (void)
-{
- return this->reverse_i ();
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK> &
-ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK>::operator++ (void)
-{
- this->reverse_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK>
-ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK>::operator++ (int)
-{
- ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK> retv (*this);
- ++*this;
- return retv;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK> &
-ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK>::operator-- (void)
-{
- this->forward_i ();
- return *this;
-}
-
-template <class EXT_ID, class INT_ID, class ACE_LOCK> ACE_INLINE
-ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK>
-ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK>::operator-- (int)
-{
- ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK> retv (*this);
- --*this;
- return retv;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Map_T.h b/dep/include/ace/Map_T.h
deleted file mode 100644
index 1882b354e52..00000000000
--- a/dep/include/ace/Map_T.h
+++ /dev/null
@@ -1,1612 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Map_T.h
- *
- * $Id: Map_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Irfan Pyarali <irfan@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_MAP_T_H
-#define ACE_MAP_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Pair_T.h"
-#include "ace/Map_Manager.h"
-#include "ace/Hash_Map_Manager_T.h"
-#include "ace/Active_Map_Manager.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Noop_Key_Generator
- *
- * @brief Defines a noop key generator.
- */
-template <class T>
-class ACE_Noop_Key_Generator
-{
-public:
-
- /// Functor method: generates a new key.
- int operator () (T &);
-};
-
-/**
- * @class ACE_Incremental_Key_Generator
- *
- * @brief Defines a simple incremental key generator.
- *
- * Generates a new key of type T by incrementing current
- * value. Requirements on T are:
- * - Constructor that accepts 0 in the constructor.
- * - Prefix increment.
- * - Assignment.
- * Note that a primitive types such as u_long, int, etc., are
- * suitable for this class.
- */
-template <class T>
-class ACE_Incremental_Key_Generator
-{
-public:
-
- /// Constructor.
- ACE_Incremental_Key_Generator (void);
-
- /// Functor method: generates a new key.
- int operator () (T &t);
-
- /// Returns the current value.
- const T& current_value (void) const;
-
-protected:
-
- /// Current value.
- T t_;
-};
-
-/**
- * @class ACE_Iterator_Impl
- *
- * @brief Defines a abstract iterator.
- *
- * Implementation to be provided by subclasses.
- */
-template <class T>
-class ACE_Iterator_Impl
-{
-public:
-
- /// Destructor.
- virtual ~ACE_Iterator_Impl (void);
-
- /// Clone.
- virtual ACE_Iterator_Impl<T> *clone (void) const = 0;
-
- /// Comparison.
- virtual int compare (const ACE_Iterator_Impl<T> &rhs) const = 0;
-
- /// Dereference.
- virtual T dereference (void) const = 0;
-
- /// Advance.
- virtual void plus_plus (void) = 0;
-
- /// Reverse.
- virtual void minus_minus (void) = 0;
-};
-
-/**
- * @class ACE_Reverse_Iterator_Impl
- *
- * @brief Defines a abstract reverse iterator.
- *
- * Implementation to be provided by subclasses.
- */
-template <class T>
-class ACE_Reverse_Iterator_Impl
-{
-public:
-
- /// Destructor.
- virtual ~ACE_Reverse_Iterator_Impl (void);
-
- /// Clone.
- virtual ACE_Reverse_Iterator_Impl<T> *clone (void) const = 0;
-
- /// Comparison.
- virtual int compare (const ACE_Reverse_Iterator_Impl<T> &rhs) const = 0;
-
- /// Dereference.
- virtual T dereference (void) const = 0;
-
- /// Advance.
- virtual void plus_plus (void) = 0;
-
- /// Reverse.
- virtual void minus_minus (void) = 0;
-};
-
-/**
- * @class ACE_Iterator
- *
- * @brief Defines the iterator interface.
- *
- * Implementation to be provided by forwarding.
- */
-template <class T>
-class ACE_Iterator
-{
-public:
-
- // = Traits.
- typedef T value_type;
- typedef ACE_Iterator_Impl<T> implementation;
-
- /// Constructor.
- ACE_Iterator (ACE_Iterator_Impl<T> *impl);
-
- /// Copy constructor.
- ACE_Iterator (const ACE_Iterator<T> &rhs);
-
- /// Destructor.
- ~ACE_Iterator (void);
-
- /// Assignment operator.
- ACE_Iterator<T> &operator= (const ACE_Iterator<T> &rhs);
-
- /// Comparison operators.
- bool operator== (const ACE_Iterator<T> &rhs) const;
- bool operator!= (const ACE_Iterator<T> &rhs) const;
-
- /// Dereference operator.
- T operator *() const;
-
- /// Prefix advance.
- ACE_Iterator<T> &operator++ (void);
-
- /// Postfix advance.
- ACE_Iterator<T> operator++ (int);
-
- /// Prefix reverse.
- ACE_Iterator<T> &operator-- (void);
-
- /// Postfix reverse.
- ACE_Iterator<T> operator-- (int);
-
- /// Accessor to implementation object.
- ACE_Iterator_Impl<T> &impl (void);
-
-protected:
-
- /// Implementation pointer.
- ACE_Iterator_Impl<T> *implementation_;
-};
-
-/**
- * @class ACE_Reverse_Iterator
- *
- * @brief Defines the reverse iterator interface.
- *
- * Implementation to be provided by forwarding.
- */
-template <class T>
-class ACE_Reverse_Iterator
-{
-public:
-
- // = Traits.
- typedef T value_type;
- typedef ACE_Reverse_Iterator_Impl<T> implementation;
-
- /// Constructor.
- ACE_Reverse_Iterator (ACE_Reverse_Iterator_Impl<T> *impl);
-
- /// Copy constructor.
- ACE_Reverse_Iterator (const ACE_Reverse_Iterator<T> &rhs);
-
- /// Destructor.
- ~ACE_Reverse_Iterator (void);
-
- /// Assignment operator.
- ACE_Reverse_Iterator<T> &operator= (const ACE_Reverse_Iterator<T> &rhs);
-
- /**
- * @name Comparison Operators
- *
- * The usual equality operators.
- */
- //@{
- bool operator== (const ACE_Reverse_Iterator<T> &rhs) const;
- bool operator!= (const ACE_Reverse_Iterator<T> &rhs) const;
- //@}
-
- /// Dereference operator.
- T operator *() const;
-
- /// Prefix advance.
- ACE_Reverse_Iterator<T> &operator++ (void);
-
- /// Postfix advance.
- ACE_Reverse_Iterator<T> operator++ (int);
-
- /// Prefix reverse.
- ACE_Reverse_Iterator<T> &operator-- (void);
-
- /// Postfix reverse.
- ACE_Reverse_Iterator<T> operator-- (int);
-
- /// Accessor to implementation object.
- ACE_Reverse_Iterator_Impl<T> &impl (void);
-
-protected:
-
- /// Implementation pointer.
- ACE_Reverse_Iterator_Impl<T> *implementation_;
-};
-
-/**
- * @class ACE_Map
- *
- * @brief Defines a map interface.
- *
- * Implementation to be provided by subclasses.
- */
-template <class KEY, class VALUE>
-class ACE_Map
-{
-public:
-
- // = Traits.
- typedef KEY
- key_type;
- typedef VALUE
- mapped_type;
- typedef ACE_Reference_Pair<const KEY, VALUE>
- value_type;
- typedef ACE_Iterator<value_type>
- iterator;
- typedef ACE_Reverse_Iterator<value_type>
- reverse_iterator;
- typedef ACE_Iterator_Impl<value_type>
- iterator_implementation;
- typedef ACE_Reverse_Iterator_Impl<value_type>
- reverse_iterator_implementation;
-
- /// Close down and release dynamically allocated resources.
- virtual ~ACE_Map (void);
-
- /// Initialize a map with size @a length.
- virtual int open (size_t length = ACE_DEFAULT_MAP_SIZE,
- ACE_Allocator *alloc = 0) = 0;
-
- /// Close down a <Map> and release dynamically allocated resources.
- virtual int close (void) = 0;
-
- /**
- * Add @a key / @a value pair to the map. If @a key is already in the
- * map then no changes are made and 1 is returned. Returns 0 on a
- * successful addition. This function fails for maps that do not
- * allow user specified keys. @a key is an "in" parameter.
- */
- virtual int bind (const KEY &key,
- const VALUE &value) = 0;
-
- /**
- * Add @a key / @a value pair to the map. @a key is an "inout" parameter
- * and maybe modified/extended by the map to add additional
- * information. To recover original key, call the <recover_key>
- * method.
- */
- virtual int bind_modify_key (const VALUE &value,
- KEY &key) = 0;
-
- /**
- * Produce a key and return it through @a key which is an "out"
- * parameter. For maps that do not naturally produce keys, the map
- * adapters will use the @c KEY_GENERATOR class to produce a key.
- * However, the users are responsible for not jeopardizing this key
- * production scheme by using user specified keys with keys produced
- * by the key generator.
- */
- virtual int create_key (KEY &key) = 0;
-
- /**
- * Add @a value to the map, and the corresponding key produced by the
- * Map is returned through @a key which is an "out" parameter. For
- * maps that do not naturally produce keys, the map adapters will
- * use the @c KEY_GENERATOR class to produce a key. However, the
- * users are responsible for not jeopardizing this key production
- * scheme by using user specified keys with keys produced by the key
- * generator.
- */
- virtual int bind_create_key (const VALUE &value,
- KEY &key) = 0;
-
- /**
- * Add @a value to the map. The user does not care about the
- * corresponding key produced by the Map. For maps that do not
- * naturally produce keys, the map adapters will use the
- * @c KEY_GENERATOR class to produce a key. However, the users are
- * responsible for not jeopardizing this key production scheme by
- * using user specified keys with keys produced by the key
- * generator.
- */
- virtual int bind_create_key (const VALUE &value) = 0;
-
- /// Recovers the original key potentially modified by the map during
- /// <bind_modify_key>.
- virtual int recover_key (const KEY &modified_key,
- KEY &original_key) = 0;
-
- /**
- * Reassociate @a key with @a value. The function fails if @a key is
- * not in the map for maps that do not allow user specified keys.
- * However, for maps that allow user specified keys, if the key is
- * not in the map, a new @a key / @a value association is created.
- */
- virtual int rebind (const KEY &key,
- const VALUE &value) = 0;
-
- /**
- * Reassociate @a key with @a value, storing the old value into the
- * "out" parameter @a old_value. The function fails if @a key is not
- * in the map for maps that do not allow user specified keys.
- * However, for maps that allow user specified keys, if the key is
- * not in the map, a new @a key / @a value association is created.
- */
- virtual int rebind (const KEY &key,
- const VALUE &value,
- VALUE &old_value) = 0;
-
- /**
- * Reassociate @a key with @a value, storing the old key and value
- * into the "out" parameters @a old_key and @a old_value. The
- * function fails if @a key is not in the map for maps that do not
- * allow user specified keys. However, for maps that allow user
- * specified keys, if the key is not in the map, a new @a key / @a value
- * association is created.
- */
- virtual int rebind (const KEY &key,
- const VALUE &value,
- KEY &old_key,
- VALUE &old_value) = 0;
-
- /**
- * Associate @a key with @a value if and only if @a key is not in the
- * map. If @a key is already in the map, then the @a value parameter
- * is overwritten with the existing value in the map. Returns 0 if a
- * new @a key / @a value association is created. Returns 1 if an
- * attempt is made to bind an existing entry. This function fails
- * for maps that do not allow user specified keys.
- */
- virtual int trybind (const KEY &key,
- VALUE &value) = 0;
-
- /// Locate @a value associated with @a key.
- virtual int find (const KEY &key,
- VALUE &value) = 0;
-
- /// Is @a key in the map?
- virtual int find (const KEY &key) = 0;
-
- /// Remove @a key from the map.
- virtual int unbind (const KEY &key) = 0;
-
- /// Remove @a key from the map, and return the @a value associated with
- /// @a key.
- virtual int unbind (const KEY &key,
- VALUE &value) = 0;
-
- /// Return the current size of the map.
- virtual size_t current_size (void) const = 0;
-
- /// Return the total size of the map.
- virtual size_t total_size (void) const = 0;
-
- /// Dump the state of an object.
- virtual void dump (void) const = 0;
-
- // = STL styled iterator factory functions.
-
- /// Return forward iterator.
- iterator begin (void);
- iterator end (void);
-
- /// Return reverse iterator.
- reverse_iterator rbegin (void);
- reverse_iterator rend (void);
-
-protected:
-
- // = Protected no-op constructor.
- ACE_Map (void);
-
- /// Return forward iterator.
- virtual ACE_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *begin_impl (void) = 0;
- virtual ACE_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *end_impl (void) = 0;
-
- /// Return reverse iterator.
- virtual ACE_Reverse_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *rbegin_impl (void) = 0;
- virtual ACE_Reverse_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *rend_impl (void) = 0;
-
-private:
-
- // = Disallow these operations.
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Map<KEY, VALUE> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Map (const ACE_Map<KEY, VALUE> &))
-};
-
-/**
- * @class ACE_Map_Impl_Iterator_Adapter
- *
- * @brief Defines a iterator implementation for the Map_Impl class.
- *
- * Implementation to be provided by <IMPLEMENTATION>.
- */
-template <class T, class IMPLEMENTATION, class ENTRY>
-class ACE_Map_Impl_Iterator_Adapter : public ACE_Iterator_Impl<T>
-{
-public:
-
- // = Traits.
- typedef IMPLEMENTATION
- implementation;
-
- /// Constructor.
- ACE_Map_Impl_Iterator_Adapter (const IMPLEMENTATION &impl);
-
- /// Destructor.
- virtual ~ACE_Map_Impl_Iterator_Adapter (void);
-
- /// Clone.
- virtual ACE_Iterator_Impl<T> *clone (void) const;
-
- /// Comparison.
- virtual int compare (const ACE_Iterator_Impl<T> &rhs) const;
-
- /// Dereference.
- virtual T dereference (void) const;
-
- /// Advance.
- virtual void plus_plus (void);
-
- /// Reverse.
- virtual void minus_minus (void);
-
- /// Accessor to implementation object.
- IMPLEMENTATION &impl (void);
-
-protected:
-
- /// All implementation details are forwarded to this class.
- IMPLEMENTATION implementation_;
-};
-
-/**
- * @class ACE_Map_Impl_Reverse_Iterator_Adapter
- *
- * @brief Defines a reverse iterator implementation for the Map_Impl class.
- *
- * Implementation to be provided by IMPLEMENTATION.
- */
-template <class T, class IMPLEMENTATION, class ENTRY>
-class ACE_Map_Impl_Reverse_Iterator_Adapter : public ACE_Reverse_Iterator_Impl<T>
-{
-public:
-
- // = Traits.
- typedef IMPLEMENTATION
- implementation;
-
- /// Constructor.
- ACE_Map_Impl_Reverse_Iterator_Adapter (const IMPLEMENTATION &impl);
-
- /// Destructor.
- virtual ~ACE_Map_Impl_Reverse_Iterator_Adapter (void);
-
- /// Clone.
- virtual ACE_Reverse_Iterator_Impl<T> *clone (void) const;
-
- /// Comparison.
- virtual int compare (const ACE_Reverse_Iterator_Impl<T> &rhs) const;
-
- /// Dereference.
- virtual T dereference (void) const;
-
- /// Advance.
- virtual void plus_plus (void);
-
- /// Reverse.
- virtual void minus_minus (void);
-
- /// Accessor to implementation object.
- IMPLEMENTATION &impl (void);
-
-protected:
-
- /// All implementation details are forwarded to this class.
- IMPLEMENTATION implementation_;
-};
-
-/**
- * @class ACE_Map_Impl
- *
- * @brief Defines a map implementation.
- *
- * Implementation to be provided by <IMPLEMENTATION>.
- */
-template <class KEY, class VALUE, class IMPLEMENTATION, class ITERATOR, class REVERSE_ITERATOR, class ENTRY>
-class ACE_Map_Impl : public ACE_Map<KEY, VALUE>
-{
-public:
-
- // = Traits.
- typedef ACE_Map_Impl_Iterator_Adapter<typename ACE_Map<KEY, VALUE>::value_type, ITERATOR, ENTRY>
- iterator_impl;
- typedef ACE_Map_Impl_Reverse_Iterator_Adapter<typename ACE_Map<KEY, VALUE>::value_type, REVERSE_ITERATOR, ENTRY>
- reverse_iterator_impl;
-
- typedef IMPLEMENTATION
- implementation;
-
- // = Initialization and termination methods.
- /// Initialize with the ACE_DEFAULT_MAP_SIZE.
- ACE_Map_Impl (ACE_Allocator *alloc = 0);
-
- /// Initialize with @a size entries. The @a size parameter is ignored
- /// by maps for which an initialize size does not make sense.
- ACE_Map_Impl (size_t size,
- ACE_Allocator *alloc = 0);
-
- /// Close down and release dynamically allocated resources.
- virtual ~ACE_Map_Impl (void);
-
- /// Initialize a <Map> with size @a length.
- virtual int open (size_t length = ACE_DEFAULT_MAP_SIZE,
- ACE_Allocator *alloc = 0);
-
- /// Close down a <Map> and release dynamically allocated resources.
- virtual int close (void);
-
- /**
- * Add @a key / @a value pair to the map. If @a key is already in the
- * map then no changes are made and 1 is returned. Returns 0 on a
- * successful addition. This function fails for maps that do not
- * allow user specified keys. @a key is an "in" parameter.
- */
- virtual int bind (const KEY &key,
- const VALUE &value);
-
- /**
- * Add @a key / @a value pair to the map. @a key is an "inout" parameter
- * and maybe modified/extended by the map to add additional
- * information. To recover original key, call the <recover_key>
- * method.
- */
- virtual int bind_modify_key (const VALUE &value,
- KEY &key);
-
- /**
- * Produce a key and return it through @a key which is an "out"
- * parameter. For maps that do not naturally produce keys, the map
- * adapters will use the @c KEY_GENERATOR class to produce a key.
- * However, the users are responsible for not jeopardizing this key
- * production scheme by using user specified keys with keys produced
- * by the key generator.
- */
- virtual int create_key (KEY &key);
-
- /**
- * Add @a value to the map, and the corresponding key produced by the
- * Map is returned through @a key which is an "out" parameter. For
- * maps that do not naturally produce keys, the map adapters will
- * use the @c KEY_GENERATOR class to produce a key. However, the
- * users are responsible for not jeopardizing this key production
- * scheme by using user specified keys with keys produced by the key
- * generator.
- */
- virtual int bind_create_key (const VALUE &value,
- KEY &key);
-
- /**
- * Add @a value to the map. The user does not care about the
- * corresponding key produced by the Map. For maps that do not
- * naturally produce keys, the map adapters will use the
- * @c KEY_GENERATOR class to produce a key. However, the users are
- * responsible for not jeopardizing this key production scheme by
- * using user specified keys with keys produced by the key
- * generator.
- */
- virtual int bind_create_key (const VALUE &value);
-
- /// Recovers the original key potentially modified by the map during
- /// <bind_modify_key>.
- virtual int recover_key (const KEY &modified_key,
- KEY &original_key);
-
- /**
- * Reassociate @a key with @a value. The function fails if @a key is
- * not in the map for maps that do not allow user specified keys.
- * However, for maps that allow user specified keys, if the key is
- * not in the map, a new @a key / @a value association is created.
- */
- virtual int rebind (const KEY &key,
- const VALUE &value);
-
- /**
- * Reassociate @a key with @a value, storing the old value into the
- * "out" parameter @a old_value. The function fails if @a key is not
- * in the map for maps that do not allow user specified keys.
- * However, for maps that allow user specified keys, if the key is
- * not in the map, a new @a key / @a value association is created.
- */
- virtual int rebind (const KEY &key,
- const VALUE &value,
- VALUE &old_value);
-
- /**
- * Reassociate @a key with @a value, storing the old key and value
- * into the "out" parameters @a old_key and @a old_value. The
- * function fails if @a key is not in the map for maps that do not
- * allow user specified keys. However, for maps that allow user
- * specified keys, if the key is not in the map, a new @a key / @a value
- * association is created.
- */
- virtual int rebind (const KEY &key,
- const VALUE &value,
- KEY &old_key,
- VALUE &old_value);
-
- /**
- * Associate @a key with @a value if and only if @a key is not in the
- * map. If @a key is already in the map, then the @a value parameter
- * is overwritten with the existing value in the map. Returns 0 if a
- * new @a key / @a value association is created. Returns 1 if an
- * attempt is made to bind an existing entry. This function fails
- * for maps that do not allow user specified keys.
- */
- virtual int trybind (const KEY &key,
- VALUE &value);
-
- /// Locate @a value associated with @a key.
- virtual int find (const KEY &key,
- VALUE &value);
-
- /// Is @a key in the map?
- virtual int find (const KEY &key);
-
- /// Remove @a key from the map.
- virtual int unbind (const KEY &key);
-
- /// Remove @a key from the map, and return the @a value associated with
- /// @a key.
- virtual int unbind (const KEY &key,
- VALUE &value);
-
- /// Return the current size of the map.
- virtual size_t current_size (void) const;
-
- /// Return the total size of the map.
- virtual size_t total_size (void) const;
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Accessor to implementation object.
- IMPLEMENTATION &impl (void);
-
-protected:
-
- /// All implementation details are forwarded to this class.
- IMPLEMENTATION implementation_;
-
- // = STL styled iterator factory functions.
-
- /// Return forward iterator.
- virtual ACE_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *begin_impl (void);
- virtual ACE_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *end_impl (void);
-
- /// Return reverse iterator.
- virtual ACE_Reverse_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *rbegin_impl (void);
- virtual ACE_Reverse_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *rend_impl (void);
-
-private:
-
- // = Disallow these operations.
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Map_Impl<KEY, VALUE, IMPLEMENTATION, ITERATOR, REVERSE_ITERATOR, ENTRY> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Map_Impl (const ACE_Map_Impl<KEY, VALUE, IMPLEMENTATION, ITERATOR, REVERSE_ITERATOR, ENTRY> &))
-};
-
-/**
- * @class ACE_Active_Map_Manager_Iterator_Adapter
- *
- * @brief Defines a iterator implementation for the Active_Map_Manager_Adapter.
- *
- * Implementation to be provided by ACE_Active_Map_Manager::iterator.
- */
-template <class T, class VALUE>
-class ACE_Active_Map_Manager_Iterator_Adapter : public ACE_Iterator_Impl<T>
-{
-public:
-
- // = Traits.
- typedef typename ACE_Active_Map_Manager<VALUE>::iterator
- implementation;
-
- /// Constructor.
- ACE_Active_Map_Manager_Iterator_Adapter (const ACE_Map_Iterator<ACE_Active_Map_Manager_Key, VALUE, ACE_Null_Mutex> &impl);
-
- /// Destructor.
- virtual ~ACE_Active_Map_Manager_Iterator_Adapter (void);
-
- /// Clone.
- virtual ACE_Iterator_Impl<T> *clone (void) const;
-
- /// Comparison.
- virtual int compare (const ACE_Iterator_Impl<T> &rhs) const;
-
- /// Dereference.
- virtual T dereference (void) const;
-
- /// Advance.
- virtual void plus_plus (void);
-
- /// Reverse.
- virtual void minus_minus (void);
-
- /// Accessor to implementation object.
- ACE_Map_Iterator<ACE_Active_Map_Manager_Key, VALUE, ACE_Null_Mutex> &impl (void);
-
-protected:
-
- /// All implementation details are forwarded to this class.
- ACE_Map_Iterator<ACE_Active_Map_Manager_Key, VALUE, ACE_Null_Mutex> implementation_;
-};
-
-/**
- * @class ACE_Active_Map_Manager_Reverse_Iterator_Adapter
- *
- * @brief Defines a reverse iterator implementation for the Active_Map_Manager_Adapter.
- *
- * Implementation to be provided by ACE_Active_Map_Manager::reverse_iterator.
- */
-template <class T, class VALUE>
-class ACE_Active_Map_Manager_Reverse_Iterator_Adapter : public ACE_Reverse_Iterator_Impl<T>
-{
-public:
-
- // = Traits.
- typedef typename ACE_Active_Map_Manager<VALUE>::reverse_iterator
- implementation;
-
- /// Constructor.
- ACE_Active_Map_Manager_Reverse_Iterator_Adapter (const ACE_Map_Reverse_Iterator<ACE_Active_Map_Manager_Key, VALUE, ACE_Null_Mutex> &impl);
-
- /// Destructor.
- virtual ~ACE_Active_Map_Manager_Reverse_Iterator_Adapter (void);
-
- /// Clone.
- virtual ACE_Reverse_Iterator_Impl<T> *clone (void) const;
-
- /// Comparison.
- virtual int compare (const ACE_Reverse_Iterator_Impl<T> &rhs) const;
-
- /// Dereference.
- virtual T dereference (void) const;
-
- /// Advance.
- virtual void plus_plus (void);
-
- /// Reverse.
- virtual void minus_minus (void);
-
- /// Accessor to implementation object.
- ACE_Map_Reverse_Iterator<ACE_Active_Map_Manager_Key, VALUE, ACE_Null_Mutex> &impl (void);
-
-protected:
-
- /// All implementation details are forwarded to this class.
- ACE_Map_Reverse_Iterator<ACE_Active_Map_Manager_Key, VALUE, ACE_Null_Mutex> implementation_;
-};
-
-/**
- * @class ACE_Active_Map_Manager_Adapter
- *
- * @brief Defines a map implementation.
- *
- * Implementation to be provided by <ACE_Active_Map_Manager>.
- */
-template <class KEY, class VALUE, class KEY_ADAPTER>
-class ACE_Active_Map_Manager_Adapter : public ACE_Map<KEY, VALUE>
-{
-public:
-
- // = Traits.
- typedef ACE_Pair<KEY, VALUE>
- expanded_value;
- typedef ACE_Active_Map_Manager_Iterator_Adapter<ACE_Reference_Pair<const KEY, VALUE>, expanded_value>
- iterator_impl;
- typedef ACE_Active_Map_Manager_Reverse_Iterator_Adapter<ACE_Reference_Pair<const KEY, VALUE>, expanded_value>
- reverse_iterator_impl;
- typedef ACE_Active_Map_Manager<expanded_value>
- implementation;
-
- // = Initialization and termination methods.
- /// Initialize with the ACE_DEFAULT_MAP_SIZE.
- ACE_Active_Map_Manager_Adapter (ACE_Allocator *alloc = 0);
-
- /// Initialize with @a size entries. The @a size parameter is ignored
- /// by maps for which an initialize size does not make sense.
- ACE_Active_Map_Manager_Adapter (size_t size,
- ACE_Allocator *alloc = 0);
-
- /// Close down and release dynamically allocated resources.
- virtual ~ACE_Active_Map_Manager_Adapter (void);
-
- /// Initialize a <Map> with size @a length.
- virtual int open (size_t length = ACE_DEFAULT_MAP_SIZE,
- ACE_Allocator *alloc = 0);
-
- /// Close down a <Map> and release dynamically allocated resources.
- virtual int close (void);
-
- /**
- * Add @a key / @a value pair to the map. If @a key is already in the
- * map then no changes are made and 1 is returned. Returns 0 on a
- * successful addition. This function fails for maps that do not
- * allow user specified keys. @a key is an "in" parameter.
- */
- virtual int bind (const KEY &key,
- const VALUE &value);
-
- /**
- * Add @a key / @a value pair to the map. @a key is an "inout" parameter
- * and maybe modified/extended by the map to add additional
- * information. To recover original key, call the <recover_key>
- * method.
- */
- virtual int bind_modify_key (const VALUE &value,
- KEY &key);
-
- /**
- * Produce a key and return it through @a key which is an "out"
- * parameter. For maps that do not naturally produce keys, the map
- * adapters will use the @c KEY_GENERATOR class to produce a key.
- * However, the users are responsible for not jeopardizing this key
- * production scheme by using user specified keys with keys produced
- * by the key generator.
- */
- virtual int create_key (KEY &key);
-
- /**
- * Add @a value to the map, and the corresponding key produced by the
- * Map is returned through @a key which is an "out" parameter. For
- * maps that do not naturally produce keys, the map adapters will
- * use the @c KEY_GENERATOR class to produce a key. However, the
- * users are responsible for not jeopardizing this key production
- * scheme by using user specified keys with keys produced by the key
- * generator.
- */
- virtual int bind_create_key (const VALUE &value,
- KEY &key);
-
- /**
- * Add @a value to the map. The user does not care about the
- * corresponding key produced by the Map. For maps that do not
- * naturally produce keys, the map adapters will use the
- * @c KEY_GENERATOR class to produce a key. However, the users are
- * responsible for not jeopardizing this key production scheme by
- * using user specified keys with keys produced by the key
- * generator.
- */
- virtual int bind_create_key (const VALUE &value);
-
- /// Recovers the original key potentially modified by the map during
- /// <bind_modify_key>.
- virtual int recover_key (const KEY &modified_key,
- KEY &original_key);
-
- /**
- * Reassociate @a key with @a value. The function fails if @a key is
- * not in the map for maps that do not allow user specified keys.
- * However, for maps that allow user specified keys, if the key is
- * not in the map, a new @a key / @a value association is created.
- */
- virtual int rebind (const KEY &key,
- const VALUE &value);
-
- /**
- * Reassociate @a key with @a value, storing the old value into the
- * "out" parameter @a old_value. The function fails if @a key is not
- * in the map for maps that do not allow user specified keys.
- * However, for maps that allow user specified keys, if the key is
- * not in the map, a new @a key / @a value association is created.
- */
- virtual int rebind (const KEY &key,
- const VALUE &value,
- VALUE &old_value);
-
- /**
- * Reassociate @a key with @a value, storing the old key and value
- * into the "out" parameters @a old_key and @a old_value. The
- * function fails if @a key is not in the map for maps that do not
- * allow user specified keys. However, for maps that allow user
- * specified keys, if the key is not in the map, a new @a key / @a value
- * association is created.
- */
- virtual int rebind (const KEY &key,
- const VALUE &value,
- KEY &old_key,
- VALUE &old_value);
-
- /**
- * Associate @a key with @a value if and only if @a key is not in the
- * map. If @a key is already in the map, then the @a value parameter
- * is overwritten with the existing value in the map. Returns 0 if a
- * new @a key / @a value association is created. Returns 1 if an
- * attempt is made to bind an existing entry. This function fails
- * for maps that do not allow user specified keys.
- */
- virtual int trybind (const KEY &key,
- VALUE &value);
-
- /// Locate @a value associated with @a key.
- virtual int find (const KEY &key,
- VALUE &value);
-
- /// Is @a key in the map?
- virtual int find (const KEY &key);
-
- /// Remove @a key from the map.
- virtual int unbind (const KEY &key);
-
- /// Remove @a key from the map, and return the @a value associated with
- /// @a key.
- virtual int unbind (const KEY &key,
- VALUE &value);
-
- /// Return the current size of the map.
- virtual size_t current_size (void) const;
-
- /// Return the total size of the map.
- virtual size_t total_size (void) const;
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Accessor to implementation object.
- ACE_Active_Map_Manager<ACE_Pair<KEY, VALUE> > &impl (void);
-
- /// Accessor to key adapter.
- KEY_ADAPTER &key_adapter (void);
-
-protected:
-
- /// Find helper.
- virtual int find (const KEY &key,
- expanded_value *&internal_value);
-
- /// Unbind helper.
- virtual int unbind (const KEY &key,
- expanded_value *&internal_value);
-
- /// All implementation details are forwarded to this class.
- ACE_Active_Map_Manager<ACE_Pair<KEY, VALUE> > implementation_;
-
- /// Adapts between the user key and the Active_Map_Manager_Key.
- KEY_ADAPTER key_adapter_;
-
- // = STL styled iterator factory functions.
-
- /// Return forward iterator.
- virtual ACE_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *begin_impl (void);
- virtual ACE_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *end_impl (void);
-
- /// Return reverse iterator.
- virtual ACE_Reverse_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *rbegin_impl (void);
- virtual ACE_Reverse_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *rend_impl (void);
-
-private:
-
- // = Disallow these operations.
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Active_Map_Manager_Adapter<KEY, VALUE, KEY_ADAPTER> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Active_Map_Manager_Adapter (const ACE_Active_Map_Manager_Adapter<KEY, VALUE, KEY_ADAPTER> &))
-};
-
-/**
- * @class ACE_Hash_Map_Manager_Ex_Iterator_Adapter
- *
- * @brief Defines a iterator implementation for the Hash_Map_Manager_Adapter.
- *
- * Implementation to be provided by ACE_Hash_Map_Manager_Ex::iterator.
- */
-template <class T, class KEY, class VALUE, class HASH_KEY, class COMPARE_KEYS>
-class ACE_Hash_Map_Manager_Ex_Iterator_Adapter : public ACE_Iterator_Impl<T>
-{
-public:
-
- // = Traits.
- typedef typename ACE_Hash_Map_Manager_Ex<KEY, VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex>::iterator
- implementation;
-
- /// Constructor.
- ACE_Hash_Map_Manager_Ex_Iterator_Adapter (const ACE_Hash_Map_Iterator_Ex<KEY, VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex> &impl);
-
- /// Destructor.
- virtual ~ACE_Hash_Map_Manager_Ex_Iterator_Adapter (void);
-
- /// Clone.
- virtual ACE_Iterator_Impl<T> *clone (void) const;
-
- /// Comparison.
- virtual int compare (const ACE_Iterator_Impl<T> &rhs) const;
-
- /// Dereference.
- virtual T dereference (void) const;
-
- /// Advance.
- virtual void plus_plus (void);
-
- /// Reverse.
- virtual void minus_minus (void);
-
- /// Accessor to implementation object.
- ACE_Hash_Map_Iterator_Ex<KEY, VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex> &impl (void);
-
-protected:
-
- /// All implementation details are forwarded to this class.
- ACE_Hash_Map_Iterator_Ex<KEY, VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex> implementation_;
-};
-
-/**
- * @class ACE_Hash_Map_Manager_Ex_Reverse_Iterator_Adapter
- *
- * @brief Defines a reverse iterator implementation for the Hash_Map_Manager_Adapter.
- *
- * Implementation to be provided by ACE_Hash_Map_Manager_Ex::reverse_iterator.
- */
-template <class T, class KEY, class VALUE, class HASH_KEY, class COMPARE_KEYS>
-class ACE_Hash_Map_Manager_Ex_Reverse_Iterator_Adapter : public ACE_Reverse_Iterator_Impl<T>
-{
-public:
-
- // = Traits.
- typedef typename ACE_Hash_Map_Manager_Ex<KEY, VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex>::reverse_iterator
- implementation;
-
- /// Constructor.
- ACE_Hash_Map_Manager_Ex_Reverse_Iterator_Adapter (const ACE_Hash_Map_Reverse_Iterator_Ex<KEY, VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex> &impl);
-
- /// Destructor.
- virtual ~ACE_Hash_Map_Manager_Ex_Reverse_Iterator_Adapter (void);
-
- /// Clone.
- virtual ACE_Reverse_Iterator_Impl<T> *clone (void) const;
-
- /// Comparison.
- virtual int compare (const ACE_Reverse_Iterator_Impl<T> &rhs) const;
-
- /// Dereference.
- virtual T dereference (void) const;
-
- /// Advance.
- virtual void plus_plus (void);
-
- /// Reverse.
- virtual void minus_minus (void);
-
- /// Accessor to implementation object.
- ACE_Hash_Map_Reverse_Iterator_Ex<KEY, VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex> &impl (void);
-
-protected:
-
- /// All implementation details are forwarded to this class.
- ACE_Hash_Map_Reverse_Iterator_Ex<KEY, VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex> implementation_;
-};
-
-/**
- * @class ACE_Hash_Map_Manager_Ex_Adapter
- *
- * @brief Defines a map implementation.
- *
- * Implementation to be provided by ACE_Hash_Map_Manager_Ex.
- */
-template <class KEY, class VALUE, class HASH_KEY, class COMPARE_KEYS, class KEY_GENERATOR>
-class ACE_Hash_Map_Manager_Ex_Adapter : public ACE_Map<KEY, VALUE>
-{
-public:
-
- // = Traits.
- typedef ACE_Hash_Map_Manager_Ex_Iterator_Adapter<ACE_Reference_Pair<const KEY, VALUE>, KEY, VALUE, HASH_KEY, COMPARE_KEYS>
- iterator_impl;
- typedef ACE_Hash_Map_Manager_Ex_Reverse_Iterator_Adapter<ACE_Reference_Pair<const KEY, VALUE>, KEY, VALUE, HASH_KEY, COMPARE_KEYS>
- reverse_iterator_impl;
- typedef ACE_Hash_Map_Manager_Ex<KEY, VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex>
- implementation;
-
- // = Initialization and termination methods.
- /// Initialize with the ACE_DEFAULT_MAP_SIZE.
- ACE_Hash_Map_Manager_Ex_Adapter (ACE_Allocator *alloc = 0);
-
- /// Initialize with @a size entries. The @a size parameter is ignored
- /// by maps for which an initialize size does not make sense.
- ACE_Hash_Map_Manager_Ex_Adapter (size_t size,
- ACE_Allocator *alloc = 0);
-
- /// Close down and release dynamically allocated resources.
- virtual ~ACE_Hash_Map_Manager_Ex_Adapter (void);
-
- /// Initialize a <Map> with size @a length.
- virtual int open (size_t length = ACE_DEFAULT_MAP_SIZE,
- ACE_Allocator *alloc = 0);
-
- /// Close down a <Map> and release dynamically allocated resources.
- virtual int close (void);
-
- /**
- * Add @a key / @a value pair to the map. If @a key is already in the
- * map then no changes are made and 1 is returned. Returns 0 on a
- * successful addition. This function fails for maps that do not
- * allow user specified keys. @a key is an "in" parameter.
- */
- virtual int bind (const KEY &key,
- const VALUE &value);
-
- /**
- * Add @a key / @a value pair to the map. @a key is an "inout" parameter
- * and maybe modified/extended by the map to add additional
- * information. To recover original key, call the <recover_key>
- * method.
- */
- virtual int bind_modify_key (const VALUE &value,
- KEY &key);
-
- /**
- * Produce a key and return it through @a key which is an "out"
- * parameter. For maps that do not naturally produce keys, the map
- * adapters will use the @c KEY_GENERATOR class to produce a key.
- * However, the users are responsible for not jeopardizing this key
- * production scheme by using user specified keys with keys produced
- * by the key generator.
- */
- virtual int create_key (KEY &key);
-
- /**
- * Add @a value to the map, and the corresponding key produced by the
- * Map is returned through @a key which is an "out" parameter. For
- * maps that do not naturally produce keys, the map adapters will
- * use the @c KEY_GENERATOR class to produce a key. However, the
- * users are responsible for not jeopardizing this key production
- * scheme by using user specified keys with keys produced by the key
- * generator.
- */
- virtual int bind_create_key (const VALUE &value,
- KEY &key);
-
- /**
- * Add @a value to the map. The user does not care about the
- * corresponding key produced by the Map. For maps that do not
- * naturally produce keys, the map adapters will use the
- * @c KEY_GENERATOR class to produce a key. However, the users are
- * responsible for not jeopardizing this key production scheme by
- * using user specified keys with keys produced by the key
- * generator.
- */
- virtual int bind_create_key (const VALUE &value);
-
- /// Recovers the original key potentially modified by the map during
- /// <bind_modify_key>.
- virtual int recover_key (const KEY &modified_key,
- KEY &original_key);
-
- /**
- * Reassociate @a key with @a value. The function fails if @a key is
- * not in the map for maps that do not allow user specified keys.
- * However, for maps that allow user specified keys, if the key is
- * not in the map, a new @a key / @a value association is created.
- */
- virtual int rebind (const KEY &key,
- const VALUE &value);
-
- /**
- * Reassociate @a key with @a value, storing the old value into the
- * "out" parameter @a old_value. The function fails if @a key is not
- * in the map for maps that do not allow user specified keys.
- * However, for maps that allow user specified keys, if the key is
- * not in the map, a new @a key / @a value association is created.
- */
- virtual int rebind (const KEY &key,
- const VALUE &value,
- VALUE &old_value);
-
- /**
- * Reassociate @a key with @a value, storing the old key and value
- * into the "out" parameters @a old_key and @a old_value. The
- * function fails if @a key is not in the map for maps that do not
- * allow user specified keys. However, for maps that allow user
- * specified keys, if the key is not in the map, a new @a key / @a value
- * association is created.
- */
- virtual int rebind (const KEY &key,
- const VALUE &value,
- KEY &old_key,
- VALUE &old_value);
-
- /**
- * Associate @a key with @a value if and only if @a key is not in the
- * map. If @a key is already in the map, then the @a value parameter
- * is overwritten with the existing value in the map. Returns 0 if a
- * new @a key / @a value association is created. Returns 1 if an
- * attempt is made to bind an existing entry. This function fails
- * for maps that do not allow user specified keys.
- */
- virtual int trybind (const KEY &key,
- VALUE &value);
-
- /// Locate @a value associated with @a key.
- virtual int find (const KEY &key,
- VALUE &value);
-
- /// Is @a key in the map?
- virtual int find (const KEY &key);
-
- /// Remove @a key from the map.
- virtual int unbind (const KEY &key);
-
- /// Remove @a key from the map, and return the @a value associated with
- /// @a key.
- virtual int unbind (const KEY &key,
- VALUE &value);
-
- /// Return the current size of the map.
- virtual size_t current_size (void) const;
-
- /// Return the total size of the map.
- virtual size_t total_size (void) const;
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Accessor to implementation object.
- ACE_Hash_Map_Manager_Ex<KEY, VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex> &impl (void);
-
- /// Accessor to key generator.
- KEY_GENERATOR &key_generator (void);
-
-protected:
-
- /// All implementation details are forwarded to this class.
- ACE_Hash_Map_Manager_Ex<KEY, VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex> implementation_;
-
- /// Functor class used for generating key.
- KEY_GENERATOR key_generator_;
-
- // = STL styled iterator factory functions.
-
- /// Return forward iterator.
- virtual ACE_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *begin_impl (void);
- virtual ACE_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *end_impl (void);
-
- /// Return reverse iterator.
- virtual ACE_Reverse_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *rbegin_impl (void);
- virtual ACE_Reverse_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *rend_impl (void);
-
-private:
-
- // = Disallow these operations.
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Hash_Map_Manager_Ex_Adapter<KEY, VALUE, HASH_KEY, COMPARE_KEYS, KEY_GENERATOR> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Hash_Map_Manager_Ex_Adapter (const ACE_Hash_Map_Manager_Ex_Adapter<KEY, VALUE, HASH_KEY, COMPARE_KEYS, KEY_GENERATOR> &))
-};
-
-/**
- * @class ACE_Map_Manager_Iterator_Adapter
- *
- * @brief Defines a iterator implementation for the Map_Manager_Adapter.
- *
- * Implementation to be provided by ACE_Map_Manager::iterator.
- */
-template <class T, class KEY, class VALUE>
-class ACE_Map_Manager_Iterator_Adapter : public ACE_Iterator_Impl<T>
-{
-public:
-
- // = Traits.
- typedef typename ACE_Map_Manager<KEY, VALUE, ACE_Null_Mutex>::iterator
- implementation;
-
- /// Constructor.
- ACE_Map_Manager_Iterator_Adapter (const ACE_Map_Iterator<KEY, VALUE, ACE_Null_Mutex> &impl);
-
- /// Destructor.
- virtual ~ACE_Map_Manager_Iterator_Adapter (void);
-
- /// Clone.
- virtual ACE_Iterator_Impl<T> *clone (void) const;
-
- /// Comparison.
- virtual int compare (const ACE_Iterator_Impl<T> &rhs) const;
-
- /// Dereference.
- virtual T dereference (void) const;
-
- /// Advance.
- virtual void plus_plus (void);
-
- /// Reverse.
- virtual void minus_minus (void);
-
- /// Accessor to implementation object.
- ACE_Map_Iterator<KEY, VALUE, ACE_Null_Mutex> &impl (void);
-
-protected:
-
- /// All implementation details are forwarded to this class.
- ACE_Map_Iterator<KEY, VALUE, ACE_Null_Mutex> implementation_;
-};
-
-/**
- * @class ACE_Map_Manager_Reverse_Iterator_Adapter
- *
- * @brief Defines a reverse iterator implementation for the Map Manager.
- *
- * Implementation to be provided by ACE_Map_Manager::reverse_iterator.
- */
-template <class T, class KEY, class VALUE>
-class ACE_Map_Manager_Reverse_Iterator_Adapter : public ACE_Reverse_Iterator_Impl<T>
-{
-public:
-
- // = Traits.
- typedef typename ACE_Map_Manager<KEY, VALUE, ACE_Null_Mutex>::reverse_iterator
- implementation;
-
- /// Constructor.
- ACE_Map_Manager_Reverse_Iterator_Adapter (const ACE_Map_Reverse_Iterator<KEY, VALUE, ACE_Null_Mutex> &impl);
-
- /// Destructor.
- virtual ~ACE_Map_Manager_Reverse_Iterator_Adapter (void);
-
- /// Clone.
- virtual ACE_Reverse_Iterator_Impl<T> *clone (void) const;
-
- /// Comparison.
- virtual int compare (const ACE_Reverse_Iterator_Impl<T> &rhs) const;
-
- /// Dereference.
- virtual T dereference (void) const;
-
- /// Advance.
- virtual void plus_plus (void);
-
- /// Reverse.
- virtual void minus_minus (void);
-
- /// Accessor to implementation object.
- ACE_Map_Reverse_Iterator<KEY, VALUE, ACE_Null_Mutex> &impl (void);
-
-protected:
-
- /// All implementation details are forwarded to this class.
- ACE_Map_Reverse_Iterator<KEY, VALUE, ACE_Null_Mutex> implementation_;
-};
-
-/**
- * @class ACE_Map_Manager_Adapter
- *
- * @brief Defines a map implementation.
- *
- * Implementation to be provided by ACE_Map_Manager.
- */
-template <class KEY, class VALUE, class KEY_GENERATOR>
-class ACE_Map_Manager_Adapter : public ACE_Map<KEY, VALUE>
-{
-public:
-
- // = Traits.
- typedef ACE_Map_Manager_Iterator_Adapter<ACE_Reference_Pair<const KEY, VALUE>, KEY, VALUE>
- iterator_impl;
- typedef ACE_Map_Manager_Reverse_Iterator_Adapter<ACE_Reference_Pair<const KEY, VALUE>, KEY, VALUE>
- reverse_iterator_impl;
- typedef ACE_Map_Manager<KEY, VALUE, ACE_Null_Mutex>
- implementation;
-
- // = Initialization and termination methods.
- /// Initialize with the ACE_DEFAULT_MAP_SIZE.
- ACE_Map_Manager_Adapter (ACE_Allocator *alloc = 0);
-
- /// Initialize with @a size entries. The @a size parameter is ignored
- /// by maps for which an initialize size does not make sense.
- ACE_Map_Manager_Adapter (size_t size,
- ACE_Allocator *alloc = 0);
-
- /// Close down and release dynamically allocated resources.
- virtual ~ACE_Map_Manager_Adapter (void);
-
- /// Initialize a <Map> with size @a length.
- virtual int open (size_t length = ACE_DEFAULT_MAP_SIZE,
- ACE_Allocator *alloc = 0);
-
- /// Close down a <Map> and release dynamically allocated resources.
- virtual int close (void);
-
- /**
- * Add @a key / @a value pair to the map. If @a key is already in the
- * map then no changes are made and 1 is returned. Returns 0 on a
- * successful addition. This function fails for maps that do not
- * allow user specified keys. @a key is an "in" parameter.
- */
- virtual int bind (const KEY &key,
- const VALUE &value);
-
- /**
- * Add @a key / @a value pair to the map. @a key is an "inout" parameter
- * and maybe modified/extended by the map to add additional
- * information. To recover original key, call the <recover_key>
- * method.
- */
- virtual int bind_modify_key (const VALUE &value,
- KEY &key);
-
- /**
- * Produce a key and return it through @a key which is an "out"
- * parameter. For maps that do not naturally produce keys, the map
- * adapters will use the @c KEY_GENERATOR class to produce a key.
- * However, the users are responsible for not jeopardizing this key
- * production scheme by using user specified keys with keys produced
- * by the key generator.
- */
- virtual int create_key (KEY &key);
-
- /**
- * Add @a value to the map, and the corresponding key produced by the
- * Map is returned through @a key which is an "out" parameter. For
- * maps that do not naturally produce keys, the map adapters will
- * use the @c KEY_GENERATOR class to produce a key. However, the
- * users are responsible for not jeopardizing this key production
- * scheme by using user specified keys with keys produced by the key
- * generator.
- */
- virtual int bind_create_key (const VALUE &value,
- KEY &key);
-
- /**
- * Add @a value to the map. The user does not care about the
- * corresponding key produced by the Map. For maps that do not
- * naturally produce keys, the map adapters will use the
- * @c KEY_GENERATOR class to produce a key. However, the users are
- * responsible for not jeopardizing this key production scheme by
- * using user specified keys with keys produced by the key
- * generator.
- */
- virtual int bind_create_key (const VALUE &value);
-
- /// Recovers the original key potentially modified by the map during
- /// <bind_modify_key>.
- virtual int recover_key (const KEY &modified_key,
- KEY &original_key);
-
- /**
- * Reassociate @a key with @a value. The function fails if @a key is
- * not in the map for maps that do not allow user specified keys.
- * However, for maps that allow user specified keys, if the key is
- * not in the map, a new @a key / @a value association is created.
- */
- virtual int rebind (const KEY &key,
- const VALUE &value);
-
- /**
- * Reassociate @a key with @a value, storing the old value into the
- * "out" parameter @a old_value. The function fails if @a key is not
- * in the map for maps that do not allow user specified keys.
- * However, for maps that allow user specified keys, if the key is
- * not in the map, a new @a key / @a value association is created.
- */
- virtual int rebind (const KEY &key,
- const VALUE &value,
- VALUE &old_value);
-
- /**
- * Reassociate @a key with @a value, storing the old key and value
- * into the "out" parameters @a old_key and @a old_value. The
- * function fails if @a key is not in the map for maps that do not
- * allow user specified keys. However, for maps that allow user
- * specified keys, if the key is not in the map, a new @a key / @a value
- * association is created.
- */
- virtual int rebind (const KEY &key,
- const VALUE &value,
- KEY &old_key,
- VALUE &old_value);
-
- /**
- * Associate @a key with @a value if and only if @a key is not in the
- * map. If @a key is already in the map, then the @a value parameter
- * is overwritten with the existing value in the map. Returns 0 if a
- * new @a key / @a value association is created. Returns 1 if an
- * attempt is made to bind an existing entry. This function fails
- * for maps that do not allow user specified keys.
- */
- virtual int trybind (const KEY &key,
- VALUE &value);
-
- /// Locate @a value associated with @a key.
- virtual int find (const KEY &key,
- VALUE &value);
-
- /// Is @a key in the map?
- virtual int find (const KEY &key);
-
- /// Remove @a key from the map.
- virtual int unbind (const KEY &key);
-
- /// Remove @a key from the map, and return the @a value associated with
- /// @a key.
- virtual int unbind (const KEY &key,
- VALUE &value);
-
- /// Return the current size of the map.
- virtual size_t current_size (void) const;
-
- /// Return the total size of the map.
- virtual size_t total_size (void) const;
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Accessor to implementation object.
- ACE_Map_Manager<KEY, VALUE, ACE_Null_Mutex> &impl (void);
-
- /// Accessor to key generator.
- KEY_GENERATOR &key_generator (void);
-
-protected:
-
- /// All implementation details are forwarded to this class.
- ACE_Map_Manager<KEY, VALUE, ACE_Null_Mutex> implementation_;
-
- /// Functor class used for generating key.
- KEY_GENERATOR key_generator_;
-
- // = STL styled iterator factory functions.
-
- /// Return forward iterator.
- virtual ACE_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *begin_impl (void);
- virtual ACE_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *end_impl (void);
-
- /// Return reverse iterator.
- virtual ACE_Reverse_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *rbegin_impl (void);
- virtual ACE_Reverse_Iterator_Impl<ACE_Reference_Pair<const KEY, VALUE> > *rend_impl (void);
-
-private:
-
- // = Disallow these operations.
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Map_Manager_Adapter<KEY, VALUE, KEY_GENERATOR> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Map_Manager_Adapter (const ACE_Map_Manager_Adapter<KEY, VALUE, KEY_GENERATOR> &))
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Map_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Map_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Map_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_MAP_T_H */
-
diff --git a/dep/include/ace/Map_T.inl b/dep/include/ace/Map_T.inl
deleted file mode 100644
index adf32eb91c9..00000000000
--- a/dep/include/ace/Map_T.inl
+++ /dev/null
@@ -1,415 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Map_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class T> ACE_INLINE int
-ACE_Noop_Key_Generator<T>::operator() (T &)
-{
- return -1;
-}
-
-template <class T> ACE_INLINE
-ACE_Incremental_Key_Generator<T>::ACE_Incremental_Key_Generator (void)
- : t_ (0)
-{
-}
-
-template <class T> ACE_INLINE int
-ACE_Incremental_Key_Generator<T>::operator() (T &t)
-{
- t = ++this->t_;
- return 0;
-}
-
-template <class T> ACE_INLINE const T &
-ACE_Incremental_Key_Generator<T>::current_value (void) const
-{
- return this->t_;
-}
-
-template <class T> ACE_INLINE
-ACE_Iterator<T>::ACE_Iterator (ACE_Iterator_Impl<T> *impl)
- : implementation_ (impl)
-{
-}
-
-template <class T> ACE_INLINE
-ACE_Iterator<T>::ACE_Iterator (const ACE_Iterator<T> &rhs)
- : implementation_ (rhs.implementation_->clone ())
-{
-}
-
-template <class T> ACE_INLINE
-ACE_Iterator<T>::~ACE_Iterator (void)
-{
- delete this->implementation_;
-}
-
-template <class T> ACE_INLINE ACE_Iterator<T> &
-ACE_Iterator<T>::operator= (const ACE_Iterator<T> &rhs)
-{
- delete this->implementation_;
- this->implementation_ = rhs.implementation_->clone ();
- return *this;
-}
-
-template <class T> ACE_INLINE bool
-ACE_Iterator<T>::operator== (const ACE_Iterator<T> &rhs) const
-{
- return this->implementation_->compare (*rhs.implementation_);
-}
-
-template <class T> ACE_INLINE bool
-ACE_Iterator<T>::operator!= (const ACE_Iterator<T> &rhs) const
-{
- return !this->operator== (rhs);
-}
-
-template <class T> ACE_INLINE T
-ACE_Iterator<T>::operator* (void) const
-{
- return this->implementation_->dereference ();
-}
-
-template <class T> ACE_INLINE ACE_Iterator<T> &
-ACE_Iterator<T>::operator++ (void)
-{
- this->implementation_->plus_plus ();
- return *this;
-}
-
-template <class T> ACE_INLINE ACE_Iterator<T>
-ACE_Iterator<T>::operator++ (int)
-{
- ACE_Iterator<T> tmp = *this;
- this->implementation_->plus_plus ();
- return tmp;
-}
-
-template <class T> ACE_INLINE ACE_Iterator<T> &
-ACE_Iterator<T>::operator-- (void)
-{
- this->implementation_->minus_minus ();
- return *this;
-}
-
-template <class T> ACE_INLINE ACE_Iterator<T>
-ACE_Iterator<T>::operator-- (int)
-{
- ACE_Iterator<T> tmp = *this;
- this->implementation_->minus_minus ();
- return tmp;
-}
-
-template <class T> ACE_INLINE ACE_Iterator_Impl<T> &
-ACE_Iterator<T>::impl (void)
-{
- return *this->implementation_;
-}
-
-template <class T> ACE_INLINE
-ACE_Reverse_Iterator<T>::ACE_Reverse_Iterator (ACE_Reverse_Iterator_Impl<T> *impl)
- : implementation_ (impl)
-{
-}
-
-template <class T> ACE_INLINE
-ACE_Reverse_Iterator<T>::ACE_Reverse_Iterator (const ACE_Reverse_Iterator<T> &rhs)
- : implementation_ (rhs.implementation_->clone ())
-{
-}
-
-template <class T> ACE_INLINE
-ACE_Reverse_Iterator<T>::~ACE_Reverse_Iterator (void)
-{
- delete this->implementation_;
-}
-
-template <class T> ACE_INLINE ACE_Reverse_Iterator<T> &
-ACE_Reverse_Iterator<T>::operator= (const ACE_Reverse_Iterator<T> &rhs)
-{
- delete this->implementation_;
- this->implementation_ = rhs.implementation_->clone ();
- return *this;
-}
-
-template <class T> ACE_INLINE bool
-ACE_Reverse_Iterator<T>::operator== (const ACE_Reverse_Iterator<T> &rhs) const
-{
- return this->implementation_->compare (*rhs.implementation_);
-}
-
-template <class T> ACE_INLINE bool
-ACE_Reverse_Iterator<T>::operator!= (const ACE_Reverse_Iterator<T> &rhs) const
-{
- return !this->operator== (rhs);
-}
-
-template <class T> ACE_INLINE T
-ACE_Reverse_Iterator<T>::operator* (void) const
-{
- return this->implementation_->dereference ();
-}
-
-template <class T> ACE_INLINE ACE_Reverse_Iterator<T> &
-ACE_Reverse_Iterator<T>::operator++ (void)
-{
- this->implementation_->plus_plus ();
- return *this;
-}
-
-template <class T> ACE_INLINE ACE_Reverse_Iterator<T>
-ACE_Reverse_Iterator<T>::operator++ (int)
-{
- ACE_Reverse_Iterator<T> tmp = *this;
- this->implementation_->plus_plus ();
- return tmp;
-}
-
-template <class T> ACE_INLINE ACE_Reverse_Iterator<T> &
-ACE_Reverse_Iterator<T>::operator-- (void)
-{
- this->implementation_->minus_minus ();
- return *this;
-}
-
-template <class T> ACE_INLINE ACE_Reverse_Iterator<T>
-ACE_Reverse_Iterator<T>::operator-- (int)
-{
- ACE_Reverse_Iterator<T> tmp = *this;
- this->implementation_->minus_minus ();
- return tmp;
-}
-
-template <class T> ACE_INLINE ACE_Reverse_Iterator_Impl<T> &
-ACE_Reverse_Iterator<T>::impl (void)
-{
- return *this->implementation_;
-}
-
-template <class KEY, class VALUE> ACE_INLINE
-ACE_Map<KEY, VALUE>::ACE_Map (void)
-{
-}
-
-template <class KEY, class VALUE> ACE_INLINE ACE_Iterator<ACE_Reference_Pair<const KEY, VALUE> >
-ACE_Map<KEY, VALUE>::begin (void)
-{
- return iterator (this->begin_impl ());
-}
-
-template <class KEY, class VALUE> ACE_INLINE ACE_Iterator<ACE_Reference_Pair<const KEY, VALUE> >
-ACE_Map<KEY, VALUE>::end (void)
-{
- return iterator (this->end_impl ());
-}
-
-template <class KEY, class VALUE> ACE_INLINE ACE_Reverse_Iterator<ACE_Reference_Pair<const KEY, VALUE> >
-ACE_Map<KEY, VALUE>::rbegin (void)
-{
- return reverse_iterator (this->rbegin_impl ());
-}
-
-template <class KEY, class VALUE> ACE_INLINE ACE_Reverse_Iterator<ACE_Reference_Pair<const KEY, VALUE> >
-ACE_Map<KEY, VALUE>::rend (void)
-{
- return reverse_iterator (this->rend_impl ());
-}
-
-template <class T, class IMPLEMENTATION, class ENTRY> ACE_INLINE
-ACE_Map_Impl_Iterator_Adapter<T, IMPLEMENTATION, ENTRY>::ACE_Map_Impl_Iterator_Adapter (const IMPLEMENTATION &impl)
- : implementation_ (impl)
-{
-}
-
-template <class T, class IMPLEMENTATION, class ENTRY> ACE_INLINE IMPLEMENTATION &
-ACE_Map_Impl_Iterator_Adapter<T, IMPLEMENTATION, ENTRY>::impl (void)
-{
- return this->implementation_;
-}
-
-template <class T, class IMPLEMENTATION, class ENTRY> ACE_INLINE
-ACE_Map_Impl_Reverse_Iterator_Adapter<T, IMPLEMENTATION, ENTRY>::ACE_Map_Impl_Reverse_Iterator_Adapter (const IMPLEMENTATION &impl)
- : implementation_ (impl)
-{
-}
-
-template <class T, class IMPLEMENTATION, class ENTRY> ACE_INLINE IMPLEMENTATION &
-ACE_Map_Impl_Reverse_Iterator_Adapter<T, IMPLEMENTATION, ENTRY>::impl (void)
-{
- return this->implementation_;
-}
-
-template <class KEY, class VALUE, class IMPLEMENTATION, class ITERATOR, class REVERSE_ITERATOR, class ENTRY> ACE_INLINE
-ACE_Map_Impl<KEY, VALUE, IMPLEMENTATION, ITERATOR, REVERSE_ITERATOR, ENTRY>::ACE_Map_Impl (ACE_Allocator *alloc)
- : implementation_ (alloc)
-{
-}
-
-template <class KEY, class VALUE, class IMPLEMENTATION, class ITERATOR, class REVERSE_ITERATOR, class ENTRY> ACE_INLINE
-ACE_Map_Impl<KEY, VALUE, IMPLEMENTATION, ITERATOR, REVERSE_ITERATOR, ENTRY>::ACE_Map_Impl (size_t size,
- ACE_Allocator *alloc)
- : implementation_ (size,
- alloc)
-{
-}
-
-template <class KEY, class VALUE, class IMPLEMENTATION, class ITERATOR, class REVERSE_ITERATOR, class ENTRY> ACE_INLINE IMPLEMENTATION &
-ACE_Map_Impl<KEY, VALUE, IMPLEMENTATION, ITERATOR, REVERSE_ITERATOR, ENTRY>::impl (void)
-{
- return this->implementation_;
-}
-
-template <class T, class VALUE> ACE_INLINE
-ACE_Active_Map_Manager_Iterator_Adapter<T, VALUE>::ACE_Active_Map_Manager_Iterator_Adapter (const ACE_Map_Iterator<ACE_Active_Map_Manager_Key, VALUE, ACE_Null_Mutex> &impl)
- : implementation_ (impl)
-{
-}
-
-template <class T, class VALUE> ACE_INLINE ACE_Map_Iterator<ACE_Active_Map_Manager_Key, VALUE, ACE_Null_Mutex> &
-ACE_Active_Map_Manager_Iterator_Adapter<T, VALUE>::impl (void)
-{
- return this->implementation_;
-}
-
-template <class T, class VALUE> ACE_INLINE
-ACE_Active_Map_Manager_Reverse_Iterator_Adapter<T, VALUE>::ACE_Active_Map_Manager_Reverse_Iterator_Adapter (const ACE_Map_Reverse_Iterator<ACE_Active_Map_Manager_Key, VALUE, ACE_Null_Mutex> &impl)
- : implementation_ (impl)
-{
-}
-
-template <class T, class VALUE> ACE_INLINE ACE_Map_Reverse_Iterator<ACE_Active_Map_Manager_Key, VALUE, ACE_Null_Mutex> &
-ACE_Active_Map_Manager_Reverse_Iterator_Adapter<T, VALUE>::impl (void)
-{
- return this->implementation_;
-}
-
-template <class KEY, class VALUE, class KEY_ADAPTER> ACE_INLINE
-ACE_Active_Map_Manager_Adapter<KEY, VALUE, KEY_ADAPTER>::ACE_Active_Map_Manager_Adapter (ACE_Allocator *alloc)
- : implementation_ (alloc)
-{
-}
-
-template <class KEY, class VALUE, class KEY_ADAPTER> ACE_INLINE
-ACE_Active_Map_Manager_Adapter<KEY, VALUE, KEY_ADAPTER>::ACE_Active_Map_Manager_Adapter (size_t size,
- ACE_Allocator *alloc)
- : implementation_ (size,
- alloc)
-{
-}
-
-template <class KEY, class VALUE, class KEY_ADAPTER> ACE_INLINE ACE_Active_Map_Manager<ACE_Pair<KEY, VALUE> > &
-ACE_Active_Map_Manager_Adapter<KEY, VALUE, KEY_ADAPTER>::impl (void)
-{
- return this->implementation_;
-}
-
-template <class KEY, class VALUE, class KEY_ADAPTER> ACE_INLINE KEY_ADAPTER &
-ACE_Active_Map_Manager_Adapter<KEY, VALUE, KEY_ADAPTER>::key_adapter (void)
-{
- return this->key_adapter_;
-}
-
-template <class T, class KEY, class VALUE, class HASH_KEY, class COMPARE_KEYS> ACE_INLINE
-ACE_Hash_Map_Manager_Ex_Iterator_Adapter<T, KEY, VALUE, HASH_KEY, COMPARE_KEYS>::ACE_Hash_Map_Manager_Ex_Iterator_Adapter (const ACE_Hash_Map_Iterator_Ex<KEY, VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex> &impl)
- : implementation_ (impl)
-{
-}
-
-template <class T, class KEY, class VALUE, class HASH_KEY, class COMPARE_KEYS> ACE_INLINE ACE_Hash_Map_Iterator_Ex<KEY, VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex> &
-ACE_Hash_Map_Manager_Ex_Iterator_Adapter<T, KEY, VALUE, HASH_KEY, COMPARE_KEYS>::impl (void)
-{
- return this->implementation_;
-}
-
-template <class T, class KEY, class VALUE, class HASH_KEY, class COMPARE_KEYS> ACE_INLINE
-ACE_Hash_Map_Manager_Ex_Reverse_Iterator_Adapter<T, KEY, VALUE, HASH_KEY, COMPARE_KEYS>::ACE_Hash_Map_Manager_Ex_Reverse_Iterator_Adapter (const ACE_Hash_Map_Reverse_Iterator_Ex<KEY, VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex> &impl)
- : implementation_ (impl)
-{
-}
-
-template <class T, class KEY, class VALUE, class HASH_KEY, class COMPARE_KEYS> ACE_INLINE ACE_Hash_Map_Reverse_Iterator_Ex<KEY, VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex> &
-ACE_Hash_Map_Manager_Ex_Reverse_Iterator_Adapter<T, KEY, VALUE, HASH_KEY, COMPARE_KEYS>::impl (void)
-{
- return this->implementation_;
-}
-
-template <class KEY, class VALUE, class HASH_KEY, class COMPARE_KEYS, class KEY_GENERATOR> ACE_INLINE
-ACE_Hash_Map_Manager_Ex_Adapter<KEY, VALUE, HASH_KEY, COMPARE_KEYS, KEY_GENERATOR>::ACE_Hash_Map_Manager_Ex_Adapter (ACE_Allocator *alloc)
- : implementation_ (alloc)
-{
-}
-
-template <class KEY, class VALUE, class HASH_KEY, class COMPARE_KEYS, class KEY_GENERATOR> ACE_INLINE
-ACE_Hash_Map_Manager_Ex_Adapter<KEY, VALUE, HASH_KEY, COMPARE_KEYS, KEY_GENERATOR>::ACE_Hash_Map_Manager_Ex_Adapter (size_t size,
- ACE_Allocator *alloc)
- : implementation_ (size,
- alloc)
-{
-}
-
-template <class KEY, class VALUE, class HASH_KEY, class COMPARE_KEYS, class KEY_GENERATOR> ACE_INLINE ACE_Hash_Map_Manager_Ex<KEY, VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex> &
-ACE_Hash_Map_Manager_Ex_Adapter<KEY, VALUE, HASH_KEY, COMPARE_KEYS, KEY_GENERATOR>::impl (void)
-{
- return this->implementation_;
-}
-
-template <class KEY, class VALUE, class HASH_KEY, class COMPARE_KEYS, class KEY_GENERATOR> ACE_INLINE KEY_GENERATOR &
-ACE_Hash_Map_Manager_Ex_Adapter<KEY, VALUE, HASH_KEY, COMPARE_KEYS, KEY_GENERATOR>::key_generator (void)
-{
- return this->key_generator_;
-}
-
-template <class T, class KEY, class VALUE> ACE_INLINE
-ACE_Map_Manager_Iterator_Adapter<T, KEY, VALUE>::ACE_Map_Manager_Iterator_Adapter (const ACE_Map_Iterator<KEY, VALUE, ACE_Null_Mutex> &impl)
- : implementation_ (impl)
-{
-}
-
-template <class T, class KEY, class VALUE> ACE_INLINE ACE_Map_Iterator<KEY, VALUE, ACE_Null_Mutex> &
-ACE_Map_Manager_Iterator_Adapter<T, KEY, VALUE>::impl (void)
-{
- return this->implementation_;
-}
-
-template <class T, class KEY, class VALUE> ACE_INLINE
-ACE_Map_Manager_Reverse_Iterator_Adapter<T, KEY, VALUE>::ACE_Map_Manager_Reverse_Iterator_Adapter (const ACE_Map_Reverse_Iterator<KEY, VALUE, ACE_Null_Mutex> &impl)
- : implementation_ (impl)
-{
-}
-
-template <class T, class KEY, class VALUE> ACE_INLINE ACE_Map_Reverse_Iterator<KEY, VALUE, ACE_Null_Mutex> &
-ACE_Map_Manager_Reverse_Iterator_Adapter<T, KEY, VALUE>::impl (void)
-{
- return this->implementation_;
-}
-
-template <class KEY, class VALUE, class KEY_GENERATOR> ACE_INLINE
-ACE_Map_Manager_Adapter<KEY, VALUE, KEY_GENERATOR>::ACE_Map_Manager_Adapter (ACE_Allocator *alloc)
- : implementation_ (alloc)
-{
-}
-
-template <class KEY, class VALUE, class KEY_GENERATOR> ACE_INLINE
-ACE_Map_Manager_Adapter<KEY, VALUE, KEY_GENERATOR>::ACE_Map_Manager_Adapter (size_t size,
- ACE_Allocator *alloc)
- : implementation_ (size,
- alloc)
-{
-}
-
-template <class KEY, class VALUE, class KEY_GENERATOR> ACE_INLINE ACE_Map_Manager<KEY, VALUE, ACE_Null_Mutex> &
-ACE_Map_Manager_Adapter<KEY, VALUE, KEY_GENERATOR>::impl (void)
-{
- return this->implementation_;
-}
-
-template <class KEY, class VALUE, class KEY_GENERATOR> ACE_INLINE KEY_GENERATOR &
-ACE_Map_Manager_Adapter<KEY, VALUE, KEY_GENERATOR>::key_generator (void)
-{
- return this->key_generator_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Mem_Map.h b/dep/include/ace/Mem_Map.h
deleted file mode 100644
index 5ef4634cfbd..00000000000
--- a/dep/include/ace/Mem_Map.h
+++ /dev/null
@@ -1,236 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Mem_Map.h
- *
- * $Id: Mem_Map.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_MEM_MAP_H
-#define ACE_MEM_MAP_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Global_Macros.h"
-#include "ace/os_include/sys/os_mman.h"
-#include "ace/os_include/os_limits.h"
-#include "ace/os_include/os_fcntl.h"
-#include "ace/Default_Constants.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Mem_Map
- *
- * @brief C++ interface OS memory mapping system call.
- *
- * This class works with both the mmap(2) UNIX system and the
- * Win32 family of memory mapping system calls.
- */
-class ACE_Export ACE_Mem_Map
-{
-public:
- // = Initialization and termination methods.
-
- /// Default constructor.
- ACE_Mem_Map (void);
-
- /// Map a file from an open file descriptor @a handle. This function
- /// will lookup the length of the file if it is not given.
- ACE_Mem_Map (ACE_HANDLE handle,
- size_t length = static_cast<size_t> (-1),
- int prot = PROT_RDWR,
- int share = ACE_MAP_PRIVATE,
- void *addr = 0,
- ACE_OFF_T offset = 0,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- /// Map a file specified by @a file_name.
- ACE_Mem_Map (const ACE_TCHAR *filename,
- size_t length = static_cast<size_t> (-1),
- int flags = O_RDWR | O_CREAT,
- mode_t mode = ACE_DEFAULT_FILE_PERMS,
- int prot = PROT_RDWR,
- int share = ACE_MAP_PRIVATE,
- void *addr = 0,
- ACE_OFF_T offset = 0,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- /// Map a file from an open file descriptor @a handle. This function
- /// will lookup the length of the file if it is not given.
- int map (ACE_HANDLE handle,
- size_t length = static_cast<size_t> (-1),
- int prot = PROT_RDWR,
- int share = ACE_MAP_PRIVATE,
- void *addr = 0,
- ACE_OFF_T offset = 0,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- /// Remap the file associated with <handle_>.
- int map (size_t length = static_cast<size_t> (-1),
- int prot = PROT_RDWR,
- int share = ACE_MAP_PRIVATE,
- void *addr = 0,
- ACE_OFF_T offset = 0,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- /// Map a file specified by @a filename.
- int map (const ACE_TCHAR *filename,
- size_t length = static_cast<size_t> (-1),
- int flags = O_RDWR | O_CREAT,
- mode_t mode = ACE_DEFAULT_FILE_PERMS,
- int prot = PROT_RDWR,
- int share = ACE_MAP_PRIVATE,
- void *addr = 0,
- ACE_OFF_T offset = 0,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- /// Destructor.
- ~ACE_Mem_Map (void);
-
- /// Open the file without mapping it.
- int open (const ACE_TCHAR *filename,
- int flags = O_RDWR | O_CREAT,
- mode_t perms = ACE_DEFAULT_FILE_PERMS,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- /// Close down the <handle_> if necessary and unmap the mapping.
- int close (void);
-
- /// Close down the <handle_> if necessary.
- int close_handle (void);
-
- /**
- * Close down the internal <file_mapping_> if necessary. This is
- * mostly necessary on Win32, which has a different handle for
- * file-mapping kernel object.
- */
- int close_filemapping_handle (void);
-
- /// This operator passes back the starting address of the mapped
- /// file.
- int operator () (void *&addr);
-
- /// Return the base address.
- void *addr (void) const;
-
- /// This function returns the number of bytes currently mapped in the
- /// file.
- size_t size (void) const;
-
- /// Unmap the region starting at <base_addr_>.
- int unmap (ssize_t len = -1);
-
- /// Unmap the region starting at <addr_>.
- int unmap (void *addr, ssize_t len);
-
- /**
- * Sync @a len bytes of the memory region to the backing store
- * starting at <base_addr_>. If @a len == -1 then sync the whole
- * region.
- */
- int sync (size_t len, int flags = MS_SYNC);
-
- /**
- * Sync the whole memory region to the backing store
- * starting at <base_addr_>.
- */
- int sync (int flags = MS_SYNC);
-
- /// Sync @a len bytes of the memory region to the backing store
- /// starting at <addr_>.
- int sync (void *addr, size_t len, int flags = MS_SYNC);
-
- /**
- * Change the protection of the pages of the mapped region to @a prot
- * starting at <base_addr_> up to @a len bytes.
- */
- int protect (size_t len, int prot = PROT_RDWR);
-
- /**
- * Change the protection of all the pages of the mapped region to @a prot
- * starting at <base_addr_>.
- */
- int protect (int prot = PROT_RDWR);
-
- /// Change the protection of the pages of the mapped region to @a prot
- /// starting at @a addr up to @a len bytes.
- int protect (void *addr, size_t len, int prot = PROT_RDWR);
-
- /// Close and remove the file from the file system.
- int remove (void);
-
- /// Hook into the underlying VM system.
- int advise (int behavior, int len = -1);
-
- /// Return the underlying <handle_>.
- ACE_HANDLE handle (void) const;
-
- /// Return the name of file that is mapped (if any).
- const ACE_TCHAR *filename (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-
- /// This method does the dirty work of actually calling ::mmap to map
- /// the file into memory.
- int map_it (ACE_HANDLE handle,
- size_t len = static_cast<size_t> (-1),
- int prot = PROT_RDWR,
- int share = MAP_SHARED,
- void *addr = 0,
- ACE_OFF_T offset = 0,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- // = Disallow copying and assignment.
- ACE_Mem_Map (const ACE_Mem_Map &);
- void operator = (const ACE_Mem_Map &);
-
-private:
-
- /// Base address of the memory-mapped file.
- void *base_addr_;
-
- /// Name of the file that is mapped.
- ACE_TCHAR filename_[MAXPATHLEN + 1];
-
- /// Length of the mapping.
- size_t length_;
-
- /// HANDLE for the open file.
- ACE_HANDLE handle_;
-
- /// HANDLE for the open mapping.
- ACE_HANDLE file_mapping_;
-
- /// Keeps track of whether we need to close the handle. This is set
- /// if we opened the file.
- bool close_handle_;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Mem_Map.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_MEM_MAP_H */
-
diff --git a/dep/include/ace/Mem_Map.inl b/dep/include/ace/Mem_Map.inl
deleted file mode 100644
index 263847253ab..00000000000
--- a/dep/include/ace/Mem_Map.inl
+++ /dev/null
@@ -1,237 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Mem_Map.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_unistd.h"
-#include "ace/OS_NS_sys_mman.h"
-#include "ace/OS_NS_sys_stat.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ACE_HANDLE
-ACE_Mem_Map::handle (void) const
-{
- ACE_TRACE ("ACE_Mem_Map::handle");
- return this->handle_;
-}
-
-// Return the name of file that is mapped (if any).
-
-ACE_INLINE const ACE_TCHAR *
-ACE_Mem_Map::filename (void) const
-{
- return this->filename_;
-}
-
-ACE_INLINE int
-ACE_Mem_Map::map (ACE_HANDLE handle,
- size_t length,
- int prot,
- int share,
- void *addr,
- ACE_OFF_T offset,
- LPSECURITY_ATTRIBUTES sa)
-{
- ACE_TRACE ("ACE_Mem_Map::map");
- return this->map_it (handle, length, prot, share, addr, offset, sa);
-}
-
-// Remap the file associated with <this->handle_>.
-
-ACE_INLINE int
-ACE_Mem_Map::map (size_t length,
- int prot,
- int share,
- void *addr,
- ACE_OFF_T offset,
- LPSECURITY_ATTRIBUTES sa)
-{
- ACE_TRACE ("ACE_Mem_Map::map");
- // If we're already mapped at a particular location then try to
- // remap the file using the same base address.
- if (addr == 0 && this->base_addr_ != 0 && this->base_addr_ != MAP_FAILED)
- {
- share |= MAP_FIXED;
- addr = this->base_addr_;
- }
-
- return this->map_it (this->handle (), length, prot,
- share, addr, offset, sa);
-}
-
-// This operator passes back the starting address of the mapped file.
-
-ACE_INLINE int
-ACE_Mem_Map::operator () (void *&addr)
-{
- ACE_TRACE ("ACE_Mem_Map::operator");
-
- if (this->base_addr_ == MAP_FAILED)
- return -1;
- else
- {
- addr = this->base_addr_;
- return 0;
- }
-}
-
-// Return the base address.
-
-ACE_INLINE void *
-ACE_Mem_Map::addr (void) const
-{
- ACE_TRACE ("ACE_Mem_Map::addr");
-
- return this->base_addr_;
-}
-
-// This function returns the number of bytes currently mapped in the
-// file.
-
-ACE_INLINE size_t
-ACE_Mem_Map::size (void) const
-{
- ACE_TRACE ("ACE_Mem_Map::size");
- return this->length_;
-}
-
-ACE_INLINE int
-ACE_Mem_Map::close_filemapping_handle (void)
-{
- int result = 0;
-
- if (this->file_mapping_ != this->handle_
- && this->file_mapping_ != ACE_INVALID_HANDLE)
- {
- result = ACE_OS::close (this->file_mapping_);
- this->file_mapping_ = ACE_INVALID_HANDLE;
- }
-
- return result;
-}
-
-// Unmap the region starting at <this->base_addr_>.
-
-ACE_INLINE int
-ACE_Mem_Map::unmap (ssize_t len)
-{
- ACE_TRACE ("ACE_Mem_Map::unmap");
-
- this->close_filemapping_handle ();
-
- if (this->base_addr_ != MAP_FAILED)
- {
- int const result = ACE_OS::munmap (this->base_addr_,
- len < 0 ? this->length_ : len);
- this->base_addr_ = MAP_FAILED;
- return result;
- }
- else
- return 0;
-}
-
-// Unmap the region starting at <addr_>.
-
-ACE_INLINE int
-ACE_Mem_Map::unmap (void *addr, ssize_t len)
-{
- ACE_TRACE ("ACE_Mem_Map::unmap");
-
- this->close_filemapping_handle ();
-
- return ACE_OS::munmap (addr,
- len < 0 ? this->length_ : len);
-}
-
-// Sync <len> bytes of the memory region to the backing store starting
-// at <this->base_addr_>.
-
-ACE_INLINE int
-ACE_Mem_Map::sync (size_t len, int flags)
-{
- ACE_TRACE ("ACE_Mem_Map::sync");
- return ACE_OS::msync (this->base_addr_,
- len,
- flags);
-}
-
-// Sync the whole mapped region.
-ACE_INLINE int
-ACE_Mem_Map::sync (int flags)
-{
- ACE_TRACE ("ACE_Mem_Map::sync");
- return ACE_OS::msync (this->base_addr_,
- this->length_,
- flags);
-}
-
-// Sync <len> bytes of the memory region to the backing store starting
-// at <addr_>.
-
-ACE_INLINE int
-ACE_Mem_Map::sync (void *addr, size_t len, int flags)
-{
- ACE_TRACE ("ACE_Mem_Map::sync");
- return ACE_OS::msync (addr, len, flags);
-}
-
-// Change the protection of the pages of the mapped region to <prot>
-// starting at <this->base_addr_> up to <len> bytes.
-
-ACE_INLINE int
-ACE_Mem_Map::protect (size_t len, int prot)
-{
- ACE_TRACE ("ACE_Mem_Map::protect");
- return ACE_OS::mprotect (this->base_addr_, len, prot);
-}
-
-// Change the protection of all the pages of the mapped region to <prot>
-// starting at <this->base_addr_>.
-
-ACE_INLINE int
-ACE_Mem_Map::protect (int prot)
-{
- ACE_TRACE ("ACE_Mem_Map::protect");
- return ACE_OS::mprotect (this->base_addr_, this->length_, prot);
-}
-
-// Change the protection of the pages of the mapped region to <prot>
-// starting at <addr> up to <len> bytes.
-
-ACE_INLINE int
-ACE_Mem_Map::protect (void *addr, size_t len, int prot)
-{
- ACE_TRACE ("ACE_Mem_Map::protect");
- return ACE_OS::mprotect (addr, len, prot);
-}
-
-// Hook into the underlying VM system.
-
-ACE_INLINE int
-ACE_Mem_Map::advise (int behavior, int len)
-{
- ACE_TRACE ("ACE_Mem_Map::advise");
- const size_t advise_len =
- len < 0 ? this->length_ : static_cast<size_t> (len);
-
- return ACE_OS::madvise ((caddr_t) this->base_addr_,
- advise_len,
- behavior);
-}
-
-ACE_INLINE int
-ACE_Mem_Map::close_handle (void)
-{
- int result = 0;
-
- if (this->close_handle_)
- {
- this->close_handle_ = false;
- result = ACE_OS::close (this->handle_);
- this->handle_ = ACE_INVALID_HANDLE;
- }
-
- return result;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Memory_Pool.h b/dep/include/ace/Memory_Pool.h
deleted file mode 100644
index d95778754c7..00000000000
--- a/dep/include/ace/Memory_Pool.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Memory_Pool.h
- *
- * $Id: Memory_Pool.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Dougls C. Schmidt <schmidt@cs.wustl.edu>
- * @author Prashant Jain <pjain@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_MEMORY_POOL_H
-#define ACE_MEMORY_POOL_H
-#include /**/ "ace/pre.h"
-
-#include "ace/ACE.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Local_Memory_Pool.h"
-#include "ace/MMAP_Memory_Pool.h"
-#include "ace/Sbrk_Memory_Pool.h"
-#include "ace/Shared_Memory_Pool.h"
-#include "ace/Pagefile_Memory_Pool.h"
-
-#include /**/ "ace/post.h"
-#endif /* ACE_MEMORY_POOL_H */
-
diff --git a/dep/include/ace/Message_Block.h b/dep/include/ace/Message_Block.h
deleted file mode 100644
index 00b130968e3..00000000000
--- a/dep/include/ace/Message_Block.h
+++ /dev/null
@@ -1,871 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Message_Block.h
- *
- * $Id: Message_Block.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_MESSAGE_BLOCK_H
-#define ACE_MESSAGE_BLOCK_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Default_Constants.h"
-#include "ace/Global_Macros.h"
-#include "ace/Time_Value.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declaration.
-class ACE_Allocator;
-class ACE_Data_Block;
-class ACE_Lock;
-
-/**
- * @class ACE_Message_Block
- *
- * @brief Stores messages for use throughout ACE (particularly
- * in an ACE_Message_Queue).
- *
- * An ACE_Message_Block is modeled after the message data
- * structures used in System V STREAMS. Its purpose is to
- * enable efficient manipulation of arbitrarily large messages
- * without incurring much memory copying overhead. Here are the
- * main characteristics of an ACE_Message_Block:
- * - Contains a pointer to a reference-counted
- * ACE_Data_Block, which in turn points to the actual data
- * buffer. This allows very flexible and efficient sharing of
- * data by multiple ACE_Message_Block objects.
- * - One or more ACE_Message_Blocks can be linked to form a
- * ``fragment chain.''
- * - ACE_Message_Blocks can be linked together in a doubly linked fashion
- * to form a queue of messages (this is how ACE_Message_Queue works).
- *
- * @see C++NPv1, section 4.2; APG, section 12.3.2.
- */
-class ACE_Export ACE_Message_Block
-{
-public:
- friend class ACE_Data_Block;
-
- enum
- {
- // = Data and proto
- /// Undifferentiated data message
- MB_DATA = 0x01,
- /// Undifferentiated protocol control
- MB_PROTO = 0x02,
-
- // = Control messages
- /// Line break (regular and priority)
- MB_BREAK = 0x03,
- /// Pass file pointer
- MB_PASSFP = 0x04,
- /// Post an event to an event queue
- MB_EVENT = 0x05,
- /// Generate process signal
- MB_SIG = 0x06,
- /// ioctl; set/get params
- MB_IOCTL = 0x07,
- /// Set various stream head options
- MB_SETOPTS = 0x08,
-
- // = Control messages
- /// Acknowledge ioctl (high priority; go to head of queue)
- MB_IOCACK = 0x81,
- /// Negative ioctl acknowledge
- MB_IOCNAK = 0x82,
- /// Priority proto message
- MB_PCPROTO = 0x83,
- /// Generate process signal
- MB_PCSIG = 0x84,
- /// Generate read notification
- MB_READ = 0x85,
- /// Flush your queues
- MB_FLUSH = 0x86,
- /// Stop transmission immediately
- MB_STOP = 0x87,
- /// Restart transmission after stop
- MB_START = 0x88,
- /// Line disconnect
- MB_HANGUP = 0x89,
- /// Fatal error used to set u.u_error
- MB_ERROR = 0x8a,
- /// Post an event to an event queue
- MB_PCEVENT = 0x8b,
-
- // = Message class masks
- /// Normal priority message mask
- MB_NORMAL = 0x00,
- /// High priority control message mask
- MB_PRIORITY = 0x80,
- /// User-defined message mask
- MB_USER = 0x200
- };
-
- typedef int ACE_Message_Type;
- typedef unsigned long Message_Flags;
-
- enum
- {
- /// Don't delete the data on exit since we don't own it.
- DONT_DELETE = 01,
- /// user defined flags start here
- USER_FLAGS = 0x1000
- };
-
- // = Initialization and termination.
- /// Create an empty message.
- ACE_Message_Block (ACE_Allocator *message_block_allocator = 0);
-
- /**
- * Create an ACE_Message_Block that owns the specified ACE_Data_Block
- * without copying it. If the @a flags is set to @c DONT_DELETE we
- * don't delete the ACE_Data_Block. It is left to the client's
- * responsibility to take care of the memory allocated for the
- * data_block
- */
- ACE_Message_Block (ACE_Data_Block *,
- Message_Flags flags = 0,
- ACE_Allocator *message_block_allocator = 0);
-
- /**
- * Create an ACE_Message_Block that refers to @a data without
- * copying it. The @a data memory will not be freed when this block is
- * destroyed; memory management of @a data is left to the caller.
- * Note that the @c size of the new ACE_Message_Block will be @a size, but
- * the @c length will be 0 until the write pointer is changed.
- */
- ACE_Message_Block (const char *data,
- size_t size = 0,
- unsigned long priority = ACE_DEFAULT_MESSAGE_BLOCK_PRIORITY);
-
- /**
- * Create an initialized message of type @a type containing @a size
- * bytes. The @a cont argument initializes the continuation field in
- * the ACE_Message_Block. If @a data == 0 then this block allocates and
- * owns the block's memory, using @a allocator to get the data if it's
- * non-0. If @a data != 0 then this block refers to that memory until
- * this this block ceases to exist; this object will not free @a data on
- * destruction. If @a locking_strategy is non-0 then this is used
- * to protect regions of code that access shared state (e.g.,
- * reference counting) from race conditions. Note that the @c size
- * of the ACE_Message_Block will be @a size, but the @c length will be 0
- * until the write pointer is set. The @a data_block_allocator is used to
- * allocate the data blocks while the @a allocator_strategy is used
- * to allocate the buffers contained by those. The
- * @a message_block_allocator is used to allocate new ACE_Message_Block
- * objects when the duplicate() method is called. If a
- * @a message_block_allocator is given, this ACE_Message_Block and
- * future ACE_Message_Block objects created by duplicate() will be
- * freed using this allocator when they are released.
- * @note If you use this allocator, the ACE_Message_Block you created
- * should have been created using this allocator because it will be
- * released to the same allocator.
- */
- ACE_Message_Block (size_t size,
- ACE_Message_Type type = MB_DATA,
- ACE_Message_Block *cont = 0,
- const char *data = 0,
- ACE_Allocator *allocator_strategy = 0,
- ACE_Lock *locking_strategy = 0,
- unsigned long priority = ACE_DEFAULT_MESSAGE_BLOCK_PRIORITY,
- const ACE_Time_Value &execution_time = ACE_Time_Value::zero,
- const ACE_Time_Value &deadline_time = ACE_Time_Value::max_time,
- ACE_Allocator *data_block_allocator = 0,
- ACE_Allocator *message_block_allocator = 0);
-
- /**
- * A copy constructor. This constructor is a bit different. If the
- * incoming Message Block has a data block from the stack this
- * constructor does a deep copy ie. allocates a new data block on
- * the heap and does a copy of the data from the incoming message
- * block. As a final note, the alignment information is used to
- * align the data block if it is created afresh. If the incoming
- * @a mb has a data block has a data block allocated from the heap,
- * then this constructor just duplicates (ie. a shallow copy) the
- * data block of the incoming @a mb.
- */
- ACE_Message_Block (const ACE_Message_Block &mb,
- size_t align);
-
- /**
- * Create a Message Block that assumes it has ownership of @a data,
- * but in reality it doesnt (i.e., cannot delete it since it didn't
- * malloc it!). Note that the @c size of the Message_Block will
- * be @a size, but the @a length will be 0 until <wr_ptr> is set.
- */
- int init (const char *data,
- size_t size = 0);
-
- /**
- * Create an initialized message of type @a type containing @a size
- * bytes. The @a cont argument initializes the continuation field in
- * the <Message_Block>. If @a data == 0 then we create and own the
- * @a data, using @a allocator_strategy to get the data if it's non-0. If
- * @a data != 0 we assume that we have ownership of the @a data till
- * this object ceases to exist (and don't delete it during
- * destruction). If @a locking_strategy is non-0 then this is used
- * to protect regions of code that access shared state (e.g.,
- * reference counting) from race conditions. Note that the @a size
- * of the <Message_Block> will be @a size, but the @a length will be 0
- * until <wr_ptr> is set. The @a data_block_allocator is use to
- * allocate the data blocks while the @a allocator_strategy is used
- * to allocate the buffers contained by those.
- */
- int init (size_t size,
- ACE_Message_Type type = MB_DATA,
- ACE_Message_Block *cont = 0,
- const char *data = 0,
- ACE_Allocator *allocator_strategy = 0,
- ACE_Lock *locking_strategy = 0,
- unsigned long priority = ACE_DEFAULT_MESSAGE_BLOCK_PRIORITY,
- const ACE_Time_Value &execution_time = ACE_Time_Value::zero,
- const ACE_Time_Value &deadline_time = ACE_Time_Value::max_time,
- ACE_Allocator *data_block_allocator = 0,
- ACE_Allocator *message_block_allocator = 0);
-
- /**
- * Delete all the resources held in the message.
- *
- * Note that <release()> is designed to release the continuation
- * chain; the destructor is not. See <release()> for details.
- */
- virtual ~ACE_Message_Block (void);
-
- // = Message Type accessors and mutators.
-
- /// Get type of the message.
- ACE_Message_Type msg_type (void) const;
-
- /// Set type of the message.
- void msg_type (ACE_Message_Type type);
-
- /// Find out what type of message this is.
- int is_data_msg (void) const;
-
- /// Find out what class of message this is (there are two classes,
- /// @c normal messages and @c high-priority messages).
- ACE_Message_Type msg_class (void) const;
-
- // = Message flag accessors and mutators.
- /// Bitwise-or the @a more_flags into the existing message flags and
- /// return the new value.
- Message_Flags set_flags (Message_Flags more_flags);
-
- /// Clear the message flag bits specified in @a less_flags and return
- /// the new value.
- Message_Flags clr_flags (Message_Flags less_flags);
-
- /// Get the current message flags.
- Message_Flags flags (void) const;
-
- // = Data Block flag accessors and mutators.
- /// Bitwise-or the @a more_flags into the existing message flags and
- /// return the new value.
- /* @todo: I think the following set of methods could not be used at
- * all. May be they are useless. Let us have it so that we dont
- * mess up memory management of the Message_Block. Somebody correct
- * me if I am totally totally wrong..
- */
- Message_Flags set_self_flags (ACE_Message_Block::Message_Flags more_flags);
-
- /// Clear the message flag bits specified in @a less_flags and return
- /// the new value.
- Message_Flags clr_self_flags (ACE_Message_Block::Message_Flags less_flags);
-
- /// Get the current message flags.
- Message_Flags self_flags (void) const;
-
- /// Get priority of the message.
- unsigned long msg_priority (void) const;
-
- /// Set priority of the message.
- void msg_priority (unsigned long priority);
-
- /// Get execution time associated with the message.
- const ACE_Time_Value &msg_execution_time (void) const;
-
- /// Set execution time associated with the message.
- void msg_execution_time (const ACE_Time_Value &et);
-
- /// Get absolute time of deadline associated with the message.
- const ACE_Time_Value &msg_deadline_time (void) const;
-
- /// Set absolute time of deadline associated with the message.
- void msg_deadline_time (const ACE_Time_Value &dt);
-
- // = Deep copy and shallow copy methods.
-
- /// Return an exact "deep copy" of the message, i.e., create fresh
- /// new copies of all the Data_Blocks and continuations.
- virtual ACE_Message_Block *clone (Message_Flags mask = 0) const;
-
- /// Return a "shallow" copy that increments our reference count by 1.
- virtual ACE_Message_Block *duplicate (void) const;
-
- /**
- * Return a "shallow" copy that increments our reference count by 1.
- * This is similar to CORBA's <_duplicate> method, which is useful
- * if you want to eliminate lots of checks for NULL @a mb pointers
- * before calling <_duplicate> on them.
- */
- static ACE_Message_Block *duplicate (const ACE_Message_Block *mb);
-
- /**
- * Decrease the shared ACE_Data_Block's reference count by 1. If the
- * ACE_Data_Block's reference count goes to 0, it is deleted.
- * In all cases, this ACE_Message_Block is deleted - it must have come
- * from the heap, or there will be trouble.
- *
- * release() is designed to release the continuation chain; the
- * destructor is not. If we make the destructor release the
- * continuation chain by calling release() or delete on the message
- * blocks in the continuation chain, the following code will not
- * work since the message block in the continuation chain is not off
- * the heap:
- *
- * ACE_Message_Block mb1 (1024);
- * ACE_Message_Block mb2 (1024);
- *
- * mb1.cont (&mb2);
- *
- * And hence, call release() on a dynamically allocated message
- * block. This will release all the message blocks in the
- * continuation chain. If you call delete or let the message block
- * fall off the stack, cleanup of the message blocks in the
- * continuation chain becomes the responsibility of the user.
- *
- * @retval 0, always, and the object this method was invoked on is no
- * longer valid.
- */
- virtual ACE_Message_Block *release (void);
-
- /**
- * This behaves like the non-static method <release>, except that it
- * checks if @a mb is 0. This is similar to <CORBA::release>, which
- * is useful if you want to eliminate lots of checks for NULL
- * pointers before calling <release> on them. Returns @a mb.
- */
- static ACE_Message_Block *release (ACE_Message_Block *mb);
-
- // = Operations on Message data
-
- /**
- * Copies data into this ACE_Message_Block. Data is copied into the
- * block starting at the current write pointer.
- *
- * @param buf Pointer to the buffer to copy from.
- * @param n The number of bytes to copy.
- *
- * @retval 0 on success; the write pointer is advanced by @arg n.
- * @retval -1 if the amount of free space following the write pointer
- * in the block is less than @arg n. Free space can be checked
- * by calling space().
- */
- int copy (const char *buf, size_t n);
-
- /**
- * Copies a 0-terminated character string into this ACE_Message_Block.
- * The string is copied into the block starting at the current write
- * pointer. The 0-terminator is included in the copied data.
- *
- * @param buf Pointer to the character string to copy from.
- *
- * @retval 0 on success; the write pointer is advanced by the string's
- * length, including the 0 terminator.
- * @retval -1 if the amount of free space following the write pointer
- * in the block is less than required to hold the entire string.
- * Free space can be checked by calling space().
- */
- int copy (const char *buf);
-
- /// Normalizes data in the top-level <Message_Block> to align with the base,
- /// i.e., it "shifts" the data pointed to by <rd_ptr> down to the <base> and
- /// then readjusts <rd_ptr> to point to <base> and <wr_ptr> to point
- /// to <base> + the length of the moved data. Returns -1 and does
- /// nothing if the <rd_ptr> is > <wr_ptr>, else 0 on success.
- int crunch (void);
-
- /// Resets the Message Block data to contain nothing, i.e., sets the
- /// read and write pointers to align with the base.
- void reset (void);
-
- /// Access all the allocators in the message block.
- /// @@todo: Not sure whether we would need finer control while
- /// trying to access allocators ie. a method for every allocator.
- /**
- * This method returns the allocators only from the first message
- * block in the chain.
- *
- * @param allocator_strategy Strategy used to allocate the
- * underlying buffer
- *
- * @param data_block_allocator Strategy used to allocate the
- * underlying data block
- *
- * @param message_block_allocator Strategy used to allocate the
- * message block
- */
- void access_allocators (ACE_Allocator *&allocator_strategy,
- ACE_Allocator *&data_block_allocator,
- ACE_Allocator *&message_block_allocator);
-
- /// Reset all the allocators in the message block.
- /// @todo Not sure whether we would need finer control while
- /// trying to reset allocators ie. a method for every allocator.
- /**
- * This method resets the allocators in all the message blocks in
- * the chain.
- */
- void reset_allocators (ACE_Allocator *allocator_strategy = 0,
- ACE_Allocator *data_block_allocator = 0,
- ACE_Allocator *message_block_allocator = 0);
-
- /// Get message data.
- char *base (void) const;
-
- /// Set message data (doesn't reallocate).
- void base (char *data,
- size_t size,
- Message_Flags = DONT_DELETE);
-
- /// Return a pointer to 1 past the end of the allocated data in a message.
- char *end (void) const;
-
- /**
- * Return a pointer to 1 past the end of the allotted data in a message.
- * Allotted data may be less than allocated data if a value smaller than
- * capacity() to is passed to size().
- */
- char *mark (void) const;
-
- /// Get the read pointer.
- char *rd_ptr (void) const;
-
- /// Set the read pointer to @a ptr.
- void rd_ptr (char *ptr);
-
- /// Set the read pointer ahead @a n bytes.
- void rd_ptr (size_t n);
-
- /// Get the write pointer.
- char *wr_ptr (void) const;
-
- /// Set the write pointer to @a ptr.
- void wr_ptr (char *ptr);
-
- /// Set the write pointer ahead @a n bytes. This is used to compute
- /// the <length> of a message.
- void wr_ptr (size_t n);
-
- /** @name Message length and size operations
- *
- * Message length is (wr_ptr - rd_ptr).
- *
- * Message size is capacity of the message, including data outside
- * the [rd_ptr,wr_ptr] range.
- */
- //@{
- /// Get the length of the message
- size_t length (void) const;
-
- /// Set the length of the message
- void length (size_t n);
-
- /// Get the length of the <Message_Block>s, including chained
- /// <Message_Block>s.
- size_t total_length (void) const;
-
- /// Get the total number of bytes in all <Message_Block>s, including
- /// chained <Message_Block>s.
- size_t total_size (void) const;
-
- /// Get the total number of bytes and total length in all
- /// <Message_Block>s, including chained <Message_Block>s.
- void total_size_and_length (size_t &mb_size,
- size_t &mb_length) const;
-
- /// Get the number of bytes in the top-level <Message_Block> (i.e.,
- /// does not consider the bytes in chained <Message_Block>s).
- size_t size (void) const;
-
- /**
- * Set the number of bytes in the top-level <Message_Block>,
- * reallocating space if necessary. However, the <rd_ptr_> and
- * <wr_ptr_> remain at the original offsets into the buffer, even if
- * it is reallocated. Returns 0 if successful, else -1.
- */
- int size (size_t length);
-
- /// Get the number of allocated bytes in all <Message_Block>, including
- /// chained <Message_Block>s.
- size_t total_capacity (void) const;
-
- /// Get the number of allocated bytes in the top-level <Message_Block>.
- size_t capacity (void) const;
-
- /// Get the number of bytes available after the <wr_ptr_> in the
- /// top-level <Message_Block>.
- size_t space (void) const;
- //@}
-
- // = ACE_Data_Block methods.
-
- /**
- * Get a pointer to the data block. Note that the ACE_Message_Block
- * still references the block; this call does not change the reference
- * count.
- */
- ACE_Data_Block *data_block (void) const;
-
- /**
- * Set a new data block pointer. The original ACE_Data_Block is released
- * as a result of this call. If you need to keep the original block, call
- * <replace_data_block> instead. Upon return, this ACE_Message_Block
- * holds a pointer to the new ACE_Data_Block, taking over the reference
- * you held on it prior to the call.
- */
- void data_block (ACE_Data_Block *);
-
- /// Set a new data block pointer. A pointer to the original ACE_Data_Block
- /// is returned, and not released (as it is with <data_block>).
- ACE_Data_Block *replace_data_block (ACE_Data_Block*);
-
- // = The continuation field chains together composite messages.
- /// Get the continuation field.
- ACE_Message_Block *cont (void) const;
-
- /// Set the continuation field.
- void cont (ACE_Message_Block *);
-
- // = Pointer to the <Message_Block> directly ahead in the ACE_Message_Queue.
- /// Get link to next message.
- ACE_Message_Block *next (void) const;
-
- /// Set link to next message.
- void next (ACE_Message_Block *);
-
- // = Pointer to the <Message_Block> directly behind in the ACE_Message_Queue.
- /// Get link to prev message.
- ACE_Message_Block *prev (void) const;
-
- /// Set link to prev message.
- void prev (ACE_Message_Block *);
-
- // = The locking strategy prevents race conditions.
- /// Get the locking strategy.
- ACE_Lock *locking_strategy (void);
-
- /// Set a new locking strategy and return the hold one.
- ACE_Lock *locking_strategy (ACE_Lock *);
-
- /// Get the current reference count.
- int reference_count (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- // = Internal initialization methods.
- /// Perform the actual initialization.
- ACE_Message_Block (size_t size,
- ACE_Message_Type type,
- ACE_Message_Block *cont,
- const char *data,
- ACE_Allocator *allocator_strategy,
- ACE_Lock *locking_strategy,
- Message_Flags flags,
- unsigned long priority,
- const ACE_Time_Value &execution_time,
- const ACE_Time_Value &deadline_time,
- ACE_Data_Block *db,
- ACE_Allocator *data_block_allocator,
- ACE_Allocator *message_block_allocator);
-
- /// Internal release implementation
- /// Returns 1 if the data block has to be destroyed.
- int release_i (ACE_Lock *lock);
-
- /// Perform the actual initialization.
- int init_i (size_t size,
- ACE_Message_Type type,
- ACE_Message_Block *cont,
- const char *data,
- ACE_Allocator *allocator_strategy,
- ACE_Lock *locking_strategy,
- Message_Flags flags,
- unsigned long priority,
- const ACE_Time_Value &execution_time,
- const ACE_Time_Value &deadline_time,
- ACE_Data_Block *db,
- ACE_Allocator *data_block_allocator,
- ACE_Allocator *message_block_allocator);
-
- /// Pointer to beginning of next read.
- size_t rd_ptr_;
-
- /// Pointer to beginning of next write.
- size_t wr_ptr_;
-
- /// Priority of message.
- unsigned long priority_;
-
-#if defined (ACE_HAS_TIMED_MESSAGE_BLOCKS)
- /// Execution time associated with the message.
- ACE_Time_Value execution_time_;
-
- /// Absolute deadline time for message.
- ACE_Time_Value deadline_time_;
-#endif /* ACE_HAS_TIMED_MESSAGE_BLOCKS */
-
- // = Links to other ACE_Message_Block *s.
- /// Pointer to next message block in the chain.
- ACE_Message_Block *cont_;
-
- /// Pointer to next message in the list.
- ACE_Message_Block *next_;
-
- /// Pointer to previous message in the list.
- ACE_Message_Block *prev_;
-
- /// Misc flags (e.g., DONT_DELETE and USER_FLAGS).
- ACE_Message_Block::Message_Flags flags_;
-
- /// Pointer to the reference counted data structure that contains the
- /// actual memory buffer.
- ACE_Data_Block *data_block_;
-
- /// The allocator used to destroy ourselves when release is called
- /// and create new message blocks on duplicate.
- ACE_Allocator *message_block_allocator_;
-
-private:
- // = Disallow these operations for now (use <clone> instead).
- ACE_Message_Block &operator= (const ACE_Message_Block &);
- ACE_Message_Block (const ACE_Message_Block &);
-};
-
-/**
- * @class ACE_Data_Block
- *
- * @brief Stores the data payload that is accessed via one or more
- * ACE_Message_Block's.
- *
- * This data structure is reference counted to maximize
- * sharing. It also contains the <locking_strategy_> (which
- * protects the reference count from race conditions in
- * concurrent programs) and the <allocation_strategy_> (which
- * determines what memory pool is used to allocate the memory).
- */
-class ACE_Export ACE_Data_Block
-{
-public:
- // = Initialization and termination methods.
- /// Default "do-nothing" constructor.
- ACE_Data_Block (void);
-
- /// Initialize.
- ACE_Data_Block (size_t size,
- ACE_Message_Block::ACE_Message_Type msg_type,
- const char *msg_data,
- ACE_Allocator *allocator_strategy,
- ACE_Lock *locking_strategy,
- ACE_Message_Block::Message_Flags flags,
- ACE_Allocator *data_block_allocator);
-
- /// Delete all the resources held in the message.
- virtual ~ACE_Data_Block (void);
-
- /// Get type of the message.
- ACE_Message_Block::ACE_Message_Type msg_type (void) const;
-
- /// Set type of the message.
- void msg_type (ACE_Message_Block::ACE_Message_Type type);
-
- /// Get message data pointer
- char *base (void) const;
-
- /// Set message data pointer (doesn't reallocate).
- void base (char *data,
- size_t size,
- ACE_Message_Block::Message_Flags mflags = ACE_Message_Block::DONT_DELETE);
-
- /// Return a pointer to 1 past the end of the allocated data in a message.
- char *end (void) const;
-
- /**
- * Return a pointer to 1 past the end of the allotted data in a message.
- * The allotted data may be less than allocated data if <size()> is passed
- * an argument less than <capacity()>.
- */
- char *mark (void) const;
-
- // = Message size is the total amount of space alloted.
-
- /// Get the total amount of allotted space in the message. The amount of
- /// allotted space may be less than allocated space.
- size_t size (void) const;
-
- /// Set the total amount of space in the message. Returns 0 if
- /// successful, else -1.
- int size (size_t length);
-
- /// Get the total amount of allocated space.
- size_t capacity (void) const;
-
- /**
- * Return an exact "deep copy" of the message, i.e., create fresh
- * new copies of all the Data_Blocks and continuations.
- * Notice that Data_Blocks can act as "Prototypes", i.e. derived
- * classes can override this method and create instances of
- * themselves.
- */
- virtual ACE_Data_Block *clone (ACE_Message_Block::Message_Flags mask = 0) const;
-
- /**
- * As clone above, but it does not copy the contents of the buffer,
- * i.e., create a new Data_Block of the same dynamic type, with the
- * same allocator, locking_strategy, and with the same amount of
- * storage available (if @a max_size is zero) but the buffer is unitialized.
- * If @a max_size is specified other than zero, it will be used when
- * creating the new data block.
- */
- virtual ACE_Data_Block *clone_nocopy (ACE_Message_Block::Message_Flags mask = 0,
- size_t max_size = 0) const;
-
- /// Return a "shallow" copy that increments our reference count by 1.
- ACE_Data_Block *duplicate (void);
-
- /**
- * Decrease the shared reference count by 1. If the reference count
- * is > 0 then return this; else if reference count == 0 then delete
- * @c this and @a mb and return 0. Behavior is undefined if reference
- * count < 0.
- */
- ACE_Data_Block *release (ACE_Lock *lock = 0);
-
- // = Message flag accessors and mutators.
- /// Bitwise-or the <more_flags> into the existing message flags and
- /// return the new value.
- ACE_Message_Block::Message_Flags set_flags (ACE_Message_Block::Message_Flags more_flags);
-
- /// Clear the message flag bits specified in <less_flags> and return
- /// the new value.
- ACE_Message_Block::Message_Flags clr_flags (ACE_Message_Block::Message_Flags less_flags);
-
- /// Get the current message flags.
- ACE_Message_Block::Message_Flags flags (void) const;
-
- /// Obtain the allocator strategy.
- ACE_Allocator *allocator_strategy (void) const;
-
- // = The locking strategy prevents race conditions.
- /// Get the locking strategy.
- ACE_Lock *locking_strategy (void);
-
- /// Set a new locking strategy and return the hold one.
- ACE_Lock *locking_strategy (ACE_Lock *);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Get the current reference count.
- int reference_count (void) const;
-
- /// Get the allocator used to create this object
- ACE_Allocator *data_block_allocator (void) const;
-
-protected:
- /// Internal release implementation
- virtual ACE_Data_Block *release_i (void);
-
- /// Internal get the current reference count.
- int reference_count_i (void) const;
-
- /**
- * Decrease the reference count, but don't delete the object.
- * Returns 0 if the object should be removed.
- * If <lock> is equal to the locking strategy then we assume that
- * the lock is beign held by the current thread; this is used to
- * release all the data blocks in a chain while holding a single
- * lock.
- */
- friend class ACE_Message_Block;
- ACE_Data_Block *release_no_delete (ACE_Lock *lock);
-
- /// Type of message.
- ACE_Message_Block::ACE_Message_Type type_;
-
- /// Current size of message block.
- size_t cur_size_;
-
- /// Total size of buffer.
- size_t max_size_;
-
- /// Misc flags (e.g., DONT_DELETE and USER_FLAGS).
- ACE_Message_Block::Message_Flags flags_;
-
- /// Pointer To beginning of message payload.
- char *base_;
-
- // = Strategies.
- /**
- * Pointer to the allocator defined for this ACE_Data_Block. Note
- * that this pointer is shared by all owners of this
- * ACE_Data_Block.
- */
- ACE_Allocator *allocator_strategy_;
-
- /**
- * Pointer to the locking strategy defined for this
- * ACE_Data_Block. This is used to protect regions of code that
- * access shared ACE_Data_Block state. Note that this lock is
- * shared by all owners of the ACE_Data_Block's data.
- */
- ACE_Lock *locking_strategy_;
-
- /**
- * Reference count for this ACE_Data_Block, which is used to avoid
- * deep copies (i.e., <clone>). Note that this pointer value is
- * shared by all owners of the <Data_Block>'s data, i.e., all the
- * ACE_Message_Blocks.
- */
- int reference_count_;
-
- /// The allocator use to destroy ourselves.
- ACE_Allocator *data_block_allocator_;
-
-private:
- // = Disallow these operations.
- ACE_Data_Block &operator= (const ACE_Data_Block &);
- ACE_Data_Block (const ACE_Data_Block &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Message_Block.inl"
-#endif /* __ACE_INLINE__ */
-
-#include "ace/Message_Block_T.h"
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_MESSAGE_BLOCK_H */
-
diff --git a/dep/include/ace/Message_Block.inl b/dep/include/ace/Message_Block.inl
deleted file mode 100644
index b47b0b552b2..00000000000
--- a/dep/include/ace/Message_Block.inl
+++ /dev/null
@@ -1,507 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Message_Block.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ACE_Data_Block *
-ACE_Message_Block::data_block (void) const
-{
- ACE_TRACE ("ACE_Message_Block::data_block");
- return this->data_block_;
-}
-
-ACE_INLINE ACE_Message_Block::Message_Flags
-ACE_Message_Block::set_self_flags (ACE_Message_Block::Message_Flags more_flags)
-{
- ACE_TRACE ("ACE_Message_Block::set_self_flags");
- // Later we might mask more_glags so that user can't change internal
- // ones: more_flags &= ~(USER_FLAGS -1).
- return ACE_SET_BITS (this->flags_, more_flags);
-}
-
-ACE_INLINE ACE_Message_Block::Message_Flags
-ACE_Message_Block::clr_self_flags (ACE_Message_Block::Message_Flags less_flags)
-{
- ACE_TRACE ("ACE_Message_Block::clr_self_flags");
- // Later we might mask more_flags so that user can't change internal
- // ones: less_flags &= ~(USER_FLAGS -1).
- return ACE_CLR_BITS (this->flags_, less_flags);
-}
-
-ACE_INLINE ACE_Message_Block::Message_Flags
-ACE_Message_Block::self_flags (void) const
-{
- ACE_TRACE ("ACE_Message_Block::self_flags");
- return this->flags_;
-}
-
-ACE_INLINE int
-ACE_Data_Block::reference_count_i (void) const
-{
- return reference_count_;
-}
-
-ACE_INLINE int
-ACE_Message_Block::reference_count (void) const
-{
- return data_block () ? data_block ()->reference_count () : 0;
-}
-
-ACE_INLINE char *
-ACE_Data_Block::base (void) const
-{
- ACE_TRACE ("ACE_Data_Block::base");
- return this->base_;
-}
-
-ACE_INLINE size_t
-ACE_Data_Block::size (void) const
-{
- ACE_TRACE ("ACE_Data_Block::size");
- return this->cur_size_;
-}
-
-ACE_INLINE size_t
-ACE_Data_Block::capacity (void) const
-{
- ACE_TRACE ("ACE_Data_Block::capacity");
- return this->max_size_;
-}
-
-ACE_INLINE ACE_Message_Block::Message_Flags
-ACE_Data_Block::set_flags (ACE_Message_Block::Message_Flags more_flags)
-{
- ACE_TRACE ("ACE_Data_Block::set_flags");
- // Later we might mask more_glags so that user can't change internal
- // ones: more_flags &= ~(USER_FLAGS -1).
- return ACE_SET_BITS (this->flags_, more_flags);
-}
-
-ACE_INLINE ACE_Message_Block::Message_Flags
-ACE_Data_Block::clr_flags (ACE_Message_Block::Message_Flags less_flags)
-{
- ACE_TRACE ("ACE_Data_Block::clr_flags");
- // Later we might mask more_flags so that user can't change internal
- // ones: less_flags &= ~(USER_FLAGS -1).
- return ACE_CLR_BITS (this->flags_, less_flags);
-}
-
-ACE_INLINE ACE_Message_Block::Message_Flags
-ACE_Data_Block::flags (void) const
-{
- ACE_TRACE ("ACE_Data_Block::flags");
- return this->flags_;
-}
-
-ACE_INLINE ACE_Allocator*
-ACE_Data_Block::data_block_allocator (void) const
-{
- ACE_TRACE ("ACE_Data_Block::data_block_allocator");
- return this->data_block_allocator_;
-}
-
-ACE_INLINE ACE_Message_Block::Message_Flags
-ACE_Message_Block::set_flags (ACE_Message_Block::Message_Flags more_flags)
-{
- ACE_TRACE ("ACE_Message_Block::set_flags");
- return this->data_block ()->set_flags (more_flags);
-}
-
-ACE_INLINE ACE_Message_Block::Message_Flags
-ACE_Message_Block::clr_flags (ACE_Message_Block::Message_Flags less_flags)
-{
- ACE_TRACE ("ACE_Message_Block::clr_flags");
- return this->data_block ()->clr_flags (less_flags);
-}
-
-ACE_INLINE ACE_Message_Block::Message_Flags
-ACE_Message_Block::flags (void) const
-{
- ACE_TRACE ("ACE_Message_Block::flags");
- return this->data_block ()->flags ();
-}
-
-// Return the length of the "active" portion of the message.
-
-ACE_INLINE size_t
-ACE_Message_Block::length (void) const
-{
- ACE_TRACE ("ACE_Message_Block::length");
- return this->wr_ptr_ - this->rd_ptr_;
-}
-
-// Sets the length of the "active" portion of the message. This is
-// defined as the offset from RD_PTR to WR_PTR.
-
-ACE_INLINE void
-ACE_Message_Block::length (size_t len)
-{
- ACE_TRACE ("ACE_Message_Block::length");
- this->wr_ptr_ = this->rd_ptr_ + len;
-}
-
-// Return the length of the potential size of the message.
-
-ACE_INLINE size_t
-ACE_Message_Block::size (void) const
-{
- ACE_TRACE ("ACE_Message_Block::size");
- return this->data_block ()->size ();
-}
-
-ACE_INLINE size_t
-ACE_Message_Block::capacity (void) const
-{
- ACE_TRACE ("ACE_Message_Block::capacity");
- return this->data_block ()->capacity ();
-}
-
-ACE_INLINE ACE_Message_Block::ACE_Message_Type
-ACE_Data_Block::msg_type (void) const
-{
- ACE_TRACE ("ACE_Data_Block::msg_type");
- return this->type_;
-}
-
-ACE_INLINE void
-ACE_Data_Block::msg_type (ACE_Message_Block::ACE_Message_Type t)
-{
- ACE_TRACE ("ACE_Data_Block::msg_type");
- this->type_ = t;
-}
-
-ACE_INLINE ACE_Message_Block::ACE_Message_Type
-ACE_Message_Block::msg_type (void) const
-{
- ACE_TRACE ("ACE_Message_Block::msg_type");
- return this->data_block ()->msg_type ();
-}
-
-ACE_INLINE void
-ACE_Message_Block::msg_type (ACE_Message_Block::ACE_Message_Type t)
-{
- ACE_TRACE ("ACE_Message_Block::msg_type");
- this->data_block ()->msg_type (t);
-}
-
-ACE_INLINE ACE_Message_Block::ACE_Message_Type
-ACE_Message_Block::msg_class (void) const
-{
- ACE_TRACE ("ACE_Message_Block::msg_class");
-
- if (this->msg_type () < ACE_Message_Block::MB_PRIORITY)
- return ACE_Message_Block::MB_NORMAL;
- else if (this->msg_type () < ACE_Message_Block::MB_USER)
- return ACE_Message_Block::MB_PRIORITY;
- else
- return ACE_Message_Block::MB_USER;
-}
-
-ACE_INLINE int
-ACE_Message_Block::is_data_msg (void) const
-{
- ACE_TRACE ("ACE_Message_Block::is_data_msg");
- ACE_Message_Type mt = this->msg_type ();
- return
- mt == ACE_Message_Block::MB_DATA
- || mt == ACE_Message_Block::MB_PROTO
- || mt == ACE_Message_Block::MB_PCPROTO;
-}
-
-ACE_INLINE unsigned long
-ACE_Message_Block::msg_priority (void) const
-{
- ACE_TRACE ("ACE_Message_Block::msg_priority");
- return this->priority_;
-}
-
-ACE_INLINE void
-ACE_Message_Block::msg_priority (unsigned long pri)
-{
- ACE_TRACE ("ACE_Message_Block::msg_priority");
- this->priority_ = pri;
-}
-
-ACE_INLINE const ACE_Time_Value &
-ACE_Message_Block::msg_execution_time (void) const
-{
- ACE_TRACE ("ACE_Message_Block::msg_execution_time (void)");
-#if defined (ACE_HAS_TIMED_MESSAGE_BLOCKS)
- return this->execution_time_;
-#else
- return ACE_Time_Value::zero;
-#endif /* ACE_HAS_TIMED_MESSAGE_BLOCKS */
-}
-
-ACE_INLINE void
-ACE_Message_Block::msg_execution_time (const ACE_Time_Value &et)
-{
- ACE_TRACE ("ACE_Message_Block::msg_execution_time (const ACE_Time_Value & et)");
-#if defined (ACE_HAS_TIMED_MESSAGE_BLOCKS)
- this->execution_time_ = et;
-#else
- ACE_UNUSED_ARG (et);
-#endif /* ACE_HAS_TIMED_MESSAGE_BLOCKS */
-}
-
-ACE_INLINE const ACE_Time_Value &
-ACE_Message_Block::msg_deadline_time (void) const
-{
- ACE_TRACE ("ACE_Message_Block::msg_deadline_time (void)");
-
-#if defined (ACE_HAS_TIMED_MESSAGE_BLOCKS)
- return this->deadline_time_;
-#else
- return ACE_Time_Value::max_time; // absolute time of deadline
-#endif /* ACE_HAS_TIMED_MESSAGE_BLOCKS */
-}
-
-ACE_INLINE void
-ACE_Message_Block::msg_deadline_time (const ACE_Time_Value &dt)
-{
- ACE_TRACE ("ACE_Message_Block::msg_deadline_time (const ACE_Time_Value & et)");
-#if defined (ACE_HAS_TIMED_MESSAGE_BLOCKS)
- this->deadline_time_ = dt;
-#else
- ACE_UNUSED_ARG (dt);
-#endif /* ACE_HAS_TIMED_MESSAGE_BLOCKS */
-}
-
-ACE_INLINE void
-ACE_Message_Block::access_allocators (ACE_Allocator *& allocator_strategy,
- ACE_Allocator *& data_block_allocator,
- ACE_Allocator *& message_block_allocator)
-{
- allocator_strategy =
- this->data_block_->allocator_strategy_;
- data_block_allocator =
- this->data_block_->data_block_allocator_;
- message_block_allocator =
- this->message_block_allocator_;
-}
-
-ACE_INLINE char *
-ACE_Message_Block::base (void) const
-{
- ACE_TRACE ("ACE_Message_Block::base");
- return this->data_block ()->base ();
-}
-
-ACE_INLINE void
-ACE_Message_Block::base (char *msg_data,
- size_t msg_length,
- Message_Flags msg_flags)
-{
- ACE_TRACE ("ACE_Message_Block::base");
- this->rd_ptr_ = 0;
- this->wr_ptr_ = 0;
- this->data_block ()->base (msg_data, msg_length, msg_flags);
-}
-
-ACE_INLINE char *
-ACE_Message_Block::rd_ptr (void) const
-{
- ACE_TRACE ("ACE_Message_Block::rd_ptr");
- return this->base () + this->rd_ptr_;
-}
-
-ACE_INLINE void
-ACE_Message_Block::wr_ptr (char *new_ptr)
-{
- ACE_TRACE ("ACE_Message_Block::wr_ptr");
- this->wr_ptr_ = new_ptr - this->base ();
-}
-
-// Return a pointer to 1 past the end of the data buffer.
-
-ACE_INLINE char *
-ACE_Data_Block::mark (void) const
-{
- ACE_TRACE ("ACE_Data_Block::mark");
- return this->base_ + this->cur_size_;
-}
-
-ACE_INLINE char *
-ACE_Message_Block::mark (void) const
-{
- ACE_TRACE ("ACE_Message_Block::mark");
- return this->data_block ()->mark ();
-}
-
-ACE_INLINE char *
-ACE_Data_Block::end (void) const
-{
- ACE_TRACE ("ACE_Data_Block::end");
- return this->base_ + this->max_size_;
-}
-
-ACE_INLINE char *
-ACE_Message_Block::end (void) const
-{
- ACE_TRACE ("ACE_Message_Block::end");
- return this->data_block ()->end ();
-}
-
-ACE_INLINE void
-ACE_Message_Block::rd_ptr (char *new_ptr)
-{
- ACE_TRACE ("ACE_Message_Block::rd_ptr");
- this->rd_ptr_ = new_ptr - this->base ();
-}
-
-ACE_INLINE void
-ACE_Message_Block::rd_ptr (size_t n)
-{
- ACE_TRACE ("ACE_Message_Block::rd_ptr");
- this->rd_ptr_ += n;
-}
-
-ACE_INLINE char *
-ACE_Message_Block::wr_ptr (void) const
-{
- ACE_TRACE ("ACE_Message_Block::wr_ptr");
- return this->base () + this->wr_ptr_;
-}
-
-ACE_INLINE void
-ACE_Message_Block::wr_ptr (size_t n)
-{
- ACE_TRACE ("ACE_Message_Block::wr_ptr");
- this->wr_ptr_ += n;
-}
-
-ACE_INLINE void
-ACE_Message_Block::reset (void)
-{
- ACE_TRACE ("ACE_Message_Block::reset");
- this->rd_ptr_ = 0;
- this->wr_ptr_ = 0;
-}
-
-ACE_INLINE size_t
-ACE_Message_Block::space (void) const
-{
- ACE_TRACE ("ACE_Message_Block::space");
- return this->mark () - this->wr_ptr ();
-}
-
-ACE_INLINE ACE_Data_Block *
-ACE_Message_Block::replace_data_block (ACE_Data_Block *db)
-{
- ACE_TRACE ("ACE_Message_Block::replace_data_block");
- ACE_Data_Block *old = this->data_block_;
- this->data_block_ = db;
-
- if (db != 0)
- {
- // Set the read and write pointers in the <Message_Block> to point
- // to the buffer in the <ACE_Data_Block>.
- this->rd_ptr (this->data_block ()->base ());
- this->wr_ptr (this->data_block ()->base ());
- }
-
- return old;
-}
-
-ACE_INLINE void
-ACE_Message_Block::cont (ACE_Message_Block *cont_msg)
-{
- ACE_TRACE ("ACE_Message_Block::cont");
- this->cont_ = cont_msg;
-}
-
-ACE_INLINE ACE_Message_Block *
-ACE_Message_Block::cont (void) const
-{
- ACE_TRACE ("ACE_Message_Block::cont");
- return this->cont_;
-}
-
-ACE_INLINE void
-ACE_Message_Block::reset_allocators (ACE_Allocator *allocator_strategy,
- ACE_Allocator *data_block_allocator,
- ACE_Allocator *message_block_allocator)
-{
- this->data_block_->allocator_strategy_ =
- allocator_strategy;
- this->data_block_->data_block_allocator_ =
- data_block_allocator;
- this->message_block_allocator_ =
- message_block_allocator;
-
- if (this->cont () != 0)
- this->cont ()->reset_allocators (allocator_strategy,
- data_block_allocator,
- message_block_allocator);
-}
-
-ACE_INLINE void
-ACE_Message_Block::next (ACE_Message_Block *next_msg)
-{
- ACE_TRACE ("ACE_Message_Block::next");
- this->next_ = next_msg;
-}
-
-ACE_INLINE ACE_Message_Block *
-ACE_Message_Block::next (void) const
-{
- ACE_TRACE ("ACE_Message_Block::next");
- return this->next_;
-}
-
-ACE_INLINE void
-ACE_Message_Block::prev (ACE_Message_Block *next_msg)
-{
- ACE_TRACE ("ACE_Message_Block::prev");
- this->prev_ = next_msg;
-}
-
-ACE_INLINE ACE_Message_Block *
-ACE_Message_Block::prev (void) const
-{
- ACE_TRACE ("ACE_Message_Block::prev");
- return this->prev_;
-}
-
-ACE_INLINE ACE_Allocator *
-ACE_Data_Block::allocator_strategy (void) const
-{
- ACE_TRACE ("ACE_Data_Block::allocator_strategy");
- return this->allocator_strategy_;
-}
-
-ACE_INLINE ACE_Lock *
-ACE_Data_Block::locking_strategy (void)
-{
- ACE_TRACE ("ACE_Data_Block::locking_strategy");
- return this->locking_strategy_;
-}
-
-ACE_INLINE ACE_Lock *
-ACE_Data_Block::locking_strategy (ACE_Lock *nls)
-{
- ACE_TRACE ("ACE_Data_Block::locking_strategy");
- ACE_Lock *ols = this->locking_strategy_;
-
- this->locking_strategy_ = nls;
- return ols;
-}
-
-ACE_INLINE ACE_Lock *
-ACE_Message_Block::locking_strategy (void)
-{
- ACE_TRACE ("ACE_Message_Block::locking_strategy");
- return this->data_block ()->locking_strategy ();
-}
-
-ACE_INLINE ACE_Lock *
-ACE_Message_Block::locking_strategy (ACE_Lock *nls)
-{
- ACE_TRACE ("ACE_Message_Block::locking_strategy");
- ACE_Lock *ols = this->data_block ()->locking_strategy ();
- this->data_block ()->locking_strategy (nls);
- return ols;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Message_Block_T.h b/dep/include/ace/Message_Block_T.h
deleted file mode 100644
index 25615fa4508..00000000000
--- a/dep/include/ace/Message_Block_T.h
+++ /dev/null
@@ -1,89 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Message_Block_T.h
- *
- * $Id: Message_Block_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Carlos O'Ryan <coryan@atdesk.com>
- */
-//=============================================================================
-
-#ifndef ACE_MESSAGE_BLOCK_T_H
-#define ACE_MESSAGE_BLOCK_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Message_Block.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Locked_Data_Block
- *
- * @brief A Data_Block with a concrete locking strategy.
- *
- * Data_Blocks can be parametric on the kind of lock they use; in
- * many cases the lifetime of the lock is tied to the lifetime of
- * the Data_Block itself. But since Data_Blocks are reference
- * counted it is hard for users to control the lock lifetime.
- * This class is parametric over the kind of lock used.
- */
-template <class ACE_LOCK>
-class ACE_Locked_Data_Block : public ACE_Data_Block
-{
-public:
- // = Initialization and termination methods.
- /// Default "do-nothing" constructor.
- ACE_Locked_Data_Block (void);
-
- /// Initialize.
- ACE_Locked_Data_Block (size_t size,
- ACE_Message_Block::ACE_Message_Type msg_type,
- const char *msg_data,
- ACE_Allocator *allocator_strategy,
- ACE_Message_Block::Message_Flags flags,
- ACE_Allocator *data_block_allocator);
-
- /// Delete all the resources held in the message.
- virtual ~ACE_Locked_Data_Block (void);
-
- /**
- * Return an exact "deep copy" of the message, the dynamic type is
- * ACE_Locked_Data_Block<>
- * See the documentation in Message_Block.h for details.
- */
- virtual ACE_Data_Block *clone_nocopy (ACE_Message_Block::Message_Flags mask = 0,
- size_t max_size = 0) const;
-
-private:
- /// The lock
- ACE_LOCK lock_;
-
- // = Disallow these operations.
- ACE_UNIMPLEMENTED_FUNC (ACE_Locked_Data_Block<ACE_LOCK> &operator= (const ACE_Locked_Data_Block<ACE_LOCK> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Locked_Data_Block (const ACE_Locked_Data_Block<ACE_LOCK> &))
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Message_Block_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Message_Block_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Message_Block_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_MESSAGE_BLOCK_T_H */
-
diff --git a/dep/include/ace/Message_Block_T.inl b/dep/include/ace/Message_Block_T.inl
deleted file mode 100644
index 58c89c641ad..00000000000
--- a/dep/include/ace/Message_Block_T.inl
+++ /dev/null
@@ -1,31 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Message_Block_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template<class ACE_LOCK> ACE_INLINE
-ACE_Locked_Data_Block<ACE_LOCK>::ACE_Locked_Data_Block (void)
-{
- this->locking_strategy_ = &this->lock_;
-}
-
-template<class ACE_LOCK> ACE_INLINE
-ACE_Locked_Data_Block<ACE_LOCK>::
-ACE_Locked_Data_Block (size_t size,
- ACE_Message_Block::ACE_Message_Type msg_type,
- const char *msg_data,
- ACE_Allocator *allocator_strategy,
- ACE_Message_Block::Message_Flags flags,
- ACE_Allocator *data_block_allocator)
- : ACE_Data_Block (size,
- msg_type,
- msg_data,
- allocator_strategy,
- &lock_,
- flags,
- data_block_allocator)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Message_Queue.h b/dep/include/ace/Message_Queue.h
deleted file mode 100644
index c9734213409..00000000000
--- a/dep/include/ace/Message_Queue.h
+++ /dev/null
@@ -1,238 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Message_Queue.h
- *
- * $Id: Message_Queue.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_MESSAGE_QUEUE_H
-#define ACE_MESSAGE_QUEUE_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Message_Block.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/IO_Cntl_Msg.h"
-#if defined (ACE_HAS_WIN32_OVERLAPPED_IO)
-# include "ace/Synch_Traits.h" /* Needed in ACE_Message_Queue_NT */
-# include "ace/Thread_Mutex.h" /* Needed in ACE_Message_Queue_NT */
-#endif
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decls.
-class ACE_Notification_Strategy;
-template <ACE_SYNCH_DECL> class ACE_Message_Queue_Iterator;
-template <ACE_SYNCH_DECL> class ACE_Message_Queue_Reverse_Iterator;
-
-/**
- * @class ACE_Message_Queue_Base
- *
- * @brief Base class for ACE_Message_Queue, which is the central
- * queueing facility for messages in the ACE framework.
- *
- * For all the ACE_Time_Value pointer parameters the caller will
- * block until action is possible if @a timeout == 0. Otherwise, it
- * will wait until the absolute time specified in *@a timeout
- * elapses.
- *
- * A queue is always in one of three states:
- * . ACTIVATED
- * . DEACTIVATED
- * . PULSED
- */
-class ACE_Export ACE_Message_Queue_Base
-{
-public:
- enum
- {
- // Default high and low watermarks.
-
- /// Default high watermark (16 K).
- DEFAULT_HWM = 16 * 1024,
- /// Default low watermark (same as high water mark).
- DEFAULT_LWM = 16 * 1024,
-
- // Queue states. Before PULSED state was added, the activate()
- // and deactivate() methods returned WAS_INACTIVE or WAS_ACTIVE
- // to indicate the previous condition. Now those methods
- // return the state the queue was previously in. WAS_ACTIVE
- // and WAS_INACTIVE are defined to match previous semantics for
- // applications that don't use the PULSED state.
-
- /// @deprecated Use ACTIVATED instead.
- WAS_ACTIVE = 1,
- /// Message queue is active and processing normally
- ACTIVATED = 1,
-
- /// @deprecated Use DEACTIVATED instead.
- WAS_INACTIVE = 2,
- /// Queue is deactivated; no enqueue or dequeue operations allowed.
- DEACTIVATED = 2,
-
- /// Message queue was pulsed; enqueue and dequeue may proceed normally.
- PULSED = 3
-
- };
-
- ACE_Message_Queue_Base (void);
-
- /// Close down the message queue and release all resources.
- virtual int close (void) = 0;
-
- /// Close down the message queue and release all resources.
- virtual ~ACE_Message_Queue_Base (void);
-
- // = Enqueue and dequeue methods.
-
- /**
- * Retrieve the first ACE_Message_Block without removing it. Note
- * that @a timeout uses <{absolute}> time rather than <{relative}>
- * time. If the @a timeout elapses without receiving a message -1 is
- * returned and @c errno is set to @c EWOULDBLOCK. If the queue is
- * deactivated -1 is returned and @c errno is set to <ESHUTDOWN>.
- * Otherwise, returns -1 on failure, else the number of items still
- * on the queue.
- */
- virtual int peek_dequeue_head (ACE_Message_Block *&first_item,
- ACE_Time_Value *timeout = 0) = 0;
-
- /**
- * Enqueue a <ACE_Message_Block *> into the tail of the queue.
- * Returns number of items in queue if the call succeeds or -1
- * otherwise. These calls return -1 when queue is closed,
- * deactivated (in which case @c errno == <ESHUTDOWN>), when a signal
- * occurs (in which case @c errno == <EINTR>, or if the time
- * specified in timeout elapses (in which case @c errno ==
- * @c EWOULDBLOCK).
- */
- virtual int enqueue_tail (ACE_Message_Block *new_item,
- ACE_Time_Value *timeout = 0) = 0;
- virtual int enqueue (ACE_Message_Block *new_item,
- ACE_Time_Value *timeout = 0) = 0;
-
- /**
- * Dequeue and return the <ACE_Message_Block *> at the head of the
- * queue. Returns number of items in queue if the call succeeds or
- * -1 otherwise. These calls return -1 when queue is closed,
- * deactivated (in which case @c errno == <ESHUTDOWN>), when a signal
- * occurs (in which case @c errno == <EINTR>, or if the time
- * specified in timeout elapses (in which case @c errno ==
- * @c EWOULDBLOCK).
- */
- virtual int dequeue_head (ACE_Message_Block *&first_item,
- ACE_Time_Value *timeout = 0) = 0;
- virtual int dequeue (ACE_Message_Block *&first_item,
- ACE_Time_Value *timeout = 0) = 0;
-
- // = Check if queue is full/empty.
- /// True if queue is full, else false.
- virtual bool is_full (void) = 0;
-
- /// True if queue is empty, else false.
- virtual bool is_empty (void) = 0;
-
- // = Queue statistic methods.
-
- /// Number of total bytes on the queue, i.e., sum of the message
- /// block sizes.
- virtual size_t message_bytes (void) = 0;
-
- /// Number of total length on the queue, i.e., sum of the message
- /// block lengths.
- virtual size_t message_length (void) = 0;
-
- /// Number of total messages on the queue.
- virtual size_t message_count (void) = 0;
-
- /// New value of the number of total bytes on the queue, i.e.,
- /// sum of the message block sizes.
- virtual void message_bytes (size_t new_size) = 0;
-
- /// New value of the number of total length on the queue, i.e.,
- /// sum of the message block lengths.
- virtual void message_length (size_t new_length) = 0;
-
- // = Activation control methods.
-
- /**
- * Deactivate the queue and wake up all threads waiting on the queue
- * so they can continue. No messages are removed from the queue,
- * however. Any other operations called until the queue is
- * activated again will immediately return -1 with @c errno
- * ESHUTDOWN.
- *
- * @retval The queue's state before this call.
- */
- virtual int deactivate (void) = 0;
-
- /**
- * Reactivate the queue so that threads can enqueue and dequeue
- * messages again.
- *
- * @retval The queue's state before this call.
- */
- virtual int activate (void) = 0;
-
- /**
- * Pulse the queue to wake up any waiting threads. Changes the
- * queue state to PULSED; future enqueue/dequeue operations proceed
- * as in ACTIVATED state.
- *
- * @retval The queue's state before this call.
- */
- virtual int pulse (void) = 0;
-
- /// Returns the current state of the queue.
- virtual int state (void);
-
- /// Returns 1 if the state of the queue is DEACTIVATED,
- /// and 0 if the queue's state is ACTIVATED or PULSED.
- virtual int deactivated (void) = 0;
-
- /// Get the notification strategy for the <Message_Queue>
- virtual ACE_Notification_Strategy *notification_strategy (void) = 0;
-
- /// Set the notification strategy for the <Message_Queue>
- virtual void notification_strategy (ACE_Notification_Strategy *s) = 0;
-
- // = Notification hook.
-
- /// Dump the state of an object.
- virtual void dump (void) const = 0;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- // = Disallow copying and assignment.
- ACE_Message_Queue_Base (const ACE_Message_Queue_Base &);
- void operator= (const ACE_Message_Queue_Base &);
-
-protected:
- /// Indicates the state of the queue, which can be
- /// <ACTIVATED>, <DEACTIVATED>, or <PULSED>.
- int state_;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// Include the templates here.
-#include "ace/Message_Queue_T.h"
-
-#if defined (__ACE_INLINE__)
-#include "ace/Message_Queue.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_MESSAGE_QUEUE_H */
-
diff --git a/dep/include/ace/Message_Queue.inl b/dep/include/ace/Message_Queue.inl
deleted file mode 100644
index 4dab2522200..00000000000
--- a/dep/include/ace/Message_Queue.inl
+++ /dev/null
@@ -1,12 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Message_Queue.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Message_Queue_Base::ACE_Message_Queue_Base (void)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Message_Queue_NT.h b/dep/include/ace/Message_Queue_NT.h
deleted file mode 100644
index ffdc9eb4da2..00000000000
--- a/dep/include/ace/Message_Queue_NT.h
+++ /dev/null
@@ -1,232 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Message_Queue_NT.h
- *
- * $Id: Message_Queue_NT.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_MESSAGE_QUEUE_NT_H
-#define ACE_MESSAGE_QUEUE_NT_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Message_Queue.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_WIN32_OVERLAPPED_IO)
-# include "ace/Synch_Traits.h" /* Needed in ACE_Message_Queue_NT */
-# include "ace/Thread_Mutex.h" /* Needed in ACE_Message_Queue_NT */
-#endif
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_HAS_WIN32_OVERLAPPED_IO)
-/**
- * @class ACE_Message_Queue_NT
- *
- * @brief Message Queue implementation using IO completion port on NT.
- *
- * Implementation of a strip-downed ACE_Message_Queue using NT's
- * IO completion port mechanism.
- * @note *Many* ACE_Message_Queue features are not supported with
- * this implementation, including:
- * * <open> method have different signatures.
- * * <dequeue_head> *requires* that the ACE_Message_Block
- * pointer argument point to an ACE_Message_Block that was
- * allocated by the caller.
- * * <peek_dequeue_head>.
- * * <ACE_Message_Queue_Iterators>.
- * * No flow control.
- */
-class ACE_Export ACE_Message_Queue_NT : public ACE_Message_Queue_Base
-{
-public:
- // = Initialization and termination methods.
- ACE_Message_Queue_NT (DWORD max_threads = ACE_Message_Queue_Base::DEFAULT_HWM);
-
- /**
- * Initialize the Message Queue by creating a new NT I/O completion
- * port. The first arguemnt specifies the number of threads
- * released by the MQ that are allowed to run concurrently. Return
- * 0 when succeeds, -1 otherwise.
- */
- virtual int open (DWORD max_threads = ACE_Message_Queue_Base::DEFAULT_HWM);
-
- /// Close down the underlying I/O completion port. You need to
- /// re-open the MQ after this function is executed.
- virtual int close (void);
-
- /// Close down the message queue and release all resources.
- virtual ~ACE_Message_Queue_NT (void);
-
- // = Enqueue and dequeue methods.
-
- /**
- * Enqueue an <ACE_Message_Block *> at the end of the queue.
- * Returns -1 on failure, else the number of items still on the
- * queue.
- */
- virtual int enqueue_tail (ACE_Message_Block *new_item,
- ACE_Time_Value *timeout = 0);
- virtual int enqueue (ACE_Message_Block *new_item,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Dequeue and return the <ACE_Message_Block *> at the head of the
- * queue. Returns -1 on failure, else the number of items still on
- * the queue.
- */
- virtual int dequeue_head (ACE_Message_Block *&first_item,
- ACE_Time_Value *timeout = 0);
- virtual int dequeue (ACE_Message_Block *&first_item,
- ACE_Time_Value *timeout = 0);
-
- // = Check if queue is full/empty.
- /**
- * Always return false.
- */
-
- virtual bool is_full (void);
- /**
- * True if queue is empty, else false. Notice the return value is
- * only transient.
- */
- virtual bool is_empty (void);
-
- // = Queue statistic methods (transient.)
- /**
- * Number of total bytes on the queue, i.e., sum of the message
- * block sizes.
- */
- virtual size_t message_bytes (void);
-
- /**
- * Number of total length on the queue, i.e., sum of the message
- * block lengths.
- */
- virtual size_t message_length (void);
-
- /**
- * Number of total messages on the queue.
- */
- virtual size_t message_count (void);
-
- // = Manual changes to these stats (used when queued message blocks
- // change size or lengths).
- /**
- * New value of the number of total bytes on the queue, i.e., sum of
- * the message block sizes.
- */
- virtual void message_bytes (size_t new_size);
-
- /**
- * New value of the number of total length on the queue, i.e., sum
- * of the message block lengths.
- */
- virtual void message_length (size_t new_length);
-
- /// Get the max concurrent thread number.
- virtual DWORD max_threads (void);
-
- // = Activation control methods.
-
- /**
- * Deactivate the queue and wake up all threads waiting on the queue
- * so they can continue. No messages are removed from the queue,
- * however. Any other operations called until the queue is
- * activated again will immediately return -1 with @c errno
- * ESHUTDOWN.
- *
- * @retval The queue's state before this call.
- */
- virtual int deactivate (void);
-
- /**
- * Reactivate the queue so that threads can enqueue and dequeue
- * messages again. Returns the state of the queue before the call.
- */
- virtual int activate (void);
-
- /**
- * Pulse the queue to wake up any waiting threads. Changes the
- * queue state to PULSED; future enqueue/dequeue operations proceed
- * as in ACTIVATED state.
- *
- * @retval The queue's state before this call.
- */
- virtual int pulse (void);
-
- /// Returns true if the state of the queue is <DEACTIVATED>,
- /// but false if the queue's is <ACTIVATED> or <PULSED>.
- virtual int deactivated (void);
-
- // = Not currently implemented...
- int peek_dequeue_head (ACE_Message_Block *&first_item,
- ACE_Time_Value *timeout = 0);
- ACE_Notification_Strategy *notification_strategy (void);
- void notification_strategy (ACE_Notification_Strategy *s);
-
- // = Notification hook.
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Get the handle to the underlying completion port.
- virtual ACE_HANDLE completion_port (void);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-
- // Disallow copying and assignment.
- ACE_Message_Queue_NT (const ACE_Message_Queue_NT &);
- void operator= (const ACE_Message_Queue_NT &);
-
-private:
- // = Internal states.
-
- /// Maximum threads that can be released (and run) concurrently.
- DWORD max_cthrs_;
-
- /// Current number of threads waiting to dequeue messages.
- DWORD cur_thrs_;
-
- /// Current number of bytes in queue.
- size_t cur_bytes_;
-
- /// Current length of messages in queue.
- size_t cur_length_;
-
- /// Current number of messages in the queue.
- size_t cur_count_;
-
- /**
- * Synchronizer. This should really be an ACE_Recursive_Thread_Mutex
- * but since this class is only supported on NT, it's okay to use
- * ACE_Thread_Mutex here.
- */
- ACE_SYNCH_MUTEX lock_;
-
- /// Underlying NT IoCompletionPort.
- ACE_HANDLE completion_port_;
-
-};
-#endif /* ACE_HAS_WIN32_OVERLAPPED_IO */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Message_Queue_NT.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_MESSAGE_QUEUE_NT_H */
-
diff --git a/dep/include/ace/Message_Queue_NT.inl b/dep/include/ace/Message_Queue_NT.inl
deleted file mode 100644
index 4fc18fbbdf7..00000000000
--- a/dep/include/ace/Message_Queue_NT.inl
+++ /dev/null
@@ -1,131 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Message_Queue_NT.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#if defined (ACE_HAS_WIN32_OVERLAPPED_IO)
-# include "ace/Guard_T.h"
-#endif /* ACE_HAS_WIN32_OVERLAPPED_IO */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_HAS_WIN32_OVERLAPPED_IO)
-
-ACE_INLINE int
-ACE_Message_Queue_NT::enqueue_tail (ACE_Message_Block *new_item,
- ACE_Time_Value *timeout)
-{
- ACE_TRACE ("ACE_Message_Queue_NT::enqueue_tail");
- return this->enqueue (new_item, timeout);
-}
-
-ACE_INLINE int
-ACE_Message_Queue_NT::dequeue_head (ACE_Message_Block *&first_item,
- ACE_Time_Value *timeout)
-{
- ACE_TRACE ("ACE_Message_Queue_NT::dequeue_head");
- return this->dequeue (first_item, timeout);
-}
-
-ACE_INLINE bool
-ACE_Message_Queue_NT::is_full (void)
-{
- ACE_TRACE ("ACE_Message_Queue_NT::is_full");
- return false; // Always not full.
-}
-
-ACE_INLINE bool
-ACE_Message_Queue_NT::is_empty (void)
-{
- ACE_TRACE ("ACE_Message_Queue_NT::is_empty");
- ACE_GUARD_RETURN (ACE_SYNCH_MUTEX, ace_mon, this->lock_, false);
-
- return this->cur_bytes_ > 0 || this->cur_count_ > 0 ? false : true;
-}
-
-ACE_INLINE size_t
-ACE_Message_Queue_NT::message_bytes (void)
-{
- ACE_TRACE ("ACE_Message_Queue_NT::message_bytes");
- // Accessing to size_t must be atomic.
- return this->cur_bytes_;
-}
-
-ACE_INLINE size_t
-ACE_Message_Queue_NT::message_length (void)
-{
- ACE_TRACE ("ACE_Message_Queue_NT::message_length");
- // Accessing to size_t must be atomic.
- return this->cur_length_;
-}
-
-ACE_INLINE size_t
-ACE_Message_Queue_NT::message_count (void)
-{
- ACE_TRACE ("ACE_Message_Queue_NT::message_count");
- // Accessing to size_t must be atomic.
- return this->cur_count_;
-}
-
-ACE_INLINE void
-ACE_Message_Queue_NT::message_bytes (size_t new_value)
-{
- ACE_TRACE ("ACE_Message_Queue_NT::message_bytes");
- ACE_GUARD (ACE_SYNCH_MUTEX, ace_mon, this->lock_);
-
- this->cur_bytes_ = new_value;
-}
-
-ACE_INLINE void
-ACE_Message_Queue_NT::message_length (size_t new_value)
-{
- ACE_TRACE ("ACE_Message_Queue_NT::message_length");
- ACE_GUARD (ACE_SYNCH_MUTEX, ace_mon, this->lock_);
-
- this->cur_length_ = new_value;
-}
-
-ACE_INLINE DWORD
-ACE_Message_Queue_NT::max_threads (void)
-{
- ACE_TRACE ("ACE_Message_Queue_NT::max_threads");
- return this->max_cthrs_;
-}
-
-ACE_INLINE int
-ACE_Message_Queue_NT::deactivated (void)
-{
- ACE_TRACE ("ACE_Message_Queue_NT::deactivated");
- // Accessing to int must be atomic.
- return this->state_ == ACE_Message_Queue_Base::DEACTIVATED;
-}
-
-ACE_INLINE ACE_HANDLE
-ACE_Message_Queue_NT::completion_port (void)
-{
- ACE_TRACE ("ACE_Message_Queue_NT::completion_port");
- return this->completion_port_;
-}
-
-ACE_INLINE int
-ACE_Message_Queue_NT::peek_dequeue_head (ACE_Message_Block *&first_item,
- ACE_Time_Value *timeout)
-{
- ACE_UNUSED_ARG(first_item);
- ACE_UNUSED_ARG(timeout);
- ACE_NOTSUP_RETURN (-1);
-}
-
-ACE_INLINE ACE_Notification_Strategy *
-ACE_Message_Queue_NT::notification_strategy (void)
-{
- ACE_NOTSUP_RETURN (0);
-}
-
-ACE_INLINE void
-ACE_Message_Queue_NT::notification_strategy (ACE_Notification_Strategy *)
-{
-}
-
-#endif /* ACE_HAS_WIN32_OVERLAPPED_IO */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Message_Queue_T.h b/dep/include/ace/Message_Queue_T.h
deleted file mode 100644
index 8f5f0217108..00000000000
--- a/dep/include/ace/Message_Queue_T.h
+++ /dev/null
@@ -1,1560 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Message_Queue_T.h
- *
- * $Id: Message_Queue_T.h 82289 2008-07-11 08:12:09Z hillj $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_MESSAGE_QUEUE_T_H
-#define ACE_MESSAGE_QUEUE_T_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Message_Queue.h"
-#include "ace/Dynamic_Message_Strategy.h"
-#include "ace/Synch_Traits.h"
-#include "ace/Guard_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_VXWORKS)
-class ACE_Message_Queue_Vx;
-#endif /* defined (ACE_VXWORKS) */
-
-#if defined (ACE_HAS_WIN32_OVERLAPPED_IO)
-class ACE_Message_Queue_NT;
-#endif /* ACE_HAS_WIN32_OVERLAPPED_IO*/
-
-#if defined (ACE_HAS_MONITOR_POINTS) && ACE_HAS_MONITOR_POINTS == 1
-namespace ACE
-{
- namespace Monitor_Control
- {
- class Size_Monitor;
- }
-}
-#endif /* ACE_HAS_MONITOR_POINTS==1 */
-
-/**
- * @class ACE_Message_Queue
- *
- * @brief A message queueing facility with parameterized synchronization
- * capability. ACE_Message_Queue is modeled after the queueing facilities
- * in System V STREAMs.
- *
- * ACE_Message_Queue is the primary queueing facility for
- * messages in the ACE framework. It's one template argument parameterizes
- * the queue's synchronization. The argument specifies a synchronization
- * strategy. The two main strategies available for ACE_SYNCH_DECL are:
- * -# ACE_MT_SYNCH: all operations are thread-safe
- * -# ACE_NULL_SYNCH: no synchronization and no locking overhead
- *
- * All data passing through ACE_Message_Queue is in the form of
- * ACE_Message_Block objects. @sa ACE_Message_Block.
- */
-template <ACE_SYNCH_DECL>
-class ACE_Message_Queue : public ACE_Message_Queue_Base
-{
-public:
- friend class ACE_Message_Queue_Iterator<ACE_SYNCH_USE>;
- friend class ACE_Message_Queue_Reverse_Iterator<ACE_SYNCH_USE>;
-
- // = Traits
- typedef ACE_Message_Queue_Iterator<ACE_SYNCH_USE>
- ITERATOR;
- typedef ACE_Message_Queue_Reverse_Iterator<ACE_SYNCH_USE>
- REVERSE_ITERATOR;
-
- /**
- * @name Initialization methods
- */
- //@{
- /**
- * Initialize an ACE_Message_Queue.
- *
- * @param hwm High water mark. Determines how many bytes can be stored in a
- * queue before it's considered full. Supplier threads must block
- * until the queue is no longer full.
- * @param lwm Low water mark. Determines how many bytes must be in the queue
- * before supplier threads are allowed to enqueue additional
- * data. By default, the @a hwm equals @a lwm, which means
- * that suppliers will be able to enqueue new messages as soon as
- * a consumer removes any message from the queue. Making the low
- * water mark smaller than the high water mark forces consumers to
- * drain more messages from the queue before suppliers can enqueue
- * new messages, which can minimize the "silly window syndrome."
- * @param ns Notification strategy. Pointer to an object conforming to the
- * ACE_Notification_Strategy interface. If set, the object's
- * notify(void) method will be called each time data is added to
- * this ACE_Message_Queue. @see ACE_Reactor_Notification_Strategy.
- */
- ACE_Message_Queue (size_t hwm = ACE_Message_Queue_Base::DEFAULT_HWM,
- size_t lwm = ACE_Message_Queue_Base::DEFAULT_LWM,
- ACE_Notification_Strategy *ns = 0);
- virtual int open (size_t hwm = ACE_Message_Queue_Base::DEFAULT_HWM,
- size_t lwm = ACE_Message_Queue_Base::DEFAULT_LWM,
- ACE_Notification_Strategy *ns = 0);
- //@}
-
- /// Releases all resources from the message queue and marks it deactivated.
- /// @sa flush().
- ///
- /// @retval The number of messages released from the queue; -1 on error.
- virtual int close (void);
-
- /// Releases all resources from the message queue and marks it deactivated.
- virtual ~ACE_Message_Queue (void);
-
- /**
- * Releases all resources from the message queue but does not mark it
- * deactivated. This method holds the queue lock during this operation.
- * @sa close().
- *
- * @return The number of messages flushed; -1 on error.
- */
- virtual int flush (void);
-
- /**
- * Release all resources from the message queue but do not mark it
- * as deactivated.
- *
- * @pre The caller must be holding the queue lock before calling this
- * method.
- *
- * @return The number of messages flushed.
- */
- virtual int flush_i (void);
-
- /** @name Enqueue and dequeue methods
- *
- * The enqueue and dequeue methods accept a timeout value passed as
- * an ACE_Time_Value *. In all cases, if the timeout pointer is 0,
- * the caller will block until action is possible. If the timeout pointer
- * is non-zero, the call will wait (if needed, subject to water mark
- * settings) until the absolute time specified in the referenced
- * ACE_Time_Value object is reached. If the time is reached before the
- * desired action is possible, the method will return -1 with errno set
- * to @c EWOULDBLOCK. Regardless of the timeout setting, however,
- * these methods will also fail and return -1 when the queue is closed,
- * deactivated, pulsed, or when a signal occurs.
- *
- * See C++NPv2 Section 6.2 and APG Section 12.3 for a fuller treatment of
- * ACE_Message_Queue, enqueueing, dequeueing, and how these operations are
- * affected by queue state transitions.
- */
- //@{
- /**
- * Retrieve a pointer to the first ACE_Message_Block in the queue
- * without removing it.
- *
- * @note Because the block whose pointer is returned is still on the queue,
- * another thread may dequeue the referenced block at any time,
- * including before the calling thread examines the peeked-at block.
- * Be very careful with this method in multithreaded queueing
- * situations.
- *
- * @param first_item Reference to an ACE_Message_Block * that will
- * point to the first block on the queue. The block
- * remains on the queue until this or another thread
- * dequeues it.
- * @param timeout The absolute time the caller will wait until
- * for a block to be queued.
- *
- * @retval >0 The number of ACE_Message_Blocks on the queue.
- * @retval -1 On failure. errno holds the reason. Common errno values are:
- * - EWOULDBLOCK: the timeout elapsed
- * - ESHUTDOWN: the queue was deactivated or pulsed
- */
- virtual int peek_dequeue_head (ACE_Message_Block *&first_item,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Enqueue an ACE_Message_Block into the queue in accordance with
- * the ACE_Message_Block's priority (0 is lowest priority). FIFO
- * order is maintained when messages of the same priority are
- * inserted consecutively.
- *
- * @param new_item Pointer to an ACE_Message_Block that will be
- * added to the queue. The block's @c msg_priority()
- * method will be called to obtain the queueing priority.
- * @param timeout The absolute time the caller will wait until
- * for the block to be queued.
- *
- * @retval >0 The number of ACE_Message_Blocks on the queue after adding
- * the specified block.
- * @retval -1 On failure. errno holds the reason. Common errno values are:
- * - EWOULDBLOCK: the timeout elapsed
- * - ESHUTDOWN: the queue was deactivated or pulsed
- */
- virtual int enqueue_prio (ACE_Message_Block *new_item,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Enqueue an ACE_Message_Block into the queue in accordance with the
- * block's deadline time. FIFO order is maintained when messages of
- * the same deadline time are inserted consecutively.
- *
- * @param new_item Pointer to an ACE_Message_Block that will be
- * added to the queue. The block's @c msg_deadline_time()
- * method will be called to obtain the relative queueing
- * position.
- * @param timeout The absolute time the caller will wait until
- * for the block to be queued.
- *
- * @retval >0 The number of ACE_Message_Blocks on the queue after adding
- * the specified block.
- * @retval -1 On failure. errno holds the reason. Common errno values are:
- * - EWOULDBLOCK: the timeout elapsed
- * - ESHUTDOWN: the queue was deactivated or pulsed
- */
- virtual int enqueue_deadline (ACE_Message_Block *new_item,
- ACE_Time_Value *timeout = 0);
-
- /**
- * @deprecated This is an alias for enqueue_prio(). It's only here for
- * backwards compatibility and will go away in a subsequent release.
- * Please use enqueue_prio() instead.
- */
- virtual int enqueue (ACE_Message_Block *new_item,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Enqueue one or more ACE_Message_Block objects at the tail of the queue.
- * If the @a new_item @c next() pointer is non-zero, it is assumed to be the
- * start of a series of ACE_Message_Block objects connected via their
- * @c next() pointers. The series of blocks will be added to the queue in
- * the same order they are passed in as.
- *
- * @param new_item Pointer to an ACE_Message_Block that will be
- * added to the queue. If the block's @c next() pointer
- * is non-zero, all blocks chained from the @c next()
- * pointer are enqueued as well.
- * @param timeout The absolute time the caller will wait until
- * for the block to be queued.
- *
- * @retval >0 The number of ACE_Message_Blocks on the queue after adding
- * the specified block(s).
- * @retval -1 On failure. errno holds the reason. Common errno values are:
- * - EWOULDBLOCK: the timeout elapsed
- * - ESHUTDOWN: the queue was deactivated or pulsed
- */
- virtual int enqueue_tail (ACE_Message_Block *new_item,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Enqueue one or more ACE_Message_Block objects at the head of the queue.
- * If the @a new_item @c next() pointer is non-zero, it is assumed to be the
- * start of a series of ACE_Message_Block objects connected via their
- * @c next() pointers. The series of blocks will be added to the queue in
- * the same order they are passed in as.
- *
- * @param new_item Pointer to an ACE_Message_Block that will be
- * added to the queue. If the block's @c next() pointer
- * is non-zero, all blocks chained from the @c next()
- * pointer are enqueued as well.
- * @param timeout The absolute time the caller will wait until
- * for the block to be queued.
- *
- * @retval >0 The number of ACE_Message_Blocks on the queue after adding
- * the specified block(s).
- * @retval -1 On failure. errno holds the reason. Common errno values are:
- * - EWOULDBLOCK: the timeout elapsed
- * - ESHUTDOWN: the queue was deactivated or pulsed
- */
- virtual int enqueue_head (ACE_Message_Block *new_item,
- ACE_Time_Value *timeout = 0);
-
- /// This method is an alias for the dequeue_head() method.
- virtual int dequeue (ACE_Message_Block *&first_item,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Dequeue the ACE_Message_Block at the head of the queue and return
- * a pointer to the dequeued block.
- *
- * @param first_item Reference to an ACE_Message_Block * that will
- * be set to the address of the dequeued block.
- * @param timeout The absolute time the caller will wait until
- * for a block to be dequeued.
- *
- * @retval >=0 The number of ACE_Message_Blocks remaining in the queue.
- * @retval -1 On failure. errno holds the reason. Common errno values are:
- * - EWOULDBLOCK: the timeout elapsed
- * - ESHUTDOWN: the queue was deactivated or pulsed
- */
- virtual int dequeue_head (ACE_Message_Block *&first_item,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Dequeue the ACE_Message_Block that has the lowest priority (preserves
- * FIFO order for messages with the same priority) and return a pointer
- * to the dequeued block.
- *
- * @param first_item Reference to an ACE_Message_Block * that will
- * be set to the address of the dequeued block.
- * @param timeout The absolute time the caller will wait until
- * for a block to be dequeued.
- *
- * @retval >=0 The number of ACE_Message_Blocks remaining in the queue.
- * @retval -1 On failure. errno holds the reason. Common errno values are:
- * - EWOULDBLOCK: the timeout elapsed
- * - ESHUTDOWN: the queue was deactivated or pulsed
- */
- virtual int dequeue_prio (ACE_Message_Block *&first_item,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Dequeue the ACE_Message_Block at the tail of the queue and return
- * a pointer to the dequeued block.
- *
- * @param dequeued Reference to an ACE_Message_Block * that will
- * be set to the address of the dequeued block.
- * @param timeout The absolute time the caller will wait until
- * for a block to be dequeued.
- *
- * @retval >=0 The number of ACE_Message_Blocks remaining in the queue.
- * @retval -1 On failure. errno holds the reason. Common errno values are:
- * - EWOULDBLOCK: the timeout elapsed
- * - ESHUTDOWN: the queue was deactivated or pulsed
- */
- virtual int dequeue_tail (ACE_Message_Block *&dequeued,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Dequeue the ACE_Message_Block with the earliest deadline time and return
- * a pointer to the dequeued block.
- *
- * @param dequeued Reference to an ACE_Message_Block * that will
- * be set to the address of the dequeued block.
- * @param timeout The absolute time the caller will wait until
- * for a block to be dequeued.
- *
- * @retval >=0 The number of ACE_Message_Blocks remaining in the queue.
- * @retval -1 On failure. errno holds the reason. Common errno values are:
- * - EWOULDBLOCK: the timeout elapsed
- * - ESHUTDOWN: the queue was deactivated or pulsed
- */
- virtual int dequeue_deadline (ACE_Message_Block *&dequeued,
- ACE_Time_Value *timeout = 0);
- //@}
-
- /** @name Queue statistics methods
- */
- //@{
-
- /// True if queue is full, else false.
- virtual bool is_full (void);
- /// True if queue is empty, else false.
- virtual bool is_empty (void);
-
- /**
- * Number of total bytes on the queue, i.e., sum of the message
- * block sizes.
- */
- virtual size_t message_bytes (void);
-
- /**
- * Number of total length on the queue, i.e., sum of the message
- * block lengths.
- */
- virtual size_t message_length (void);
-
- /**
- * Number of total messages on the queue.
- */
- virtual size_t message_count (void);
-
- // = Manual changes to these stats (used when queued message blocks
- // change size or lengths).
- /**
- * New value of the number of total bytes on the queue, i.e., sum of
- * the message block sizes.
- */
- virtual void message_bytes (size_t new_size);
- /**
- * New value of the number of total length on the queue, i.e., sum
- * of the message block lengths.
- */
- virtual void message_length (size_t new_length);
-
- //@}
-
- /** @name Water mark (flow control) methods
- */
- //@{
-
- /**
- * Get high watermark.
- */
- virtual size_t high_water_mark (void);
- /**
- * Set the high watermark, which determines how many bytes can be
- * stored in a queue before it's considered "full."
- */
- virtual void high_water_mark (size_t hwm);
-
- /**
- * Get low watermark.
- */
- virtual size_t low_water_mark (void);
- /**
- * Set the low watermark, which determines how many bytes must be in
- * the queue before supplier threads are allowed to enqueue
- * additional ACE_Message_Blocks.
- */
- virtual void low_water_mark (size_t lwm);
- //@}
-
- /** @name Activation and queue state methods
- * See C++NPv2 Section 6.2 and APG Section 12.3 for a fuller treatment of
- * queue states and transitions and how the transitions affect message
- * enqueueing and dequeueing operations.
- */
- //@{
-
- /**
- * Deactivate the queue and wakeup all threads waiting on the queue
- * so they can continue. No messages are removed from the queue,
- * however. Any other operations called until the queue is
- * activated again will immediately return -1 with @c errno ==
- * ESHUTDOWN. Returns WAS_INACTIVE if queue was inactive before the
- * call and WAS_ACTIVE if queue was active before the call.
- */
- virtual int deactivate (void);
-
- /**
- * Reactivate the queue so that threads can enqueue and dequeue
- * messages again. Returns the state of the queue before the call.
- */
- virtual int activate (void);
-
- /**
- * Pulse the queue to wake up any waiting threads. Changes the
- * queue state to PULSED; future enqueue/dequeue operations proceed
- * as in ACTIVATED state.
- *
- * @return The queue's state before this call.
- */
- virtual int pulse (void);
-
- /// Returns the current state of the queue, which can be one of
- /// ACTIVATED, DEACTIVATED, or PULSED.
- virtual int state (void);
-
- /// Returns true if the state of the queue is <DEACTIVATED>,
- /// but false if the queue's is <ACTIVATED> or <PULSED>.
- virtual int deactivated (void);
- //@}
-
- /** @name Notification strategy methods
- */
- //@{
-
- /**
- * This hook is automatically invoked by <enqueue_head>,
- * <enqueue_tail>, and <enqueue_prio> when a new item is inserted
- * into the queue. Subclasses can override this method to perform
- * specific notification strategies (e.g., signaling events for a
- * <WFMO_Reactor>, notifying a <Reactor>, etc.). In a
- * multi-threaded application with concurrent consumers, there is no
- * guarantee that the queue will be still be non-empty by the time
- * the notification occurs.
- */
- virtual int notify (void);
-
- /// Get the notification strategy for the <Message_Queue>
- virtual ACE_Notification_Strategy *notification_strategy (void);
-
- /// Set the notification strategy for the <Message_Queue>
- virtual void notification_strategy (ACE_Notification_Strategy *s);
- //@}
-
- /// Returns a reference to the lock used by the ACE_Message_Queue.
- virtual ACE_SYNCH_MUTEX_T &lock (void);
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- // = Routines that actually do the enqueueing and dequeueing.
-
- // These routines assume that locks are held by the corresponding
- // public methods. Since they are virtual, you can change the
- // queueing mechanism by subclassing from ACE_Message_Queue.
-
- /// Enqueue an <ACE_Message_Block *> in accordance with its priority.
- virtual int enqueue_i (ACE_Message_Block *new_item);
-
- /// Enqueue an <ACE_Message_Block *> in accordance with its deadline time.
- virtual int enqueue_deadline_i (ACE_Message_Block *new_item);
-
- /// Enqueue an <ACE_Message_Block *> at the end of the queue.
- virtual int enqueue_tail_i (ACE_Message_Block *new_item);
-
- /// Enqueue an <ACE_Message_Block *> at the head of the queue.
- virtual int enqueue_head_i (ACE_Message_Block *new_item);
-
- /// Dequeue and return the <ACE_Message_Block *> at the head of the
- /// queue.
- virtual int dequeue_head_i (ACE_Message_Block *&first_item);
-
- /// Dequeue and return the <ACE_Message_Block *> with the lowest
- /// priority.
- virtual int dequeue_prio_i (ACE_Message_Block *&dequeued);
-
- /// Dequeue and return the <ACE_Message_Block *> at the tail of the
- /// queue.
- virtual int dequeue_tail_i (ACE_Message_Block *&first_item);
-
- /// Dequeue and return the <ACE_Message_Block *> with the lowest
- /// deadline time.
- virtual int dequeue_deadline_i (ACE_Message_Block *&first_item);
-
- // = Check the boundary conditions (assumes locks are held).
-
- /// True if queue is full, else false.
- virtual bool is_full_i (void);
-
- /// True if queue is empty, else false.
- virtual bool is_empty_i (void);
-
- // = Implementation of the public <activate> and <deactivate> methods.
-
- // These methods assume locks are held.
-
- /**
- * Notifies all waiting threads that the queue has been deactivated
- * so they can wakeup and continue other processing.
- * No messages are removed from the queue.
- *
- * @param pulse If 0, the queue's state is changed to DEACTIVATED
- * and any other operations called until the queue is
- * reactivated will immediately return -1 with
- * errno == ESHUTDOWN.
- * If not zero, only the waiting threads are notified and
- * the queue's state changes to PULSED.
- *
- * @return The state of the queue before the call.
- */
- virtual int deactivate_i (int pulse = 0);
-
- /// Activate the queue.
- virtual int activate_i (void);
-
- // = Helper methods to factor out common #ifdef code.
-
- /// Wait for the queue to become non-full.
- virtual int wait_not_full_cond (ACE_Guard<ACE_SYNCH_MUTEX_T> &mon,
- ACE_Time_Value *timeout);
-
- /// Wait for the queue to become non-empty.
- virtual int wait_not_empty_cond (ACE_Guard<ACE_SYNCH_MUTEX_T> &mon,
- ACE_Time_Value *timeout);
-
- /// Inform any threads waiting to enqueue that they can procede.
- virtual int signal_enqueue_waiters (void);
-
- /// Inform any threads waiting to dequeue that they can procede.
- virtual int signal_dequeue_waiters (void);
-
- /// Pointer to head of ACE_Message_Block list.
- ACE_Message_Block *head_;
-
- /// Pointer to tail of ACE_Message_Block list.
- ACE_Message_Block *tail_;
-
- /// Lowest number before unblocking occurs.
- size_t low_water_mark_;
-
- /// Greatest number of bytes before blocking.
- size_t high_water_mark_;
-
- /// Current number of bytes in the queue.
- size_t cur_bytes_;
-
- /// Current length of messages in the queue.
- size_t cur_length_;
-
- /// Current number of messages in the queue.
- size_t cur_count_;
-
- /// The notification strategy used when a new message is enqueued.
- ACE_Notification_Strategy *notification_strategy_;
-
- // = Synchronization primitives for controlling concurrent access.
- /// Protect queue from concurrent access.
- ACE_SYNCH_MUTEX_T lock_;
-
- /// Used to make threads sleep until the queue is no longer empty.
- ACE_SYNCH_CONDITION_T not_empty_cond_;
-
- /// Used to make threads sleep until the queue is no longer full.
- ACE_SYNCH_CONDITION_T not_full_cond_;
-
- /// Sends the size of the queue whenever it changes.
-#if defined (ACE_HAS_MONITOR_POINTS) && (ACE_HAS_MONITOR_POINTS == 1)
- ACE::Monitor_Control::Size_Monitor *monitor_;
-#endif
-
-private:
-
- // = Disallow these operations.
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Message_Queue<ACE_SYNCH_USE> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Message_Queue (const ACE_Message_Queue<ACE_SYNCH_USE> &))
-};
-
-// This typedef is used to get around a compiler bug in g++/vxworks.
-typedef ACE_Message_Queue<ACE_SYNCH> ACE_DEFAULT_MESSAGE_QUEUE_TYPE;
-
-/**
- * @class ACE_Message_Queue_Iterator
- *
- * @brief Iterator for the ACE_Message_Queue.
- */
-template <ACE_SYNCH_DECL>
-class ACE_Message_Queue_Iterator
-{
-public:
- // = Initialization method.
- ACE_Message_Queue_Iterator (ACE_Message_Queue <ACE_SYNCH_USE> &queue);
-
- // = Iteration methods.
- /// Pass back the @a entry that hasn't been seen in the queue.
- /// Returns 0 when all items have been seen, else 1.
- int next (ACE_Message_Block *&entry);
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Move forward by one element in the queue. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Message_Queue we are iterating over.
- ACE_Message_Queue <ACE_SYNCH_USE> &queue_;
-
- /// Keeps track of how far we've advanced...
- ACE_Message_Block *curr_;
-};
-
-/**
- * @class ACE_Message_Queue_Reverse_Iterator
- *
- * @brief Reverse Iterator for the ACE_Message_Queue.
- */
-template <ACE_SYNCH_DECL>
-class ACE_Message_Queue_Reverse_Iterator
-{
-public:
- // = Initialization method.
- ACE_Message_Queue_Reverse_Iterator (ACE_Message_Queue <ACE_SYNCH_USE> &queue);
-
- // = Iteration methods.
- /// Pass back the @a entry that hasn't been seen in the queue.
- /// Returns 0 when all items have been seen, else 1.
- int next (ACE_Message_Block *&entry);
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Move forward by one element in the queue. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Message_Queue we are iterating over.
- ACE_Message_Queue <ACE_SYNCH_USE> &queue_;
-
- /// Keeps track of how far we've advanced...
- ACE_Message_Block *curr_;
-};
-
-/**
- * @class ACE_Dynamic_Message_Queue
- *
- * @brief A derived class which adapts the ACE_Message_Queue
- * class in order to maintain dynamic priorities for enqueued
- * <ACE_Message_Blocks> and manage the queue order according
- * to these dynamic priorities.
- *
- * The messages in the queue are managed so as to preserve
- * a logical ordering with minimal overhead per enqueue and
- * dequeue operation. For this reason, the actual order of
- * messages in the linked list of the queue may differ from
- * their priority order. As time passes, a message may change
- * from pending status to late status, and eventually to beyond
- * late status. To minimize reordering overhead under this
- * design force, three separate boundaries are maintained
- * within the linked list of messages. Messages are dequeued
- * preferentially from the head of the pending portion, then
- * the head of the late portion, and finally from the head
- * of the beyond late portion. In this way, only the boundaries
- * need to be maintained (which can be done efficiently, as
- * aging messages maintain the same linked list order as they
- * progress from one status to the next), with no reordering
- * of the messages themselves, while providing correct priority
- * ordered dequeueing semantics.
- * Head and tail enqueue methods inherited from ACE_Message_Queue
- * are made private to prevent out-of-order messages from confusing
- * management of the various portions of the queue. Messages in
- * the pending portion of the queue whose priority becomes late
- * (according to the specific dynamic strategy) advance into
- * the late portion of the queue. Messages in the late portion
- * of the queue whose priority becomes later than can be represented
- * advance to the beyond_late portion of the queue. These behaviors
- * support a limited schedule overrun, with pending messages prioritized
- * ahead of late messages, and late messages ahead of beyond late
- * messages. These behaviors can be modified in derived classes by
- * providing alternative definitions for the appropriate virtual methods.
- * When filled with messages, the queue's linked list should look like:
- * H T
- * | |
- * B - B - B - B - L - L - L - P - P - P - P - P
- * | | | | | |
- * BH BT LH LT PH PT
- * Where the symbols are as follows:
- * H = Head of the entire list
- * T = Tail of the entire list
- * B = Beyond late message
- * BH = Beyond late messages Head
- * BT = Beyond late messages Tail
- * L = Late message
- * LH = Late messages Head
- * LT = Late messages Tail
- * P = Pending message
- * PH = Pending messages Head
- * PT = Pending messages Tail
- * Caveat: the virtual methods enqueue_tail, enqueue_head,
- * and peek_dequeue_head have semantics for the static
- * message queues that cannot be guaranteed for dynamic
- * message queues. The peek_dequeue_head method just
- * calls the base class method, while the two enqueue
- * methods call the priority enqueue method. The
- * order of messages in the dynamic queue is a function
- * of message deadlines and how long they are in the
- * queues. You can manipulate these in some cases to
- * ensure the correct semantics, but that is not a
- * very stable or portable approach (discouraged).
- */
-template <ACE_SYNCH_DECL>
-class ACE_Dynamic_Message_Queue : public ACE_Message_Queue<ACE_SYNCH_USE>
-{
-public:
- // = Initialization and termination methods.
- ACE_Dynamic_Message_Queue (ACE_Dynamic_Message_Strategy & message_strategy,
- size_t hwm = ACE_Message_Queue_Base::DEFAULT_HWM,
- size_t lwm = ACE_Message_Queue_Base::DEFAULT_LWM,
- ACE_Notification_Strategy * = 0);
-
- /// Close down the message queue and release all resources.
- virtual ~ACE_Dynamic_Message_Queue (void);
-
- /**
- * Detach all messages with status given in the passed flags from
- * the queue and return them by setting passed head and tail pointers
- * to the linked list they comprise. This method is intended primarily
- * as a means of periodically harvesting messages that have missed
- * their deadlines, but is available in its most general form. All
- * messages are returned in priority order, from head to tail, as of
- * the time this method was called.
- */
- virtual int remove_messages (ACE_Message_Block *&list_head,
- ACE_Message_Block *&list_tail,
- u_int status_flags);
-
- /**
- * Dequeue and return the <ACE_Message_Block *> at the head of the
- * queue. Returns -1 on failure, else the number of items still on
- * the queue.
- */
- virtual int dequeue_head (ACE_Message_Block *&first_item,
- ACE_Time_Value *timeout = 0);
-
- /// Dump the state of the queue.
- virtual void dump (void) const;
-
- /**
- * Just call priority enqueue method: tail enqueue semantics for dynamic
- * message queues are unstable: the message may or may not be where
- * it was placed after the queue is refreshed prior to the next
- * enqueue or dequeue operation.
- */
- virtual int enqueue_tail (ACE_Message_Block *new_item,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Just call priority enqueue method: head enqueue semantics for dynamic
- * message queues are unstable: the message may or may not be where
- * it was placed after the queue is refreshed prior to the next
- * enqueue or dequeue operation.
- */
- virtual int enqueue_head (ACE_Message_Block *new_item,
- ACE_Time_Value *timeout = 0);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
-
- /**
- * Enqueue an <ACE_Message_Block *> in accordance with its priority.
- * priority may be *dynamic* or *static* or a combination or *both*
- * It calls the priority evaluation function passed into the Dynamic
- * Message Queue constructor to update the priorities of all
- * enqueued messages.
- */
- virtual int enqueue_i (ACE_Message_Block *new_item);
-
- /// Enqueue a message in priority order within a given priority status sublist
- virtual int sublist_enqueue_i (ACE_Message_Block *new_item,
- const ACE_Time_Value &current_time,
- ACE_Message_Block *&sublist_head,
- ACE_Message_Block *&sublist_tail,
- ACE_Dynamic_Message_Strategy::Priority_Status status);
-
- /**
- * Dequeue and return the <ACE_Message_Block *> at the head of the
- * logical queue. Attempts first to dequeue from the pending
- * portion of the queue, or if that is empty from the late portion,
- * or if that is empty from the beyond late portion, or if that is
- * empty just sets the passed pointer to zero and returns -1.
- */
- virtual int dequeue_head_i (ACE_Message_Block *&first_item);
-
- /// Refresh the queue using the strategy
- /// specific priority status function.
- virtual int refresh_queue (const ACE_Time_Value & current_time);
-
- /// Refresh the pending queue using the strategy
- /// specific priority status function.
- virtual int refresh_pending_queue (const ACE_Time_Value & current_time);
-
- /// Refresh the late queue using the strategy
- /// specific priority status function.
- virtual int refresh_late_queue (const ACE_Time_Value & current_time);
-
- /// Pointer to head of the pending messages
- ACE_Message_Block *pending_head_;
-
- /// Pointer to tail of the pending messages
- ACE_Message_Block *pending_tail_;
-
- /// Pointer to head of the late messages
- ACE_Message_Block *late_head_;
-
- /// Pointer to tail of the late messages
- ACE_Message_Block *late_tail_;
-
- /// Pointer to head of the beyond late messages
- ACE_Message_Block *beyond_late_head_;
-
- /// Pointer to tail of the beyond late messages
- ACE_Message_Block *beyond_late_tail_;
-
- /// Pointer to a dynamic priority evaluation function.
- ACE_Dynamic_Message_Strategy &message_strategy_;
-
-private:
- // = Disallow public access to these operations.
-
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Dynamic_Message_Queue<ACE_SYNCH_USE> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Dynamic_Message_Queue (const ACE_Dynamic_Message_Queue<ACE_SYNCH_USE> &))
-
- // provide definitions for these (just call base class method),
- // but make them private so they're not accessible outside the class
-
- /// Private method to hide public base class method: just calls base class method
- virtual int peek_dequeue_head (ACE_Message_Block *&first_item,
- ACE_Time_Value *timeout = 0);
-
-};
-
-/**
- * @class ACE_Message_Queue_Factory
- *
- * @brief ACE_Message_Queue_Factory is a static factory class template which
- * provides a separate factory method for each of the major kinds of
- * priority based message dispatching: static, earliest deadline first
- * (EDF), and minimum laxity first (MLF).
- *
- * The ACE_Dynamic_Message_Queue class assumes responsibility for
- * releasing the resources of the strategy with which it was
- * constructed: the user of a message queue constructed by
- * any of these factory methods is only responsible for
- * ensuring destruction of the message queue itself.
- */
-template <ACE_SYNCH_DECL>
-class ACE_Message_Queue_Factory
-{
-public:
- /// Factory method for a statically prioritized ACE_Message_Queue
- static ACE_Message_Queue<ACE_SYNCH_USE> *
- create_static_message_queue (size_t hwm = ACE_Message_Queue_Base::DEFAULT_HWM,
- size_t lwm = ACE_Message_Queue_Base::DEFAULT_LWM,
- ACE_Notification_Strategy * = 0);
-
- /// Factory method for a dynamically prioritized (by time to deadline) ACE_Dynamic_Message_Queue
- static ACE_Dynamic_Message_Queue<ACE_SYNCH_USE> *
- create_deadline_message_queue (size_t hwm = ACE_Message_Queue_Base::DEFAULT_HWM,
- size_t lwm = ACE_Message_Queue_Base::DEFAULT_LWM,
- ACE_Notification_Strategy * = 0,
- u_long static_bit_field_mask = 0x3FFUL, // 2^(10) - 1
- u_long static_bit_field_shift = 10, // 10 low order bits
- u_long dynamic_priority_max = 0x3FFFFFUL, // 2^(22)-1
- u_long dynamic_priority_offset = 0x200000UL); // 2^(22-1)
-
- /// Factory method for a dynamically prioritized (by laxity) ACE_Dynamic_Message_Queue
- static ACE_Dynamic_Message_Queue<ACE_SYNCH_USE> *
- create_laxity_message_queue (size_t hwm = ACE_Message_Queue_Base::DEFAULT_HWM,
- size_t lwm = ACE_Message_Queue_Base::DEFAULT_LWM,
- ACE_Notification_Strategy * = 0,
- u_long static_bit_field_mask = 0x3FFUL, // 2^(10) - 1
- u_long static_bit_field_shift = 10, // 10 low order bits
- u_long dynamic_priority_max = 0x3FFFFFUL, // 2^(22)-1
- u_long dynamic_priority_offset = 0x200000UL); // 2^(22-1)
-
-#if defined (ACE_VXWORKS)
-
- /// Factory method for a wrapped VxWorks message queue
- static ACE_Message_Queue_Vx *
- create_Vx_message_queue (size_t max_messages, size_t max_message_length,
- ACE_Notification_Strategy *ns = 0);
-
-#endif /* defined (ACE_VXWORKS) */
-
-#if defined (ACE_HAS_WIN32_OVERLAPPED_IO)
-
- /// Factory method for a NT message queue.
- static ACE_Message_Queue_NT *
- create_NT_message_queue (size_t max_threads);
-
-#endif /* ACE_HAS_WIN32_OVERLAPPED_IO */
-};
-
-// Forward decls.
-template <class ACE_MESSAGE_TYPE, ACE_SYNCH_DECL> class ACE_Message_Queue_Ex_Iterator;
-template <class ACE_MESSAGE_TYPE, ACE_SYNCH_DECL> class ACE_Message_Queue_Ex_Reverse_Iterator;
-
-/**
- * @class ACE_Message_Queue_Ex
- *
- * @brief A threaded message queueing facility, modeled after the
- * queueing facilities in System V STREAMs.
- *
- * ACE_Message_Queue_Ex is a strongly-typed version of the
- * ACE_Message_Queue class. Rather than queueing in terms of ACE_Message_Block
- * objects, ACE_Message_Queue_Ex has a template argument to specify the
- * type of objects that are queued.
- *
- * The second template argument parameterizes the queue's synchronization.
- * The argument specifies a synchronization strategy. The two main
- * strategies available for ACE_SYNCH_DECL are:
- * -# ACE_MT_SYNCH: all operations are thread-safe
- * -# ACE_NULL_SYNCH: no synchronization and no locking overhead
- */
-template <class ACE_MESSAGE_TYPE, ACE_SYNCH_DECL>
-class ACE_Message_Queue_Ex
-{
-public:
-
- enum
- {
- /// Default priority value. This is the lowest priority.
- DEFAULT_PRIORITY = 0
- };
-
- friend class ACE_Message_Queue_Ex_Iterator <ACE_MESSAGE_TYPE, ACE_SYNCH_USE>;
- friend class ACE_Message_Queue_Ex_Reverse_Iterator<ACE_MESSAGE_TYPE, ACE_SYNCH_USE>;
-
- // = Traits
- typedef ACE_Message_Queue_Ex_Iterator<ACE_MESSAGE_TYPE, ACE_SYNCH_USE>
- ITERATOR;
- typedef ACE_Message_Queue_Ex_Reverse_Iterator<ACE_MESSAGE_TYPE, ACE_SYNCH_USE>
- REVERSE_ITERATOR;
-
- /**
- * @name Initialization methods
- */
- //@{
- /**
- * Initialize an ACE_Message_Queue_Ex.
- *
- * @param high_water_mark High water mark. Determines how many bytes can be
- * stored in a queue before it's considered full. Supplier threads
- * must block until the queue is no longer full.
- * @param low_water_mark Low water mark. Determines how many bytes must be in
- * the queue before supplier threads are allowed to enqueue additional
- * data. By default, the @a hwm equals @a lwm, which means
- * that suppliers will be able to enqueue new messages as soon as
- * a consumer removes any message from the queue. Making the low
- * water mark smaller than the high water mark forces consumers to
- * drain more messages from the queue before suppliers can enqueue
- * new messages, which can minimize the "silly window syndrome."
- * @param ns Notification strategy. Pointer to an object conforming to the
- * ACE_Notification_Strategy interface. If set, the object's
- * notify(void) method will be called each time data is added to
- * this ACE_Message_Queue. @see ACE_Reactor_Notification_Strategy.
- */
- ACE_Message_Queue_Ex (size_t high_water_mark = ACE_Message_Queue_Base::DEFAULT_HWM,
- size_t low_water_mark = ACE_Message_Queue_Base::DEFAULT_LWM,
- ACE_Notification_Strategy * ns = 0);
- virtual int open (size_t hwm = ACE_Message_Queue_Base::DEFAULT_HWM,
- size_t lwm = ACE_Message_Queue_Base::DEFAULT_LWM,
- ACE_Notification_Strategy * = 0);
- //@}
-
- /// Releases all resources from the message queue and marks it deactivated.
- /// @sa flush().
- ///
- /// @retval The number of messages released from the queue; -1 on error.
- virtual int close (void);
-
- /// Releases all resources from the message queue and marks it deactivated.
- virtual ~ACE_Message_Queue_Ex (void);
-
- /**
- * Releases all resources from the message queue but does not mark it
- * deactivated. This method holds the queue lock during this operation.
- * @sa close().
- *
- * @return The number of messages flushed; -1 on error.
- */
- virtual int flush (void);
-
- /**
- * Release all resources from the message queue but do not mark it
- * as deactivated.
- *
- * @pre The caller must be holding the queue lock before calling this
- * method.
- *
- * @return The number of messages flushed.
- */
- virtual int flush_i (void);
-
- /** @name Enqueue and dequeue methods
- *
- * The enqueue and dequeue methods accept a timeout value passed as
- * an ACE_Time_Value *. In all cases, if the timeout pointer is 0,
- * the caller will block until action is possible. If the timeout pointer
- * is non-zero, the call will wait (if needed, subject to water mark
- * settings) until the absolute time specified in the referenced
- * ACE_Time_Value object is reached. If the time is reached before the
- * desired action is possible, the method will return -1 with errno set
- * to @c EWOULDBLOCK. Regardless of the timeout setting, however,
- * these methods will also fail and return -1 when the queue is closed,
- * deactivated, pulsed, or when a signal occurs.
- *
- * The time parameters are handled the same as in ACE_Message_Queue, so
- * you can see C++NPv2 Section 6.2 and APG Section 12.3 for a fuller
- * treatment of ACE_Message_Queue, enqueueing, dequeueing, and how these
- * operations are affected by queue state transitions.
- */
- //@{
- /**
- * Retrieve a pointer to the first item in the queue without removing it.
- *
- * @note Because the item whose pointer is returned is still on the queue,
- * another thread may dequeue that item at any time,
- * including before the calling thread examines the peeked-at item.
- * Be very careful with this method in multithreaded queueing
- * situations.
- *
- * @param first_item Reference to an ACE_MESSAGE_TYPE * that will
- * point to the first item on the queue. The item
- * remains on the queue until this or another thread
- * dequeues it.
- * @param timeout The absolute time the caller will wait until
- * for an item to be queued.
- *
- * @retval >0 The number of items on the queue.
- * @retval -1 On failure. errno holds the reason. Common errno values are:
- * - EWOULDBLOCK: the timeout elapsed
- * - ESHUTDOWN: the queue was deactivated or pulsed
- */
- virtual int peek_dequeue_head (ACE_MESSAGE_TYPE *&first_item,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Enqueue an ACE_MESSAGE TYPE into the queue in accordance with
- * the specified priority (0 is lowest priority). FIFO
- * order is maintained when items of the same priority are
- * inserted consecutively.
- *
- * @param new_item Pointer to an item that will be added to the queue.
- * @param timeout The absolute time the caller will wait until
- * for the block to be queued.
- * @param priority The priority to use when enqueueing the item.
- *
- * @retval >0 The number of items on the queue after adding
- * the specified item.
- * @retval -1 On failure. errno holds the reason. Common errno values are:
- * - EWOULDBLOCK: the timeout elapsed
- * - ESHUTDOWN: the queue was deactivated or pulsed
- */
- virtual int enqueue_prio (ACE_MESSAGE_TYPE *new_item,
- ACE_Time_Value *timeout = 0,
- unsigned long priority = DEFAULT_PRIORITY);
-
- /**
- * This method acts just like enqueue_tail(). There's no deadline
- * time associated with items.
- */
- virtual int enqueue_deadline (ACE_MESSAGE_TYPE *new_item,
- ACE_Time_Value *timeout = 0);
-
- /**
- * @deprecated This is an alias for enqueue_prio(). It's only here for
- * backwards compatibility and will go away in a subsequent release.
- * Please use enqueue_prio() instead.
- */
- virtual int enqueue (ACE_MESSAGE_TYPE *new_item,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Enqueue an item at the tail of the queue.
- *
- * @param new_item Pointer to an item that will be added to the queue.
- * @param timeout The absolute time the caller will wait until
- * for the item to be queued.
- *
- * @retval >0 The number of items on the queue after adding
- * the specified item.
- * @retval -1 On failure. errno holds the reason. Common errno values are:
- * - EWOULDBLOCK: the timeout elapsed
- * - ESHUTDOWN: the queue was deactivated or pulsed
- */
- virtual int enqueue_tail (ACE_MESSAGE_TYPE *new_item,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Enqueue an item at the head of the queue.
- *
- * @param new_item Pointer to an item that will be added to the queue.
- * @param timeout The absolute time the caller will wait until
- * for the item to be queued.
- *
- * @retval >0 The number of items on the queue after adding
- * the specified item.
- * @retval -1 On failure. errno holds the reason. Common errno values are:
- * - EWOULDBLOCK: the timeout elapsed
- * - ESHUTDOWN: the queue was deactivated or pulsed
- */
- virtual int enqueue_head (ACE_MESSAGE_TYPE *new_item,
- ACE_Time_Value *timeout = 0);
-
- /// This method is an alias for the following <dequeue_head> method.
- virtual int dequeue (ACE_MESSAGE_TYPE *&first_item,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Dequeue the item at the head of the queue and return a pointer to it.
- *
- * @param first_item Reference to an ACE_MESSAGE_TYPE * that will
- * be set to the address of the dequeued item.
- * @param timeout The absolute time the caller will wait until
- * for an item to be dequeued.
- *
- * @retval >=0 The number of items remaining in the queue.
- * @retval -1 On failure. errno holds the reason. Common errno values are:
- * - EWOULDBLOCK: the timeout elapsed
- * - ESHUTDOWN: the queue was deactivated or pulsed
- */
- virtual int dequeue_head (ACE_MESSAGE_TYPE *&first_item,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Dequeue the item that has the lowest priority (preserves
- * FIFO order for items with the same priority) and return a pointer
- * to it.
- *
- * @param dequeued Reference to an ACE_MESSAGE_TYPE * that will
- * be set to the address of the dequeued item.
- * @param timeout The absolute time the caller will wait until
- * for an item to be dequeued.
- *
- * @retval >=0 The number of items remaining in the queue.
- * @retval -1 On failure. errno holds the reason. Common errno values are:
- * - EWOULDBLOCK: the timeout elapsed
- * - ESHUTDOWN: the queue was deactivated or pulsed
- */
- virtual int dequeue_prio (ACE_MESSAGE_TYPE *&dequeued,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Dequeue the item at the tail of the queue and return a pointer to it.
- *
- * @param dequeued Reference to an ACE_MESSAGE_TYPE * that will
- * be set to the address of the dequeued item.
- * @param timeout The absolute time the caller will wait until
- * for an item to be dequeued.
- *
- * @retval >=0 The number of items remaining in the queue.
- * @retval -1 On failure. errno holds the reason. Common errno values are:
- * - EWOULDBLOCK: the timeout elapsed
- * - ESHUTDOWN: the queue was deactivated or pulsed
- */
- virtual int dequeue_tail (ACE_MESSAGE_TYPE *&dequeued,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Because there's deadline associated with enqueue_deadline(), this
- * method will behave just as dequeue_head().
- */
- virtual int dequeue_deadline (ACE_MESSAGE_TYPE *&dequeued,
- ACE_Time_Value *timeout = 0);
- //@}
-
- /** @name Queue statistics methods
- */
- //@{
-
- /// True if queue is full, else false.
- virtual bool is_full (void);
-
- /// True if queue is empty, else false.
- virtual bool is_empty (void);
-
- /**
- * Number of total bytes on the queue, i.e., sum of the message
- * block sizes.
- */
- virtual size_t message_bytes (void);
- /**
- * Number of total length on the queue, i.e., sum of the message
- * block lengths.
- */
- virtual size_t message_length (void);
- /**
- * Number of total messages on the queue.
- */
- virtual size_t message_count (void);
-
- // = Manual changes to these stats (used when queued message blocks
- // change size or lengths).
- /**
- * New value of the number of total bytes on the queue, i.e., sum of
- * the message block sizes.
- */
- virtual void message_bytes (size_t new_size);
- /**
- * New value of the number of total length on the queue, i.e., sum
- * of the message block lengths.
- */
- virtual void message_length (size_t new_length);
-
- //@}
-
- /** @name Water mark (flow control) methods
- */
- //@{
-
- /**
- * Get high watermark.
- */
- virtual size_t high_water_mark (void);
- /**
- * Set the high watermark, which determines how many bytes can be
- * stored in a queue before it's considered "full."
- */
- virtual void high_water_mark (size_t hwm);
-
- /**
- * Get low watermark.
- */
- virtual size_t low_water_mark (void);
- /**
- * Set the low watermark, which determines how many bytes must be in
- * the queue before supplier threads are allowed to enqueue
- * additional <ACE_MESSAGE_TYPE>s.
- */
- virtual void low_water_mark (size_t lwm);
- //@}
-
- /** @name Activation and queue state methods
- * See C++NPv2 Section 6.2 and APG Section 12.3 for a fuller treatment of
- * queue states and transitions and how the transitions affect message
- * enqueueing and dequeueing operations.
- */
- //@{
-
- /**
- * Deactivate the queue and wakeup all threads waiting on the queue
- * so they can continue. No messages are removed from the queue,
- * however. Any other operations called until the queue is
- * activated again will immediately return -1 with @c errno ==
- * ESHUTDOWN. Returns WAS_INACTIVE if queue was inactive before the
- * call and WAS_ACTIVE if queue was active before the call.
- */
- virtual int deactivate (void);
-
- /**
- * Reactivate the queue so that threads can enqueue and dequeue
- * messages again. Returns the state of the queue before the call.
- */
- virtual int activate (void);
-
- /**
- * Pulse the queue to wake up any waiting threads. Changes the
- * queue state to PULSED; future enqueue/dequeue operations proceed
- * as in ACTIVATED state.
- *
- * @retval The queue's state before this call.
- */
- virtual int pulse (void);
-
- /// Returns the current state of the queue, which can be one of
- /// ACTIVATED, DEACTIVATED, or PULSED.
- virtual int state (void);
-
- /// Returns true if the state of the queue is DEACTIVATED,
- /// but false if the queue's state is ACTIVATED or PULSED.
- virtual int deactivated (void);
- //@}
-
- /** @name Notification strategy methods
- */
- //@{
-
- /**
- * This hook is automatically invoked by <enqueue_head>,
- * <enqueue_tail>, and <enqueue_prio> when a new item is inserted
- * into the queue. Subclasses can override this method to perform
- * specific notification strategies (e.g., signaling events for a
- * <WFMO_Reactor>, notifying a <Reactor>, etc.). In a
- * multi-threaded application with concurrent consumers, there is no
- * guarantee that the queue will be still be non-empty by the time
- * the notification occurs.
- */
- virtual int notify (void);
-
- /// Get the notification strategy for the <Message_Queue>
- virtual ACE_Notification_Strategy *notification_strategy (void);
-
- /// Set the notification strategy for the <Message_Queue>
- virtual void notification_strategy (ACE_Notification_Strategy *s);
- //@}
-
- /// Returns a reference to the lock used by the ACE_Message_Queue_Ex.
- virtual ACE_SYNCH_MUTEX_T &lock (void);
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Implement this via an ACE_Message_Queue.
- ACE_Message_Queue<ACE_SYNCH_USE> queue_;
-};
-
-/**
- * @class ACE_Message_Queue_Ex_Iterator
- *
- * @brief Iterator for the ACE_Message_Queue_Ex.
- */
-template <class ACE_MESSAGE_TYPE, ACE_SYNCH_DECL>
-class ACE_Message_Queue_Ex_Iterator
-{
-public:
- // = Initialization method.
- ACE_Message_Queue_Ex_Iterator (ACE_Message_Queue_Ex<ACE_MESSAGE_TYPE, ACE_SYNCH_USE> & queue);
-
- // = Iteration methods.
- /// Pass back the @a entry that hasn't been seen in the queue.
- /// Returns 0 when all items have been seen, else 1.
- int next (ACE_MESSAGE_TYPE *&entry);
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Move forward by one element in the queue. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Implement this via the ACE_Message_Queue_Iterator
- ACE_Message_Queue_Iterator<ACE_SYNCH_USE> iter_;
-};
-
-/**
- * @class ACE_Message_Queue_Ex_Iterator
- *
- * @brief Reverse iterator for the ACE_Message_Queue_Ex.
- */
-template <class ACE_MESSAGE_TYPE, ACE_SYNCH_DECL>
-class ACE_Message_Queue_Ex_Reverse_Iterator
-{
-public:
- // = Initialization method.
- ACE_Message_Queue_Ex_Reverse_Iterator (ACE_Message_Queue_Ex<ACE_MESSAGE_TYPE, ACE_SYNCH_USE> & queue);
-
- // = Iteration methods.
- /// Pass back the @a entry that hasn't been seen in the queue.
- /// Returns 0 when all items have been seen, else 1.
- int next (ACE_MESSAGE_TYPE *&entry);
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Move forward by one element in the queue. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Implement this via the ACE_Message_Queue_Reverse_Iterator
- ACE_Message_Queue_Reverse_Iterator<ACE_SYNCH_USE> iter_;
-};
-
-/**
- * @class ACE_Message_Queue_Ex_N
- *
- * @brief A threaded message queueing facility, modeled after the
- * queueing facilities in System V STREAMs which can enqueue
- * multiple messages in one call.
- *
- * As ACE_Message_Queue_Ex, ACE_Message_Queue_Ex_N is a strongly-typed
- * version of the ACE_Message_Queue. If @c ACE_SYNCH_DECL is @c ACE_MT_SYNCH
- * then all operations are thread-safe. Otherwise, if it's @c ACE_NULL_SYNCH
- * then there's no locking overhead.
- *
- * The @c ACE_MESSAGE_TYPE messages that are sent to this
- * queue can be chained. Messages are expected to have a
- * @c next method that returns the next message in the chain;
- * ACE_Message_Queue_Ex_N uses this method to run through
- * all the incoming messages and enqueue them in one call.
- */
-template <class ACE_MESSAGE_TYPE, ACE_SYNCH_DECL>
-class ACE_Message_Queue_Ex_N : public ACE_Message_Queue_Ex<ACE_MESSAGE_TYPE, ACE_SYNCH_USE>
-{
-public:
- // = Initialization and termination methods.
-
- /**
- * Initialize an ACE_Message_Queue_Ex_N. The @a high_water_mark
- * determines how many bytes can be stored in a queue before it's
- * considered "full." Supplier threads must block until the queue
- * is no longer full. The @a low_water_mark determines how many
- * bytes must be in the queue before supplier threads are allowed to
- * enqueue additional messages. By default, the @a high_water_mark
- * equals the @a low_water_mark, which means that suppliers will be
- * able to enqueue new messages as soon as a consumer removes any message
- * from the queue. Making the @a low_water_mark smaller than the
- * @a high_water_mark forces consumers to drain more messages from the
- * queue before suppliers can enqueue new messages, which can minimize
- * the "silly window syndrome."
- */
- ACE_Message_Queue_Ex_N (size_t high_water_mark = ACE_Message_Queue_Base::DEFAULT_HWM,
- size_t low_water_mark = ACE_Message_Queue_Base::DEFAULT_LWM,
- ACE_Notification_Strategy * ns = 0);
-
- /// Close down the message queue and release all resources.
- virtual ~ACE_Message_Queue_Ex_N (void);
-
- /**
- * Enqueue one or more @c ACE_MESSAGE_TYPE objects at the head of the queue.
- * If the @a new_item @c next() pointer is non-zero, it is assumed to be the
- * start of a series of @c ACE_MESSAGE_TYPE objects connected via their
- * @c next() pointers. The series of blocks will be added to the queue in
- * the same order they are passed in as.
- *
- * @param new_item Pointer to an @c ACE_MESSAGE_TYPE that will be
- * added to the queue. If the block's @c next() pointer
- * is non-zero, all blocks chained from the @c next()
- * pointer are enqueued as well.
- * @param tv The absolute time the caller will wait until
- * for the block to be queued.
- *
- * @retval >0 The number of @c ACE_MESSAGE_TYPE objects on the queue after
- * adding the specified block(s).
- * @retval -1 On failure. errno holds the reason. Common errno values are:
- * - EWOULDBLOCK: the timeout elapsed
- * - ESHUTDOWN: the queue was deactivated or pulsed
- */
- virtual int enqueue_head (ACE_MESSAGE_TYPE *new_item, ACE_Time_Value *tv = 0);
-
- /**
- * Enqueue one or more @c ACE_MESSAGE_TYPE objects at the tail of the queue.
- * If the @a new_item @c next() pointer is non-zero, it is assumed to be the
- * start of a series of @c ACE_MESSAGE_TYPE objects connected via their
- * @c next() pointers. The series of blocks will be added to the queue in
- * the same order they are passed in as.
- *
- * @param new_item Pointer to an @c ACE_MESSAGE_TYPE that will be
- * added to the queue. If the block's @c next() pointer
- * is non-zero, all blocks chained from the @c next()
- * pointer are enqueued as well.
- * @param tv The absolute time the caller will wait until
- * for the block to be queued.
- *
- * @retval >0 The number of @c ACE_MESSAGE_TYPE objects on the queue after
- * adding the specified block(s).
- * @retval -1 On failure. errno holds the reason. Common errno values are:
- * - EWOULDBLOCK: the timeout elapsed
- * - ESHUTDOWN: the queue was deactivated or pulsed
- */
- virtual int enqueue_tail (ACE_MESSAGE_TYPE *new_item, ACE_Time_Value *tv = 0);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /**
- * An helper method that wraps the incoming chain messages
- * with ACE_Message_Blocks.
- */
- ACE_Message_Block *wrap_with_mbs_i (ACE_MESSAGE_TYPE *new_item);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Message_Queue_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Message_Queue_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_MESSAGE_QUEUE_T_H */
-
diff --git a/dep/include/ace/Message_Queue_Vx.h b/dep/include/ace/Message_Queue_Vx.h
deleted file mode 100644
index a442394e25a..00000000000
--- a/dep/include/ace/Message_Queue_Vx.h
+++ /dev/null
@@ -1,228 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Message_Queue_Vx.h
- *
- * $Id: Message_Queue_Vx.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_MESSAGE_QUEUE_VX_H
-#define ACE_MESSAGE_QUEUE_VX_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Message_Block.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_VXWORKS)
-
-// Include the templates here.
-#include "ace/Message_Queue_T.h"
-
-# include /**/ <msgQLib.h>
-# include "ace/Null_Mutex.h"
-# include "ace/Null_Condition.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Message_Queue_Vx
- *
- * @brief Wrapper for VxWorks message queues.
- *
- * Specialization of ACE_Message_Queue to simply wrap VxWorks
- * MsgQ. It does not use any synchronization, because it relies
- * on the native MsgQ implementation to take care of that. The
- * only system calls that it uses are VxWorks msgQLib calls, so
- * it is suitable for use in interrupt service routines.
- * @note *Many* ACE_Message_Queue features are not supported with
- * this specialization, including:
- * * The two size arguments to the constructor and <open> are
- * interpreted differently. The first is interpreted as the
- * maximum number of bytes in a message. The second is
- * interpreted as the maximum number of messages that can be
- * queued.
- * * <dequeue_head> *requires* that the ACE_Message_Block
- * pointer argument point to an ACE_Message_Block that was
- * allocated by the caller. It must be big enough to support
- * the received message, without using continuation. The
- * pointer argument is not modified.
- * * Message priority. MSG_Q_FIFO is hard-coded.
- * * enqueue method timeouts.
- * * <peek_dequeue_head>.
- * * <ACE_Message_Queue_Iterators>.
- * * The ability to change low and high water marks after creation.
- * * <Message_Block> chains. The continuation field of ACE_Message_Block
- * * is ignored; only the first block of a fragment chain is
- * * recognized.
- */
-class ACE_Message_Queue_Vx : public ACE_Message_Queue<ACE_NULL_SYNCH>
-{
-public:
- // = Initialization and termination methods.
- ACE_Message_Queue_Vx (size_t max_messages,
- size_t max_message_length,
- ACE_Notification_Strategy * = 0);
-
- // Create a message queue with all the defaults.
- /// Create a message queue with all the defaults.
- virtual int open (size_t max_messages,
- size_t max_message_length,
- ACE_Notification_Strategy * = 0);
-
- /// Close down the message queue and release all resources.
- virtual int close (void);
-
- /// Close down the message queue and release all resources.
- virtual ~ACE_Message_Queue_Vx (void);
-
- // = Queue statistic methods.
- /**
- * Number of total bytes on the queue, i.e., sum of the message
- * block sizes.
- */
- virtual size_t message_bytes (void);
-
- /**
- * Number of total length on the queue, i.e., sum of the message
- * block lengths.
- */
- virtual size_t message_length (void);
-
- /**
- * Number of total messages on the queue.
- */
- virtual size_t message_count (void);
-
- // = Manual changes to these stats (used when queued message blocks
- // change size or lengths).
- /**
- * New value of the number of total bytes on the queue, i.e., sum of
- * the message block sizes.
- */
- virtual void message_bytes (size_t new_size);
- /**
- * New value of the number of total length on the queue, i.e., sum
- * of the message block lengths.
- */
- virtual void message_length (size_t new_length);
-
- // = Flow control routines
-
- /// Get high watermark.
- virtual size_t high_water_mark (void);
-
- /// Set high watermark.
- virtual void high_water_mark (size_t hwm);
-
- /// Get low watermark.
- virtual size_t low_water_mark (void);
-
- /// Set low watermark.
- virtual void low_water_mark (size_t lwm);
-
- // = Activation control methods.
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Enqueue an <ACE_Message_Block *> in accordance with its priority.
- virtual int enqueue_i (ACE_Message_Block *new_item);
-
- /// Enqueue an <ACE_Message_Block *> in accordance with its deadline time.
- virtual int enqueue_deadline_i (ACE_Message_Block *new_item);
-
- /// Enqueue an <ACE_Message_Block *> at the end of the queue.
- virtual int enqueue_tail_i (ACE_Message_Block *new_item);
-
- /// Enqueue an <ACE_Message_Block *> at the head of the queue.
- virtual int enqueue_head_i (ACE_Message_Block *new_item);
-
- /// Dequeue and return the <ACE_Message_Block *> at the head of the
- /// queue.
- virtual int dequeue_head_i (ACE_Message_Block *&first_item);
-
- /// Dequeue and return the <ACE_Message_Block *> with the lowest
- /// priority.
- virtual int dequeue_prio_i (ACE_Message_Block *&dequeued);
-
- /// Dequeue and return the <ACE_Message_Block *> at the tail of the
- /// queue.
- virtual int dequeue_tail_i (ACE_Message_Block *&dequeued);
-
- /// Dequeue and return the <ACE_Message_Block *> that has the lowest
- /// deadline time.
- virtual int dequeue_deadline_i (ACE_Message_Block *&dequeued);
-
- // = Check the boundary conditions (assumes locks are held).
- /// True if queue is full, else false.
- virtual bool is_full_i (void);
-
- /// True if queue is empty, else false.
- virtual bool is_empty_i (void);
-
- // = Implementation of public <activate>/<deactivate> methods above.
-
- // These methods assume locks are held.
-
- // = Helper methods to factor out common #ifdef code.
- /// Wait for the queue to become non-full.
- virtual int wait_not_full_cond (ACE_Guard<ACE_Null_Mutex> &mon,
- ACE_Time_Value *tv);
-
- /// Wait for the queue to become non-empty.
- virtual int wait_not_empty_cond (ACE_Guard<ACE_Null_Mutex> &mon,
- ACE_Time_Value *tv);
-
- /// Inform any threads waiting to enqueue that they can procede.
- virtual int signal_enqueue_waiters (void);
-
- /// Inform any threads waiting to dequeue that they can procede.
- virtual int signal_dequeue_waiters (void);
-
- /// Access the underlying msgQ.
- MSG_Q_ID msgq (void);
-
-private:
-
- // Disallow copying and assignment.
- ACE_Message_Queue_Vx (const ACE_Message_Queue_Vx &);
- void operator= (const ACE_Message_Queue_Vx &);
-
- ACE_UNIMPLEMENTED_FUNC (virtual int peek_dequeue_head
- (ACE_Message_Block *&first_item,
- ACE_Time_Value *tv = 0))
-
-private:
- /// Maximum number of messages that can be queued.
- int max_messages_;
-
- /// Maximum message size, in bytes.
- int max_message_length_;
-
- /// Native message queue options.
- int options_;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_VXWORKS */
-
-#if defined (__ACE_INLINE__)
-#include "ace/Message_Queue_Vx.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_MESSAGE_QUEUE_VX_H */
-
diff --git a/dep/include/ace/Message_Queue_Vx.inl b/dep/include/ace/Message_Queue_Vx.inl
deleted file mode 100644
index b295e958c92..00000000000
--- a/dep/include/ace/Message_Queue_Vx.inl
+++ /dev/null
@@ -1,19 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Message_Queue_Vx.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_VXWORKS)
-// Specialization to use native VxWorks Message Queues.
-
-ACE_INLINE MSG_Q_ID
-ACE_Message_Queue_Vx::msgq (void)
-{
- // Hijack the tail_ field to store the MSG_Q_ID.
- return reinterpret_cast<MSG_Q_ID> (tail_);
-}
-
-#endif /* ACE_VXWORKS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Method_Object.h b/dep/include/ace/Method_Object.h
deleted file mode 100644
index 2c75bec61f3..00000000000
--- a/dep/include/ace/Method_Object.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Method_Object.h
- *
- * $Id: Method_Object.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * This file just #includes "ace/Method_Request.h" and is just here
- * for backwards compatibility with earlier versions of ACE.
- * Please don't use it directly since it may go away at some point.
- *
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_METHOD_OBJECT_H
-#define ACE_METHOD_OBJECT_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Method_Request.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Maintain backwards compatibility so that Steve Huston doesn't go
-// postal... ;-)
-typedef ACE_Method_Request ACE_Method_Object;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_METHOD_OBJECT_H */
-
diff --git a/dep/include/ace/Method_Request.h b/dep/include/ace/Method_Request.h
deleted file mode 100644
index 2aab2ef3491..00000000000
--- a/dep/include/ace/Method_Request.h
+++ /dev/null
@@ -1,99 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Method_Request.h
- *
- * $Id: Method_Request.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Andres Kruse <Andres.Kruse@cern.ch>
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_METHOD_REQUEST_H
-#define ACE_METHOD_REQUEST_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Global_Macros.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Method_Request
- *
- * @brief Reifies a method into a request. Subclasses must provide
- * the necessary state and behavior.
- *
- * An ACE_Method_Request is inserted in an ACE_Activation_Queue,
- * where it is subsequently removed by a scheduler object (often
- * derived from ACE_Task), which invokes the @c call() method.
- *
- * This class is discussed in depth in the Active Object chapter
- * of POSA2.
- *
- * @sa ACE_Activation_Queue
- */
-class ACE_Export ACE_Method_Request
-{
-public:
- // = Initialization and termination methods.
- /// Constructor.
- ACE_Method_Request (unsigned long priority = 0);
-
- /// Destructor.
- virtual ~ACE_Method_Request (void);
-
- // = Accessors.
- /// Get priority.
- unsigned long priority (void) const;
-
- /// Set priority.
- /**
- * Priority values are user-defined. The default (set in the constructor)
- * is 0. The priority value is used in the ACE_Activation_Queue::enqueue()
- * method to order the method requests in the queue by priority.
- * 0 is the lowest priority.
- *
- * @param prio unsigned long, the new priority value for this object.
- *
- * @sa ACE_Activation_Queue::enqueue
- */
- void priority (unsigned long prio);
-
- // = Invocation method (must be overridden by subclasses).
- /// Invoked by the scheduler to execute the request.
- /**
- * This method must be implemented by the subclass to perform the
- * desired actions.
- *
- * @return int; not interpreted by ACE. The scheduler class must
- * decide the meaning of this return value and act on it
- * if needed.
- */
- virtual int call (void) = 0;
-
-private:
-
- /// Disallow copying and assignment.
- ACE_Method_Request (const ACE_Method_Request &);
- void operator= (const ACE_Method_Request &);
-
-protected:
- /// The priority of the request.
- unsigned long priority_;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_METHOD_REQUEST_H */
-
diff --git a/dep/include/ace/Metrics_Cache.h b/dep/include/ace/Metrics_Cache.h
deleted file mode 100644
index 1fe84b0f17d..00000000000
--- a/dep/include/ace/Metrics_Cache.h
+++ /dev/null
@@ -1,139 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Metrics_Cache.h
- *
- * $Id: Metrics_Cache.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Chris Gill
- */
-//=============================================================================
-
-#ifndef ACE_METRICS_CACHE_H
-#define ACE_METRICS_CACHE_H
-
-#include "ace/Timeprobe.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_METRICS_COLLECTION)
-
-#if defined (ACE_ENABLE_TIMEPROBES) && defined (ACE_COMPILE_TIMEPROBES)
-
-/**
- * Call the appropriate 'report_ + NAME + _start' function. The start function makes a time probe measurement.
- *
- * ACE: The cache is a double-sided space of ACE_Timeprobe objects. For example if there is 10 probes there
- * will be a two lists of 10 probes all initialized. When a record is made, the appropriate probe is found,
- * add the measurement is made.
- *
- * TAO: The cache is still double sided but this time the X argument is a handle_t. The appropriate monitor
- * map is located in the Metrics_Cache, find the data, and if there is nothing wrong with the data
- * make a time measurement. The data is actually a ACE_Metrics_Timeprobe (Why not TAO_Metrics_Timeprobe?)
- *
- * USAGE_LEVEL: ACE+TAO
- *
- * @param METRICS_PTR - Pointer to a initialized metrics cache
- * @param NAME - Name of defining function (e.g. ACE: enqueue/dequeue)
- * @param X - Argument (ACE: u_int, TAO: RtecScheduler::handle_t)
- */
-# define START_DISPATCH_METRIC(METRICS_PTR,NAME,X) \
-do { if((METRICS_PTR->metrics_enabled())) { \
-METRICS_PTR->report_##NAME##_start(X); \
-} } while (0)
-
-/**
- * Call the appropriate 'report_ + NAME + _stop' function. The stop function makes a time probe measurement.
- *
- * ACE & TAO: Same as START_DISPATCH_METRIC
- *
- * USAGE_LEVEL: ACE+TAO
- *
- * @param METRICS_PTR - Pointer to a initialized metrics cache
- * @param NAME - Name of defining function (e.g. ACE: enqueue/dequeue)
- * @param X - Argument (ACE: u_int, TAO: RtecScheduler::handle_t)
- */
-# define STOP_DISPATCH_METRIC(METRICS_PTR,NAME,X) \
-do { if((METRICS_PTR->metrics_enabled())) { \
-METRICS_PTR->report_##NAME##_stop(X); \
-} } while (0)
-
-/**
- * Call the appropriate 'report_ + NAME + _suspend' function. The suspend function makes a time probe measurement.
- * This marks when the object under observation has been suspended.
- *
- * USAGE_LEVEL: ACE+TAO
- *
- * @param METRICS_PTR - Pointer to a initialized metrics cache
- * @param NAME - Name of defining function (e.g. ACE: enqueue/dequeue)
- * @param X - Argument (ACE: u_int, TAO: RtecScheduler::handle_t)
- */
-# define PAUSE_DISPATCH_METRIC(METRICS_PTR,NAME,X) \
-do { if((METRICS_PTR->metrics_enabled())) { \
-METRICS_PTR->report_##NAME##_suspend(X); \
-} } while (0)
-
-/**
- * Call the appropriate 'report_ + NAME + _resume' function. The suspend function makes a time probe measurement.
- * This marks when the object under observation that was suspended is not resuming normal execution.
- *
- * USAGE_LEVEL: ACE+TAO
- *
- * @param METRICS_PTR - Pointer to a initialized metrics cache
- * @param NAME - Name of defining function (e.g. ACE: enqueue/dequeue)
- * @param X - Argument (ACE: u_int, TAO: RtecScheduler::handle_t)
- */
-# define RESUME_DISPATCH_METRIC(METRICS_PTR,NAME,X) \
-do { if((METRICS_PTR->metrics_enabled())) { \
-METRICS_PTR->report_##NAME##_resume(X); \
-} } while (0)
-
-/**
- * Mystery macros. I could not find where there were functions like 'report_base_metrics_start ()'. All the
- * start and stop functions had an argument to find the probe in the cache
- */
-# define START_METRIC(METRICS_PTR,NAME) \
-do { if((METRICS_PTR->metrics_enabled())) { \
-METRICS_PTR->report_##NAME##_start(); \
-} } while (0)
-
-# define STOP_METRIC(METRICS_PTR,NAME) \
-do { if((METRICS_PTR->metrics_enabled())) { \
-METRICS_PTR->report_##NAME##_stop(); \
-} } while (0)
-
-#include "ace/Metrics_Cache_T.h"
-#include "ace/Singleton.h"
-
-#if defined (_MSC_VER)
-// Disable warning of using Microsoft Extension.
-#pragma warning(disable:4231)
-#endif /* _MSC_VER */
-
-#if defined (_MSC_VER)
-// Default back the warning of using Microsoft Extension.
-#pragma warning(default:4231)
-#endif /* _MSC_VER */
-
-#else
-#error ACE_Compile_Timeprobes must be defined in order to collect metrics
-#endif /* ACE_ENABLE_TIMEPROBES & ACE_COMPILE_TIMEPROBES */
-
-#else
-
-# define REGISTER_METRICS_PROBE_RETURN(METRICS_PTR,METRICS_REGION,PROBE_NAME,PROBE_TYPE,METRICS_HANDLE)
-# define REGISTER_METRICS_REPORTING_PROBE_RETURN(METRICS_PTR,METRICS_REGION,PROBE_NAME,PROBE_TYPE,METRICS_LOGGER_REF,METRICS_HANDLE)
-# define START_DISPATCH_METRIC(METRICS_PTR,NAME,X)
-# define STOP_DISPATCH_METRIC(METRICS_PTR,NAME,X)
-# define PAUSE_DISPATCH_METRIC(METRICS_PTR,NAME,X)
-# define RESUME_DISPATCH_METRIC(METRICS_PTR,NAME,X)
-# define START_METRIC(METRICS_PTR,NAME)
-# define STOP_METRIC(METRICS_PTR,NAME)
-
-#endif /* ACE_ENABLE_TIMEPROBES && ACE_COMPILE_TIMEPROBES */
-
-#endif /* ACE_METRICS_CACHE_H */
-
diff --git a/dep/include/ace/Metrics_Cache_T.h b/dep/include/ace/Metrics_Cache_T.h
deleted file mode 100644
index 4625603357e..00000000000
--- a/dep/include/ace/Metrics_Cache_T.h
+++ /dev/null
@@ -1,243 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Metrics_Cache_T.h
- *
- * $Id: Metrics_Cache_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Chris Gill <cdgill@cse.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_METRICS_CACHE_T_H
-#define ACE_METRICS_CACHE_T_H
-
-#include /**/ "ace/config-all.h"
-
-// helpful macro definitions
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_COMPILE_TIMEPROBES)
-
-#include "ace/Timeprobe.h"
-#include "ace/Timeprobe_T.h"
-
-// Defaults for initializing timeprobes and timeprobe arays.
-#define METRICS_MIN_TIMEPROBE_TABLE_SIZE 256 * 4
-#define METRICS_MAX_TIMEPROBE_TABLE_SIZE 256 * 256
-#define METRICS_DEFAULT_TIMEPROBE_TABLE_SIZE METRICS_MIN_TIMEPROBE_TABLE_SIZE
-#define METRICS_DEFAULT_TIMEPROBE_COUNT 6
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Metrics_Timeprobe
- *
- * @brief This class implements a timeprobe for use in a Metrics framework.
- *
- * This class provides a probe for specific thread and method call
- * metrics timing points.
- */
-template <class ACE_LOCK, class ALLOCATOR>
-class ACE_Metrics_Timeprobe :
- public ACE_Timeprobe_Ex<ACE_LOCK, ALLOCATOR>
- {
-public:
-
- typedef ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR>
- ACE_METRICS_TIMEPROBE_TYPE;
-
- typedef ACE_timeprobe_t ACE_METRICS_TIMEPROBE_DATA_TYPE;
- typedef ACE_METRICS_TIMEPROBE_TYPE* ACE_METRICS_TIMEPROBE_BASED_PTR_TYPE;
- typedef char* ACE_METRICS_NAME_BASED_PTR_TYPE;
-
- // Enumerated timeprobe event types.
- enum event_id
- {
- WORK_START = 0,
- WORK_STOP = 1,
- WORK_SUSPEND = 2,
- WORK_RESUME = 3
- };
-
- // Default constructor: plugs in the above event descriptions.
- ACE_Metrics_Timeprobe (u_int id = 0,
- const char *name = 0,
- u_long size = METRICS_DEFAULT_TIMEPROBE_TABLE_SIZE);
-
- // Constructor with allocator: plugs in the above event descriptions.
- ACE_Metrics_Timeprobe (ALLOCATOR *allocatorPtr,
- u_int id = 0,
- const char *name = 0,
- u_long size = METRICS_DEFAULT_TIMEPROBE_TABLE_SIZE);
-
- // Destructor.
- virtual ~ACE_Metrics_Timeprobe ();
-
- // Returns true if a timeprobe event matches the passed id.
- int is_event (const ACE_METRICS_TIMEPROBE_DATA_TYPE &t,
- ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR>::event_id id);
-
- // Accessor and mutator for probe name.
- const char * probe_name (void);
- void probe_name (char * name);
-
- // Accessor for probe id.
- u_int probe_id (void);
-
- // Mutator for probe id.
- void probe_id (u_int id);
-
- // Flush the ACE metrics timeprobe into shared memory.
- void flush_ACE_Metrics_Timeprobe ();
-
-protected:
-
- // Identifier for the timeprobe.
- u_int id_;
-
- // Name of the timeprobe.
- char* name_;
-
-private:
-
- // Declare but do not define.
- ACE_Metrics_Timeprobe (const ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR> &);
- void operator =(const ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR> &);
-};
-
-/**
- * @class ACE_Metrics_Cache
- *
- * @brief This class implements a cache for metrics timeprobe data.
- *
- * This class allows probes to be recorded into a single cache that
- * monitors and other higher level metrics classes can query.
- */
-template <class ACE_LOCK, class ALLOCATOR>
-class ACE_Metrics_Cache
-{
-public:
-
- typedef ACE_Metrics_Cache <ACE_LOCK, ALLOCATOR> ACE_METRICS_CACHE_TYPE;
-
- // Default constructor.
- ACE_Metrics_Cache (u_long table_size
- = METRICS_DEFAULT_TIMEPROBE_TABLE_SIZE,
- u_long number_of_probes
- = METRICS_DEFAULT_TIMEPROBE_COUNT,
- ALLOCATOR * allocatorPtr = (ALLOCATOR*)ALLOCATOR::instance());
-
- // Destructor.
- ~ACE_Metrics_Cache ();
-
- // = Dispatching metrics.
-
- // Report start, stop, suspend, and resume times of a dispatch
- // enqueue: stores data metrics on the supplier side.
- void report_enqueue_start (u_long i);
- void report_enqueue_stop (u_long i);
- void report_enqueue_suspend (u_long i);
- void report_enqueue_resume (u_long i);
-
- // Report start, stop, suspend, and resume times of a dispatch
- // dequeue: stores data metrics on the supplier side..
- void report_dequeue_start (u_long i);
- void report_dequeue_stop (u_long i);
- void report_dequeue_suspend (u_long i);
- void report_dequeue_resume (u_long i);
-
- // Reset the metrics data on the consumer side.
- void reset_base_statistics ();
-
- // Flips the supplier and consumer sides.
- void flip_supplier_and_consumer ();
-
- // Flush the ACE metrics cache into shared memory.
- void flush_ACE_Metrics_Cache ();
-
- // Set the enable state for metrics collection.
- void metrics_enabled(int enabled);
-
- // Return the enable state for metrics collection.
- int metrics_enabled(void) const;
-
-protected:
-
- // Obtain an allocator pointer correctly thunked for the current
- // address space. If there is no allocator stored in the instance,
- // the singleton allocator in the current process is used.
- ALLOCATOR * allocator (void);
-
- // = Implementation members.
-
- // Number of probes in each supplier/consumer set.
- u_long probe_set_size_;
-
- // Probe data counts for each supplier/consumer set.
- u_long * enqueue_count_ [2];
- u_long * dequeue_count_ [2];
-
- // Probes for each supplier/consumer set.
- ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR> ** enqueue_probes_ [2];
- ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR> ** dequeue_probes_ [2];
-
- // Names for the probes.
- char ** enqueue_names_;
- char ** dequeue_names_;
-
- // Index from which probe events are being consumed.
- // for WSOA, it's the data being sent to the logger
- int consumer_index_;
-
- // Index to which probe events are being supplied.
- // for WSOA, it's the data being recorded from the probes
- int supplier_index_;
-
- // Size of the timestamp table in each probe.
- u_long table_size_;
-
- // Interval start and stop timestamps.
- ACE_Time_Value interval_start_;
-
- // Interval start and stop timestamps.
- ACE_Time_Value interval_end_;
-
- // Flag to indicate whether or not start time of interval has been
- // initialized since the last reset.
- int interval_initialized_;
-
- // Indicator of whether metrics is enabled.
- int metrics_enabled_;
-
-private:
-
- // Allocation strategy object.
- ALLOCATOR* allocator_;
-
- // Declare but do not define.
- ACE_Metrics_Cache (const ACE_Metrics_Cache<ACE_LOCK, ALLOCATOR> &);
- void operator = (const ACE_Metrics_Cache<ACE_LOCK, ALLOCATOR> &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Metrics_Cache_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Metrics_Cache_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Metrics_Cache_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#endif /* defined (ACE_COMPILE_TIMEPROBES) */
-
-#endif /* ACE_METRICS_CACHE_T_H */
-
diff --git a/dep/include/ace/Metrics_Cache_T.inl b/dep/include/ace/Metrics_Cache_T.inl
deleted file mode 100644
index 98bc73e7243..00000000000
--- a/dep/include/ace/Metrics_Cache_T.inl
+++ /dev/null
@@ -1,230 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Metrics_Cache_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#ifndef ACE_METRICS_CACHE_T_INL
-#define ACE_METRICS_CACHE_T_INL
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/////////////////////////////
-// Class ACE_Metrics_Cache //
-/////////////////////////////
-
-template <class ACE_LOCK, class ALLOCATOR>
-ACE_INLINE void
-ACE_Metrics_Cache<ACE_LOCK, ALLOCATOR>::report_enqueue_start (u_long i)
-{
- if (i < this->probe_set_size_)
- {
- u_long & count =
- this->enqueue_count_ [this->supplier_index_] [i];
- ++count;
-
- if (! this->interval_initialized_)
- {
- this->interval_initialized_ = 1;
- ACE_hrtime_t hrtime_now = ACE_OS::gethrtime ();
- ACE_High_Res_Timer::hrtime_to_tv (this->interval_start_,
- hrtime_now);
- this->interval_end_.set (this->interval_start_.sec(),
- this->interval_start_.usec());
- }
-
- // Take the metrics timeprobe last, to avoid measuring the above
- // metrics processing.
- ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR> * probe =
- this->enqueue_probes_ [this->supplier_index_][i];
- probe->
- timeprobe (ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR>::WORK_START);
- }
-}
-
-template <class ACE_LOCK, class ALLOCATOR>
-ACE_INLINE void
-ACE_Metrics_Cache<ACE_LOCK, ALLOCATOR>::report_enqueue_stop (u_long i)
-{
- if (i < this->probe_set_size_)
- {
- // Take the metrics timeprobe first, to avoid measuring the below
- // metrics processing.
- ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR> * probe =
- this->enqueue_probes_ [this->supplier_index_][i];
- probe->
- timeprobe (ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR>::WORK_STOP);
-
- ACE_hrtime_t hrtime_now = ACE_OS::gethrtime ();
- ACE_High_Res_Timer::hrtime_to_tv (this->interval_end_,
- hrtime_now);
-
- u_long & count = enqueue_count_ [this->supplier_index_][i];
- ++count;
- }
-
-}
-
-template <class ACE_LOCK, class ALLOCATOR>
-ACE_INLINE void
-ACE_Metrics_Cache<ACE_LOCK, ALLOCATOR>::report_enqueue_suspend (u_long i)
-{
- if (i < this->probe_set_size_)
- {
- ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR> * probe =
- this->enqueue_probes_ [this->supplier_index_][i];
- probe->
- timeprobe (ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR>::WORK_SUSPEND);
- u_long & count =
- this->enqueue_count_ [this->supplier_index_] [i];
- ++count;
- }
-}
-
-template <class ACE_LOCK, class ALLOCATOR>
-ACE_INLINE void
-ACE_Metrics_Cache<ACE_LOCK, ALLOCATOR>::report_enqueue_resume (u_long i)
-{
- if (i < this->probe_set_size_)
- {
- u_long & count =
- this->enqueue_count_ [this->supplier_index_] [i];
- ++count;
- ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR> * probe =
- this->enqueue_probes_ [this->supplier_index_][i];
- probe->
- timeprobe (ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR>::WORK_RESUME);
- }
-}
-
-template <class ACE_LOCK, class ALLOCATOR>
-ACE_INLINE void
-ACE_Metrics_Cache<ACE_LOCK, ALLOCATOR>::report_dequeue_start (u_long i)
-{
- if (i < this->probe_set_size_)
- {
- u_long & count =
- this->dequeue_count_ [this->supplier_index_] [i];
- ++count;
-
- if (! this->interval_initialized_)
- {
- this->interval_initialized_ = 1;
- ACE_hrtime_t hrtime_now = ACE_OS::gethrtime ();
- ACE_High_Res_Timer::hrtime_to_tv (this->interval_start_,
- hrtime_now);
- this->interval_end_.set (this->interval_start_.sec(),
- this->interval_start_.usec());
- }
-
- // Take the metrics timeprobe last, to avoid measuring the above
- // metrics processing.
- ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR> * probe =
- this->dequeue_probes_ [this->supplier_index_][i];
- probe->
- timeprobe (ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR>::WORK_START);
- }
-}
-
-template <class ACE_LOCK, class ALLOCATOR>
-ACE_INLINE void
-ACE_Metrics_Cache<ACE_LOCK, ALLOCATOR>::report_dequeue_stop (u_long i)
-{
- if (i < this->probe_set_size_)
- {
- // Take the metrics timeprobe first, to avoid measuring the
- // metrics processing below.
- ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR> * probe =
- this->dequeue_probes_ [this->supplier_index_][i];
-
- probe->timeprobe (ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR>::WORK_STOP);
-
- ACE_hrtime_t hrtime_now = ACE_OS::gethrtime ();
- ACE_High_Res_Timer::hrtime_to_tv (this->interval_end_,
- hrtime_now);
-
- u_long & count = dequeue_count_ [this->supplier_index_] [i];
- ++count;
- }
-}
-
-template <class ACE_LOCK, class ALLOCATOR>
-ACE_INLINE void
-ACE_Metrics_Cache<ACE_LOCK, ALLOCATOR>::report_dequeue_suspend (u_long i)
-{
- if (i < this->probe_set_size_)
- {
- u_long & count =
- this->dequeue_count_ [this->supplier_index_] [i];
- ++count;
- ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR> * probe =
- this->dequeue_probes_ [this->supplier_index_][i];
- probe->
- timeprobe (ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR>::WORK_SUSPEND);
- }
-}
-
-template <class ACE_LOCK, class ALLOCATOR>
-ACE_INLINE void
-ACE_Metrics_Cache<ACE_LOCK, ALLOCATOR>::report_dequeue_resume (u_long i)
-{
- if (i < this->probe_set_size_)
- {
- u_long & count =
- this->dequeue_count_ [this->supplier_index_] [i];
- ++count;
- ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR> * probe =
- this->dequeue_probes_ [this->supplier_index_][i];
- probe->
- timeprobe (ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR>::WORK_RESUME);
- }
-}
-
-template <class ACE_LOCK, class ALLOCATOR>
-ACE_INLINE void
-ACE_Metrics_Cache<ACE_LOCK, ALLOCATOR>::reset_base_statistics ()
-{
- this->interval_initialized_ = 0;
- this->interval_start_.set (0, 0);
- this->interval_end_.set (0, 0);
-
- for (u_int i = 0; i < this->probe_set_size_; ++i)
- {
- this->enqueue_count_ [this->consumer_index_] [i] = 0;
- this->dequeue_count_ [this->consumer_index_] [i] = 0;
-
- ACE_Metrics_Timeprobe<ACE_LOCK, ALLOCATOR> * probe =
- this->enqueue_probes_ [this->consumer_index_][i];
- probe->reset ();
- probe =
- this->dequeue_probes_ [this->consumer_index_][i];
- probe->reset ();
- }
-}
-
-// Flips the supplier and consumer positions.
-
-template <class ACE_LOCK, class ALLOCATOR>
-ACE_INLINE void
-ACE_Metrics_Cache<ACE_LOCK, ALLOCATOR>::flip_supplier_and_consumer ()
-{
- int temp = consumer_index_;
- consumer_index_ = supplier_index_;
- supplier_index_ = temp;
-}
-
-template <class ACE_LOCK, class ALLOCATOR>
-ACE_INLINE void
-ACE_Metrics_Cache<ACE_LOCK, ALLOCATOR>::metrics_enabled(int enabled)
-{
- metrics_enabled_ = enabled;
-}
-
-template <class ACE_LOCK, class ALLOCATOR>
-ACE_INLINE int
-ACE_Metrics_Cache<ACE_LOCK, ALLOCATOR>::metrics_enabled(void) const
-{
- return metrics_enabled_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_METRICS_CACHE_T_INL */
diff --git a/dep/include/ace/Min_Max.h b/dep/include/ace/Min_Max.h
deleted file mode 100644
index fe22b7e9a77..00000000000
--- a/dep/include/ace/Min_Max.h
+++ /dev/null
@@ -1,71 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Min_Max.h
- *
- * $Id: Min_Max.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Define an appropriate set of min()/max() functions using templates.
- *
- *
- * @author Derek Dominish <Derek.Dominish@Australia.Boeing.com>
- */
-//=============================================================================
-
-#ifndef ACE_MIN_MAX_H
-#define ACE_MIN_MAX_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class T>
-inline const T &
-ace_min (const T &t1, const T &t2)
-{
- return t2 > t1 ? t1 : t2;
-}
-
-template <class T>
-inline const T &
-ace_max (const T &t1, const T &t2)
-{
- return t1 > t2 ? t1 : t2;
-}
-
-template <class T>
-inline const T &
-ace_min (const T &t1, const T &t2, const T &t3)
-{
- return ace_min (ace_min (t1, t2), t3);
-}
-
-template <class T>
-inline const T &
-ace_max (const T &t1, const T &t2, const T &t3)
-{
- return ace_max (ace_max (t1, t2), t3);
-}
-
-template <class T>
-inline const T &
-ace_range (const T &min, const T &max, const T &val)
-{
- return ace_min (ace_max (min, val), max);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# define ACE_MIN(a,b) ace_min((a),(b))
-# define ACE_MAX(a,b) ace_max((a),(b))
-# define ACE_RANGE(a,b,c) ace_range((a),(b),(c))
-
-#include /**/ "ace/post.h"
-#endif /* ACE_MIN_MAX_H */
-
diff --git a/dep/include/ace/Module.h b/dep/include/ace/Module.h
deleted file mode 100644
index e749b6365cd..00000000000
--- a/dep/include/ace/Module.h
+++ /dev/null
@@ -1,216 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Module.h
- *
- * $Id: Module.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_MODULE_H
-#define ACE_MODULE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Task_T.h"
-#include "ace/os_include/os_dirent.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Module_Base
- *
- * @brief Workaround HP/C++ compiler bug with enums in templates.
- *
- * Certain C++ compilers, e.g., the HP/UX 10.x and 9.x compilers,
- * seem to fail if enums are defined inside a template, hence we
- * have to move them into a base class.
- */
-class ACE_Export ACE_Module_Base
-{
-public:
- enum
- {
- /// Indicates that the flags have not been set
- M_FLAGS_NOT_SET = 0,
-
- /// Indicates that <close> should delete the writer Task.
- M_DELETE_READER = 1,
-
- /// Indicates that <close> should delete the reader Task.
- M_DELETE_WRITER = 2,
-
- /// Indicates that <close> deletes the Tasks.
- /**
- * Don't change this value without updating the same enum in class
- * ACE_Stream...
- * The <M_DELETE_READER> and <M_DELETE_WRITER> flags may be or'ed
- * together.
- */
- M_DELETE = 3,
-
- /// Indicates that <close> should not delete any Tasks.
- M_DELETE_NONE = 4
- };
-};
-
-/**
- * @class ACE_Module
- *
- * @brief An abstraction for managing a bi-directional flow of messages.
- *
- * This is based on the Module concept in System V Streams,
- * which contains a pair of Tasks, one for handling upstream
- * processing, one for handling downstream processing. In
- * general, you shouldn't subclass from this class, but instead
- * subclass from the ACE_Task.
- */
-template <ACE_SYNCH_DECL>
-class ACE_Module : public ACE_Module_Base
-{
-public:
- // = Initialization and termination methods.
- /// Create an empty Module.
- ACE_Module (void);
-
- /// Shutdown the Module.
- virtual ~ACE_Module (void);
-
- /// Create an initialized module with @a module_name as its identity
- /// and @a reader and @a writer as its tasks.
- ACE_Module (const ACE_TCHAR *module_name,
- ACE_Task<ACE_SYNCH_USE> *writer = 0,
- ACE_Task<ACE_SYNCH_USE> *reader = 0,
- void *args = 0,
- int flags = M_DELETE);
-
- /**
- * Initialize the module with <module_name> as its identity
- * and <reader> and <writer> as its tasks. Previously register
- * reader or writers or closed down and deleted according to the
- * value of flags_. Should not be called from within
- * <ACE_Task::module_closed>.
- */
- int open (const ACE_TCHAR *module_name,
- ACE_Task<ACE_SYNCH_USE> *writer = 0,
- ACE_Task<ACE_SYNCH_USE> *reader = 0,
- void *a = 0,
- int flags = M_DELETE);
-
- /**
- * Close down the module and its tasks. The flags argument can be
- * used to override the default behaviour, which depends on previous
- * @a flags values in calls to c'tor, <open>, <reader>, and <writer>.
- * A previous value M_DELETE[_XXX] can not be overridden. Should
- * not be called from within <ACE_Task::module_closed>.
- */
- int close (int flags = M_DELETE_NONE);
-
- // = ACE_Task manipulation routines
- /// Get the writer task.
- ACE_Task<ACE_SYNCH_USE> *writer (void);
-
- /**
- * Set the writer task. @a flags can be used to indicate that the
- * module should delete the writer during a call to close or to the
- * destructor. If a previous writer exists, it is closed. It may
- * also be deleted, depending on the old flags_ value. Should not
- * be called from within <ACE_Task::module_closed>.
- */
- void writer (ACE_Task<ACE_SYNCH_USE> *q, int flags = M_DELETE_WRITER);
-
- /// Get the reader task.
- ACE_Task<ACE_SYNCH_USE> *reader (void);
-
- /**
- * Set the reader task. @a flags can be used to indicate that the
- * module should delete the reader during a call to close or to the
- * destructor. If a previous reader exists, it is closed. It may
- * also be deleted, depending on the old flags_ value. Should not
- * be called from within <ACE_Task::module_closed>.
- */
- void reader (ACE_Task<ACE_SYNCH_USE> *q, int flags = M_DELETE_READER);
-
- /// Set and get pointer to sibling ACE_Task in an ACE_Module
- ACE_Task<ACE_SYNCH_USE> *sibling (ACE_Task<ACE_SYNCH_USE> *orig);
-
- // = Identify the module
- /// Get the module name.
- const ACE_TCHAR *name (void) const;
-
- /// Set the module name.
- void name (const ACE_TCHAR *);
-
- // = Argument to the Tasks.
- /// Get the argument passed to the tasks.
- void *arg (void) const;
-
- /// Set the argument passed to the tasks.
- void arg (void *);
-
- /// Link to other modules in the ustream stack
- void link (ACE_Module<ACE_SYNCH_USE> *m);
-
- /// Get the next pointer to the module above in the stream.
- ACE_Module<ACE_SYNCH_USE> *next (void);
-
- /// Set the next pointer to the module above in the stream.
- void next (ACE_Module<ACE_SYNCH_USE> *m);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Implements the close operation for either the reader or the
- /// writer task (depending on <which>).
- int close_i (int which, int flags);
-
- /// Pair of Tasks that form the "read-side" and "write-side" of the
- /// ACE_Module partitioning.
- ACE_Task<ACE_SYNCH_USE> *q_pair_[2];
-
- /// Name of the ACE_Module.
- ACE_TCHAR name_[MAXPATHLEN + 1];
-
- /// Next ACE_Module in the stack.
- ACE_Module<ACE_SYNCH_USE> *next_;
-
- /// Argument passed through to the reader and writer task when they
- /// are opened.
- void *arg_;
-
- /// Holds flags which are used to determine if the reader and writer
- /// task have to be deleted on exit
- int flags_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Module.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Module.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Module.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_MODULE_H */
-
diff --git a/dep/include/ace/Module.inl b/dep/include/ace/Module.inl
deleted file mode 100644
index 62e4929a24b..00000000000
--- a/dep/include/ace/Module.inl
+++ /dev/null
@@ -1,65 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Module.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_string.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <ACE_SYNCH_DECL> ACE_INLINE void *
-ACE_Module<ACE_SYNCH_USE>::arg (void) const
-{
- ACE_TRACE ("ACE_Module<ACE_SYNCH_USE>::arg");
- return this->arg_;
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE void
-ACE_Module<ACE_SYNCH_USE>::arg (void *a)
-{
- ACE_TRACE ("ACE_Module<ACE_SYNCH_USE>::arg");
- this->arg_ = a;
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE const ACE_TCHAR *
-ACE_Module<ACE_SYNCH_USE>::name (void) const
-{
- ACE_TRACE ("ACE_Module<ACE_SYNCH_USE>::name");
- return this->name_;
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE void
-ACE_Module<ACE_SYNCH_USE>::name (const ACE_TCHAR *n)
-{
- ACE_TRACE ("ACE_Module<ACE_SYNCH_USE>::name");
- ACE_OS::strsncpy (this->name_, n, MAXPATHLEN);
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE ACE_Task<ACE_SYNCH_USE> *
-ACE_Module<ACE_SYNCH_USE>::writer (void)
-{
- ACE_TRACE ("ACE_Module<ACE_SYNCH_USE>::writer");
- return this->q_pair_[1];
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE ACE_Task<ACE_SYNCH_USE> *
-ACE_Module<ACE_SYNCH_USE>::reader (void)
-{
- ACE_TRACE ("ACE_Module<ACE_SYNCH_USE>::reader");
- return this->q_pair_[0];
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE ACE_Module<ACE_SYNCH_USE> *
-ACE_Module<ACE_SYNCH_USE>::next (void)
-{
- ACE_TRACE ("ACE_Module<ACE_SYNCH_USE>::next");
- return this->next_;
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE void
-ACE_Module<ACE_SYNCH_USE>::next (ACE_Module<ACE_SYNCH_USE> *m)
-{
- ACE_TRACE ("ACE_Module<ACE_SYNCH_USE>::next");
- this->next_ = m;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Monitor_Admin.h b/dep/include/ace/Monitor_Admin.h
deleted file mode 100644
index 4120d8a1c5e..00000000000
--- a/dep/include/ace/Monitor_Admin.h
+++ /dev/null
@@ -1,110 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Monitor_Admin.h
- *
- * $Id: Monitor_Admin.h 81753 2008-05-21 19:02:47Z parsons $
- *
- * @author Jeff Parsons <j.parsons@vanderbilt.edu>
- */
-//=============================================================================
-
-#ifndef MONITOR_ADMIN_H
-#define MONITOR_ADMIN_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Event_Handler.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_MONITOR_FRAMEWORK) && (ACE_HAS_MONITOR_FRAMEWORK == 1)
-
-#include "ace/Monitor_Base.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE
-{
- namespace Monitor_Control
- {
- class Monitor_Query;
-
- /**
- * @class Monitor_Point_Auto_Updater
- *
- * @brief Automates periodic updating of monitor point classes.
- *
- * A single instance of this class is held by the Admin
- * class below. For a monitor point that must periodically
- * check what they are monitoring, the admin class registers
- * the monitor point with the ACE reactor. Each time the
- * interval times out, the reactor will call the
- * handle_timeout() method below, and pass in the appropriate
- * monitor point. The handle_timeout() method will in turn
- * call the appropriate method on the monitor point to get
- * it to update its data.
- */
- class Monitor_Point_Auto_Updater : public ACE_Event_Handler
- {
- public:
- /// Override of ACE base class method.
- virtual int handle_timeout (const ACE_Time_Value& interval,
- const void* monitor_point);
- };
-
- /**
- * @class Admin
- *
- * @brief Accesses monitor points or groups and manages the registries.
- *
- * Responsible for adding and removing monitor points and creating
- * automatic periodic actions that update or query monitor points.
- */
- class ACE_Export Monitor_Admin
- {
- public:
- Monitor_Admin (void);
- ~Monitor_Admin (void);
-
- /// Add or access monitor points in a global registry
- /// If the ACE_Time_Value arg is non-zero,
- /// the monitor point, the auto updater member, and the given time
- /// interval are passed to our reactor's register_timeout()
- /// method.
-
- bool monitor_point (Monitor_Base* monitor_point,
- const ACE_Time_Value& time);
- Monitor_Base* monitor_point (const char* name);
-
- /// Works similarly to monitor_point() above, but registers the
- /// handler arg's handle_timeout() method with the reactor,
- /// instead of our auto_updater_'s handle_timeout().
- void auto_query (ACE_Event_Handler* handler,
- Monitor_Query* query,
- const ACE_Time_Value& time);
-
- /// This mutator allows the application to create its own reactor
- /// and substitute it for the default reactor.
- void reactor (ACE_Reactor* new_reactor);
- ACE_Reactor* reactor (void) const;
-
- private:
- Monitor_Point_Auto_Updater auto_updater_;
- ACE_Reactor* reactor_;
- bool default_reactor_;
- };
- }
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_MONITOR_FRAMEWORK==1 */
-
-#include /**/ "ace/post.h"
-
-#endif // MONITOR_ADMIN_H
-
diff --git a/dep/include/ace/Monitor_Admin_Manager.h b/dep/include/ace/Monitor_Admin_Manager.h
deleted file mode 100644
index 16ae520feb2..00000000000
--- a/dep/include/ace/Monitor_Admin_Manager.h
+++ /dev/null
@@ -1,71 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Monitor_Admin_Manager.h
- *
- * $Id: Monitor_Admin_Manager.h 81691 2008-05-14 11:09:21Z johnnyw $
- *
- * @author Jeff Parsons <j.parsons@vanderbilt.edu>
- */
-//=============================================================================
-
-#ifndef MONITOR_ADMIN_MANAGER_H
-#define MONITOR_ADMIN_MANAGER_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Service_Object.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_MONITOR_FRAMEWORK) && (ACE_HAS_MONITOR_FRAMEWORK == 1)
-
-#include "ace/Monitor_Admin.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE
-{
- namespace Monitor_Control
- {
- /**
- * @class Monitor_Admin_Manager
- *
- * @brief Repsonsible for creating and destroying the global
- * (per process) instance of the Admin class.
- *
- * Monitor_Admin_Manager will be instantiated as an ACE_Dynamic_Service
- * singleton, and implements the interface of ACE_Service_Object.
- */
- class ACE_Export Monitor_Admin_Manager : public ACE_Service_Object
- {
- public:
- /// Access the admin instance.
- ACE::Monitor_Control::Monitor_Admin& admin (void);
-
- /// Used to force initialization of the MC service.
- static int Initializer (void);
-
- private:
- Monitor_Admin admin_;
- };
- }
-}
-
-/// For the ACE_FACTORY_DEFINE macro in the .cpp file.
-typedef ACE::Monitor_Control::Monitor_Admin_Manager MC_ADMINMANAGER;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-ACE_STATIC_SVC_DECLARE (MC_ADMINMANAGER)
-ACE_FACTORY_DECLARE (ACE, MC_ADMINMANAGER)
-
-#endif /* ACE_HAS_MONITOR_FRAMEWORK==1 */
-
-#include /**/ "ace/post.h"
-
-#endif // MONITOR_ADMIN_MANAGER_H
-
diff --git a/dep/include/ace/Monitor_Base.h b/dep/include/ace/Monitor_Base.h
deleted file mode 100644
index 1ed230f0061..00000000000
--- a/dep/include/ace/Monitor_Base.h
+++ /dev/null
@@ -1,153 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Monitor_Base.h
- *
- * $Id: Monitor_Base.h 82333 2008-07-16 01:01:32Z johnnyw $
- *
- * @author Jeff Parsons <j.parsons@vanderbilt.edu>
- */
-//=============================================================================
-
-#ifndef MONITOR_BASE_H
-#define MONITOR_BASE_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Monitor_Control_Types.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_MONITOR_FRAMEWORK) && (ACE_HAS_MONITOR_FRAMEWORK == 1)
-
-#include "ace/Refcountable_T.h"
-#include "ace/Thread_Mutex.h"
-#include "ace/Synch_Traits.h"
-#include "ace/CDR_Base.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ETCL_Constraint;
-
-namespace ACE
-{
- namespace Monitor_Control
- {
- class Control_Action;
-
- /**
- * @class Monitor_Base
- *
- * @brief Base class from which the template monitor point class is
- * derived.
- */
- class ACE_Export Monitor_Base
- : private ACE_Refcountable_T<ACE_SYNCH_MUTEX>
- {
- public:
- typedef Monitor_Control_Types::ConstraintList CONSTRAINTS;
- typedef CONSTRAINTS::const_iterator CONSTRAINT_ITERATOR;
-
- Monitor_Base (const char* name,
- Monitor_Control_Types::Information_Type type);
- virtual ~Monitor_Base (void);
-
- /// Implemented by the most-derived class. Does the actual
- /// work of fetching the monitored value.
- virtual void update (void);
-
- /// Updates the monitor's data if it is a numeric floating point.
- virtual void receive (double data);
-
- /// Updates the monitor's data if it is an integer size.
- virtual void receive (size_t data);
-
- /// Updates the monitor's data if it is a string type.
- virtual void receive (const Monitor_Control_Types::NameList& data);
-
- /// Add a constraint, returns a unique constraint id.
- long add_constraint (const char* expression,
- Control_Action* action = 0);
-
- /// Remove a constraint and return the associated control action,
- /// which may be shared, for deletion or further use.
- Control_Action* remove_constraint (const long constraint_id);
-
- /// Get all constraints
- CONSTRAINTS& constraints (void);
-
- /// Reset function.
- virtual void clear (void);
-
- /// Data accessors.
- void retrieve (Monitor_Control_Types::Data& data) const;
- void retrieve_and_clear (Monitor_Control_Types::Data& data);
-
- /// Common to all monitors.
-
- void add_to_registry (
- const ACE_Time_Value& time = ACE_Time_Value::zero);
- void remove_from_registry (void);
-
- const char* name (void) const;
- void name (const char* new_name);
-
- void add_ref (void);
- void remove_ref (void);
-
- /// Calculate the average of the accumulated samples.
- double average (void) const;
-
- /// Calculate the sum of the squares of the samples.
- double sum_of_squares (void) const;
-
- /// Returns the number of samples
- size_t count (void) const;
-
- /// Returns the minimum sample value
- double minimum_sample (void) const;
-
- /// Returns the maximum sample value
- double maximum_sample (void) const;
-
- /// Returns the most recent sample value
- double last_sample (void) const;
-
- /// Return the type of this statistic
- Monitor_Control_Types::Information_Type type (void) const;
-
- /// Return the list or error msg if wrong type.
- Monitor_Control_Types::NameList get_list (void) const;
-
- protected:
- /// Overridden in some monitors (for example the OS monitors) where
- /// clearing requires monitor-specific actions.
- virtual void clear_i (void);
-
- protected:
- Monitor_Control_Types::Data data_;
- mutable ACE_SYNCH_MUTEX mutex_;
-
- CONSTRAINTS constraints_;
-
- private:
- ACE_CString name_;
- };
- }
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Monitor_Base.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_MONITOR_FRAMEWORK==1 */
-
-#include /**/ "ace/post.h"
-
-#endif // MONITOR_BASE_H
-
diff --git a/dep/include/ace/Monitor_Base.inl b/dep/include/ace/Monitor_Base.inl
deleted file mode 100644
index 71603dbbee8..00000000000
--- a/dep/include/ace/Monitor_Base.inl
+++ /dev/null
@@ -1,59 +0,0 @@
-// $Id: Monitor_Base.inl 82328 2008-07-15 17:20:17Z parsons $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE
-{
- namespace Monitor_Control
- {
- ACE_INLINE
- const char*
- Monitor_Base::name (void) const
- {
- return this->name_.c_str ();
- }
-
- ACE_INLINE
- void
- Monitor_Base::name (const char* new_name)
- {
- this->name_ = new_name;
- }
-
- ACE_INLINE
- Monitor_Base::CONSTRAINTS&
- Monitor_Base::constraints (void)
- {
- return this->constraints_;
- }
-
- ACE_INLINE
- void
- Monitor_Base::add_ref (void)
- {
- (void) this->increment ();
- }
-
- ACE_INLINE
- void
- Monitor_Base::remove_ref (void)
- {
- long const new_count = this->decrement ();
-
- if (new_count == 0)
- {
- delete this;
- }
- }
-
- ACE_INLINE
- Monitor_Control_Types::Information_Type
- Monitor_Base::type (void) const
- {
- return this->data_.type_;
- }
- }
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
diff --git a/dep/include/ace/Monitor_Control_Action.h b/dep/include/ace/Monitor_Control_Action.h
deleted file mode 100644
index ba51b56d382..00000000000
--- a/dep/include/ace/Monitor_Control_Action.h
+++ /dev/null
@@ -1,66 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Monitor_Control_Action.h
- *
- * $Id: Monitor_Control_Action.h 81691 2008-05-14 11:09:21Z johnnyw $
- *
- * @author Jeff Parsons <j.parsons@vanderbilt.edu>
- */
-//=============================================================================
-
-#ifndef MONITOR_CONTROL_ACTION_H
-#define MONITOR_CONTROL_ACTION_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Refcountable_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_MONITOR_FRAMEWORK) && (ACE_HAS_MONITOR_FRAMEWORK == 1)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE
-{
- namespace Monitor_Control
- {
- /**
- * @class ControlAction
- *
- * @brief Base class for control actions initiated by the
- * application or by constraint evaluation trigger.
- *
- * This class is extended by the application developer or
- * by the MC service itself to create a concrete class.
- */
- class ACE_Export Control_Action
- : private ACE_Refcountable_T<ACE_SYNCH_MUTEX>
- {
- public:
- /// To be implemented by the concrete derived class.
- virtual void execute (const char* command = 0) = 0;
-
- /// Refcounting methods.
- void add_ref (void);
- void remove_ref (void);
-
- protected:
- Control_Action (void);
- virtual ~Control_Action (void);
- };
- }
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_MONITOR_FRAMEWORK==1 */
-
-#include /**/ "ace/post.h"
-
-#endif // MONITOR_CONTROL_ACTION_H
-
diff --git a/dep/include/ace/Monitor_Control_Types.h b/dep/include/ace/Monitor_Control_Types.h
deleted file mode 100644
index db0a12ce046..00000000000
--- a/dep/include/ace/Monitor_Control_Types.h
+++ /dev/null
@@ -1,125 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Monitor_Control_Types.h
- *
- * $Id: Monitor_Control_Types.h 82332 2008-07-16 01:00:55Z johnnyw $
- *
- * @author Jeff Parsons <j.parsons@vanderbilt.edu>
- */
-//=============================================================================
-
-#ifndef MONITOR_CONTROL_TYPES_H
-#define MONITOR_CONTROL_TYPES_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Vector_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_MONITOR_FRAMEWORK) && (ACE_HAS_MONITOR_FRAMEWORK == 1)
-
-#include "ace/Array_Map.h"
-#include "ace/SString.h"
-#include "ace/Time_Value.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE
-{
- namespace Monitor_Control
- {
- class Control_Action;
-
- struct ACE_Export Monitor_Control_Types
- {
- /// A monitor can hold various types of data and maintains stats
- /// differently depending upon the type of information stored.
- enum Information_Type
- {
- MC_COUNTER,
- MC_NUMBER,
- MC_TIME,
- MC_INTERVAL,
- MC_LIST,
- MC_GROUP
- };
-
- /**
- * @brief An instance is contained by each enabled monitor point.
- */
- struct ACE_Export Data
- {
- Data (Monitor_Control_Types::Information_Type type);
- ACE_Time_Value timestamp_;
- double value_;
- ACE_Array_Base<char *> list_;
-
- Information_Type type_;
-
- size_t index_;
- bool minimum_set_;
- double minimum_;
- double maximum_;
- double sum_;
- double sum_of_squares_;
- double last_;
- };
-
- /**
- * @brief Bundles the constrain string with its associated
- * trigger action.
- */
- struct ACE_Export Constraint
- {
- Constraint (void);
- ~Constraint (void);
-
- /// Implemented explicitly so reference counting of control
- /// actions can be managed.
- Constraint (const Constraint& rhs);
- Constraint& operator= (const Constraint& rhs);
-
- ACE_CString expr;
- Control_Action* control_action;
- };
-
-#if defined (__BORLANDC__) && (__BORLANDC__ <= 0x570)
- // Borland C++ Builder 6 and earlier don't handle the second template
- // argument correctly. We have to pass it explicitly
- typedef ACE_Vector<Data, ACE_VECTOR_DEFAULT_SIZE> DataList;
- typedef ACE_Vector<ACE_CString, ACE_VECTOR_DEFAULT_SIZE> NameList;
- typedef ACE_Array_Map<long, Constraint, std::equal_to<long> > ConstraintList;
-#else
- /**
- * @brief Used by the admin class as a container for the data from
- * a group of monitor points.
- */
- typedef ACE_Vector<Data> DataList;
-
- /**
- * @brief Used in various places to pass around a set of string names.
- */
- typedef ACE_Vector<ACE_CString> NameList;
-
- /**
- * @brief Holder for a monitor point's constraints.
- */
- typedef ACE_Array_Map<long, Constraint> ConstraintList;
-#endif
- };
- }
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_MONITOR_FRAMEWORK==1 */
-
-#include /**/ "ace/post.h"
-
-#endif // MONITOR_CONTROL_TYPES_H
-
diff --git a/dep/include/ace/Monitor_Point_Registry.h b/dep/include/ace/Monitor_Point_Registry.h
deleted file mode 100644
index 2c08d695ec1..00000000000
--- a/dep/include/ace/Monitor_Point_Registry.h
+++ /dev/null
@@ -1,101 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Monitor_Point_Registry.h
- *
- * $Id: Monitor_Point_Registry.h 81691 2008-05-14 11:09:21Z johnnyw $
- *
- * @author Jeff Parsons <j.parsons@vanderbilt.edu>
- */
-//=============================================================================
-
-#ifndef MONITOR_POINT_REGISTRY_H
-#define MONITOR_POINT_REGISTRY_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Thread_Mutex.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_MONITOR_FRAMEWORK) && (ACE_HAS_MONITOR_FRAMEWORK == 1)
-
-#include "ace/Synch_Traits.h"
-#include "ace/Null_Mutex.h"
-#include "ace/Hash_Map_Manager_T.h"
-#include "ace/Monitor_Control_Types.h"
-#include "ace/Singleton.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE
-{
- namespace Monitor_Control
- {
- class Monitor_Base;
-
- /**
- * @class Monitor_Point_Registry
- *
- * @brief Storage for instantiated monitor points.
- *
- */
- class ACE_Export Monitor_Point_Registry
- {
- public:
- friend class ACE_Singleton<Monitor_Point_Registry, ACE_SYNCH_MUTEX>;
-
- /// Used to help ensure that there is only a single instance
- /// per process of Monitor_Point_Registry.
- static Monitor_Point_Registry* instance (void);
-
- /// Adds a monitor to the registry.
- bool add (Monitor_Base* type);
-
- /// Remove a monitor from the registry.
- bool remove (const char* name);
-
- /// Returns a list of names stored in the registry
- Monitor_Control_Types::NameList names (void);
-
- /// Increments the refcount, so the caller is responsible for
- /// decrementing it when finished.
- Monitor_Base* get (const ACE_CString& name) const;
-
- /// Returns a unique id for a constraint when it is created.
- long constraint_id (void);
-
- /// Decrements the reference count on all remaining entries,
- /// called right before we go out of scope (i.e., process exits).
- void cleanup (void);
-
- private:
- /// Prevent that users can make an instance.
- Monitor_Point_Registry (void);
-
- /// Underlying container for the registry.
- typedef ACE_Hash_Map_Manager<ACE_CString,
- Monitor_Base*,
- ACE_SYNCH_NULL_MUTEX> Map;
-
- mutable ACE_SYNCH_MUTEX mutex_;
- Map map_;
-
- /// Since we're accessed as a singleton, we can keep track of
- /// dispensing unique ids for constraints.
- long constraint_id_;
- };
- }
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_MONITOR_FRAMEWORK==1 */
-
-#include /**/ "ace/post.h"
-
-#endif // MONITOR_POINT_REGISTRY_H
-
diff --git a/dep/include/ace/Monitor_Size.h b/dep/include/ace/Monitor_Size.h
deleted file mode 100644
index bca6815af73..00000000000
--- a/dep/include/ace/Monitor_Size.h
+++ /dev/null
@@ -1,65 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Monitor_Size.h
- *
- * $Id: Monitor_Size.h 81691 2008-05-14 11:09:21Z johnnyw $
- *
- * @author Jeff Parsons <j.parsons@vanderbilt.edu>
- */
-//=============================================================================
-
-#ifndef SIZE_MONITOR_H
-#define SIZE_MONITOR_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Monitor_Base.h"
-
-#if defined (ACE_HAS_MONITOR_FRAMEWORK) && (ACE_HAS_MONITOR_FRAMEWORK == 1)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE
-{
- namespace Monitor_Control
- {
- /**
- * @class Size_Monitor
- *
- * @brief Base class from which ACE monitors of size are
- * derived.
- *
- */
- class ACE_Export Size_Monitor : public Monitor_Base
- {
- public:
- Size_Monitor (void);
- Size_Monitor (const char* name);
- virtual ~Size_Monitor (void);
-
- /// Implemented by the most-derived class. Does the actual
- /// work of fetching the monitored value.
- virtual void update (void);
-
- /// Reset function.
- virtual void clear (void);
- };
- }
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_MONITOR_FRAMEWORK==1 */
-
-#include /**/ "ace/post.h"
-
-#endif // SIZE_MONITOR_H
-
diff --git a/dep/include/ace/Msg_WFMO_Reactor.h b/dep/include/ace/Msg_WFMO_Reactor.h
deleted file mode 100644
index 879dcef9c8b..00000000000
--- a/dep/include/ace/Msg_WFMO_Reactor.h
+++ /dev/null
@@ -1,120 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Msg_WFMO_Reactor.h
- *
- * $Id: Msg_WFMO_Reactor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Beskrovny Evgeny <evgeny_beskrovny@icomverse.com>
- * @author Irfan Pyarali <irfan@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_MSG_WFMO_REACTOR_H
-#define ACE_MSG_WFMO_REACTOR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_WIN32) && !defined (ACE_LACKS_MSG_WFMO)
-
-#include "ace/WFMO_Reactor.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Msg_WFMO_Reactor
- *
- * @brief An OO event demultiplexor and event handler dispatcher for
- * Win32 <MsgWaitForMultipleObjects>.
- *
- * The ACE_Msg_WFMO_Reactor is an OO event demultiplexor and
- * event handler Reactor. It differs from <ACE_WFMO_Reactor> by
- * its ability to react on Windows messages. It is needed when
- * the task should serve also as a COM/DCOM server.
- */
-class ACE_Export ACE_Msg_WFMO_Reactor : public ACE_WFMO_Reactor
-{
-public:
- // = Initialization and termination methods.
- /// Initialize <ACE_Msg_WFMO_Reactor> with the default size.
- ACE_Msg_WFMO_Reactor (ACE_Sig_Handler * = 0,
- ACE_Timer_Queue * = 0);
-
- /**
- * Initialize <ACE_Msg_WFMO_Reactor> with size @a size. Two slots will be
- * added to the @a size parameter which will store handles used for
- * internal management purposes.
- */
- ACE_Msg_WFMO_Reactor (size_t size,
- int unused = 0,
- ACE_Sig_Handler * = 0,
- ACE_Timer_Queue * = 0);
-
- /// Close down the ACE_Msg_WFMO_Reactor and release all of its resources.
- virtual ~ACE_Msg_WFMO_Reactor (void);
-
- /**
- * This event loop driver blocks for up to @a max_wait_time before
- * returning. It will return earlier if timer events, I/O events,
- * window events, or signal events occur. Note that @a max_wait_time
- * can be 0, in which case this method blocks indefinitely until
- * events occur.
- *
- * @a max_wait_time is decremented to reflect how much time this call
- * took. For instance, if a time value of 3 seconds is passed to
- * handle_events and an event occurs after 2 seconds,
- * @a max_wait_time will equal 1 second. This can be used if an
- * application wishes to handle events for some fixed amount of
- * time.
- *
- * <MsgWaitForMultipleObjects> is used as the demultiplexing call
- *
- * Returns the total number of ACE_Event_Handlers that were
- * dispatched, 0 if the @a max_wait_time elapsed without dispatching
- * any handlers, or -1 if an error occurs.
- *
- * The only difference between <alertable_handle_events> and
- * <handle_events> is that in the alertable case, MWMO_ALERTABLE is
- * passed to <MsgWaitForMultipleObjects> for the <bAlertable>
- * option.
- */
- virtual int handle_events (ACE_Time_Value *max_wait_time = 0);
- virtual int alertable_handle_events (ACE_Time_Value *max_wait_time = 0);
-
- /**
- * This method is just like the one above, except the
- * @a max_wait_time value is a reference and can therefore never be
- * NULL.
- */
- virtual int handle_events (ACE_Time_Value &max_wait_time);
- virtual int alertable_handle_events (ACE_Time_Value &max_wait_time);
-
-protected:
- /// Wait for timer and I/O events to occur.
- virtual DWORD wait_for_multiple_events (int timeout,
- int alertable);
-
- /// Check for activity on remaining handles.
- virtual DWORD poll_remaining_handles (DWORD index);
-
- /// Dispatches window messages.
- virtual int dispatch_window_messages (void);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Msg_WFMO_Reactor.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_WIN32 && !ACE_LACKS_MSG_WFMO */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_MSG_WFMO_REACTOR_H */
-
diff --git a/dep/include/ace/Msg_WFMO_Reactor.inl b/dep/include/ace/Msg_WFMO_Reactor.inl
deleted file mode 100644
index f28bb4321a6..00000000000
--- a/dep/include/ace/Msg_WFMO_Reactor.inl
+++ /dev/null
@@ -1,35 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Msg_WFMO_Reactor.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#if defined (ACE_WIN32) && !defined (ACE_LACKS_MSG_WFMO)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_Msg_WFMO_Reactor::handle_events (ACE_Time_Value &how_long)
-{
- return this->event_handling (&how_long, 0);
-}
-
-ACE_INLINE int
-ACE_Msg_WFMO_Reactor::alertable_handle_events (ACE_Time_Value &how_long)
-{
- return this->event_handling (&how_long, MWMO_ALERTABLE);
-}
-
-ACE_INLINE int
-ACE_Msg_WFMO_Reactor::handle_events (ACE_Time_Value *how_long)
-{
- return this->event_handling (how_long, 0);
-}
-
-ACE_INLINE int
-ACE_Msg_WFMO_Reactor::alertable_handle_events (ACE_Time_Value *how_long)
-{
- return this->event_handling (how_long, MWMO_ALERTABLE);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_WIN32 && !ACE_LACKS_MSG_WFMO */
diff --git a/dep/include/ace/Multihomed_INET_Addr.h b/dep/include/ace/Multihomed_INET_Addr.h
deleted file mode 100644
index 88a3fbe3424..00000000000
--- a/dep/include/ace/Multihomed_INET_Addr.h
+++ /dev/null
@@ -1,199 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Multihomed_INET_Addr.h
- *
- * $Id: Multihomed_INET_Addr.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Edward R. Mulholland <emulholl@atl.lmco.com>
- */
-//=============================================================================
-
-#ifndef ACE_MULTIHOMED_INET_ADDR_H
-#define ACE_MULTIHOMED_INET_ADDR_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/INET_Addr.h"
-#include "ace/Containers_T.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Multihomed_INET_Addr
- *
- * @brief Extends ACE_INET_Addr with support for multi-homed
- * addresses.
- */
-class ACE_Export ACE_Multihomed_INET_Addr : public ACE_INET_Addr
-{
-public:
- // = Initialization methods.
-
- /// Default constructor.
- ACE_Multihomed_INET_Addr (void);
-
- /**
- * Initializes an ACE_Multihomed_INET_Addr from the @a address,
- * which can be "ip-number:port-number" (e.g., "tango.cs.wustl.edu:1234"
- * or "128.252.166.57:1234"). If there is no ':' in the @a address it
- * is assumed to be a port number, with the IP address being
- * INADDR_ANY.
- */
- explicit ACE_Multihomed_INET_Addr (const char address[]);
-
- /**
- * Constructs an ACE_Multihomed_INET_Addr from a @a port_number, a
- * @a primary_host_name, and an array of <secondary_host_names>.
- * @a size is taken to be the length of the array. If @a encode is
- * non-zero, then @a port_number is converted into network byte
- * order; otherwise it is assumed to be in network byte order
- * already and is passed straight through. @a address_family can be
- * used to select IPv4/IPv6 if the OS has IPv6 capability
- * (ACE_HAS_IPV6 is defined). To specify IPv6, use the value
- * AF_INET6. To specify IPv4, use AF_INET.
- */
- ACE_Multihomed_INET_Addr(u_short port_number,
- const char primary_host_name[],
- int encode = 1,
- int address_family = AF_UNSPEC,
- const char *(secondary_host_names[]) = 0,
- size_t size = 0);
-
- /**
- * Constructs an ACE_Multihomed_INET_Addr from a @a port_number,
- * a @a primary_ip_addr, and an array of @a secondary_ip_addrs. @a
- * size is taken to be the length of the array. If @a encode is
- * non-zero, then the port number and the IP addresses are converted
- * into network byte order; otherwise they are assumed to be in
- * network byte order already and are passed straight through.
- */
- ACE_Multihomed_INET_Addr(u_short port_number,
- ACE_UINT32 primary_ip_addr = INADDR_ANY,
- int encode = 1,
- const ACE_UINT32 *secondary_ip_addrs = 0,
- size_t size = 0);
-
-#if defined (ACE_HAS_WCHAR)
- /**
- * WCHAR versions of the methods that take char's as arguments.
- */
- ACE_Multihomed_INET_Addr(u_short port_number,
- const wchar_t primary_host_name[],
- int encode = 1,
- int address_family = AF_UNSPEC,
- const wchar_t *(secondary_host_names[]) = 0,
- size_t size = 0);
- int set (u_short port_number,
- const wchar_t primary_host_name[],
- int encode = 1,
- int address_family = AF_UNSPEC,
- const wchar_t *(secondary_host_names[]) = 0,
- size_t size = 0);
-
-#endif /* ACE_HAS_WCHAR */
-
- /// Use compiler-generated copy constructor.
-
- /// Use compiler-generated assignment operator.
-
- /// Default dtor.
- ~ACE_Multihomed_INET_Addr (void);
-
- // = Direct initialization methods.
-
- // These methods are useful after the object has been constructed.
-
- /**
- * Initializes an ACE_Multihomed_INET_Addr from a @a port_number, a
- * @a primary_host_name, and an array of <secondary_host_names>.
- * @a size is taken to be the length of the array. If @a encode is
- * non-zero, then @a port_number is converted into network byte
- * order; otherwise it is assumed to be in network byte order
- * already and is passed straight through. @a address_family can be
- * used to select IPv4/IPv6 if the OS has IPv6 capability
- * (ACE_HAS_IPV6 is defined). To specify IPv6, use the value
- * AF_INET6. To specify IPv4, use AF_INET.
- */
- int set (u_short port_number,
- const char primary_host_name[],
- int encode = 1,
- int address_family = AF_UNSPEC,
- const char *(secondary_host_names[]) = 0,
- size_t size = 0);
-
- /**
- * Initializes an ACE_Multihomed_INET_Addr from a @a port_number,
- * a @a primary_ip_addr, and an array of @a secondary_ip_addrs. @a
- * size is taken to be the length of the array. If @a encode is
- * non-zero, then the port number and the IP addresses are converted
- * into network byte order; otherwise they are assumed to be in
- * network byte order already and are passed straight through.
- */
- int set (u_short port_number,
- ACE_UINT32 primary_ip_addr = INADDR_ANY,
- int encode = 1,
- const ACE_UINT32 *secondary_ip_addrs = 0,
- size_t size = 0);
-
- /**
- * Sets the port number without affecting the host name. The port
- * numbers of the primary address, and of any and all secondary
- * addresses, are affected. If @a encode is enabled, then
- * @a port_number is converted into network byte order, otherwise it
- * is assumed to be in network byte order already and is passed
- * straight through.
- */
- void set_port_number (u_short port_number,
- int encode = 1);
-
- // = Accessor methods.
-
- /**
- * Returns the number of secondary addresses.
- */
- size_t get_num_secondary_addresses () const;
-
- /**
- * Initialize user-supplied array @a secondary_addrs with the current
- * secondary addresses. @a size is taken as the size of this array.
- */
- int get_secondary_addresses(ACE_INET_Addr *secondary_addrs,
- size_t size) const;
-
- /**
- * Initialize user-supplied array @a addrs with the the current
- * primary and secondary addresses. @a size is taken as the size of
- * this array.
- */
- void get_addresses(sockaddr_in *addrs,
- size_t size) const;
-
-#if defined (ACE_HAS_IPV6)
-
- /// IPV6 version of the above.
- void get_addresses(sockaddr_in6 *addrs,
- size_t size) const;
-#endif /* ACE_HAS_IPV6 */
-
-private:
- ACE_Array<ACE_INET_Addr> secondaries_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-# include "ace/Multihomed_INET_Addr.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_MULTIHOMED_INET_ADDR_H */
-
diff --git a/dep/include/ace/Multihomed_INET_Addr.inl b/dep/include/ace/Multihomed_INET_Addr.inl
deleted file mode 100644
index 61c8560593c..00000000000
--- a/dep/include/ace/Multihomed_INET_Addr.inl
+++ /dev/null
@@ -1,15 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Multihomed_INET_Addr.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Accessor implementations
-ACE_INLINE
-size_t
-ACE_Multihomed_INET_Addr::get_num_secondary_addresses() const
-{
- return this->secondaries_.size();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Mutex.h b/dep/include/ace/Mutex.h
deleted file mode 100644
index d0440263472..00000000000
--- a/dep/include/ace/Mutex.h
+++ /dev/null
@@ -1,193 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Mutex.h
- *
- * $Id: Mutex.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_MUTEX_H
-#define ACE_MUTEX_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/OS_NS_Thread.h"
-#include "ace/OS_NS_unistd.h"
-#include "ace/os_include/os_fcntl.h"
-
-# if !defined (ACE_DEFAULT_MUTEX_A)
-# define ACE_DEFAULT_MUTEX_A "ACE_MUTEX"
-# endif /* ACE_DEFAULT_MUTEX_A */
-
-# if defined (ACE_HAS_WCHAR)
-# define ACE_DEFAULT_MUTEX_W ACE_TEXT_WIDE(ACE_DEFAULT_MUTEX_A)
-# endif /* ACE_HAS_WCHAR */
-
-# define ACE_DEFAULT_MUTEX ACE_TEXT (ACE_DEFAULT_MUTEX_A)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-/**
- * @class ACE_Mutex
- *
- * @brief @c ACE_Mutex wrapper (valid in same process or across
- * processes (depending on @a TYPE flag)). In general,
- * however, we recommend using @a ACE_Process_Mutex or @a
- * ACE_Thread_Mutex rather than @a ACE_Mutex.
- */
-class ACE_Export ACE_Mutex
-{
-public:
- /// Initialize the mutex.
- ACE_Mutex (int type = USYNC_THREAD,
- const ACE_TCHAR *name = 0,
- ACE_mutexattr_t *arg = 0,
- mode_t mode = ACE_DEFAULT_FILE_PERMS);
-
- /// Implicitly destroy the mutex.
- ~ACE_Mutex (void);
-
- /// Explicitly destroy the mutex.
- /**
- * @note Only one thread should call this method since it doesn't
- * protect against race conditions.
- */
- int remove (void);
-
- /// Acquire lock ownership (wait on queue if necessary).
- int acquire (void);
-
- /// Block the thread until the mutex is acquired or @a tv times out,
- /// in which case -1 is returned and @c errno == @c ETIME.
- /**
- * @note @a tv is assumed to be in "absolute" rather than
- * " relative" time. The value of @a tv is updated upon return
- * to show the actual(absolute) acquisition time.
- */
- int acquire (ACE_Time_Value &tv);
-
- /// Block the thread until the mutex is acquired or @a *tv times
- /// out, in which case -1 is returned and @c errno == @c ETIME.
- /**
- * If @a tv == 0 then call @c acquire() directly. Otherwise, block
- * the thread until the mutex is acquired or @a tv times out, in
- * which case -1 is returned and @c errno == @c ETIME.
- *
- * @note @a *tv is assumed to be in "absolute" rather than
- * "relative" time. The value of @a *tv is updated upon
- * return to show the actual (absolute) acquisition time.
- */
- int acquire (ACE_Time_Value *tv);
-
- /// Conditionally acquire lock (i.e., don't wait on queue).
- /**
- * @return -1 on failure. If we "failed" because someone
- * else already had the lock, @c errno is set to @c EBUSY.
- */
- int tryacquire (void);
-
- /// Release lock and unblock a thread at head of queue.
- int release (void);
-
- /// Acquire mutex ownership.
- /**
- * This calls @c acquire and is only here to make the @c ACE_Mutex
- * interface consistent with the other synchronization APIs.
- */
- int acquire_read (void);
-
- /// Acquire mutex ownership.
- /**
- * This calls @c acquire and is only here to make the @c ACE_Mutex
- * interface consistent with the other synchronization APIs.
- */
- int acquire_write (void);
-
- /// Conditionally acquire mutex (i.e., won't block).
- /**
- * This calls @c tryacquire and is only here to make the @c ACE_Mutex
- * interface consistent with the other synchronization APIs.
- *
- * @return -1 on failure. If we "failed" because someone else
- * already had the lock, @c errno is set to @c EBUSY.
- */
- int tryacquire_read (void);
-
- /// Conditionally acquire mutex (i.e., won't block).
- /**
- * This calls @c tryacquire and is only here to make the @c ACE_Mutex
- * interface consistent with the other synchronization APIs.
- *
- * @return -1 on failure. If we "failed" because someone else
- * already had the lock, @c errno is set to @c EBUSY.
- */
- int tryacquire_write (void);
-
- /**
- * This is only here for consistency with the other synchronization
- * APIs and usability with Lock adapters. Assumes the caller already has
- * acquired the mutex and returns 0 in all cases.
- */
- int tryacquire_write_upgrade (void);
-
- /// Return the underlying mutex.
- const ACE_mutex_t &lock (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- // = This should be protected but some C++ compilers complain...
-public:
-#if defined (ACE_HAS_PTHREADS) || defined(ACE_HAS_STHREADS)
- /// This lock resides in shared memory.
- ACE_mutex_t *process_lock_;
-
- /**
- * Remember the name of the mutex if we created it so we can unlink
- * it when we go away (only the actor that initialized the memory
- * can destroy it).
- */
- const ACE_TCHAR *lockname_;
-#endif /* ACE_HAS_PTHREADS */
-
- /// Mutex type supported by the OS.
- ACE_mutex_t lock_;
-
- /// Keeps track of whether @c remove has been called yet to avoid
- /// multiple @c remove calls, e.g., explicitly and implicitly in the
- /// destructor. This flag isn't protected by a lock, so make sure
- /// that you don't have multiple threads simultaneously calling
- /// @c remove on the same object, which is a bad idea anyway.
- bool removed_;
-
-private:
- // Prevent assignment and initialization.
- void operator= (const ACE_Mutex &);
- ACE_Mutex (const ACE_Mutex &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Mutex.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_MUTEX_H */
-
diff --git a/dep/include/ace/Mutex.inl b/dep/include/ace/Mutex.inl
deleted file mode 100644
index 10432e9ede8..00000000000
--- a/dep/include/ace/Mutex.inl
+++ /dev/null
@@ -1,174 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Mutex.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_sys_mman.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_Mutex::acquire_read (void)
-{
-// ACE_TRACE ("ACE_Mutex::acquire_read");
-#if defined (ACE_HAS_PTHREADS) || defined(ACE_HAS_STHREADS)
- if (this->process_lock_)
- return ACE_OS::mutex_lock (this->process_lock_);
-#endif /* ACE_HAS_PTHREADS || ACE_HAS_STHREADS */
- return ACE_OS::mutex_lock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_Mutex::acquire_write (void)
-{
-// ACE_TRACE ("ACE_Mutex::acquire_write");
-#if defined (ACE_HAS_PTHREADS) || defined(ACE_HAS_STHREADS)
- if (this->process_lock_)
- return ACE_OS::mutex_lock (this->process_lock_);
-#endif /* ACE_HAS_PTHREADS || ACE_HAS_STHREADS */
- return ACE_OS::mutex_lock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_Mutex::tryacquire_read (void)
-{
-// ACE_TRACE ("ACE_Mutex::tryacquire_read");
-#if defined (ACE_HAS_PTHREADS) || defined(ACE_HAS_STHREADS)
- if (this->process_lock_)
- return ACE_OS::mutex_trylock (this->process_lock_);
-#endif /* ACE_HAS_PTHREADS || ACE_HAS_STHREADS */
- return ACE_OS::mutex_trylock (&this->lock_);
-}
-
-ACE_INLINE const ACE_mutex_t &
-ACE_Mutex::lock (void) const
-{
-// ACE_TRACE ("ACE_Mutex::lock");
-#if defined (ACE_HAS_PTHREADS) || defined(ACE_HAS_STHREADS)
- if (this->process_lock_)
- return *this->process_lock_;
-#endif /* ACE_HAS_PTHREADS || ACE_HAS_STHREADS */
- return this->lock_;
-}
-
-ACE_INLINE int
-ACE_Mutex::tryacquire_write (void)
-{
-// ACE_TRACE ("ACE_Mutex::tryacquire_write");
-#if defined (ACE_HAS_PTHREADS) || defined(ACE_HAS_STHREADS)
- if (this->process_lock_)
- return ACE_OS::mutex_trylock (this->process_lock_);
-#endif /* ACE_HAS_PTHREADS || ACE_HAS_STHREADS */
- return ACE_OS::mutex_trylock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_Mutex::tryacquire_write_upgrade (void)
-{
-// ACE_TRACE ("ACE_Mutex::tryacquire_write_upgrade");
- return 0;
-}
-
-ACE_INLINE int
-ACE_Mutex::acquire (void)
-{
-// ACE_TRACE ("ACE_Mutex::acquire");
-#if defined (ACE_HAS_PTHREADS) || defined(ACE_HAS_STHREADS)
- if (this->process_lock_)
- return ACE_OS::mutex_lock (this->process_lock_);
-#endif /* ACE_HAS_PTHREADS || ACE_HAS_STHREADS */
- return ACE_OS::mutex_lock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_Mutex::acquire (ACE_Time_Value &tv)
-{
- // ACE_TRACE ("ACE_Mutex::acquire");
- #if defined (ACE_HAS_PTHREADS) || defined(ACE_HAS_STHREADS)
- if (this->process_lock_)
- return ACE_OS::mutex_lock (this->process_lock_, tv);
-#endif /* ACE_HAS_PTHREADS || ACE_HAS_STHREADS*/
- return ACE_OS::mutex_lock (&this->lock_, tv);
-}
-
-ACE_INLINE int
-ACE_Mutex::acquire (ACE_Time_Value *tv)
-{
- #if defined (ACE_HAS_PTHREADS) || defined(ACE_HAS_STHREADS)
- if (this->process_lock_)
- return ACE_OS::mutex_lock (this->process_lock_, tv);
-#endif /* ACE_HAS_PTHREADS || ACE_HAS_STHREADS*/
- return ACE_OS::mutex_lock (&this->lock_, tv);
-}
-
-ACE_INLINE int
-ACE_Mutex::tryacquire (void)
-{
-// ACE_TRACE ("ACE_Mutex::tryacquire");
-#if defined (ACE_HAS_PTHREADS) || defined(ACE_HAS_STHREADS)
- if (this->process_lock_)
- return ACE_OS::mutex_trylock (this->process_lock_);
-#endif /* ACE_HAS_PTHREADS || ACE_HAS_STHREADS */
- return ACE_OS::mutex_trylock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_Mutex::release (void)
-{
-// ACE_TRACE ("ACE_Mutex::release");
-#if defined (ACE_HAS_PTHREADS) || defined(ACE_HAS_STHREADS)
- if (this->process_lock_)
- return ACE_OS::mutex_unlock (this->process_lock_);
-#endif /* ACE_HAS_PTHREADS || ACE_HAS_STHREADS */
- return ACE_OS::mutex_unlock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_Mutex::remove (void)
-{
-// ACE_TRACE ("ACE_Mutex::remove");
- int result = 0;
-#if defined (ACE_HAS_PTHREADS) || defined (ACE_HAS_STHREADS)
- // In the case of a interprocess mutex, the owner is the first
- // process that created the shared memory object. In this case, the
- // lockname_ pointer will be non-zero (points to allocated memory
- // for the name). Owner or not, the memory needs to be unmapped
- // from the process. If we are the owner, the file used for
- // shm_open needs to be deleted as well.
- if (this->process_lock_)
- {
- if (this->removed_ == false)
- {
- this->removed_ = true;
- // Only destroy the lock if we're the ones who initialized
- // it.
- if (!this->lockname_)
- ACE_OS::munmap ((void *) this->process_lock_,
- sizeof (ACE_mutex_t));
- else
- {
- result = ACE_OS::mutex_destroy (this->process_lock_);
- ACE_OS::munmap ((void *) this->process_lock_,
- sizeof (ACE_mutex_t));
- ACE_OS::shm_unlink (this->lockname_);
- ACE_OS::free (
- static_cast<void *> (
- const_cast<ACE_TCHAR *> (this->lockname_)));
- }
- }
- }
- else
- {
-#else /* !ACE_HAS_PTHREADS && !ACE_HAS_STHREADS */
- if (this->removed_ == false)
- {
- this->removed_ = true;
- result = ACE_OS::mutex_destroy (&this->lock_);
- }
-#endif /* ACE_HAS_PTHREADS || ACE_HAS_STHREADS */
-#if defined (ACE_HAS_PTHREADS) || defined (ACE_HAS_STHREADS)
- }
-#endif /* ACE_HAS_PTHREADS || ACE_HAS_STHREADS */
- return result;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/NT_Service.h b/dep/include/ace/NT_Service.h
deleted file mode 100644
index d3202120622..00000000000
--- a/dep/include/ace/NT_Service.h
+++ /dev/null
@@ -1,439 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file NT_Service.h
- *
- * $Id: NT_Service.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Steve Huston <shuston@riverace.com>
- */
-//==========================================================================
-
-#ifndef ACE_NT_SERVICE_H
-#define ACE_NT_SERVICE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_WIN32) && !defined (ACE_LACKS_WIN32_SERVICES)
-
-#include "ace/ACE.h"
-#include "ace/OS_Log_Msg_Attributes.h"
-#include "ace/Service_Object.h"
-#include "ace/Task.h"
-#include "ace/OS_NS_errno.h" // needed for those using our macros
-
-// ACE_NT_SERVICE_START_TIMEOUT is an estimate of the number of
-// milliseconds your service will take to start. Default is 5
-// seconds; you can pass a different value (or set one) when you
-// create the ACE_NT_Service object for your service.
-#if !defined ACE_NT_SERVICE_START_TIMEOUT
-#define ACE_NT_SERVICE_START_TIMEOUT 5000
-#endif /* ACE_NT_SERVICE_TIMEOUT */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_NT_Service
- *
- * @brief Provide the base class which defines the interface for controlling
- * an NT service.
- *
- * NT Services can be implemented using the framework defined by
- * the ACE_NT_Service class, and the macros defined in this file.
- * Some quick refresher notes on NT Services:
- *
- * - The main program defines an array of entries describing the
- * services offered. The ACE_NT_SERVICE_ENTRY macro can help with
- * this.
- * - For each service, a separate ServiceMain and Handler function
- * need to be defined. These are taken care of by the
- * ACE_NT_SERVICE_DEFINE macro.
- * - When the main program/thread calls
- * StartServiceCtrlDispatcher, NT creates a thread for each
- * service, and runs the ServiceMain function for the service in
- * that new thread. When that thread exits, the service is gone.
- *
- * To use this facility, you could derive a class from
- * ACE_Service_Object (if you want to start via ACE's service
- * configurator), or use any other class to run when the image
- * starts (assuming that NT runs the image). You must set up an
- * NT SERVICE_TABLE_ENTRY array to define your service(s). You
- * can use the ACE_NT_SERVICE_... macros defined below for this.
- *
- * A SERVICE_TABLE might look like this:
- * ACE_NT_SERVICE_REFERENCE(Svc1); // If service is in another file
- * SERVICE_TABLE_ENTRY myServices[] = {
- * ACE_NT_SERVICE_ENTRY ("MyNeatService", Svc1),
- * { 0, 0 } };
- *
- * In the file where your service(s) are implemented, use the
- * ACE_NT_SERVICE_DEFINE macro to set up the following:
- * 1. A pointer to the service's implementation object (must be derived
- * from ACE_NT_Service).
- * 2. The service's Handler function (forwards all requests to the
- * ACE_NT_Service-derived object's handle_control function).
- * 3. The service's ServiceMain function. Creates a new instance
- * of the ACE_NT_Service-derived class SVCCLASS, unless one has
- * been created already.
- *
- * If you are using all the default constructor values, you can
- * let the generated ServiceMain function create the object, else
- * you need to create it by hand before calling
- * StartServiceCtrlDispatcher. Set the pointer so ServiceMain
- * won't create another one. Another reason you may want to do
- * the object creation yourself is if you want to also implement
- * suspend and resume functions (the ones inherited from
- * ACE_Service_Object) to do something intelligent to the services
- * which are running, like call their handle_control functions to
- * request suspend and resume actions, similar to what NT would do
- * if a Services control panel applet would do if the user clicks
- * on Suspend.
- */
-class ACE_Export ACE_NT_Service : public ACE_Task<ACE_MT_SYNCH>
-{
-
-public:
- // = Initialization and termination methods.
- /// Constructor primarily for use when running the service.
- ACE_NT_Service (DWORD start_timeout = ACE_NT_SERVICE_START_TIMEOUT,
- DWORD service_type = SERVICE_WIN32_OWN_PROCESS,
- DWORD controls_mask = SERVICE_ACCEPT_STOP);
-
- /// Constructor primarily for use when inserting/removing/controlling
- /// the service.
- ACE_NT_Service (const ACE_TCHAR *name,
- const ACE_TCHAR *desc = 0,
- DWORD start_timeout = ACE_NT_SERVICE_START_TIMEOUT,
- DWORD service_type = SERVICE_WIN32_OWN_PROCESS,
- DWORD controls_mask = SERVICE_ACCEPT_STOP);
-
- virtual ~ACE_NT_Service (void);
-
- // = Functions to operate the service
-
- /**
- * Hook called to open the service. By default, sets the service
- * status to SERVICE_START_PENDING, calls the @c svc() method,
- * interprets and sets the service status, and returns.
- */
- virtual int open (void *args = 0);
-
- /**
- * Hook called when terminating the service. Inherited from
- * ACE_Shared_Object. Default implementation sets the service status
- * to SERVICE_STOPPED.
- */
- virtual int fini (void);
-
- /**
- * The actual service implementation. This function need not be overridden
- * by applications that are just using SCM capabilities, but must be
- * by subclasses when actually running the service. It is expected that
- * this function will set the status to RUNNING.
- */
- virtual int svc (void);
-
- /**
- * This function is called in response to a request from the Service
- * Dispatcher. It must interact with the <svc> function to effect the
- * requested control operation. The default implementation handles
- * all requests as follows:
- * SERVICE_CONTROL_STOP: set stop pending, set cancel flag
- * SERVICE_CONTROL_PAUSE: set pause pending, <suspend>, set paused
- * SERVICE_CONTROL_CONTINUE: set continue pending, <resume>, set running
- * SERVICE_CONTROL_INTERROGATE: reports current status
- * SERVICE_CONTROL_SHUTDOWN: same as SERVICE_CONTROL_STOP.
- */
- virtual void handle_control (DWORD control_code);
-
- /// Set the svc_handle_ member. This is only a public function because
- /// the macro-generated service function calls it.
- void svc_handle (const SERVICE_STATUS_HANDLE new_svc_handle);
-
- // = Methods which can be used to do SCP-like functions. The first group
- // are used to register/insert and remove the service's definition in the
- // SCM registry.
-
- /// Sets the name and description for the service.
- /// If desc is 0, it takes the same value as name.
- void name (const ACE_TCHAR *name, const ACE_TCHAR *desc = 0);
-
- /// Get the service name.
- const ACE_TCHAR *name (void) const;
-
- /// Get the service description.
- const ACE_TCHAR *desc (void) const;
-
- /// Sets the host machine
- void host (const ACE_TCHAR *host);
-
- /// Get the host machine.
- const ACE_TCHAR *host (void) const;
-
- /**
- * Insert (create) the service in the NT Service Control Manager,
- * with the given creation values. exe_path defaults to the path name
- * of the program that calls the function. All other 0-defaulted arguments
- * pass 0 into the service creation, taking NT_specified defaults.
- * Returns -1 on error, 0 on success.
- */
- int insert (DWORD start_type = SERVICE_DEMAND_START,
- DWORD error_control = SERVICE_ERROR_IGNORE,
- const ACE_TCHAR *exe_path = 0,
- const ACE_TCHAR *group_name = 0,
- LPDWORD tag_id = 0,
- const ACE_TCHAR *dependencies = 0,
- const ACE_TCHAR *account_name = 0,
- const ACE_TCHAR *password = 0,
- DWORD desired_access = SERVICE_ALL_ACCESS);
-
- /**
- * Remove the service from the NT Service Control Manager. Returns -1 on
- * error, 0 on success. This just affects the SCM and registry - the
- * can and will keep running fine if it is already running.
- */
- int remove (void);
-
- /// Sets the startup type for the service. Returns -1 on error, 0 on success.
- int startup (DWORD startup);
-
- /// Returns the current startup type.
- DWORD startup (void);
-
- // = Methods to control ACE_Log_Msg behavior in the service.
-
- /**
- * Set the ACE_Log_Msg attributes that the service thread will use to
- * initialize its ACE_Log_Msg instance. This is how the initiating
- * thread's logging ostream, etc. get into the service thread. The
- * logging attributes in effect when this function is called are what
- * the service thread will have at its disposal when it starts; therefore,
- * the main thread should set up logging options for the process, and
- * call this function just before calling the StartServiceCtrlDispatcher
- * function.
- */
- void capture_log_msg_attributes (void);
-
- /**
- * Set the ACE_Log_Msg attributes in the current thread to those saved
- * in the most recent call to @c capture_log_msg_attributes(). This function
- * should be called from the service's service thread. Ideally, it is the
- * first method called to be sure that any logging done is incorporated
- * correctly into the process's established logging setup.
- */
- void inherit_log_msg_attributes (void);
-
- // = Methods which control the service's execution.
-
- // These methods to start/pause/resume/stop/check the service all
- // have the following common behavior with respect to @a wait_time
- // and return value. @a wait_time is a pointer to an ACE_Time_Value
- // object. If not supplied (a zero pointer) the function will wait
- // indefinitely for the action to be finalized (service reach
- // running state, completely shut down, etc.) or get "stuck" before
- // returning. If the time is supplied, it specifies how long to
- // wait for the service to reach a steady state, and on return, it
- // is updated to the service's last reported wait hint. So, if you
- // want to control the waiting yourself (for example, you want to
- // react to UI events during the wait) specify a @a wait_time of (0,
- // 0) and use the updated time to know when to check the service's
- // state again. NOTE!!!! The wait_time things don't work yet. The
- // calls always check status once, and do not wait for it to change.
- //
- // The return value from start_svc, stop_svc, pause_svc,
- // continue_svc is 0 if the request to NT to effect the change was
- // made successfully. The service may refuse to change, or not do
- // what you wanted; so if you need to know, supply a <svc_state>
- // pointer to receive the service's reported last state on return
- // and check it to see if it's what you want. The functions only
- // return -1 when the actual request to the service is refused -
- // this would include privilege restrictions and if the service is
- // not configured to receive the request (this is most likely to
- // happen in the case of pause and continue).
-
- /**
- * Start the service (must have been inserted before). wait_time is
- * the time to wait for the service to reach a steady state before
- * returning. If it is 0, the function waits as long as it takes
- * for the service to reach the 'running' state, or gets stuck in
- * some other state, or exits. If @a wait_time is supplied, it is
- * updated on return to hold the service's last reported wait hint.
- * svc_state can be used to receive the state which the service
- * settled in. If the value is 0, the service never ran. argc/argv
- * are passed to the service's ServiceMain function when it starts.
- * Returns 0 for success, -1 for error.
- */
- int start_svc (ACE_Time_Value *wait_time = 0,
- DWORD *svc_state = 0,
- DWORD argc = 0, const ACE_TCHAR **argv = 0);
-
- /**
- * Requests the service to stop. Will wait up to @a wait_time for
- * the service to actually stop. If not specified, the function
- * waits until the service either stops or gets stuck in some other
- * state before it stops. If <svc_state> is specified, it receives
- * the last reported state of the service. Returns 0 if the request
- * was made successfully, -1 if not.
- */
- int stop_svc (ACE_Time_Value *wait_time = 0, DWORD *svc_state = 0);
-
- /// Pause the service.
- int pause_svc (ACE_Time_Value *wait_time = 0, DWORD *svc_state = 0);
-
- /// Continue the service.
- int continue_svc (ACE_Time_Value *wait_time = 0, DWORD *svc_state = 0);
-
- /**
- * Get the current state for the service. If <wait_hint> is not 0,
- * it receives the service's reported wait hint. Note that this
- * function returns 0 on failure (not -1 as is usual in ACE). A
- * zero return would (probably) only be returned if there is either
- * no service with the given name in the SCM database, or the caller
- * does not have sufficient rights to access the service state. The
- * set of valid service state values are all greater than 0.
- */
- DWORD state (ACE_Time_Value *wait_hint = 0);
-
- /// A version of <state> that returns -1 for failure, 0 for success.
- /// The DWORD pointed to by pstate receives the state value.
- int state (DWORD *pstate, ACE_Time_Value *wait_hint = 0);
-
- /**
- * Test access to the object's service in the SCM. The service must
- * already have been inserted in the SCM database. This function
- * has no affect on the service itself. Returns 0 if the specified
- * access is allowed, -1 otherwise (either the access is denied, or
- * there is a problem with the service's definition - check
- * ACE_OS::last_error to get the specific error indication.
- */
- int test_access (DWORD desired_access = SERVICE_ALL_ACCESS);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- int report_status (DWORD new_status, DWORD time_hint = 0);
-
- /**
- * Return the svc_sc_handle_ member. If the member is null, it
- * retrieves the handle from the Service Control Manager and caches
- * it.
- */
- SC_HANDLE svc_sc_handle (void);
-
- /**
- * Waits for the service to reach <desired_state> or get
- * (apparently) stuck before it reaches that state. Will wait at
- * most @a wait_time to get to the desired state. If @a wait_time is
- * 0, then the function keeps waiting until the desired state is
- * reached or the service doesn't update its state any further. The
- * svc_status_ class member is updated upon return.
- */
- void wait_for_service_state (DWORD desired_state,
- ACE_Time_Value *wait_time);
-
- /// Called by <handle_control> when a stop/shutdown was requested.
- virtual void stop_requested (DWORD control_code);
-
- /// Called by <handle_control> when a pause was requested.
- virtual void pause_requested (DWORD control_code);
-
- /// Called by <handle_control> when a continue was requested.
- virtual void continue_requested (DWORD control_code);
-
- /// Called by <handle_control> when a interrogate was requested.
- virtual void interrogate_requested (DWORD control_code);
-
-protected:
- /// Estimate of init time needed
- DWORD start_time_;
- /// Service handle - doesn't need close.
- SERVICE_STATUS_HANDLE svc_handle_;
- SERVICE_STATUS svc_status_;
-
- /// Service's SCM handle
- SC_HANDLE svc_sc_handle_;
- ACE_TCHAR *name_;
- ACE_TCHAR *desc_;
- ACE_TCHAR *host_;
-
- /// ACE_Log_Msg attributes to inherit from the starting thread.
- ACE_OS_Log_Msg_Attributes log_msg_attributes_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// These macros help to get things set up correctly at compile time
-// and to take most of the grudge work out of creating the proper
-// functions and doing the registrations.
-//
-// ACE_NT_SERVICE_DEFINE - defines the 'ServiceMain' function which NT will
-// call in its own thread when the service control
-// dispatcher starts.
-
-#define ACE_NT_SERVICE_DEFINE(SVCNAME, SVCCLASS, SVCDESC) \
- ACE_NT_Service * _ace_nt_svc_obj_##SVCNAME = 0; \
- VOID WINAPI ace_nt_svc_handler_##SVCNAME (DWORD fdwControl) { \
- _ace_nt_svc_obj_##SVCNAME->handle_control(fdwControl); \
- } \
- VOID WINAPI ace_nt_svc_main_##SVCNAME (DWORD dwArgc, \
- ACE_TCHAR **lpszArgv) { \
- bool delete_svc_obj = false; \
- if (_ace_nt_svc_obj_##SVCNAME == 0) { \
- ACE_NEW (_ace_nt_svc_obj_##SVCNAME, SVCCLASS); \
- if (_ace_nt_svc_obj_##SVCNAME == 0) \
- return; \
- delete_svc_obj = true; \
- } \
- else \
- _ace_nt_svc_obj_##SVCNAME->inherit_log_msg_attributes (); \
- _ace_nt_svc_obj_##SVCNAME->init(dwArgc, lpszArgv); \
- _ace_nt_svc_obj_##SVCNAME->svc_handle( \
- ACE_TEXT_RegisterServiceCtrlHandler(SVCDESC, \
- &ace_nt_svc_handler_##SVCNAME)); \
- _ace_nt_svc_obj_##SVCNAME->open(); \
- _ace_nt_svc_obj_##SVCNAME->wait(); \
- _ace_nt_svc_obj_##SVCNAME->fini(); \
- if (delete_svc_obj) { \
- delete _ace_nt_svc_obj_##SVCNAME; \
- _ace_nt_svc_obj_##SVCNAME = 0; \
- } \
- return; \
- }
-
-#define ACE_NT_SERVICE_REFERENCE(SVCNAME) \
-extern ACE_NT_Service * _ace_nt_svc_obj_##SVCNAME; \
-extern VOID WINAPI ace_nt_svc_main_##SVCNAME (DWORD dwArgc, \
- ACE_TCHAR **lpszArgv);
-
-#define ACE_NT_SERVICE_ENTRY(SVCDESC, SVCNAME) \
- { SVCDESC, &ace_nt_svc_main_##SVCNAME }
-
-#define ACE_NT_SERVICE_RUN(SVCNAME, SVCINSTANCE, RET) \
- ACE_TEXT_SERVICE_TABLE_ENTRY _ace_nt_svc_table[2] = \
- { \
- ACE_NT_SERVICE_ENTRY(ACE_TEXT (#SVCNAME), SVCNAME), \
- { 0, 0 } \
- }; \
- _ace_nt_svc_obj_##SVCNAME = SVCINSTANCE; \
- _ace_nt_svc_obj_##SVCNAME->capture_log_msg_attributes (); \
- ACE_OS::last_error (0); \
- int RET = ACE_TEXT_StartServiceCtrlDispatcher(_ace_nt_svc_table);
-
-#if defined (__ACE_INLINE__)
-#include "ace/NT_Service.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_WIN32 && !ACE_LACKS_WIN32_SERVICES */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SERVICE_OBJECT_H */
-
diff --git a/dep/include/ace/NT_Service.inl b/dep/include/ace/NT_Service.inl
deleted file mode 100644
index 66bf6a4c4fe..00000000000
--- a/dep/include/ace/NT_Service.inl
+++ /dev/null
@@ -1,82 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: NT_Service.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_NT_Service::ACE_NT_Service (DWORD start_timeout,
- DWORD service_type,
- DWORD controls_mask) :
- start_time_(start_timeout),
- svc_handle_(0),
- svc_sc_handle_(0),
- name_(0),
- desc_(0),
- host_(0)
-{
- svc_status_.dwServiceType = service_type;
- svc_status_.dwCurrentState = 0;
- svc_status_.dwControlsAccepted = controls_mask;
- svc_status_.dwWin32ExitCode = NO_ERROR;
- svc_status_.dwServiceSpecificExitCode = 0;
- svc_status_.dwCheckPoint = 0;
- svc_status_.dwWaitHint = 0;
-}
-
-ACE_INLINE
-ACE_NT_Service::ACE_NT_Service (const ACE_TCHAR *name,
- const ACE_TCHAR *desc,
- DWORD start_timeout,
- DWORD service_type,
- DWORD controls_mask) :
- start_time_(start_timeout),
- svc_handle_(0),
- svc_sc_handle_(0),
- name_(ACE::strnew(name)),
- desc_(ACE::strnew(desc)),
- host_(0)
-{
- svc_status_.dwServiceType = service_type;
- svc_status_.dwCurrentState = 0;
- svc_status_.dwControlsAccepted = controls_mask;
- svc_status_.dwWin32ExitCode = NO_ERROR;
- svc_status_.dwServiceSpecificExitCode = 0;
- svc_status_.dwCheckPoint = 0;
-}
-
-ACE_INLINE int
-ACE_NT_Service::svc (void)
-{
- return -1;
-}
-
-ACE_INLINE
-const ACE_TCHAR *
-ACE_NT_Service::name (void) const
-{
- return name_;
-}
-
-ACE_INLINE
-const ACE_TCHAR *
-ACE_NT_Service::desc (void) const
-{
- return desc_;
-}
-
-ACE_INLINE
-const ACE_TCHAR *
-ACE_NT_Service::host (void) const
-{
- return host_;
-}
-
-ACE_INLINE void
-ACE_NT_Service::svc_handle(const SERVICE_STATUS_HANDLE new_svc_handle)
-{
- this->svc_handle_ = new_svc_handle;
- return;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Name_Proxy.h b/dep/include/ace/Name_Proxy.h
deleted file mode 100644
index cc8790a7fcb..00000000000
--- a/dep/include/ace/Name_Proxy.h
+++ /dev/null
@@ -1,101 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Name_Proxy.h
- *
- * $Id: Name_Proxy.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Proxy for dealing with remote server process managing NET_LOCAL
- * Name_Bindings.
- *
- *
- * @author Gerhard Lenzer
- * @author Douglas C. Schmidt
- * @author Prashant Jain
- */
-//=============================================================================
-
-#ifndef ACE_NAME_PROXY_H
-#define ACE_NAME_PROXY_H
-#include /**/ "ace/pre.h"
-
-#include "ace/INET_Addr.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SOCK_Connector.h"
-#include "ace/SOCK_Stream.h"
-#include "ace/Service_Config.h"
-#include "ace/Synch_Options.h"
-#include "ace/Name_Request_Reply.h"
-#include "ace/Event_Handler.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Name_Proxy
- *
- * @brief Proxy for dealing with remote server process managing NET_LOCAL
- * NameBindings.
- *
- * Shields applications from details of interacting with the
- * ACE_Name Server.
- */
-class ACE_Export ACE_Name_Proxy : public ACE_Event_Handler
-{
-public:
- /// Default constructor.
- ACE_Name_Proxy (void);
-
- // = Establish a binding with the ACE_Name Server.
- ACE_Name_Proxy (const ACE_INET_Addr &remote_addr, // Address of ACE_Name Server.
- ACE_Synch_Options& options =
- ACE_Synch_Options::defaults);
-
- int open (const ACE_INET_Addr &remote_addr, // Address of ACE_Name Server.
- ACE_Synch_Options& options =
- ACE_Synch_Options::defaults);
-
- /// Perform the request and wait for the reply.
- int request_reply (ACE_Name_Request &request);
-
- /// Perform the request.
- int send_request (ACE_Name_Request &request);
-
- /// Receive the reply.
- int recv_reply (ACE_Name_Request &reply);
-
- /// Obtain underlying handle.
- virtual ACE_HANDLE get_handle (void) const;
-
- /// Close down the connection to the server.
- virtual ~ACE_Name_Proxy (void);
-
- /// Dump the state of the object;
- void dump (void) const;
-
-private:
-
- /// ACE_Connector factory used to establish connections actively.
- ACE_SOCK_Connector connector_;
-
- /// Connection to ACE_Name Server peer.
- ACE_SOCK_Stream peer_;
-
- /// Pointer to ACE_Reactor (used if we are run in "reactive-mode").
- ACE_Reactor *reactor_;
-
-private:
- // Prevent copying
- ACE_Name_Proxy (const ACE_Name_Proxy &);
- ACE_Name_Proxy &operator= (const ACE_Name_Proxy &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_NAME_PROXY_H */
-
diff --git a/dep/include/ace/Name_Request_Reply.h b/dep/include/ace/Name_Request_Reply.h
deleted file mode 100644
index 23244985216..00000000000
--- a/dep/include/ace/Name_Request_Reply.h
+++ /dev/null
@@ -1,265 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Name_Request_Reply.h
- *
- * $Id: Name_Request_Reply.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Define the format used to exchange messages between the
- * ACE_Name Server and its clients.
- *
- * @author Gerhard Lenzer
- * @author Douglas C. Schmidt
- * @author Prashant Jain
- */
-//=============================================================================
-
-#ifndef ACE_NAME_REQUEST_REPLY_H
-#define ACE_NAME_REQUEST_REPLY_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Basic_Types.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-/**
- * @class ACE_Name_Request
- *
- * @brief Message format for delivering requests to the ACE_Name Server.
- *
- * This class is implemented to minimize data copying. In
- * particular, all marshaling is done in situ...
- */
-class ACE_Export ACE_Name_Request
-{
-public:
- /// Request message types.
- enum Constants
- {
- BIND = 01,
- REBIND = 02,
- RESOLVE = 03,
- UNBIND = 04,
- LIST_NAMES = 05,
- LIST_VALUES = 015,
- LIST_TYPES = 025,
- LIST_NAME_ENTRIES = 06,
- LIST_VALUE_ENTRIES = 016,
- LIST_TYPE_ENTRIES = 026,
- MAX_ENUM = 11,
- MAX_LIST = 3,
-
- // Mask for bitwise operation used for table lookup
- /// Mask for lookup of operation
- OP_TABLE_MASK = 07,
- /// Mask for lookup of list_operation
- LIST_OP_MASK = 030,
-
- /// Class-specific constant values.
- MAX_NAME_LENGTH = MAXPATHLEN + 1
- };
-
- /// Default constructor.
- ACE_Name_Request (void);
-
- /// Create a ACE_Name_Request message.
- ACE_Name_Request (ACE_INT32 msg_type, // Type of request.
- const ACE_WCHAR_T name[], //
- const ACE_UINT32 name_length,
- const ACE_WCHAR_T value[],
- const ACE_UINT32 value_length,
- const char type[],
- const ACE_UINT32 type_length,
- ACE_Time_Value *timeout = 0); // Max time willing to wait for request.
-
- /// Initialize length_ in order to ensure correct byte ordering
- /// before a request is sent.
- void init (void);
-
- // = Set/get the length of the encoded/decoded message.
- ACE_UINT32 length (void) const;
- void length (ACE_UINT32);
-
- // = Set/get the type of the message.
- ACE_INT32 msg_type (void) const;
- void msg_type (ACE_INT32);
-
- // = Set/get the blocking semantics.
- ACE_UINT32 block_forever (void) const;
- void block_forever (ACE_UINT32);
-
- // = Set/get the timeout.
- ACE_Time_Value timeout (void) const;
- void timeout (const ACE_Time_Value timeout);
-
- // = Set/get the name
- const ACE_WCHAR_T *name (void) const;
- void name (const ACE_WCHAR_T *);
-
- // = Set/get the value
- const ACE_WCHAR_T *value (void) const;
- void value (const ACE_WCHAR_T *);
-
- // = Set/get the type
- const char *type (void) const;
- void type (const char *);
-
- // = Set/get the len of name
- ACE_UINT32 name_len (void) const;
- void name_len (ACE_UINT32);
-
- // = Set/get the len of value
- ACE_UINT32 value_len (void) const;
- void value_len (ACE_UINT32);
-
- // = Set/get the len of type
- ACE_UINT32 type_len (void) const;
- void type_len (ACE_UINT32);
-
- /// Encode the message before transmission.
- int encode (void *&);
-
- /// Decode message after reception.
- int decode (void);
-
- /// Print out the values of the message for debugging purposes.
- void dump (void) const;
-
-private:
- // = The 5 fields in the <Transfer> struct are transmitted to the server.
- // The remaining 2 fields are not tranferred -- they are used only on
- // the server-side to simplify lookups.
-
- struct Transfer
- {
- /// Length of entire request.
- ACE_UINT32 length_;
-
- /// Type of the request (i.e., <BIND>, <REBIND>, <RESOLVE>, and <UNBIND>).
- ACE_UINT32 msg_type_;
-
- /// Indicates if we should block forever. If 0, then <secTimeout_>
- /// and <usecTimeout_> indicates how long we should wait.
- ACE_UINT32 block_forever_;
-
- /// Max seconds willing to wait for name if not blocking forever.
- ACE_UINT64 sec_timeout_;
-
- /// Max micro seconds to wait for name if not blocking forever.
- ACE_UINT32 usec_timeout_;
-
- /// Len of name in bytes
- ACE_UINT32 name_len_;
-
- /// Len of value in bytes
- ACE_UINT32 value_len_;
-
- /// Len of type in bytes
- ACE_UINT32 type_len_;
-
- /// The data portion contains the <name_>
- /// followed by the <value_>
- /// followed by the <type_>.
- ACE_WCHAR_T data_[MAX_NAME_LENGTH + MAXPATHLEN + MAXPATHLEN + 2];
- };
-
- /// Transfer buffer.
- Transfer transfer_;
-
- /// Pointer to the beginning of the name in this->data_.
- ACE_WCHAR_T *name_;
-
- /// Pointer to the beginning of the value in this->data_;
- ACE_WCHAR_T *value_;
-
- /// Pointer to the beginning of the type in this->data_;
- char *type_;
-};
-
-/**
- * @class ACE_Name_Reply
- *
- * @brief Message format for delivering replies from the ACE_Name Server.
- *
- * This class is implemented to minimize data copying. In
- * particular, all marshaling is done in situ...
- */
-class ACE_Export ACE_Name_Reply
-{
-public:
- enum Constants
- {
- /// Class-specific constant values.
- MAX_NAME_LENGTH = MAXPATHLEN + 1
- };
-
- /// Default constructor.
- ACE_Name_Reply (void);
-
- /// Create a <ACE_Name_Reply> message.
- ACE_Name_Reply (ACE_UINT32 type, ACE_UINT32 err); // Type of reply.
-
- /// Initialize length_ in order to ensure correct byte ordering
- /// before a reply is sent.
- void init (void);
-
- // = Set/get the length of the encoded/decoded message.
- ACE_UINT32 length (void) const;
- void length (ACE_UINT32);
-
- // = Set/get the type of the message.
- ACE_INT32 msg_type (void) const;
- void msg_type (ACE_INT32);
-
- // = Set/get the status of the reply (0 == success, -1 == failure).
- ACE_INT32 status (void) const;
- void status (ACE_INT32);
-
- // = Set/get the errno of a failed reply.
- ACE_UINT32 errnum (void) const;
- void errnum (ACE_UINT32);
-
- /// Encode the message before transfer.
- int encode (void *&);
-
- /// Decode a message after reception.
- int decode (void);
-
- /// Print out the values of the message for debugging purposes.
- void dump (void) const;
-
-private:
- // = The 3 fields in the <Transfer> struct are transmitted to the server.
-
- struct Transfer
- {
- /// Length of entire reply.
- ACE_UINT32 length_;
-
- /// Type of the reply, i.e., success (0) or failure (-1).
- ACE_INT32 type_;
-
- /// Indicates why error occurred if <this->type_> == failure (-1).
- /// Typical reasons include: @c ETIME (if the client timed out after
- /// waiting for the name).
- ACE_UINT32 errno_;
- };
-
- /// Transfer buffer.
- Transfer transfer_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_NAME_REQUEST_REPLY_H */
-
diff --git a/dep/include/ace/Name_Space.h b/dep/include/ace/Name_Space.h
deleted file mode 100644
index 7106587f459..00000000000
--- a/dep/include/ace/Name_Space.h
+++ /dev/null
@@ -1,165 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Name_Space.h
- *
- * $Id: Name_Space.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Prashant Jain <pjain@cse.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_NAME_SPACE_H
-#define ACE_NAME_SPACE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SString.h"
-#include "ace/Unbounded_Set.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-typedef ACE_Unbounded_Set<ACE_NS_WString> ACE_WSTRING_SET;
-
-/**
- * @class ACE_Name_Binding
- *
- * @brief Maintains a mapping from name to value and type.
- */
-class ACE_Export ACE_Name_Binding
-{
-public:
- // = Initialization and termination.
- /// Main constructor that initializes all the fields.
- ACE_Name_Binding (const ACE_NS_WString &n,
- const ACE_NS_WString &v,
- const char *t);
-
- /// Default constructor.
- ACE_Name_Binding (void);
-
- /// Copy constructor.
- ACE_Name_Binding (const ACE_Name_Binding &);
-
- /// Assignment operator.
- void operator= (const ACE_Name_Binding &);
-
- /// Destructor.
- ~ACE_Name_Binding (void);
-
- /// Test for equality.
- bool operator == (const ACE_Name_Binding &s) const;
-
- /// Name of the binding.
- ACE_NS_WString name_;
-
- /// Value of the binding.
- ACE_NS_WString value_;
-
- /// Type of the binding.
- char *type_;
-};
-
-typedef ACE_Unbounded_Set<ACE_Name_Binding> ACE_BINDING_SET;
-typedef ACE_Unbounded_Set_Iterator<ACE_Name_Binding> ACE_BINDING_ITERATOR;
-
-typedef ACE_Unbounded_Set<ACE_NS_WString> ACE_PWSTRING_SET;
-typedef ACE_Unbounded_Set_Iterator<ACE_NS_WString> ACE_PWSTRING_ITERATOR;
-
-/**
- * @class ACE_Name_Space
- *
- * @brief Abstract base class that provides an abstract interface to
- * the database without exposing any implemenation details.
- *
- * Manages a Naming Service Name Space. Provides the basic
- * methods -- bind, unbind, rebind, find, and listnames.
- */
-class ACE_Export ACE_Name_Space
-{
-public:
-
- /// virtual destructor to ensure destructors of subclasses get
- /// called.
- virtual ~ACE_Name_Space (void);
-
- /// Bind a new name to a naming context (Wide character strings).
- virtual int bind (const ACE_NS_WString &name_in,
- const ACE_NS_WString &value_in,
- const char *type_in = "") = 0;
-
- /**
- * Overwrite the value or type of an existing name in a
- * ACE_Name_Space or bind a new name to the context, if it didn't
- * exist yet. (Wide charcter strings interface).
- */
- virtual int rebind (const ACE_NS_WString &name_in,
- const ACE_NS_WString &value_in,
- const char *type_in = "") = 0;
-
- /// Delete a name from a ACE_Name_Space (Wide charcter strings
- /// Interface).
- virtual int unbind (const ACE_NS_WString &name_in) = 0;
-
- /// Get value and type of a given name binding (Wide chars). The
- /// caller is responsible for deleting both <value_out> and <type_out>!
- virtual int resolve (const ACE_NS_WString &name_in,
- ACE_NS_WString &value_out,
- char *&type_out) = 0;
-
- /// Get a set of names matching a specified pattern (wchars). Matching
- /// means the names must begin with the pattern string.
- virtual int list_names (ACE_WSTRING_SET &set_out,
- const ACE_NS_WString &pattern_in) = 0;
-
- /// Get a set of values matching a specified pattern (wchars). Matching
- /// means the values must begin with the pattern string.
- virtual int list_values (ACE_WSTRING_SET &set_out,
- const ACE_NS_WString &pattern_in) = 0;
-
- /// Get a set of types matching a specified pattern (wchars). Matching
- /// means the types must begin with the pattern string.
- virtual int list_types (ACE_WSTRING_SET &set_out,
- const ACE_NS_WString &pattern_in) = 0;
-
- /**
- * Get a set of names matching a specified pattern (wchars). Matching
- * means the names must begin with the pattern string. Returns the
- * complete binding associated each pattern match.
- */
- virtual int list_name_entries (ACE_BINDING_SET &set,
- const ACE_NS_WString &pattern) = 0;
-
- /**
- * Get a set of values matching a specified pattern (wchars). Matching
- * means the values must begin with the pattern string. Returns the
- * complete binding associated each pattern match.
- */
- virtual int list_value_entries (ACE_BINDING_SET &set,
- const ACE_NS_WString &pattern) = 0;
-
- /**
- * Get a set of types matching a specified pattern (wchars). Matching
- * means the types must begin with the pattern string. Returns the
- * complete binding associated each pattern match.
- */
- virtual int list_type_entries (ACE_BINDING_SET &set,
- const ACE_NS_WString &pattern) = 0;
-
- /// Dump the state of the object
- virtual void dump (void) const = 0;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_NAME_SPACE_H */
-
diff --git a/dep/include/ace/Naming_Context.h b/dep/include/ace/Naming_Context.h
deleted file mode 100644
index 2ac80a74526..00000000000
--- a/dep/include/ace/Naming_Context.h
+++ /dev/null
@@ -1,388 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Naming_Context.h
- *
- * $Id: Naming_Context.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Gerhard Lenzer
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Prashant Jain <pjain@uci.edu>
- */
-//==========================================================================
-
-#ifndef ACE_NAMING_CONTEXT_H
-#define ACE_NAMING_CONTEXT_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Service_Object.h"
-#include "ace/Name_Space.h"
-#include "ace/os_include/os_netdb.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decl
-class ACE_Name_Options;
-class ACE_Static_Svc_Descriptor;
-
-/**
- * @class ACE_Naming_Context
- *
- * @brief Maintaining accesses Name Server Databases. Allows to add
- * NameBindings, change them, remove them and resolve
- * NameBindings
- *
- * Manages a Naming Service . That represents a persistent
- * string to string mapping for different scopes. The scope of a
- * ACE_Naming_Context may be either local for the calling
- * process (Note : A process is hereby not identified by it's
- * pid, but by it's argv[0]. So different processes (in UNIX
- * syntax) may access the same NameBindings), global for all
- * processes running on one host or global for all processes on
- * the net (that know the address of the net name server
- * socket). Strings may be plain character strings or Wide
- * character strings. A Name Binding consists of a name string
- * (that's the key), a value string and an optional type string
- * (no wide chars).
- */
-class ACE_Export ACE_Naming_Context : public ACE_Service_Object
-{
-public:
- enum Context_Scope_Type
- {
- /// Name lookup is local to the process.
- PROC_LOCAL,
- /// Name lookup is local to the node (host).
- NODE_LOCAL,
- /// Name lookup is local to the (sub)network.
- NET_LOCAL
- };
-
- // = Initialization and termination methods.
- /// "Do-nothing" constructor.
- ACE_Naming_Context (void);
-
- /**
- * Specifies the scope of this namespace, opens and memory-maps the
- * associated file (if accessible) or contacts the dedicated name
- * server process for NET_LOCAL namespace. Note that @a light
- * specifies whether or not we want to use
- * ACE_Lite_MMap_Memory_Pool. By default we use ACE_MMap_Memory_Pool.
- */
- ACE_Naming_Context (Context_Scope_Type scope_in, int light = 0);
-
- /**
- * Specifies the scope of this namespace, opens and memory-maps the
- * associated file (if accessible) or contacts the dedicated name
- * server process for NET_LOCAL namespace. Note that @a light
- * specifies whether or not we want to use
- * ACE_Lite_MMap_Memory_Pool. By default we use ACE_MMap_Memory_Pool.
- */
- int open (Context_Scope_Type scope_in = ACE_Naming_Context::PROC_LOCAL,
- int light = 0);
-
- /// Deletes the instance of Name Space. Must be called before
- /// switching name spaces.
- int close (void);
-
- /// Release all resources. Gets called by destructor and fini.
- int close_down (void);
-
- /// destructor, do some cleanup :TBD: last dtor should "compress"
- /// file
- ~ACE_Naming_Context (void);
-
- // = Dynamic initialization hooks.
- /// Initialize name options and naming context when dynamically
- /// linked.
- virtual int init (int argc, ACE_TCHAR *argv[]);
-
- /// Close down the test when dynamically unlinked.
- virtual int fini (void);
-
- /// Returns information about this context.
- virtual int info (ACE_TCHAR **strp, size_t length) const;
-
- /// Returns the ACE_Name_Options associated with the Naming_Context
- ACE_Name_Options *name_options (void);
-
- /// Bind a new name to a naming context (Wide character strings).
- int bind (const ACE_NS_WString &name_in,
- const ACE_NS_WString &value_in,
- const char *type_in = "");
-
- /// Bind a new name to a naming context ( character strings).
- int bind (const char *name_in,
- const char *value_in,
- const char *type_in = "");
-
- /**
- * Overwrite the value or type of an existing name in a
- * ACE_Naming_Context or bind a new name to the context, if it
- * didn't exist yet. (Wide charcter strings interface).
- */
- int rebind (const ACE_NS_WString &name_in,
- const ACE_NS_WString &value_in,
- const char *type_in = "");
-
- /**
- * Overwrite the value or type of an existing name in a
- * ACE_Naming_Context or bind a new name to the context, if it
- * didn't exist yet. ( charcter strings interface)
- */
- int rebind (const char *name_in,
- const char *value_in,
- const char *type_in = "");
-
- /// Delete a name from a ACE_Naming_Context (Wide charcter strings
- /// Interface).
- int unbind (const ACE_NS_WString &name_in);
-
- /// Delete a name from a ACE_Naming_Context (character strings
- /// interface).
- int unbind (const char *name_in);
-
- /// Get value and type of a given name binding (Wide chars). The
- /// caller is responsible for deleting both @a value_out> and @a type_out!
- int resolve (const ACE_NS_WString &name_in,
- ACE_NS_WString &value_out,
- char *&type_out);
-
- /**
- * Get value and type of a given name binding (Wide chars output).
- * The caller is responsible for deleting both @a value_out and
- * @a type_out!
- */
- int resolve (const char *name_in,
- ACE_NS_WString &value_out,
- char *&type_out);
-
- /// Get value and type of a given name binding ( chars ). The caller
- /// is responsible for deleting both @a value_out and @a type_out!
- int resolve (const char *name_in,
- char *&value_out,
- char *&type_out);
-
- /// Get a set of names matching a specified pattern (wchars). Matching
- /// means the names must begin with the pattern string.
- int list_names (ACE_PWSTRING_SET &set_out,
- const ACE_NS_WString &pattern_in);
-
- /// Get a set of names matching a specified pattern (chars). Matching
- /// means the names must begin with the pattern string.
- int list_names (ACE_PWSTRING_SET &set_out,
- const char *pattern_in);
-
- /// Get a set of values matching a specified pattern (wchars). Matching
- /// means the values must begin with the pattern string.
- int list_values (ACE_PWSTRING_SET &set_out,
- const ACE_NS_WString &pattern_in);
-
- /// Get a set of values matching a specified pattern (chars). Matching
- /// means the values must begin with the pattern string.
- int list_values (ACE_PWSTRING_SET &set_out,
- const char *pattern_in);
-
- /// Get a set of types matching a specified pattern (wchars). Matching
- /// means the types must begin with the pattern string.
- int list_types (ACE_PWSTRING_SET &set_out,
- const ACE_NS_WString &pattern_in);
-
- /// Get a set of types matching a specified pattern (chars). Matching
- /// means the types must begin with the pattern string.
- int list_types (ACE_PWSTRING_SET &set_out,
- const char *pattern_in);
-
- /**
- * Get a set of names matching a specified pattern (wchars). Matching
- * means the names must begin with the pattern string. Returns the
- * complete binding associated each pattern match.
- */
- virtual int list_name_entries (ACE_BINDING_SET &set_out,
- const ACE_NS_WString &pattern_in);
-
- /**
- * Get a set of names matching a specified pattern (wchars). Matching
- * means the names must begin with the pattern string. Returns the
- * complete binding associated each pattern match.
- */
- virtual int list_name_entries (ACE_BINDING_SET &set_out,
- const char *pattern_in);
-
- /**
- * Get a set of values matching a specified pattern (wchars). Matching
- * means the values must begin with the pattern string. Returns the
- * complete binding associated each pattern match.
- */
- virtual int list_value_entries (ACE_BINDING_SET &set_out,
- const ACE_NS_WString &pattern_in);
-
- /**
- * Get a set of values matching a specified pattern (wchars). Matching
- * means the values must begin with the pattern string. Returns the
- * complete binding associated each pattern match.
- */
- virtual int list_value_entries (ACE_BINDING_SET &set_out,
- const char *pattern_in);
-
- /**
- * Get a set of types matching a specified pattern (wchars). Matching
- * means the types must begin with the pattern string. Returns the
- * complete binding associated each pattern match.
- */
- virtual int list_type_entries (ACE_BINDING_SET &set_out,
- const ACE_NS_WString &pattern_in);
-
- /**
- * Get a set of types matching a specified pattern (wchars). Matching
- * means the types must begin with the pattern string. Returns the
- * complete binding associated each pattern match.
- */
- virtual int list_type_entries (ACE_BINDING_SET &set_out,
- const char *pattern_in);
-
- /// Dump the state of the object.
- void dump (void);
-
-private:
- /// Keep track of the options such as database name etc per Naming Context
- ACE_Name_Options *name_options_;
-
- /// Name space (can be either local or remote) dynamically bound.
- ACE_Name_Space *name_space_;
-
- /// Holds the local hostname.
- ACE_TCHAR hostname_[MAXHOSTNAMELEN + 1];
-
- /// Holds name of net name server.
- const ACE_TCHAR *netnameserver_host_;
-
- /// Holds port number of the net name server.
- int netnameserver_port_;
-
- /// 1 if we're on the same local machine as the name server, else 0.
- int local (void);
-
-};
-
-/**
- * @class ACE_Name_Options
- *
- * @brief Manages the options for the ACE Name_Server.
- */
-class ACE_Export ACE_Name_Options
-{
-public:
- // = Initialization and termination methods.
- ACE_Name_Options (void);
- ~ACE_Name_Options (void);
-
- /// Parse arguments.
- void parse_args (int argc,
- ACE_TCHAR *argv[]);
-
- /// Set the port number
- void nameserver_port (int port);
-
- /// Get the port number
- int nameserver_port (void);
-
- /// Get the context
- ACE_Naming_Context::Context_Scope_Type context (void);
-
- /// Set the context
- void context (ACE_Naming_Context::Context_Scope_Type);
-
- /// Set the host name
- void nameserver_host (const ACE_TCHAR *host);
-
- /// Get the host name
- const ACE_TCHAR *nameserver_host (void);
-
- /// Set name space directory
- void namespace_dir (const ACE_TCHAR *dir);
-
- /// Get name space directory
- const ACE_TCHAR *namespace_dir (void);
-
- /// Set process name
- void process_name (const ACE_TCHAR *dir);
-
- /// Get process name
- const ACE_TCHAR *process_name (void);
-
- /// Set database name
- void database (const ACE_TCHAR *);
-
- /// Get database name
- const ACE_TCHAR *database (void);
-
- /// Set base address of the underlying allocator
- void base_address (char *address);
-
- /// Get base address of the underlying allocator
- char *base_address (void);
-
- /// Get use of registry in naming
- bool use_registry (void) const;
-
- /// Set use of registry in naming
- void use_registry (bool x);
-
- /// Return debug status
- int debug (void);
-
- /// Return verbose status
- int verbose (void);
-
-private:
- /// Extra debugging info
- int debugging_;
-
- /// Extra verbose messages
- int verbosity_;
-
- /// Use Win32 Registry
- bool use_registry_;
-
- /// Port to connect to nameserver process.
- int nameserver_port_;
-
- /// Hostname of nameserver.
- const ACE_TCHAR *nameserver_host_;
-
- /// Directory to hold name_bindings.
- ACE_TCHAR *namespace_dir_;
-
- /// Name of this process.
- const ACE_TCHAR *process_name_;
-
- /// Name of the database that stores the name/value/type bindings.
- const ACE_TCHAR *database_;
-
- /// Base address of the underlying allocator
- char *base_address_;
-
- /// The context in which the naming database will be created.
- ACE_Naming_Context::Context_Scope_Type context_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Naming_Context.inl"
-#endif /* __ACE_INLINE__ */
-
-ACE_FACTORY_DECLARE (ACE, ACE_Naming_Context)
-ACE_STATIC_SVC_DECLARE_EXPORT (ACE, ACE_Naming_Context)
-
-#include /**/ "ace/post.h"
-#endif /* ACE_NAMING_CONTEXT_H */
-
diff --git a/dep/include/ace/Naming_Context.inl b/dep/include/ace/Naming_Context.inl
deleted file mode 100644
index 917ddce37f3..00000000000
--- a/dep/include/ace/Naming_Context.inl
+++ /dev/null
@@ -1,44 +0,0 @@
-// $Id: Naming_Context.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_INLINE bool
-ACE_Name_Options::use_registry (void) const
-{
- ACE_TRACE ("ACE_Name_Options::use_registry");
- return this->use_registry_;
-}
-
-ACE_INLINE void
-ACE_Name_Options::use_registry (bool x)
-{
- ACE_TRACE ("ACE_Name_Options::use_registry");
- this->use_registry_ = x;
-}
-
-ACE_INLINE int
-ACE_Name_Options::verbose (void)
-{
- ACE_TRACE ("ACE_Name_Options::verbose");
- return this->verbosity_;
-}
-
-ACE_INLINE const ACE_TCHAR *
-ACE_Name_Options::process_name (void)
-{
- ACE_TRACE ("ACE_Name_Options::process_name");
- return this->process_name_;
-}
-
-ACE_INLINE const ACE_TCHAR *
-ACE_Name_Options::namespace_dir (void)
-{
- ACE_TRACE ("ACE_Name_Options::namespace_dir");
- return this->namespace_dir_;
-}
-
-ACE_INLINE int
-ACE_Name_Options::debug (void)
-{
- ACE_TRACE ("ACE_Name_Options::debug");
- return this->debugging_;
-}
-
diff --git a/dep/include/ace/Netlink_Addr.h b/dep/include/ace/Netlink_Addr.h
deleted file mode 100644
index 8fd5c6b9590..00000000000
--- a/dep/include/ace/Netlink_Addr.h
+++ /dev/null
@@ -1,119 +0,0 @@
-// $Id: Netlink_Addr.h 80826 2008-03-04 14:51:23Z wotte $
-
-//=============================================================================
-/**
- * @file Netlink_Addr.h
- *
- * $Id: Netlink_Addr.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Robert Iakobashvilli <coroberti@gmail.com>
- * @author Raz Ben Yehuda <raziebe@gmail.com>
- */
-//=============================================================================
-
-#ifndef ACE_NETLINK_ADDR_H
-#define ACE_NETLINK_ADDR_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
- #pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#ifdef ACE_HAS_NETLINK
-
-#include "ace/OS_NS_string.h"
-#include "ace/Global_Macros.h"
-#include "ace/OS_NS_unistd.h"
-#include "ace/OS_NS_unistd.h"
-#include "ace/Addr.h"
-#include "ace/os_include/sys/os_socket.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Netlink_Addr
- *
- * @brief Defines a C++ wrapper facade for the netlink sockets
- */
-class ACE_Export ACE_Netlink_Addr : public ACE_Addr {
-public:
- // = Initialization methods.
-
- /// Default constructor.
- ACE_Netlink_Addr (void);
-
- /// Copy constructor.
- ACE_Netlink_Addr (const ACE_Netlink_Addr &);
-
- /// Creates an ACE_INET_Addr from a sockaddr_in structure.
- ACE_Netlink_Addr (const sockaddr_nl *, int len);
-
- /// Dtor
- ~ACE_Netlink_Addr (void);
-
- /**
- * @param naddr sets the nl_ member @see nl_
- */
- int set (const ACE_Netlink_Addr &naddr);
- /**
- * sets the pid and groups fields of member nl_ @see nl_
- */
- void set (int pid, int gid);
- /**
- * set nl_ to nl_ @see nl_
- */
- int set (const sockaddr_nl *, int len);
- /**
- * @return pid
- */
- int get_pid (void) const;
- /**
- * @return the group id @see nl_
- */
- int get_gid (void) const;
- /**
- * @return addr pointer @see nl_
- */
- virtual void *get_addr (void) const;
- /**
- * @return nl_ member @see nl_ size
- */
- int get_addr_size (void) const;
- /**
- * Set a pointer to the address
- */
- virtual void set_addr (void *, int len= sizeof(sockaddr_nl) );
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /**
- * @return family type AF_NETLINK
- *
- * */
- int determine_type (void) const;
- /**
- * set nl_ @see nl_ to zero and sets address family to default value
- */
- void reset (void);
-
- sockaddr_nl nl_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Netlink_Addr.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_NETLINK */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_NETLINK_ADDR_H */
-
-
diff --git a/dep/include/ace/Netlink_Addr.inl b/dep/include/ace/Netlink_Addr.inl
deleted file mode 100644
index 2cb43b73d6c..00000000000
--- a/dep/include/ace/Netlink_Addr.inl
+++ /dev/null
@@ -1,50 +0,0 @@
-// -*- C++ -*-
-// $Id: Netlink_Addr.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#ifdef ACE_HAS_NETLINK
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ACE_Netlink_Addr::~ACE_Netlink_Addr (void){}
-
-ACE_INLINE ACE_Netlink_Addr::ACE_Netlink_Addr (void):
-ACE_Addr (this->determine_type(), sizeof (sockaddr_nl))
-{
- this->nl_.nl_family = AF_NETLINK;
-}
-
-ACE_INLINE void ACE_Netlink_Addr::set(int pid, int gid)
-{
- this->nl_.nl_pid = pid;
- this->nl_.nl_groups = gid;
-}
-
-ACE_INLINE void ACE_Netlink_Addr::reset (void)
-{
- ACE_OS::memset (&this->nl_, 0, sizeof (this->nl_));
- this->nl_.nl_family = AF_NETLINK;
-}
-
-ACE_INLINE int ACE_Netlink_Addr::determine_type (void) const
-{
- return AF_NETLINK;
-}
-
-ACE_INLINE void *ACE_Netlink_Addr::get_addr (void) const
-{
- return (void*)&(this->nl_);
-}
-
-ACE_INLINE int ACE_Netlink_Addr::get_addr_size (void) const
-{
- return sizeof(this->nl_);
-}
-
-ACE_INLINE void ACE_Netlink_Addr::set_addr (void *addr, int len){
- ACE_OS::memcpy (&this->nl_,addr,len);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_NETLINK */
-
diff --git a/dep/include/ace/Node.h b/dep/include/ace/Node.h
deleted file mode 100644
index c2eb7a7bb3d..00000000000
--- a/dep/include/ace/Node.h
+++ /dev/null
@@ -1,85 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Node.h
- *
- * $Id: Node.h 81624 2008-05-06 17:14:57Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_NODE_H
-#define ACE_NODE_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declarations.
-template <class T, class C> class ACE_Unbounded_Set_Ex;
-template <class T, class C> class ACE_Unbounded_Set_Ex_Iterator;
-template <class T, class C> class ACE_Unbounded_Set_Ex_Const_Iterator;
-template <class T> class ACE_Unbounded_Queue;
-template <class T> class ACE_Unbounded_Queue_Iterator;
-template <class T> class ACE_Unbounded_Queue_Const_Iterator;
-template <class T> class ACE_Unbounded_Stack;
-template <class T> class ACE_Unbounded_Stack_Iterator;
-
-/**
- * @class ACE_Node
- *
- * @brief Implementation element in a Queue, Set, and Stack.
- */
-template<class T, class C = void>
-class ACE_Node
-{
-public:
- friend class ACE_Unbounded_Queue<T>;
- friend class ACE_Unbounded_Queue_Iterator<T>;
- friend class ACE_Unbounded_Queue_Const_Iterator<T>;
- friend class ACE_Unbounded_Set_Ex<T, C>;
- friend class ACE_Unbounded_Set_Ex_Iterator<T, C>;
- friend class ACE_Unbounded_Set_Ex_Const_Iterator<T, C>;
- friend class ACE_Unbounded_Stack<T>;
- friend class ACE_Unbounded_Stack_Iterator<T>;
-
- /// This isn't necessary, but it keeps some compilers happy.
- ~ACE_Node (void);
-
-private:
- // = Initialization methods
- ACE_Node (const T &i, ACE_Node<T, C> *n);
- ACE_Node (ACE_Node<T, C> *n = 0, int = 0);
- ACE_Node (const ACE_Node<T, C> &n);
-private:
- /// Not possible
- void operator= (const ACE_Node<T, C> &);
-
-private:
- /// Pointer to next element in the list of ACE_Nodes.
- ACE_Node<T, C> *next_;
-
- /// Current value of the item in this node.
- T item_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Node.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Node.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_NODE_H */
-
diff --git a/dep/include/ace/Notification_Queue.h b/dep/include/ace/Notification_Queue.h
deleted file mode 100644
index b2ed768fd7a..00000000000
--- a/dep/include/ace/Notification_Queue.h
+++ /dev/null
@@ -1,157 +0,0 @@
-#ifndef ACE_NOTIFICATION_QUEUE_H
-#define ACE_NOTIFICATION_QUEUE_H
-
-#include /**/ "ace/pre.h"
-
-/**
- * @file Notification_Queue.h
- *
- * $Id: Notification_Queue.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Carlos O'Ryan <coryan@atdesk.com>
- */
-#include "ace/Copy_Disabled.h"
-#include "ace/Event_Handler.h"
-#include "ace/Intrusive_List.h"
-#include "ace/Intrusive_List_Node.h"
-#include "ace/Unbounded_Queue.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Notification_Queue_Node
- *
- * @brief Helper class
- */
-class ACE_Export ACE_Notification_Queue_Node
- : public ACE_Intrusive_List_Node<ACE_Notification_Queue_Node>
-{
-public:
- /**
- * @brief Constructor
- */
- ACE_Notification_Queue_Node();
-
- /**
- * @brief Modifier change the contained buffer
- */
- void set(ACE_Notification_Buffer const & rhs);
-
- /**
- * @brief Accessor, fetch the contained buffer
- */
- ACE_Notification_Buffer const & get() const;
-
- /**
- * @brief Checks if the event handler matches the purge condition
- */
- bool matches_for_purging(ACE_Event_Handler * eh) const;
-
- /**
- * @brief Return true if clearing the mask would leave no
- * notifications to deliver.
- */
- bool mask_disables_all_notifications(ACE_Reactor_Mask mask);
-
- /**
- * @brief Clear the notifications specified by @c mask
- */
- void clear_mask(ACE_Reactor_Mask mask);
-
-private:
- ACE_Notification_Buffer contents_;
-};
-
-/**
- * @class ACE_Notification_Queue
- *
- * @brief Implements a user-space queue to send Reactor notifications.
- *
- * The ACE_Reactor uses a pipe to send wake up the thread running the
- * event loop from other threads. This pipe can be limited in size
- * under some operating systems. For some applications, this limit
- * presents a problem. A user-space notification queue is used to
- * overcome those limitations. The queue tries to use as few
- * resources on the pipe as possible, while keeping all the data in
- * user space.
- *
- * This code was refactored from Select_Reactor_Base.
- */
-class ACE_Export ACE_Notification_Queue : private ACE_Copy_Disabled
-{
-public:
- ACE_Notification_Queue();
- ~ACE_Notification_Queue();
-
- /**
- * @brief Pre-allocate resources in the queue
- */
- int open();
-
- /**
- * @brief Release all resources in the queue
- */
- void reset();
-
- /**
- * @brief Remove all elements in the queue matching @c eh and @c mask
- *
- * I suggest reading the documentation in ACE_Reactor to find a more
- * detailed description. This is just a helper function.
- */
- int purge_pending_notifications(ACE_Event_Handler * eh,
- ACE_Reactor_Mask mask);
-
- /**
- * @brief Add a new notification to the queue
- *
- * @return -1 on failure, 1 if a new message should be sent through
- * the pipe and 0 otherwise.
- */
- int push_new_notification(ACE_Notification_Buffer const & buffer);
-
- /**
- * @brief Extract the next notification from the queue
- *
- * @return -1 on failure, 1 if a message was popped, 0 otherwise
- */
- int pop_next_notification(
- ACE_Notification_Buffer & current,
- bool & more_messages_queued,
- ACE_Notification_Buffer & next);
-
-private:
- /**
- * @brief Allocate more memory for the queue
- */
- int allocate_more_buffers();
-
-private:
- /// Keeps track of allocated arrays of type
- /// ACE_Notification_Buffer. The idea is to amortize allocation
- /// costs by allocating multiple ACE_Notification_Buffer objects at
- /// a time.
- ACE_Unbounded_Queue <ACE_Notification_Queue_Node*> alloc_queue_;
-
- typedef ACE_Intrusive_List<ACE_Notification_Queue_Node> Buffer_List;
-
- /// Keeps track of all pending notifications.
- Buffer_List notify_queue_;
-
- /// Keeps track of all free buffers.
- Buffer_List free_queue_;
-
- /// Synchronization for handling of queues.
- ACE_SYNCH_MUTEX notify_queue_lock_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Notification_Queue.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_NOTIFICATION_QUEUE_H */
-
diff --git a/dep/include/ace/Notification_Queue.inl b/dep/include/ace/Notification_Queue.inl
deleted file mode 100644
index d3579d272cf..00000000000
--- a/dep/include/ace/Notification_Queue.inl
+++ /dev/null
@@ -1,50 +0,0 @@
-// $Id: Notification_Queue.inl 81315 2008-04-10 07:14:15Z johnnyw $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ACE_Notification_Queue_Node::
-ACE_Notification_Queue_Node()
- : ACE_Intrusive_List_Node<ACE_Notification_Queue_Node>()
- , contents_(0, 0)
-{
-}
-
-ACE_INLINE void
-ACE_Notification_Queue_Node::
-set(ACE_Notification_Buffer const & rhs)
-{
- contents_ = rhs;
-}
-
-ACE_INLINE ACE_Notification_Buffer const &
-ACE_Notification_Queue_Node::
-get() const
-{
- return contents_;
-}
-
-ACE_INLINE bool
-ACE_Notification_Queue_Node::
-matches_for_purging(ACE_Event_Handler * eh) const
-{
- return (0 != get().eh_) && (0 == eh || eh == get().eh_);
-}
-
-ACE_INLINE bool
-ACE_Notification_Queue_Node::
-mask_disables_all_notifications(ACE_Reactor_Mask mask)
-{
- // the existing notification mask is left with nothing when applying
- // the mask
- return ACE_BIT_DISABLED (get().mask_, ~mask);
-}
-
-ACE_INLINE void
-ACE_Notification_Queue_Node::
-clear_mask(ACE_Reactor_Mask mask)
-{
- ACE_CLR_BITS(contents_.mask_, mask);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
diff --git a/dep/include/ace/Notification_Strategy.h b/dep/include/ace/Notification_Strategy.h
deleted file mode 100644
index 7467ca06f4b..00000000000
--- a/dep/include/ace/Notification_Strategy.h
+++ /dev/null
@@ -1,76 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Notification_Strategy.h
- *
- * $Id: Notification_Strategy.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-#ifndef ACE_NOTIFICATION_STRATEGY_H
-#define ACE_NOTIFICATION_STRATEGY_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Event_Handler.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decls.
-class ACE_Reactor;
-
-/**
- * @class ACE_Notification_Strategy
- *
- * @brief Abstract class used for notifying an interested party
- *
- * A vehicle for extending the behavior of ACE_Message_Queue wrt
- * notification *without subclassing*. Thus, it's an example of
- * the Bridge/Strategy patterns.
- */
-class ACE_Export ACE_Notification_Strategy
-{
-public:
- /// Constructor.
- ACE_Notification_Strategy (ACE_Event_Handler *eh, ACE_Reactor_Mask mask);
-
- /// Destructor.
- virtual ~ACE_Notification_Strategy (void);
-
- virtual int notify (void) = 0;
- virtual int notify (ACE_Event_Handler *, ACE_Reactor_Mask mask) = 0;
-
- /// Get the event handler.
- ACE_Event_Handler *event_handler (void);
-
- /// Set the event handler.
- void event_handler (ACE_Event_Handler *eh);
-
- /// Get the reactor mask.
- ACE_Reactor_Mask mask (void) const;
-
- /// Set the reactor mask.
- void mask (ACE_Reactor_Mask m);
-
-protected:
- /// The event handler.
- ACE_Event_Handler *eh_;
-
- /// The reactor mask.
- ACE_Reactor_Mask mask_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Notification_Strategy.inl"
-#endif /* __ACE_INLINE __ */
-
-#include /**/ "ace/post.h"
-#endif /*ACE_NOTIFICATION_STRATEGY_H */
-
diff --git a/dep/include/ace/Notification_Strategy.inl b/dep/include/ace/Notification_Strategy.inl
deleted file mode 100644
index e1a309bcb35..00000000000
--- a/dep/include/ace/Notification_Strategy.inl
+++ /dev/null
@@ -1,31 +0,0 @@
-// -*- C++ -*-
-//
-//$Id: Notification_Strategy.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ACE_Event_Handler *
-ACE_Notification_Strategy::event_handler (void)
-{
- return eh_;
-}
-
-ACE_INLINE void
-ACE_Notification_Strategy::event_handler (ACE_Event_Handler *eh)
-{
- this->eh_ = eh;
-}
-
-ACE_INLINE ACE_Reactor_Mask
-ACE_Notification_Strategy::mask (void) const
-{
- return mask_;
-}
-
-ACE_INLINE void
-ACE_Notification_Strategy::mask (ACE_Reactor_Mask m)
-{
- this->mask_ = m;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Null_Barrier.h b/dep/include/ace/Null_Barrier.h
deleted file mode 100644
index 64e3516d2a6..00000000000
--- a/dep/include/ace/Null_Barrier.h
+++ /dev/null
@@ -1,60 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Null_Barrier.h
- *
- * $Id: Null_Barrier.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_NULL_BARRIER_H
-#define ACE_NULL_BARRIER_H
-#include /**/ "ace/pre.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// All methods in this class are inline, so there is no
-// need to import or export on Windows. -- CAE 12/18/2003
-
-/**
- * @class ACE_Null_Barrier
- *
- * @brief Implements "NULL barrier synchronization".
- */
-class ACE_Null_Barrier
-{
-public:
- /// Initialize the barrier to synchronize <count> threads.
- ACE_Null_Barrier (unsigned int,
- const char * = 0,
- void * = 0) {};
-
- /// Default dtor.
- ~ACE_Null_Barrier (void) {};
-
- /// Block the caller until all <count> threads have called <wait> and
- /// then allow all the caller threads to continue in parallel.
- int wait (void) { return 0; };
-
- /// Dump the state of an object.
- void dump (void) const {};
-
- /// Declare the dynamic allocation hooks.
- //ACE_ALLOC_HOOK_DECLARE;
-
-private:
- // = Prevent assignment and initialization.
- void operator= (const ACE_Null_Barrier &);
- ACE_Null_Barrier (const ACE_Null_Barrier &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_NULL_BARRIER_H */
-
diff --git a/dep/include/ace/Null_Condition.h b/dep/include/ace/Null_Condition.h
deleted file mode 100644
index c693b0a69eb..00000000000
--- a/dep/include/ace/Null_Condition.h
+++ /dev/null
@@ -1,86 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Null_Condition.h
- *
- * $Id: Null_Condition.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_NULL_CONDITION_H
-#define ACE_NULL_CONDITION_H
-#include /**/ "ace/pre.h"
-
-// All methods in this class are inline, so there is no
-// need to import or export on Windows. -- CAE 12/18/2003
-#include "ace/Null_Mutex.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_errno.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-/**
- * @class ACE_Null_Condition
- *
- * @brief Implement a do nothing ACE_Condition variable wrapper,
- * i.e., all methods are no ops. This class is necessary since
- * some C++ compilers are *very* lame...
- */
-class ACE_Null_Condition
-{
-public:
- ACE_Null_Condition (const ACE_Null_Mutex &m,
- const ACE_TCHAR * = 0,
- void * = 0)
- : mutex_ ((ACE_Null_Mutex &) m) {}
-
- ~ACE_Null_Condition (void) {}
-
- /// Returns 0.
- int remove (void) {return 0;}
-
- /// Returns -1 with @c errno == @c ETIME.
- int wait (const ACE_Time_Value * = 0) {errno = ETIME; return -1;}
-
- /// Returns -1 with @c errno == @c ETIME.
- int wait (ACE_Null_Mutex &,
- const ACE_Time_Value * = 0) {errno = ETIME; return -1;}
-
- /// Returns 0.
- int signal (void) {return 0;}
-
- /// Returns 0.
- int broadcast (void) {return 0;}
- ACE_Null_Mutex &mutex (void) {return this->mutex_;};
-
- /// Dump the state of an object.
- void dump (void) const {}
-
- // ACE_ALLOC_HOOK_DECLARE;
- // Declare the dynamic allocation hooks.
-
-protected:
- ACE_Null_Mutex &mutex_; // Reference to mutex lock.
-
-private:
- // = Prevent assignment and initialization.
- void operator= (const ACE_Null_Condition &);
- ACE_Null_Condition (const ACE_Null_Condition &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_NULL_CONDITION_H */
-
diff --git a/dep/include/ace/Null_Mutex.h b/dep/include/ace/Null_Mutex.h
deleted file mode 100644
index 7cf2304e05d..00000000000
--- a/dep/include/ace/Null_Mutex.h
+++ /dev/null
@@ -1,232 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Null_Mutex.h
- *
- * $Id: Null_Mutex.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_NULL_MUTEX_H
-#define ACE_NULL_MUTEX_H
-#include /**/ "ace/pre.h"
-
-// All methods in this class are inline, so there is no
-// need to import or export on Windows. -- CAE 12/18/2003
-// Update... leaving off the ACE_Export causes compile warnings in some
-// cases with Microsoft Visual Studio .NET 2005, so I added the ACE_Export
-// to these class declarations. Steve Huston, 12/8/2006.
-
-#include "ace/os_include/os_errno.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Global_Macros.h"
-#include "ace/OS_Memory.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-/**
- * @class ACE_Null_Mutex
- *
- * @brief Implement a do nothing ACE_Mutex, i.e., all the methods are
- * no ops.
- */
-class ACE_Export ACE_Null_Mutex
-{
-public:
- ACE_Null_Mutex (const ACE_TCHAR * = 0)
- : lock_ (0) {}
- ~ACE_Null_Mutex (void) {}
- /// Return 0.
- int remove (void) {return 0;}
-
- /// Return 0.
- int acquire (void) {return 0;}
-
- /// Return -1 with @c errno == @c ETIME.
- int acquire (ACE_Time_Value &) {errno = ETIME; return -1;}
-
- /// Return -1 with @c errno == @c ETIME.
- int acquire (ACE_Time_Value *) {errno = ETIME; return -1;}
-
- /// Return 0.
- int tryacquire (void) {return 0;}
-
- /// Return 0.
- int release (void) {return 0;}
-
- /// Return 0.
- int acquire_write (void) {return 0;}
-
- /// Return 0.
- int tryacquire_write (void) {return 0;}
-
- /// Return 0.
- int tryacquire_write_upgrade (void) {return 0;}
-
- /// Return 0.
- int acquire_read (void) {return 0;}
-
- /// Return 0.
- int tryacquire_read (void) {return 0;}
-
- /// Dump the state of an object.
- void dump (void) const {}
-
- /// Declare the dynamic allocation hooks.
- //ACE_ALLOC_HOOK_DECLARE;
-
- int lock_; // A dummy lock.
-};
-
-#if defined (ACE_USES_OBSOLETE_GUARD_CLASSES)
-/**
- * @class ACE_Null_Mutex_Guard
- *
- * @brief This data structure is meant to be used within a method or
- * function... It performs automatic aquisition and release of
- * an ACE_Null_Mutex.
- *
- * This class is obsolete and should be replaced by
- * ACE_Guard<ACE_Null_Mutex>.
- */
-class ACE_Export ACE_Null_Mutex_Guard
-{
-public:
- ACE_Null_Mutex_Guard (ACE_Null_Mutex &) {}
- ~ACE_Null_Mutex_Guard (void) {}
- int remove (void) {return 0;}
- int locked (void) {return 1;}
- int acquire (void) {return 0;}
- int tryacquire (void) {return 0;}
- int release (void) {return 0:}
- void dump (void) const {}
-
-private:
- // = Prevent assignment and initialization.
- void operator= (const ACE_Null_Mutex_Guard &);
- ACE_Null_Mutex_Guard (const ACE_Null_Mutex_Guard &);
-};
-#endif /* ACE_USES_OBSOLETE_GUARD_CLASSES */
-
-template <class ACE_LOCK>
-class ACE_Guard;
-
-/**
- * @class ACE_Guard<ACE_Null_Mutex>
- *
- * @brief Template specialization of ACE_Guard for the
- * ACE_Null_Mutex.
- *
- * This specialization is useful since it helps to speedup
- * performance of the "Null_Mutex" considerably.
- */
-template<>
-class ACE_Export ACE_Guard<ACE_Null_Mutex>
-{
-public:
- // = Initialization and termination methods.
- ACE_Guard (ACE_Null_Mutex &) {}
- ACE_Guard (ACE_Null_Mutex &, int) {}
- ACE_Guard (ACE_Null_Mutex &, int, int) {}
-#if defined (ACE_WIN32)
- ~ACE_Guard (void) {}
-#endif /* ACE_WIN32 */
-
- int acquire (void) { return 0; }
- int tryacquire (void) { return 0; }
- int release (void) { return 0; }
- void disown (void) {}
- int locked (void) { return 1; }
- int remove (void) { return 0; }
- void dump (void) const {}
-
-private:
-
- // Disallow copying and assignment.
- ACE_Guard (const ACE_Guard<ACE_Null_Mutex> &);
- void operator= (const ACE_Guard<ACE_Null_Mutex> &);
-
-};
-
-template <class ACE_LOCK>
-class ACE_Write_Guard;
-
-/**
- * @class ACE_Write_Guard<ACE_Null_Mutex>
- *
- */
-template<>
-class ACE_Export ACE_Write_Guard<ACE_Null_Mutex>
- : public ACE_Guard<ACE_Null_Mutex>
-{
-public:
- ACE_Write_Guard (ACE_Null_Mutex &m)
- : ACE_Guard<ACE_Null_Mutex> (m) {}
- ACE_Write_Guard (ACE_Null_Mutex &m, int blocked)
- : ACE_Guard<ACE_Null_Mutex> (m, blocked) {}
-
- int acquire_write (void) { return 0; }
- int acquire (void) { return 0; }
- int tryacquire_write (void) { return 0; }
- int tryacquire (void) { return 0; }
- void dump (void) const {}
-};
-
-template <class ACE_LOCK>
-class ACE_Read_Guard;
-
-/**
- * @class ACE_Read_Guard<ACE_Null_Mutex>
- *
- */
-template<>
-class ACE_Export ACE_Read_Guard<ACE_Null_Mutex>
- : public ACE_Guard<ACE_Null_Mutex>
-{
-public:
- ACE_Read_Guard (ACE_Null_Mutex &m)
- : ACE_Guard<ACE_Null_Mutex> (m) {}
- ACE_Read_Guard (ACE_Null_Mutex &m, int blocked)
- : ACE_Guard<ACE_Null_Mutex> (m, blocked) {}
-
- int acquire_read (void) { return 0; }
- int acquire (void) { return 0; }
- int tryacquire_read (void) { return 0; }
- int tryacquire (void) { return 0; }
- void dump (void) const {}
-};
-
-template <class T> class ACE_Malloc_Lock_Adapter_T;
-
-/**
- * @class ACE_Malloc_Lock_Adapter_T<ACE_Null_Mutex>
- *
- */
-template<>
-class ACE_Export ACE_Malloc_Lock_Adapter_T<ACE_Null_Mutex>
-{
-public:
- ACE_Null_Mutex * operator () (const ACE_TCHAR *name)
- {
- ACE_Null_Mutex *p;
- ACE_NEW_RETURN (p, ACE_Null_Mutex (name), 0);
- return p;
- }
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_NULL_MUTEX_H */
-
diff --git a/dep/include/ace/Null_Semaphore.h b/dep/include/ace/Null_Semaphore.h
deleted file mode 100644
index 4b8112876f6..00000000000
--- a/dep/include/ace/Null_Semaphore.h
+++ /dev/null
@@ -1,106 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Null_Semaphore.h
- *
- * $Id: Null_Semaphore.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_NULL_SEMAPHORE_H
-#define ACE_NULL_SEMAPHORE_H
-#include /**/ "ace/pre.h"
-
-// All methods in this class are inline, so there is no
-// need to import or export on Windows. -- CAE 12/18/2003
-#include "ace/os_include/os_errno.h"
-#include "ace/os_include/sys/os_types.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-/**
- * @class ACE_Null_Semaphore
- *
- * @brief Implement a do nothing ACE_Semaphore, i.e., all the methods are
- * no ops.
- *
- * Although the methods are no-ops, the return values are different for
- * the blocking as opposed to timed acquires. The blocking version of
- * acquire() is often used to serialize access to a critical section,
- * whereas the timed version is often used to wait for another thread
- * to update some condition or change some shared state. When using an
- * ACE_Null_Semaphore, however, there's no other thread involved to
- * change a state or condition (otherwise, a null semaphore would be
- * inappropriate). Returning an error value signifies that the
- * state or condition has not been (and can't be) changed, which is
- * consistent with the behavior of the threaded case where a timeout
- * occurs before the state or condition is changed.
- */
-class ACE_Null_Semaphore
-{
-public:
- ACE_Null_Semaphore (unsigned int = 1,
- int = 0,
- const ACE_TCHAR * = 0,
- void * = 0,
- int = 0x7fffffff) {}
- ~ACE_Null_Semaphore (void) {}
- /// Return 0.
- int remove (void) {return 0;}
-
- /// Return 0.
- int acquire (void) {return 0;}
-
- /// Return -1 with @c errno == @c ETIME.
- int acquire (ACE_Time_Value &) {errno = ETIME; return -1;}
-
- /// Return -1 with @c errno == @c ETIME.
- int acquire (ACE_Time_Value *) {errno = ETIME; return -1;}
-
- /// Return 0.
- int tryacquire (void) {return 0;}
-
- /// Return 0.
- int release (void) {return 0;}
-
- /// Return 0.
- int release (size_t) {return 0;}
-
- /// Return 0.
- int acquire_write (void) {return 0;}
-
- /// Return 0.
- int tryacquire_write (void) {return 0;}
-
- /// Return 0.
- int tryacquire_write_upgrade (void) {return 0;}
-
- /// Return 0.
- int acquire_read (void) {return 0;}
-
- /// Return 0.
- int tryacquire_read (void) {return 0;}
-
- /// Dump the state of an object.
- void dump (void) const {}
-
- /// Declare the dynamic allocation hooks.
- //ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_NULL_SEMAPHORE_H */
-
diff --git a/dep/include/ace/Numeric_Limits.h b/dep/include/ace/Numeric_Limits.h
deleted file mode 100644
index 29de41db76b..00000000000
--- a/dep/include/ace/Numeric_Limits.h
+++ /dev/null
@@ -1,270 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Numeric_Limits.h
- *
- * $Id: Numeric_Limits.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Traits containing basic integer limits. Useful for template-based
- * code on platforms that lack @c std::numeric_limits<>.
- *
- * @note These traits are not meant to be a replacement for
- * @c std::numeric_limits<>. Rather they are a crutch until all
- * ACE-supported platforms also support
- * @c std::numeric_limits<>.
- *
- * @internal Only meant for internal use by ACE.
- * @deprecated This header will be removed once all platforms
- * supported by ACE support @c std::numeric_limits<>.
- *
- * @author Ossama Othman <ossama_othman at symantec dot com>
- */
-//=============================================================================
-
-#ifndef ACE_NUMERIC_LIMITS_H
-#define ACE_NUMERIC_LIMITS_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#ifdef ACE_LACKS_NUMERIC_LIMITS
-# include "ace/Basic_Types.h"
-#else
-
-# ifdef __MINGW32__
-// Windows defines min/max macros that interfere with the
-// numeric_limits::min/max() traits. Undefine those macros before
-// including <limits>.
-//
-// Ideally, we could prevent those macros from being defined by
-// defining the Windows-specific NOMINMAX symbol before any Windows
-// headers are included, preferrably on the command line. However,
-// that would probably break some applications.
-//
-// @@ Why isn't this a problem with MSVC++ and Borland builds?
-# undef min
-# undef max
-# endif /* __MINGW32__ */
-
-# if defined (ACE_LACKS_LONGLONG_T) || defined (ACE_LACKS_UNSIGNEDLONGLONG_T)
-// For ACE_U_LongLong.
-# include "ace/Basic_Types.h"
-# endif /* ACE_LACKS_LONGLONG_T || ACE_LACKS_UNSIGNEDLONGLONG_T */
-
-# include <limits>
-#endif /* ACE_LACKS_NUMERIC_LIMITS */
-
-// Address global namespace pollution potentially incurred by some
-// platforms.
-#undef min
-#undef max
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#ifdef ACE_LACKS_NUMERIC_LIMITS
-
-template <typename T> struct ACE_Numeric_Limits;
-
-// ------------------------------------------
-// Special cases.
-template<>
-struct ACE_Export ACE_Numeric_Limits<char>
-{
- static char min (void) { return CHAR_MIN; }
- static char max (void) { return CHAR_MAX; }
-};
-
-// ------------------------------------------
-// Signed integers.
-
-template<>
-struct ACE_Export ACE_Numeric_Limits<signed char>
-{
- static signed char min (void) { return SCHAR_MIN; }
- static signed char max (void) { return SCHAR_MAX; }
-};
-
-template<>
-struct ACE_Export ACE_Numeric_Limits<signed short>
-{
- static signed short min (void) { return SHRT_MIN; }
- static signed short max (void) { return SHRT_MAX; }
-};
-
-template<>
-struct ACE_Export ACE_Numeric_Limits<signed int>
-{
- static signed int min (void) { return INT_MIN; }
- static signed int max (void) { return INT_MAX; }
-};
-
-template<>
-struct ACE_Export ACE_Numeric_Limits<signed long>
-{
- static signed long min (void) { return LONG_MIN; }
- static signed long max (void) { return LONG_MAX; }
-};
-
-// #ifndef ACE_LACKS_LONGLONG_T
-// template<>
-// struct ACE_Export ACE_Numeric_Limits<signed long long>
-// {
-// #if defined (LLONG_MIN)
-// # define ACE_LLONG_MIN LLONG_MIN
-// #elif defined (LONG_LONG_MIN)
-// # define ACE_LLONG_MIN LONG_LONG_MIN
-// #elif defined (LONGLONG_MIN)
-// # define ACE_LLONG_MIN LONGLONG_MIN
-// #else
-// # error Unable to determine minimum signed long long value.
-// #endif /* LLONG_MIN */
-
-// #if defined (LLONG_MAX)
-// # define ACE_LLONG_MAX LLONG_MAX
-// #elif defined (LONG_LONG_MAX)
-// # define ACE_LLONG_MAX LONG_LONG_MAX
-// #elif defined (LONGLONG_MAX)
-// # define ACE_LLONG_MAX LONGLONG_MAX
-// #else
-// # error Unable to determine maximum signed long long value.
-// #endif /* LLONG_MAX */
-
-// static signed long long min (void) { return ACE_LLONG_MIN; }
-// static signed long long max (void) { return ACE_LLONG_MAX; }
-// };
-// #endif /* !ACE_LACKS_LONGLONG_T */
-
-// ------------------------------------------
-// Unsigned integers
-template<>
-struct ACE_Export ACE_Numeric_Limits<unsigned char>
-{
- static unsigned char min (void) { return 0; }
- static unsigned char max (void) { return UCHAR_MAX; }
-};
-
-template<>
-struct ACE_Export ACE_Numeric_Limits<unsigned short>
-{
- static unsigned short min (void) { return 0; }
- static unsigned short max (void) { return USHRT_MAX; }
-};
-
-template<>
-struct ACE_Export ACE_Numeric_Limits<unsigned int>
-{
- static unsigned int min (void) { return 0; }
- static unsigned int max (void) { return UINT_MAX; }
-};
-
-template<>
-struct ACE_Export ACE_Numeric_Limits<unsigned long>
-{
- static unsigned long min (void) { return 0; }
- static unsigned long max (void) { return ULONG_MAX; }
-};
-
-// #ifndef ACE_LACKS_LONGLONG_T
-// template<>
-// struct ACE_Export ACE_Numeric_Limits<unsigned long long>
-// {
-// static unsigned long long min (void) { return 0; }
-// static unsigned long long max (void)
-// {
-// # if defined (ULLONG_MAX)
-// return ULLONG_MAX;
-// # elif defined (ULONGLONG_MAX)
-// return ULONGLONG_MAX;
-// # else
-// # error Unable to determine maximum unsigned long long value.
-// # endif /* ULLONG_MAX */
-// }
-// };
-// #endif /* !ACE_LACKS_LONGLONG_T */
-
-// ------------------------------------------
-// Floating point types
-
-template<>
-struct ACE_Export ACE_Numeric_Limits<float>
-{
- static float min (void) { return FLT_MIN; }
- static float max (void) { return FLT_MAX; }
-};
-
-template<>
-struct ACE_Export ACE_Numeric_Limits<double>
-{
- static double min (void) { return DBL_MIN; }
- static double max (void) { return DBL_MAX; }
-};
-
-template<>
-struct ACE_Export ACE_Numeric_Limits<long double>
-{
- static long double min (void) { return LDBL_MIN; }
- static long double max (void) { return LDBL_MAX; }
-};
-
-#else
-
-// std::numeric_limits<> has all of the necessary specializations.
-// Just wrap it.
-
-template <typename T>
-struct ACE_Numeric_Limits
-{
- static T min (void) { return std::numeric_limits<T>::min (); }
- static T max (void) { return std::numeric_limits<T>::max (); }
-};
-
-# if (defined (ACE_WIN64) && defined (_MSC_VER) && _MSC_VER <= 1310) \
- || defined (ACE_LACKS_NUMERIC_LIMITS_64_BIT_TYPES)
-// The Microsoft Platform SDK does not provide std::numeric_limits<>
-// specializations for 64 bit integers so we need to explicitly provide
-// ACE_Numeric_Limits<> specializations to compensate for this
-// deficiency.
-//
-// Unfortunately there is no way to tell if the platform SDK is being
-// used so we specialize for the ACE_WIN64 + MSVC++ 7.1 case, which is
-// the configuration that exhibits this problem. It also happens to
-// be a fairly isolated configuration since 64-bit support in MSVC++
-// 7.1 was not very good to begin with.
-template<>
-struct ACE_Numeric_Limits<LONGLONG>
-{
- static LONGLONG min (void) { return _I64_MIN; }
- static LONGLONG max (void) { return _I64_MAX; }
-};
-
-template<>
-struct ACE_Numeric_Limits<ULONGLONG>
-{
- static ULONGLONG min (void) { return 0; }
- static ULONGLONG max (void) { return _UI64_MAX; }
-};
-# endif /* ACE_WIN64 && _MSC_VER <= 1310 */
-
-#endif /* ACE_LACKS_NUMERIC_LIMITS */
-
-#if defined (ACE_LACKS_LONGLONG_T) || defined (ACE_LACKS_UNSIGNEDLONGLONG_T)
-template<>
-struct ACE_Numeric_Limits<ACE_U_LongLong>
-{
- static ACE_U_LongLong min (void) { return ACE_U_LongLong (); /* 0 */ }
- static ACE_U_LongLong max (void) { return ACE_UINT64_MAX; }
-};
-#endif /* ACE_LACKS_LONGLONG_T || defined ACE_LACKS_UNSIGNEDLONGLONG_T */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_NUMERIC_LIMITS_H */
-
diff --git a/dep/include/ace/OS.h b/dep/include/ace/OS.h
deleted file mode 100644
index bc5fe2f3760..00000000000
--- a/dep/include/ace/OS.h
+++ /dev/null
@@ -1,328 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS.h
- *
- * $Id: OS.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- */
-//=============================================================================
-
-#ifndef ACE_OS_H
-#define ACE_OS_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (DO_NOT_INCLUDE_OS_H)
-#include "ace/Cleanup.h"
-#include "ace/Object_Manager_Base.h"
-#include "ace/OS_main.h"
-#include "ace/OS_NS_arpa_inet.h"
-#include "ace/OS_NS_ctype.h"
-#include "ace/OS_NS_dirent.h"
-#include "ace/OS_NS_dlfcn.h"
-#include "ace/OS_NS_errno.h"
-#include "ace/OS_NS_fcntl.h"
-#include "ace/OS_NS_math.h"
-#include "ace/OS_NS_netdb.h"
-#include "ace/OS_NS_poll.h"
-#include "ace/OS_NS_pwd.h"
-#include "ace/OS_NS_regex.h"
-#include "ace/OS_NS_signal.h"
-#include "ace/OS_NS_stdio.h"
-#include "ace/OS_NS_stdlib.h"
-#include "ace/OS_NS_string.h"
-#include "ace/OS_NS_strings.h"
-#include "ace/OS_NS_stropts.h"
-#include "ace/OS_NS_sys_mman.h"
-#include "ace/OS_NS_sys_msg.h"
-#include "ace/OS_NS_sys_resource.h"
-#include "ace/OS_NS_sys_select.h"
-#include "ace/OS_NS_sys_shm.h"
-#include "ace/OS_NS_sys_socket.h"
-#include "ace/OS_NS_sys_stat.h"
-#include "ace/OS_NS_sys_time.h"
-#include "ace/OS_NS_sys_uio.h"
-#include "ace/OS_NS_sys_utsname.h"
-#include "ace/OS_NS_sys_wait.h"
-#include "ace/OS_NS_Thread.h"
-#include "ace/OS_NS_time.h"
-#include "ace/OS_NS_unistd.h"
-#include "ace/OS_NS_wchar.h"
-
-// Include the split up ACE_OS classes
-#include "ace/OS_Dirent.h"
-#include "ace/OS_String.h"
-#include "ace/OS_Memory.h"
-#include "ace/OS_TLI.h"
-#include "ace/OS_Errno.h"
-
-#include "ace/os_include/os_dlfcn.h"
-#include "ace/os_include/sys/os_mman.h"
-#include "ace/os_include/os_netdb.h"
-#include "ace/os_include/sys/os_socket.h"
-#include "ace/os_include/net/os_if.h"
-#include "ace/os_include/sys/os_sem.h"
-
-#include "ace/Time_Value.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Timeout_Manager;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// Here are all ACE-specific default constants, needed throughout ACE
-// and its applications. The values can be over written by user
-// specific values in config.h files.
-#include "ace/Default_Constants.h"
-
-// Here are all ACE-specific global declarations needed throughout
-// ACE.
-#include "ace/Global_Macros.h"
-
-// include the ACE min()/max() functions.
-# include "ace/Min_Max.h"
-
-///////////////////////////////////////////
-// //
-// NOTE: Please do not add any #includes //
-// before this point. On VxWorks, //
-// vxWorks.h must be #included //
-// first! //
-// //
-///////////////////////////////////////////
-
-#include "ace/os_include/netinet/os_tcp.h"
-#include "ace/os_include/sys/os_stat.h"
-#include "ace/os_include/os_stropts.h"
-#include "ace/os_include/os_unistd.h"
-#include "ace/os_include/sys/os_wait.h"
-
-// This needs to go here *first* to avoid problems with AIX.
-# if defined (ACE_HAS_PTHREADS)
-# include "ace/os_include/os_pthread.h"
-# endif /* ACE_HAS_PTHREADS */
-
-# if defined (ACE_HAS_PROC_FS)
-# include /**/ <sys/procfs.h>
-# endif /* ACE_HAS_PROC_FS */
-
-# if defined (ACE_HAS_POSIX_SEM)
-# include "ace/os_include/os_semaphore.h"
-# endif /* ACE_HAS_POSIX_SEM */
-
-#include "ace/os_include/sys/os_types.h"
-#include "ace/os_include/os_stddef.h"
-#if !defined (ACE_LACKS_UNISTD_H)
-# include "ace/os_include/os_unistd.h"
-#endif /* ACE_LACKS_UNISTD_H */
-
-// Standard C Library includes
-# if !defined (ACE_HAS_WINCE)
-# include "ace/os_include/os_assert.h"
-# include "ace/os_include/os_stdio.h"
-
-# if !defined (ACE_LACKS_NEW_H)
-# if defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
-# include /**/ <new>
-# else
-# include /**/ <new.h>
-# endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
-# endif /* ! ACE_LACKS_NEW_H */
-
-# if !defined (ACE_VXWORKS)
-# define ACE_DONT_INCLUDE_ACE_SIGNAL_H
-# include "ace/os_include/os_signal.h"
-# undef ACE_DONT_INCLUDE_ACE_SIGNAL_H
-# endif /* ! VXWORKS */
-
-# include "ace/os_include/os_fcntl.h"
-# endif /* ACE_HAS_WINCE */
-
-# include "ace/os_include/os_limits.h"
-# include "ace/os_include/os_ctype.h"
-# include "ace/os_include/os_string.h"
-# include "ace/os_include/os_stdlib.h"
-# include "ace/os_include/os_float.h"
-
-# if defined (ACE_NEEDS_SCHED_H)
-# include "ace/os_include/os_sched.h"
-# endif /* ACE_NEEDS_SCHED_H */
-
-# include "ace/iosfwd.h"
-
-# if !defined (ACE_HAS_WINCE)
-# include "ace/os_include/os_fcntl.h"
-# endif /* ACE_HAS_WINCE */
-
-# if defined ACE_HAS_BYTESEX_H
-# include /**/ <bytesex.h>
-# endif /* ACE_HAS_BYTESEX_H */
-# include "ace/Basic_Types.h"
-
-# if defined (ACE_HAS_UTIME)
-# include "ace/os_include/os_utime.h"
-# endif /* ACE_HAS_UTIME */
-
-# if defined (ACE_WIN32)
-
-# if !defined (ACE_HAS_WINCE)
-# include "ace/os_include/sys/os_timeb.h"
-# endif /* ACE_HAS_WINCE */
-
-# if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
-# include "ace/os_include/netinet/os_in.h" // <ws2tcpip.h>
-# endif /* ACE_HAS_WINSOCK2 */
-
-# if !defined (ACE_HAS_WINCE)
-# include "ace/os_include/os_time.h"
-# include "ace/os_include/sys/os_stat.h" // <direct.h>
-# include "ace/os_include/os_unistd.h" // <process.h>
-# endif /* ACE_HAS_WINCE */
-
-# include "ace/os_include/os_fcntl.h"
-
-# else /* !defined (ACE_WIN32) */
-
-# if defined (CYGWIN32)
-# include "ace/os_include/sys/os_uio.h"
-# include "ace/os_include/os_fcntl.h" // <sys/file.h>
-# include "ace/os_include/sys/os_time.h"
-# include "ace/os_include/sys/os_resource.h"
-# include "ace/os_include/sys/os_wait.h"
-# include "ace/os_include/os_pwd.h"
-# elif defined (__QNX__)
-# include "ace/os_include/sys/os_uio.h"
-# include "ace/os_include/sys/os_ipc.h"
-# include "ace/os_include/sys/os_time.h"
-# include "ace/os_include/sys/os_wait.h"
-# include "ace/os_include/sys/os_resource.h"
-# include "ace/os_include/os_pwd.h"
- // sets O_NDELAY
-# include /**/ <unix.h>
-# include "ace/os_include/os_limits.h" // <sys/param.h> /* for NBBY */
-# elif defined(ACE_HAS_RTEMS)
-# include "ace/os_include/os_fcntl.h" // <sys/file.h>
-# include "ace/os_include/sys/os_resource.h"
-# include "ace/os_include/sys/os_time.h"
-# include "ace/os_include/sys/os_utsname.h"
-# include "ace/os_include/sys/os_wait.h"
-# include "ace/os_include/os_pwd.h"
-
-# elif ! defined (ACE_VXWORKS) && ! defined (INTEGRITY)
-# include "ace/os_include/sys/os_uio.h"
-# include "ace/os_include/sys/os_ipc.h"
-# if !defined(ACE_LACKS_SYSV_SHMEM)
-// No reason to #include this if the platform lacks support for SHMEM
-# include "ace/os_include/sys/os_shm.h"
-# endif /* ACE_LACKS_SYSV_SHMEM */
-# include "ace/os_include/os_fcntl.h" // <sys/file.h>
-# include "ace/os_include/sys/os_time.h"
-# include "ace/os_include/sys/os_resource.h"
-# include "ace/os_include/sys/os_wait.h"
-# include "ace/os_include/os_pwd.h"
-# endif /* ! VXWORKS */
-# include "ace/os_include/os_stropts.h" // <sys/ioctl.h>
-
-// IRIX5 defines bzero() in this odd file...
-# if defined (ACE_HAS_BSTRING)
-# include /**/ <bstring.h>
-# endif /* ACE_HAS_BSTRING */
-
-// AIX defines bzero() in this odd file...
-# if defined (ACE_HAS_STRINGS)
-# include "ace/os_include/os_strings.h"
-# endif /* ACE_HAS_STRINGS */
-
-# if defined (ACE_HAS_TERMIOS)
-# include "ace/os_include/os_termios.h"
-# endif /* ACE_HAS_TERMIOS */
-
-# if defined (ACE_HAS_AIO_CALLS)
-# include "ace/os_include/os_aio.h"
-# endif /* ACE_HAS_AIO_CALLS */
-
-# include "ace/os_include/os_limits.h" // <sys/param.h>
-
-# if !defined (ACE_LACKS_UNIX_DOMAIN_SOCKETS)
-# include "ace/os_include/sys/os_un.h"
-# endif /* ACE_LACKS_UNIX_DOMAIN_SOCKETS */
-
-# if defined (ACE_HAS_POLL)
-# include "ace/os_include/os_poll.h"
-# endif /* ACE_HAS_POLL */
-
-# if defined (ACE_HAS_SELECT_H)
-# include "ace/os_include/sys/os_select.h"
-# endif /* ACE_HAS_SELECT_H */
-
-# include "ace/os_include/sys/os_msg.h"
-
-# if defined (ACE_HAS_PRIOCNTL)
-# include /**/ <sys/priocntl.h>
-# endif /* ACE_HAS_PRIOCNTL */
-
-# endif /* !defined (ACE_WIN32) */
-
-# if !defined (ACE_WIN32) && !defined (ACE_LACKS_UNIX_SYSLOG)
-# include "ace/os_include/os_syslog.h"
-# endif /* !defined (ACE_WIN32) && !defined (ACE_LACKS_UNIX_SYSLOG) */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @namespace ACE_OS
- *
- * @brief This namespace defines an OS independent programming API that
- * shields developers from nonportable aspects of writing
- * efficient system programs on Win32, POSIX and other versions
- * of UNIX, and various real-time operating systems.
- *
- * This namespace encapsulates the differences between various OS
- * platforms. When porting ACE to a new platform, this class is
- * the place to focus on. Once this file is ported to a new
- * platform, pretty much everything else comes for "free." See
- * <www.cs.wustl.edu/~schmidt/ACE_wrappers/etc/ACE-porting.html>
- * for instructions on porting ACE. Please see the README file
- * in this directory for complete information on the meaning of
- * the various macros.
- */
-namespace ACE_OS
-{
- // = A set of wrappers for miscellaneous operations.
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-#if defined (ACE_LEGACY_MODE)
-# include "ace/Log_Msg.h"
-# include "ace/Thread_Hook.h"
-# include "ace/Thread_Adapter.h"
-# include "ace/Thread_Exit.h"
-# include "ace/Thread_Control.h"
-#endif /* ACE_LEGACY_MODE */
-
-#endif /* 0 */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_H */
-
diff --git a/dep/include/ace/OS.inl b/dep/include/ace/OS.inl
deleted file mode 100644
index 1dafebc2543..00000000000
--- a/dep/include/ace/OS.inl
+++ /dev/null
@@ -1,92 +0,0 @@
-// -*- C++ -*-
-// $Id: OS.inl 81697 2008-05-14 18:33:11Z johnnyw $
-
-#if !defined (ACE_HAS_INLINED_OSCALLS)
-# undef ACE_INLINE
-# define ACE_INLINE
-#endif /* ACE_HAS_INLINED_OSCALLS */
-
-#if defined (ACE_HAS_XLI)
-# include /**/ <xliuser.h>
-#endif /* ACE_HAS_XLI */
-
-#if !defined (ACE_HAS_CPLUSPLUS_HEADERS)
-# include /**/ <libc.h>
-# include /**/ <osfcn.h>
-#endif /* ACE_HAS_CPLUSPLUS_HEADERS */
-
-#if defined (ACE_HAS_SYSENT_H)
-# include /**/ <sysent.h>
-#endif /* ACE_HAS_SYSENT_H */
-
-#if defined (ACE_USES_STD_NAMESPACE_FOR_STDC_LIB) && \
- (ACE_USES_STD_NAMESPACE_FOR_STDC_LIB != 0)
-using std::bsearch;
-using std::qsort;
-# if defined (ACE_WIN32)
-using std::_tzset;
-# else
-using std::tzset;
-# endif
-using std::ctime;
-using std::localtime;
-using std::gmtime;
-using std::asctime;
-using std::strftime;
-#endif /* ACE_USES_STD_NAMESPACE_FOR_STDC_LIB */
-
-#if !defined (ACE_LACKS_MALLOC_H)
-# include /**/ <malloc.h>
-#endif /* ACE_LACKS_MALLOC_H */
-
-#if !defined (ACE_WIN32)
-
-// Matthew Stevens 7-10-95 Fix GNU GCC 2.7 for memchr() problem.
-# if defined (ACE_HAS_GNU_CSTRING_H)
-// Define this file to keep /usr/include/memory.h from being included.
-# include /**/ <cstring>
-# else
-# if defined (ACE_LACKS_MEMORY_H)
-# include "ace/os_include/os_string.h"
-# else
-# include /**/ <memory.h>
-# endif /* ACE_LACKS_MEMORY_H */
-# endif /* ACE_HAS_GNU_CSTRING_H */
-
-// The following are #defines and #includes that must be visible for
-// ACE to compile it's OS wrapper class implementation correctly. We
-// put them inside of here to reduce compiler overhead if we're not
-// inlining...
-
-# if defined (ACE_HAS_REGEX)
-# include /**/ <regexpr.h>
-# endif /* ACE_HAS_REGEX */
-
-# if defined (ACE_HAS_SYS_SYSTEMINFO_H)
-# include /**/ <sys/systeminfo.h>
-# endif /* ACE_HAS_SYS_SYSTEMINFO_H */
-
-# if defined (ACE_HAS_SYS_SYSCALL_H)
-# include /**/ <sys/syscall.h>
-# endif /* ACE_HAS_SYS_SYSCALL_H */
-
-# if defined (UNIXWARE) /* See strcasecmp, below */
-# include /**/ <ctype.h>
-# endif /* UNIXWARE */
-
-# if defined (ACE_HAS_GETIFADDRS)
-# if defined (ACE_VXWORKS)
-# include /**/ <net/ifaddrs.h>
-# else
-# include /**/ <ifaddrs.h>
-# endif
-# endif /* ACE_HAS_GETIFADDRS */
-
-#endif /* WIN32 */
-
-#if defined (ACE_HAS_SHM_OPEN) && defined(INTEGRITY)
-#include "ace/os_include/sys/os_mman.h"
-#endif
-
-// ****************************************************************
-
diff --git a/dep/include/ace/OS_Dirent.h b/dep/include/ace/OS_Dirent.h
deleted file mode 100644
index e9c0984390c..00000000000
--- a/dep/include/ace/OS_Dirent.h
+++ /dev/null
@@ -1,33 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_Dirent.h
- *
- * $Id: OS_Dirent.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- */
-//=============================================================================
-
-#ifndef ACE_OS_DIRENT_H
-#define ACE_OS_DIRENT_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/OS_Errno.h"
-#include "ace/os_include/os_dirent.h"
-#include "ace/os_include/sys/os_types.h"
-
-#include "ace/OS_NS_dirent.h"
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_DIRENT_H */
-
diff --git a/dep/include/ace/OS_Errno.h b/dep/include/ace/OS_Errno.h
deleted file mode 100644
index 41e33692cb9..00000000000
--- a/dep/include/ace/OS_Errno.h
+++ /dev/null
@@ -1,102 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_Errno.h
- *
- * $Id: OS_Errno.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author (Originally in OS.h)Doug Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_OS_ERRNO_H
-#define ACE_OS_ERRNO_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/OS_NS_errno.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Errno_Guard
- *
- * @brief Provides a wrapper to improve performance when thread-specific
- * errno must be saved and restored in a block of code.
- *
- * The typical use-case for this is the following:
- * int error = errno;
- * call_some_function_that_might_change_errno ();
- * errno = error;
- * This can be replaced with
- * {
- * ACE_Errno_Guard guard (errno);
- * call_some_function_that_might_change_errno ();
- * }
- * This implementation is more elegant and more efficient since it
- * avoids an unnecessary second access to thread-specific storage
- * by caching a pointer to the value of errno in TSS.
- */
-class ACE_Export ACE_Errno_Guard
-{
-public:
- /// Stash the value of <error> into <error_> and initialize the
- /// <errno_ptr_> to the address of <errno_ref>.
- ACE_Errno_Guard (ACE_ERRNO_TYPE &errno_ref,
- int error);
-
- /// Stash the value of @c errno into <error_> and initialize the
- /// <errno_ptr_> to the address of <errno_ref>.
- ACE_Errno_Guard (ACE_ERRNO_TYPE &errno_ref);
-
- /// Reset the value of @c errno to <error>.
- ~ACE_Errno_Guard (void);
-
-#if defined (ACE_HAS_WINCE_BROKEN_ERRNO)
- /// Assign <errno_ref> to <error_>.
- int operator= (const ACE_ERRNO_TYPE &errno_ref);
-#endif /* ACE_HAS_WINCE_BROKEN_ERRNO */
-
- /// Assign <error> to <error_>.
- int operator= (int error);
-
- /// Compare <error> with <error_> for equality.
- bool operator== (int error);
-
- /// Compare <error> with <error_> for inequality.
- bool operator!= (int error);
-
-private:
- // Prevent copying
- ACE_Errno_Guard (const ACE_Errno_Guard &);
- ACE_Errno_Guard &operator= (const ACE_Errno_Guard &);
-
-#if defined (ACE_MT_SAFE)
- ACE_ERRNO_TYPE *errno_ptr_;
-#endif /* ACE_MT_SAFE */
- int error_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// Inlining this class on debug builds with gcc on Solaris can cause
-// deadlocks during static initialization. On non debug builds it
-// causes compilation errors.
-#if defined (ACE_HAS_INLINED_OSCALLS) && \
- (!defined (__GNUG__) || !defined (__sun__))
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_Errno.inl"
-#endif /* ACE_HAS_INLINED_OSCALLS */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_ERRNO_H */
-
diff --git a/dep/include/ace/OS_Errno.inl b/dep/include/ace/OS_Errno.inl
deleted file mode 100644
index 3fac7dfd492..00000000000
--- a/dep/include/ace/OS_Errno.inl
+++ /dev/null
@@ -1,67 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_Errno.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Errno_Guard::ACE_Errno_Guard (ACE_ERRNO_TYPE &errno_ref,
- int error)
- :
-#if defined (ACE_MT_SAFE)
- errno_ptr_ (&errno_ref),
-#endif /* ACE_MT_SAFE */
- error_ (error)
-{
-#if !defined(ACE_MT_SAFE)
- ACE_UNUSED_ARG (errno_ref);
-#endif /* ACE_MT_SAFE */
-}
-
-ACE_INLINE
-ACE_Errno_Guard::ACE_Errno_Guard (ACE_ERRNO_TYPE &errno_ref)
- :
-#if defined (ACE_MT_SAFE)
- errno_ptr_ (&errno_ref),
-#endif /* ACE_MT_SAFE */
- error_ (errno_ref)
-{
-}
-
-ACE_INLINE
-ACE_Errno_Guard::~ACE_Errno_Guard (void)
-{
-#if defined (ACE_MT_SAFE)
- *errno_ptr_ = this->error_;
-#else
- errno = this->error_;
-#endif /* ACE_MT_SAFE */
-}
-
-#if defined (ACE_HAS_WINCE_BROKEN_ERRNO)
-ACE_INLINE int
-ACE_Errno_Guard::operator= (const ACE_ERRNO_TYPE &error)
-{
- return this->error_ = error;
-}
-#endif /* ACE_HAS_WINCE_BROKEN_ERRNO */
-
-ACE_INLINE int
-ACE_Errno_Guard::operator= (int error)
-{
- return this->error_ = error;
-}
-
-ACE_INLINE bool
-ACE_Errno_Guard::operator== (int error)
-{
- return this->error_ == error;
-}
-
-ACE_INLINE bool
-ACE_Errno_Guard::operator!= (int error)
-{
- return this->error_ != error;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_Log_Msg_Attributes.h b/dep/include/ace/OS_Log_Msg_Attributes.h
deleted file mode 100644
index ff6bc1180c2..00000000000
--- a/dep/include/ace/OS_Log_Msg_Attributes.h
+++ /dev/null
@@ -1,91 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_Log_Msg_Attributes.h
- *
- * $Id: OS_Log_Msg_Attributes.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Carlos O'Ryan
- */
-//=============================================================================
-
-#include /**/ "ace/config-all.h"
-
-#ifndef ACE_OS_LOG_MSG_ATTRIBUTES_H
-#define ACE_OS_LOG_MSG_ATTRIBUTES_H
-#include /**/ "ace/pre.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include /**/ "ace/ACE_export.h"
-#include "ace/os_include/os_stdio.h"
-#include "ace/iosfwd.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_OS_Log_Msg_Attributes
- *
- * @brief The attributes required by ACE_Log_Msg.
- *
- * When a new thread is created the TSS resources for the Log_Msg
- * class in the new thread may be inherited by the creator thread.
- * The base_attributes are encapsulated in this class to simplify their
- * manipulation and destruction.
- * @par
- * The contents of the class must be made available to the OS layer,
- * because they are part of the thread descriptor.
- */
-class ACE_Export ACE_OS_Log_Msg_Attributes
-{
-public:
- /// Constructor
- ACE_OS_Log_Msg_Attributes (void);
-
-protected:
- friend class ACE_Log_Msg;
-
- /// Ostream where the new TSS Log_Msg will use.
- ACE_OSTREAM_TYPE *ostream_;
-
- /// Priority_mask to be used in new TSS Log_Msg.
- unsigned long priority_mask_;
-
- /// Are we allowing tracing in this thread?
- int tracing_enabled_;
-
- /// Indicates whether we should restart system calls that are
- /// interrupted.
- int restart_;
-
- /// Depth of the nesting for printing traces.
- int trace_depth_;
-
-# if defined (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS)
- /// Structured exception handling Callbacks, only used under Win32
- ACE_SEH_EXCEPT_HANDLER seh_except_selector_;
- ACE_SEH_EXCEPT_HANDLER seh_except_handler_;
-# endif /* ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS */
-
-private:
- // Prevent copying
- ACE_OS_Log_Msg_Attributes (const ACE_OS_Log_Msg_Attributes &);
- ACE_OS_Log_Msg_Attributes &operator= (const ACE_OS_Log_Msg_Attributes &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_Log_Msg_Attributes.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_LOG_MSG_ATTRIBUTES_H */
-
diff --git a/dep/include/ace/OS_Log_Msg_Attributes.inl b/dep/include/ace/OS_Log_Msg_Attributes.inl
deleted file mode 100644
index 82619a031ab..00000000000
--- a/dep/include/ace/OS_Log_Msg_Attributes.inl
+++ /dev/null
@@ -1,12 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_Log_Msg_Attributes.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_OS_Log_Msg_Attributes::ACE_OS_Log_Msg_Attributes (void)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_Memory.h b/dep/include/ace/OS_Memory.h
deleted file mode 100644
index 60590c02159..00000000000
--- a/dep/include/ace/OS_Memory.h
+++ /dev/null
@@ -1,339 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_Memory.h
- *
- * $Id: OS_Memory.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- */
-//=============================================================================
-
-#ifndef ACE_OS_MEMORY_H
-#define ACE_OS_MEMORY_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/OS_Errno.h"
-#include "ace/Basic_Types.h"
-#include "ace/os_include/os_stddef.h"
-
-// Allow an installation to replace the lowest-level allocation
-// functions without changing the source of ACE.
-//
-// To do this, simple #define ACE_*_FUNC macros in config.h to
-// the names of the site-specific functions, e.g.,
-//
-// #define ACE_MALLOC_FUNC dlmalloc
-// #define ACE_CALLOC_FUNC dlcalloc
-// #define ACE_FREE_FUNC dlfree
-// #define ACE_REALLOC_FUNC dlrealloc
-//
-// For completeness' sake, you should probably put
-// #define ACE_HAS_STRDUP_EMULATION
-// #define ACE_HAS_WCSDUP_EMULATION
-// too, so that you guarantee that strdup() and wcsdup() call your
-// desired mallocator and not the system mallocator.
-//
-#if !defined (ACE_MALLOC_FUNC)
-# define ACE_MALLOC_FUNC ::malloc
-#endif
-#if !defined (ACE_CALLOC_FUNC)
-# define ACE_CALLOC_FUNC ::calloc
-#endif
-#if !defined (ACE_FREE_FUNC)
-# define ACE_FREE_FUNC ::free
-#endif
-#if !defined (ACE_REALLOC_FUNC)
-# define ACE_REALLOC_FUNC ::realloc
-#endif
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_HAS_OLD_MALLOC)
-typedef char * ACE_MALLOC_T;
-#else
-typedef void * ACE_MALLOC_T;
-#endif /* ACE_HAS_OLD_MALLOC */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// ============================================================================
-// ACE_NEW macros
-//
-// A useful abstraction for expressions involving operator new since
-// we can change memory allocation error handling policies (e.g.,
-// depending on whether ANSI/ISO exception handling semantics are
-// being used).
-// ============================================================================
-
-// If new(std::nothrow) is defined then, by definition, new throws exceptions.
-#if defined (ACE_HAS_NEW_NOTHROW)
-# if !defined (ACE_NEW_THROWS_EXCEPTIONS)
-# define ACE_NEW_THROWS_EXCEPTIONS
-# endif
-#endif
-
-// The Windows MFC exception mechanism requires that a caught CException
-// (including the CMemoryException in use here) be freed using its Delete()
-// method. Thus, when MFC is in use and we're catching exceptions as a result
-// of new(), the exception's Delete() method has to be called. No other
-// platform imposes this sort of restriction/requirement. The Windows
-// config stuff (at least for MSVC/MFC) defines a ACE_del_bad_alloc macro
-// that works with its ACE_bad_alloc macro to implement this cleanup
-// requirement. Since no other platform requires this, define it as
-// empty here.
-#if !defined (ACE_del_bad_alloc)
-# define ACE_del_bad_alloc
-#endif
-
-#if defined (ACE_NEW_THROWS_EXCEPTIONS)
-
-// Since new() throws exceptions, we need a way to avoid passing
-// exceptions past the call to new because ACE counts on having a 0
-// return value for a failed allocation. Some compilers offer the
-// new (nothrow) version, which does exactly what we want. Others
-// do not. For those that do not, this sets up what exception is thrown,
-// and then below we'll do a try/catch around the new to catch it and
-// return a 0 pointer instead.
-
-# if defined (__HP_aCC)
- // I know this works for HP aC++... if <stdexcept> is used, it
- // introduces other stuff that breaks things, like <memory>, which
- // screws up auto_ptr.
-# include /**/ <new>
- // _HP_aCC was first defined at aC++ 03.13 on HP-UX 11. Prior to that
- // (03.10 and before) a failed new threw bad_alloc. After that (03.13
- // and above) the exception thrown is dependent on the below settings.
-# if (HPUX_VERS >= 1100)
-# if ((__HP_aCC < 32500 && !defined (RWSTD_NO_NAMESPACE)) || \
- defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB))
-# define ACE_bad_alloc ::std::bad_alloc
-# define ACE_nothrow ::std::nothrow
-# define ACE_nothrow_t ::std::nothrow_t
-# else
-# define ACE_bad_alloc bad_alloc
-# define ACE_nothrow nothrow
-# define ACE_nothrow_t nothrow_t
-# endif /* __HP_aCC */
-# elif ((__HP_aCC < 12500 && !defined (RWSTD_NO_NAMESPACE)) || \
- defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB))
-# define ACE_bad_alloc ::std::bad_alloc
-# define ACE_nothrow ::std::nothrow
-# define ACE_nothrow_t ::std::nothrow_t
-# else
-# define ACE_bad_alloc bad_alloc
-# define ACE_nothrow nothrow
-# define ACE_nothrow_t nothrow_t
-# endif /* HPUX_VERS < 1100 */
-# define ACE_throw_bad_alloc throw ACE_bad_alloc ()
-# elif defined (__SUNPRO_CC)
-# if (__SUNPRO_CC < 0x500) || (__SUNPRO_CC_COMPAT == 4)
-# include /**/ <exception.h>
- // Note: we catch ::xalloc rather than just xalloc because of
- // a name clash with unsafe_ios::xalloc()
-# define ACE_bad_alloc ::xalloc
-# define ACE_throw_bad_alloc throw ACE_bad_alloc ("no more memory")
-# else
-# include /**/ <new>
-# define ACE_bad_alloc ::std::bad_alloc
-# if defined (ACE_HAS_NEW_NOTHROW)
-# if defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
-# define ACE_nothrow ::std::nothrow
-# define ACE_nothrow_t ::std::nothrow_t
-# else
-# define ACE_nothrow nothrow
-# define ACE_nothrow_t nothrow_t
-# endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
-# endif /* ACE_HAS_NEW_NOTHROW */
-# define ACE_throw_bad_alloc throw ACE_bad_alloc ()
-# endif /* __SUNPRO_CC < 0x500 */
-# elif defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
-# include /**/ <new>
-# if !defined (ACE_bad_alloc)
-# define ACE_bad_alloc ::std::bad_alloc
-# endif
-# define ACE_nothrow ::std::nothrow
-# define ACE_nothrow_t ::std::nothrow_t
- // MFC changes the behavior of operator new at all MSVC versions from 6 up.
-# if defined (ACE_HAS_MFC) && (ACE_HAS_MFC == 1)
-# define ACE_throw_bad_alloc AfxThrowMemoryException ()
-# else
-# define ACE_throw_bad_alloc throw ACE_bad_alloc ()
-# endif
-# else
-# include /**/ <new>
-# if !defined (ACE_bad_alloc)
-# define ACE_bad_alloc bad_alloc
-# endif
-# define ACE_nothrow nothrow
-# define ACE_nothrow_t nothrow_t
- // MFC changes the behavior of operator new at all MSVC versions from 6 up.
-# if defined (ACE_HAS_MFC) && (ACE_HAS_MFC == 1)
-# define ACE_throw_bad_alloc AfxThrowMemoryException ()
-# else
-# define ACE_throw_bad_alloc throw ACE_bad_alloc ()
-# endif
-# endif /* __HP_aCC */
-
-# if defined (ACE_HAS_NEW_NOTHROW)
-# define ACE_NEW_RETURN(POINTER,CONSTRUCTOR,RET_VAL) \
- do { POINTER = new (ACE_nothrow) CONSTRUCTOR; \
- if (POINTER == 0) { errno = ENOMEM; return RET_VAL; } \
- } while (0)
-# define ACE_NEW(POINTER,CONSTRUCTOR) \
- do { POINTER = new(ACE_nothrow) CONSTRUCTOR; \
- if (POINTER == 0) { errno = ENOMEM; return; } \
- } while (0)
-# define ACE_NEW_NORETURN(POINTER,CONSTRUCTOR) \
- do { POINTER = new(ACE_nothrow) CONSTRUCTOR; \
- if (POINTER == 0) { errno = ENOMEM; } \
- } while (0)
-
-# else
-
-# define ACE_NEW_RETURN(POINTER,CONSTRUCTOR,RET_VAL) \
- do { try { POINTER = new CONSTRUCTOR; } \
- catch (ACE_bad_alloc) { ACE_del_bad_alloc errno = ENOMEM; POINTER = 0; return RET_VAL; } \
- } while (0)
-
-# define ACE_NEW(POINTER,CONSTRUCTOR) \
- do { try { POINTER = new CONSTRUCTOR; } \
- catch (ACE_bad_alloc) { ACE_del_bad_alloc errno = ENOMEM; POINTER = 0; return; } \
- } while (0)
-
-# define ACE_NEW_NORETURN(POINTER,CONSTRUCTOR) \
- do { try { POINTER = new CONSTRUCTOR; } \
- catch (ACE_bad_alloc) { ACE_del_bad_alloc errno = ENOMEM; POINTER = 0; } \
- } while (0)
-# endif /* ACE_HAS_NEW_NOTHROW */
-
-#else /* ACE_NEW_THROWS_EXCEPTIONS */
-
-# define ACE_NEW_RETURN(POINTER,CONSTRUCTOR,RET_VAL) \
- do { POINTER = new CONSTRUCTOR; \
- if (POINTER == 0) { errno = ENOMEM; return RET_VAL; } \
- } while (0)
-# define ACE_NEW(POINTER,CONSTRUCTOR) \
- do { POINTER = new CONSTRUCTOR; \
- if (POINTER == 0) { errno = ENOMEM; return; } \
- } while (0)
-# define ACE_NEW_NORETURN(POINTER,CONSTRUCTOR) \
- do { POINTER = new CONSTRUCTOR; \
- if (POINTER == 0) { errno = ENOMEM; } \
- } while (0)
-
-# define ACE_throw_bad_alloc \
- void* gcc_will_complain_if_literal_0_is_returned = 0; \
- return gcc_will_complain_if_literal_0_is_returned
-
-#endif /* ACE_NEW_THROWS_EXCEPTIONS */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-//@{
-/**
- * @name Efficiently compute aligned pointers to powers of 2 boundaries.
- */
-
-/**
- * Efficiently align "value" up to "alignment", knowing that all such
- * boundaries are binary powers and that we're using two's complement
- * arithmetic.
- *
- * Since the alignment is a power of two its binary representation is:
- *
- * alignment = 0...010...0
- *
- * hence
- *
- * alignment - 1 = 0...001...1 = T1
- *
- * so the complement is:
- *
- * ~(alignment - 1) = 1...110...0 = T2
- *
- * Notice that there is a multiple of <alignment> in the range
- * [<value>,<value> + T1], also notice that if
- *
- * X = ( <value> + T1 ) & T2
- *
- * then
- *
- * <value> <= X <= <value> + T1
- *
- * because the & operator only changes the last bits, and since X is a
- * multiple of <alignment> (its last bits are zero) we have found the
- * multiple we wanted.
- */
-/// Return the next integer aligned to a required boundary
-/**
- * @param ptr the base pointer
- * @param alignment the required alignment
- */
-#if defined (ACE_OPENVMS) && (!defined (__INITIAL_POINTER_SIZE) || (__INITIAL_POINTER_SIZE < 64))
-inline unsigned int
-ACE_align_binary (unsigned int ptr, unsigned int alignment)
-{
- unsigned int const tmp = alignment - 1;
- return (ptr + tmp) & (~tmp);
-}
-#else
-inline uintptr_t
-ACE_align_binary (uintptr_t ptr, uintptr_t alignment)
-{
- uintptr_t const tmp = alignment - 1;
- return (ptr + tmp) & (~tmp);
-}
-#endif
-
-#if defined (ACE_OPENVMS) && (!defined (__INITIAL_POINTER_SIZE) || (__INITIAL_POINTER_SIZE < 64))
-/// Return the next address aligned to a required boundary
-inline char *
-ACE_ptr_align_binary (char const * ptr, unsigned int alignment)
-{
- return
- reinterpret_cast<char *> (
- ACE_align_binary (reinterpret_cast<unsigned int> (ptr), alignment));
-}
-
-/// Return the next address aligned to a required boundary
-inline char *
-ACE_ptr_align_binary (unsigned char const * ptr, unsigned int alignment)
-{
- return
- ACE_ptr_align_binary (reinterpret_cast<char const *> (ptr), alignment);
-}
-#else
-/// Return the next address aligned to a required boundary
-inline char *
-ACE_ptr_align_binary (char const * ptr, uintptr_t alignment)
-{
- return
- reinterpret_cast<char *> (
- ACE_align_binary (reinterpret_cast<uintptr_t> (ptr), alignment));
-}
-
-/// Return the next address aligned to a required boundary
-inline char *
-ACE_ptr_align_binary (unsigned char const * ptr, uintptr_t alignment)
-{
- return
- ACE_ptr_align_binary (reinterpret_cast<char const *> (ptr), alignment);
-}
-#endif /* ACE_OPENVMS && __INITIAL_POINTER_SIZE < 64 */
-//@}
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include "ace/OS_NS_stdlib.h"
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_MEMORY_H */
-
diff --git a/dep/include/ace/OS_NS_Thread.h b/dep/include/ace/OS_NS_Thread.h
deleted file mode 100644
index 151f0a7c1a1..00000000000
--- a/dep/include/ace/OS_NS_Thread.h
+++ /dev/null
@@ -1,2022 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_Thread.h
- *
- * $Id: OS_NS_Thread.h 81014 2008-03-19 11:41:31Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_THREAD_H
-# define ACE_OS_NS_THREAD_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-# include "ace/Global_Macros.h"
-# include "ace/Basic_Types.h"
-# include "ace/Default_Constants.h"
-# include "ace/os_include/os_pthread.h"
-# include "ace/os_include/os_sched.h"
-# include "ace/Base_Thread_Adapter.h"
-# include "ace/os_include/sys/os_sem.h"
-# include "ace/os_include/os_semaphore.h"
-# include "ace/OS_Memory.h"
-# include "ace/OS_NS_signal.h"
-# include "ace/ACE_export.h"
-# include "ace/Object_Manager_Base.h"
-
-# if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-# endif
-# define ACE_EXPORT_MACRO ACE_Export
-
-# if defined (ACE_HAS_PRIOCNTL)
- // Need to #include thread.h before #defining THR_BOUND, etc.,
- // when building without threads on SunOS 5.x.
-# if defined (sun)
-# include /**/ <thread.h>
-# endif /* sun */
-
- // Need to #include these before #defining USYNC_PROCESS on SunOS 5.x.
-# include /**/ <sys/rtpriocntl.h>
-# include /**/ <sys/tspriocntl.h>
-# endif /* ACE_HAS_PRIOCNTL */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_WIN32)
-typedef DWORD ACE_thread_t;
-typedef HANDLE ACE_hthread_t;
-// Native TSS key type
-typedef DWORD ACE_OS_thread_key_t;
-// Application TSS key type (use this type except in TSS Emulation)
-# if defined (ACE_HAS_TSS_EMULATION)
- typedef u_int ACE_thread_key_t;
-# else /* ! ACE_HAS_TSS_EMULATION */
- typedef ACE_OS_thread_key_t ACE_thread_key_t;
-# endif /* ! ACE_HAS_TSS_EMULATION */
-# endif /* ACE_WIN32 */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if !defined (ACE_HAS_POSIX_SEM) && defined (ACE_USES_FIFO_SEM)
-
-extern "C" {
- typedef struct
- {
- char* name_;
- ACE_HANDLE fd_[2];
- } ACE_sema_t;
-}
-
-#endif /* !ACE_HAS_POSIX_SEM && ACE_USES_FIFO_SEM */
-
-# if defined (ACE_HAS_THREADS)
-
-# if defined (ACE_HAS_STHREADS)
-# include /**/ <synch.h>
-# include /**/ <thread.h>
-# define ACE_SCOPE_PROCESS P_PID
-# define ACE_SCOPE_LWP P_LWPID
-# define ACE_SCOPE_THREAD (ACE_SCOPE_LWP + 1)
-# else
-# define ACE_SCOPE_PROCESS 0
-# define ACE_SCOPE_LWP 1
-# define ACE_SCOPE_THREAD 2
-# endif /* ACE_HAS_STHREADS */
-
-# if !defined (ACE_HAS_PTHREADS)
-# define ACE_SCHED_OTHER 0
-# define ACE_SCHED_FIFO 1
-# define ACE_SCHED_RR 2
-# endif /* ! ACE_HAS_PTHREADS */
-
-# if defined (ACE_HAS_PTHREADS)
-// moved to pthread.h
-# elif defined (ACE_HAS_STHREADS)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Solaris threads, without PTHREADS.
-// Typedefs to help compatibility with Windows NT and Pthreads.
-typedef thread_t ACE_thread_t;
-// Native TSS key type (not for general use)
-typedef thread_key_t ACE_OS_thread_key_t;
-// Application TSS key type (use this type except in TSS Emulation)
-# if defined (ACE_HAS_TSS_EMULATION)
- typedef u_int ACE_thread_key_t;
-# else /* ! ACE_HAS_TSS_EMULATION */
- typedef ACE_OS_thread_key_t ACE_thread_key_t;
-# endif /* ! ACE_HAS_TSS_EMULATION */
-typedef mutex_t ACE_mutex_t;
-# if !defined (ACE_LACKS_RWLOCK_T)
-typedef rwlock_t ACE_rwlock_t;
-# endif /* !ACE_LACKS_RWLOCK_T */
-# if !defined (ACE_HAS_POSIX_SEM) && !defined (ACE_USES_FIFO_SEM)
-typedef sema_t ACE_sema_t;
-# endif /* !ACE_HAS_POSIX_SEM */
-
-typedef cond_t ACE_cond_t;
-struct ACE_Export ACE_condattr_t
-{
- int type;
-};
-struct ACE_Export ACE_mutexattr_t
-{
- int type;
-};
-typedef ACE_thread_t ACE_hthread_t;
-typedef ACE_mutex_t ACE_thread_mutex_t;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# define THR_CANCEL_DISABLE 0
-# define THR_CANCEL_ENABLE 0
-# define THR_CANCEL_DEFERRED 0
-# define THR_CANCEL_ASYNCHRONOUS 0
-# define THR_JOINABLE 0
-# define THR_SCHED_FIFO 0
-# define THR_SCHED_RR 0
-# define THR_SCHED_DEFAULT 0
-# define THR_INHERIT_SCHED 0
-# define THR_SCOPE_PROCESS 0
-
-# elif defined (ACE_VXWORKS)
-# include /**/ <sysLib.h> // for sysClkRateGet()
-# if !defined (__RTP__)
-# include /**/ <taskLib.h>
-# include /**/ <taskHookLib.h>
-# endif
-
-// make sure these are included for VXWORKS.
-// @todo move these to a common place, perhaps the top of the file.
-# include "ace/os_include/os_fcntl.h"
-# include "ace/os_include/os_netdb.h"
-# include "ace/os_include/os_semaphore.h"
-# include "ace/os_include/os_signal.h"
-# include "ace/os_include/os_stdio.h"
-# include "ace/os_include/os_stdlib.h"
-# include "ace/os_include/os_stropts.h"
-# include "ace/os_include/os_unistd.h"
-# include "ace/os_include/arpa/os_inet.h"
-# include "ace/os_include/sys/os_select.h"
-# include "ace/os_include/sys/os_socket.h"
-
-// task options: the other options are either obsolete, internal, or for
-// Fortran or Ada support
-# define VX_UNBREAKABLE 0x0002 /* breakpoints ignored */
-# if !defined (VX_FP_TASK)
-# define VX_FP_TASK 0x0008 /* floating point coprocessor */
-# endif
-# define VX_PRIVATE_ENV 0x0080 /* private environment support */
-# define VX_NO_STACK_FILL 0x0100 /* do not stack fill for
- checkstack () */
-
-# define THR_CANCEL_DISABLE 0
-# define THR_CANCEL_ENABLE 0
-# define THR_CANCEL_DEFERRED 0
-# define THR_CANCEL_ASYNCHRONOUS 0
-# define THR_BOUND 0
-# define THR_NEW_LWP 0
-# define THR_DETACHED 0
-# define THR_SUSPENDED 0
-# define THR_DAEMON 0
-# define THR_JOINABLE 0
-# define THR_SCHED_FIFO 0
-# define THR_SCHED_RR 0
-# define THR_SCHED_DEFAULT 0
-# define THR_INHERIT_SCHED 0
-# define THR_EXPLICIT_SCHED 0
-# define THR_SCHED_IO 0
-# define THR_SCOPE_SYSTEM 0
-# define THR_SCOPE_PROCESS 0
-# define USYNC_THREAD 0
-# define USYNC_PROCESS 1 /* It's all global on VxWorks
- (without MMU option). */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-typedef SEM_ID ACE_mutex_t;
-// Implement ACE_thread_mutex_t with ACE_mutex_t because there's just
-// one process . . .
-typedef ACE_mutex_t ACE_thread_mutex_t;
-# if !defined (ACE_HAS_POSIX_SEM)
-// Use VxWorks semaphores, wrapped ...
-typedef struct
-{
- /// Semaphore handle. This is allocated by VxWorks.
- SEM_ID sema_;
-
- /// Name of the semaphore: always NULL with VxWorks.
- char *name_;
-} ACE_sema_t;
-# endif /* !ACE_HAS_POSIX_SEM */
-typedef int ACE_thread_t;
-typedef int ACE_hthread_t;
-// Key type: the ACE TSS emulation requires the key type be unsigned,
-// for efficiency. (Current POSIX and Solaris TSS implementations also
-// use u_int, so the ACE TSS emulation is compatible with them.)
-// Native TSS key type
-typedef u_int ACE_OS_thread_key_t;
-// Application TSS key type (use this type except in TSS Emulation)
-# if defined (ACE_HAS_TSS_EMULATION)
- typedef u_int ACE_thread_key_t;
-# else /* ! ACE_HAS_TSS_EMULATION */
- typedef ACE_OS_thread_key_t ACE_thread_key_t;
-# endif /* ! ACE_HAS_TSS_EMULATION */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# elif defined (ACE_HAS_WTHREADS)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-typedef CRITICAL_SECTION ACE_thread_mutex_t;
-
-typedef struct
-{
- /// Either USYNC_THREAD or USYNC_PROCESS
- int type_;
- union
- {
- HANDLE proc_mutex_;
- CRITICAL_SECTION thr_mutex_;
- };
-} ACE_mutex_t;
-
-// Wrapper for NT Events.
-typedef HANDLE ACE_event_t;
-
-# if defined (ACE_WIN32)
-//@@ ACE_USES_WINCE_SEMA_SIMULATION is used to debug
-// semaphore simulation on WinNT. It should be
-// changed to ACE_USES_HAS_WINCE at some later point.
-# if !defined (ACE_USES_WINCE_SEMA_SIMULATION)
-typedef HANDLE ACE_sema_t;
-# else
-/**
- * @class ACE_sema_t
- *
- * @brief Semaphore simulation for Windows CE.
- */
-class ACE_Export ACE_sema_t
-{
-public:
- /// Serializes access to @c count_.
- ACE_thread_mutex_t lock_;
-
- /// This event is signaled whenever the count becomes non-zero.
- ACE_event_t count_nonzero_;
-
- /// Current count of the semaphore.
- u_int count_;
-};
-
-# endif /* ACE_USES_WINCE_SEMA_SIMULATION */
-# endif /* defined (ACE_WIN32) */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// These need to be different values, neither of which can be 0...
-# define USYNC_THREAD 1
-# define USYNC_PROCESS 2
-
-# define THR_CANCEL_DISABLE 0
-# define THR_CANCEL_ENABLE 0
-# define THR_CANCEL_DEFERRED 0
-# define THR_CANCEL_ASYNCHRONOUS 0
-# define THR_DETACHED 0x02000000 /* ignore in most places */
-# define THR_BOUND 0 /* ignore in most places */
-# define THR_NEW_LWP 0 /* ignore in most places */
-# define THR_DAEMON 0 /* ignore in most places */
-# define THR_JOINABLE 0 /* ignore in most places */
-# define THR_SUSPENDED CREATE_SUSPENDED
-# define THR_USE_AFX 0x01000000
-# define THR_SCHED_FIFO 0
-# define THR_SCHED_RR 0
-# define THR_SCHED_DEFAULT 0
-# define THR_INHERIT_SCHED 0
-# define THR_EXPLICIT_SCHED 0
-# define THR_SCOPE_PROCESS 0
-# define THR_SCOPE_SYSTEM 0
-# endif /* ACE_HAS_PTHREADS / STHREADS / VXWORKS / WTHREADS **********/
-
-# if defined (ACE_LACKS_COND_T)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_cond_t
- *
- * @brief This structure is used to implement condition variables on
- * platforms that lack it natively, such as VxWorks, and Win32.
- *
- * At the current time, this stuff only works for threads
- * within the same process.
- */
-class ACE_Export ACE_cond_t
-{
-public:
-
- /// Returns the number of waiters.
- long waiters (void) const;
-
-//protected:
- /// Number of waiting threads.
- long waiters_;
-
- /// Serialize access to the waiters count.
- ACE_thread_mutex_t waiters_lock_;
-
- /// Queue up threads waiting for the condition to become signaled.
- ACE_sema_t sema_;
-
-# if defined (ACE_VXWORKS)
- /**
- * A semaphore used by the broadcast/signal thread to wait for all
- * the waiting thread(s) to wake up and be released from the
- * semaphore.
- */
- ACE_sema_t waiters_done_;
-# elif defined (ACE_WIN32)
- /**
- * An auto reset event used by the broadcast/signal thread to wait
- * for the waiting thread(s) to wake up and get a chance at the
- * semaphore.
- */
- HANDLE waiters_done_;
-# else
-# error "Please implement this feature or check your config.h file!"
-# endif /* ACE_VXWORKS */
-
- /// Keeps track of whether we were broadcasting or just signaling.
- size_t was_broadcast_;
-};
-
-struct ACE_Export ACE_condattr_t
-{
- int type;
-};
-
-struct ACE_Export ACE_mutexattr_t
-{
- int type;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# endif /* ACE_LACKS_COND_T */
-
-# if defined (ACE_LACKS_RWLOCK_T) && !defined (ACE_HAS_PTHREADS_UNIX98_EXT)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_rwlock_t
- *
- * @brief This is used to implement readers/writer locks on NT,
- * VxWorks, and POSIX pthreads.
- *
- * At the current time, this stuff only works for threads
- * within the same process.
- */
-struct ACE_Export ACE_rwlock_t
-{
-public:
-//protected:
-
- /// Serialize access to internal state.
- ACE_mutex_t lock_;
-
- /// Reader threads waiting to acquire the lock.
- ACE_cond_t waiting_readers_;
-
- /// Number of waiting readers.
- int num_waiting_readers_;
-
- /// Writer threads waiting to acquire the lock.
- ACE_cond_t waiting_writers_;
-
- /// Number of waiting writers.
- int num_waiting_writers_;
-
- /// Value is -1 if writer has the lock, else this keeps track of the
- /// number of readers holding the lock.
- int ref_count_;
-
- /// Indicate that a reader is trying to upgrade
- int important_writer_;
-
- /// Condition for the upgrading reader
- ACE_cond_t waiting_important_writer_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# elif defined (ACE_HAS_PTHREADS_UNIX98_EXT)
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef pthread_rwlock_t ACE_rwlock_t;
-ACE_END_VERSIONED_NAMESPACE_DECL
-# elif defined (ACE_HAS_STHREADS)
-# include /**/ <synch.h>
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef rwlock_t ACE_rwlock_t;
-ACE_END_VERSIONED_NAMESPACE_DECL
-# endif /* ACE_LACKS_RWLOCK_T */
-
-// Define some default thread priorities on all threaded platforms, if
-// not defined above or in the individual platform config file.
-// ACE_THR_PRI_FIFO_DEF should be used by applications for default
-// real-time thread priority. ACE_THR_PRI_OTHER_DEF should be used
-// for non-real-time priority.
-# if !defined(ACE_THR_PRI_FIFO_DEF)
-# if defined (ACE_WTHREADS)
- // It would be more in spirit to use THREAD_PRIORITY_NORMAL. But,
- // using THREAD_PRIORITY_ABOVE_NORMAL should give preference to the
- // threads in this process, even if the process is not in the
- // REALTIME_PRIORITY_CLASS.
-# define ACE_THR_PRI_FIFO_DEF THREAD_PRIORITY_ABOVE_NORMAL
-# else /* ! ACE_WTHREADS */
-# define ACE_THR_PRI_FIFO_DEF 0
-# endif /* ! ACE_WTHREADS */
-# endif /* ! ACE_THR_PRI_FIFO_DEF */
-
-# if !defined(ACE_THR_PRI_OTHER_DEF)
-# if defined (ACE_WTHREADS)
- // It would be more in spirit to use THREAD_PRIORITY_NORMAL. But,
- // using THREAD_PRIORITY_ABOVE_NORMAL should give preference to the
- // threads in this process, even if the process is not in the
- // REALTIME_PRIORITY_CLASS.
-# define ACE_THR_PRI_OTHER_DEF THREAD_PRIORITY_NORMAL
-# else /* ! ACE_WTHREADS */
-# define ACE_THR_PRI_OTHER_DEF 0
-# endif /* ! ACE_WTHREADS */
-# endif /* ! ACE_THR_PRI_OTHER_DEF */
-
-// Recursive mutex support.
-//
-// There are two parts to this:
-// 1. The mutex type itself. This is based on whether or not the
-// platform supports recursive mutexes natively or they're emulated.
-// 2. Support for using the recursive mutex with a condition variable.
-// When a thread waits on a condition variable, it has to relinquish
-// the lock and wait atomically, then reacquire it after the condition
-// variable is signaled. In non-recursive mutexes, the platform
-// handles this automatically. But in recursive mutexes, especially
-// when emulated, the recursion count needs to be maintained across
-// the wait. Since another thread needs to be able to acquire the
-// lock, it needs to appear free, even if the waiting thread had done
-// multiple acquires. Thus, there's another structure to hold this
-// information, and is used with the recursive_mutex_cond_unlock()
-// and recursive_mutex_cond_relock() methods to maintain the expected
-// state when the wait finishes.
-# if defined (ACE_HAS_RECURSIVE_MUTEXES)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-typedef ACE_thread_mutex_t ACE_recursive_thread_mutex_t;
-# if defined (ACE_WIN32)
-// Windows has recursive mutexes, but doesn't have condition variables,
-// so there's no built-in support for this. Thus, the condition-related
-// unlock/relock is augmented in ACE.
-struct ACE_recursive_mutex_state
-{
- // On Windows the augmented processing is simply unlocking/relocking
- // the recursive locks - the condition handles a single lock ok.
- LONG relock_count_;
-};
-# else
-// No need for special handling; just need a type for method signatures.
-typedef int ACE_recursive_mutex_state;
-# endif /* ACE_WIN32 */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# else
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_recursive_thread_mutex_t
- *
- * @brief Implement a thin C++ wrapper that allows nested acquisition
- * and release of a mutex that occurs in the same thread.
- *
- * This implementation is based on an algorithm sketched by Dave
- * Butenhof <butenhof@zko.dec.com>. Naturally, I take the
- * credit for any mistakes ;-)
- */
-class ACE_recursive_thread_mutex_t
-{
-public:
- /// Guards the state of the nesting level and thread id.
- ACE_thread_mutex_t nesting_mutex_;
-
- /// This condition variable suspends other waiting threads until the
- /// mutex is available.
- ACE_cond_t lock_available_;
-
- /// Current nesting level of the recursion.
- int nesting_level_;
-
- /// Current owner of the lock.
- ACE_thread_t owner_id_;
-};
-
-// Since recursive mutex is emulated, the state saving needs to be handled
-// in ACE as well. These members save those from ACE_recursive_thread_mutex_t.
-struct ACE_recursive_mutex_state
-{
- int nesting_level_;
- ACE_thread_t owner_id_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# endif /* ACE_HAS_RECURSIVE_MUTEXES */
-
-# else /* !ACE_HAS_THREADS, i.e., the OS/platform doesn't support threading. */
-
-// Give these things some reasonable value...
-# define ACE_SCOPE_PROCESS 0
-# define ACE_SCOPE_LWP 1
-# define ACE_SCOPE_THREAD 2
-# define ACE_SCHED_OTHER 0
-# define ACE_SCHED_FIFO 1
-# define ACE_SCHED_RR 2
-# if !defined (THR_CANCEL_DISABLE)
-# define THR_CANCEL_DISABLE 0
-# endif /* ! THR_CANCEL_DISABLE */
-# if !defined (THR_CANCEL_ENABLE)
-# define THR_CANCEL_ENABLE 0
-# endif /* ! THR_CANCEL_ENABLE */
-# if !defined (THR_CANCEL_DEFERRED)
-# define THR_CANCEL_DEFERRED 0
-# endif /* ! THR_CANCEL_DEFERRED */
-# if !defined (THR_CANCEL_ASYNCHRONOUS)
-# define THR_CANCEL_ASYNCHRONOUS 0
-# endif /* ! THR_CANCEL_ASYNCHRONOUS */
-# if !defined (THR_JOINABLE)
-# define THR_JOINABLE 0 /* ignore in most places */
-# endif /* ! THR_JOINABLE */
-# if !defined (THR_DETACHED)
-# define THR_DETACHED 0 /* ignore in most places */
-# endif /* ! THR_DETACHED */
-# if !defined (THR_DAEMON)
-# define THR_DAEMON 0 /* ignore in most places */
-# endif /* ! THR_DAEMON */
-# if !defined (THR_BOUND)
-# define THR_BOUND 0 /* ignore in most places */
-# endif /* ! THR_BOUND */
-# if !defined (THR_NEW_LWP)
-# define THR_NEW_LWP 0 /* ignore in most places */
-# endif /* ! THR_NEW_LWP */
-# if !defined (THR_SUSPENDED)
-# define THR_SUSPENDED 0 /* ignore in most places */
-# endif /* ! THR_SUSPENDED */
-# if !defined (THR_SCHED_FIFO)
-# define THR_SCHED_FIFO 0
-# endif /* ! THR_SCHED_FIFO */
-# if !defined (THR_SCHED_RR)
-# define THR_SCHED_RR 0
-# endif /* ! THR_SCHED_RR */
-# if !defined (THR_SCHED_DEFAULT)
-# define THR_SCHED_DEFAULT 0
-# endif /* ! THR_SCHED_DEFAULT */
-# if !defined (THR_INHERIT_SCHED)
-# define THR_INHERIT_SCHED 0
-# endif /* ! THR_INHERIT_SCHED */
-# if !defined (USYNC_THREAD)
-# define USYNC_THREAD 0
-# endif /* ! USYNC_THREAD */
-# if !defined (USYNC_PROCESS)
-# define USYNC_PROCESS 0
-# endif /* ! USYNC_PROCESS */
-# if !defined (THR_SCOPE_PROCESS)
-# define THR_SCOPE_PROCESS 0
-# endif /* ! THR_SCOPE_PROCESS */
-# if !defined (THR_SCOPE_SYSTEM)
-# define THR_SCOPE_SYSTEM 0
-# endif /* ! THR_SCOPE_SYSTEM */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// These are dummies needed for class OS.h
-typedef int ACE_cond_t;
-struct ACE_Export ACE_condattr_t
-{
- int type;
-};
-struct ACE_Export ACE_mutexattr_t
-{
- int type;
-};
-typedef int ACE_mutex_t;
-typedef int ACE_thread_mutex_t;
-typedef int ACE_recursive_thread_mutex_t;
-typedef int ACE_recursive_mutex_state;
-# if !defined (ACE_HAS_POSIX_SEM) && !defined (ACE_USES_FIFO_SEM)
-typedef int ACE_sema_t;
-# endif /* !ACE_HAS_POSIX_SEM && !ACE_USES_FIFO_SEM */
-typedef int ACE_rwlock_t;
-typedef int ACE_thread_t;
-typedef int ACE_hthread_t;
-// Native TSS key type
-typedef unsigned int ACE_OS_thread_key_t;
-// Application TSS key type (use this type except in TSS Emulation)
-# if defined (ACE_HAS_TSS_EMULATION)
- typedef u_int ACE_thread_key_t;
-# else /* ! ACE_HAS_TSS_EMULATION */
- typedef ACE_OS_thread_key_t ACE_thread_key_t;
-# endif /* ! ACE_HAS_TSS_EMULATION */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// Ensure that ACE_THR_PRI_FIFO_DEF and ACE_THR_PRI_OTHER_DEF are
-// defined on non-threaded platforms, to support application source
-// code compatibility. ACE_THR_PRI_FIFO_DEF should be used by
-// applications for default real-time thread priority.
-// ACE_THR_PRI_OTHER_DEF should be used for non-real-time priority.
-# if !defined(ACE_THR_PRI_FIFO_DEF)
-# define ACE_THR_PRI_FIFO_DEF 0
-# endif /* ! ACE_THR_PRI_FIFO_DEF */
-# if !defined(ACE_THR_PRI_OTHER_DEF)
-# define ACE_THR_PRI_OTHER_DEF 0
-# endif /* ! ACE_THR_PRI_OTHER_DEF */
-
-# endif /* ACE_HAS_THREADS ***********************************************/
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Thread_ID
- *
- * @brief Defines a platform-independent thread ID class. Note that
- * this class should be defined within the scope of a thread, rather
- * than at global scope!
- */
-class ACE_Export ACE_Thread_ID
-{
-public:
- /// Initialize the object using the thread id and thread handle
- /// passed as parameters.
- ACE_Thread_ID (ACE_thread_t thr_id,
- ACE_hthread_t thr_handle);
-
- /// Initialize the object using calls to ACE_OS::thr_self().
- ACE_Thread_ID (void);
-
- /// Copy constructor.
- ACE_Thread_ID (const ACE_Thread_ID &rhs);
-
- /// Get the thread id.
- ACE_thread_t id (void) const;
-
- /// Set the thread id.
- void id (ACE_thread_t);
-
- /// Get the thread handle.
- ACE_hthread_t handle (void) const;
-
- /// Set the thread handle.
- void handle (ACE_hthread_t);
-
- // Create a string representation of the thread id.
- void to_string (char *thr_string) const;
-
- /// Equality operator.
- bool operator== (const ACE_Thread_ID &) const;
-
- /// Inequality operator.
- bool operator!= (const ACE_Thread_ID &) const;
-
-private:
- /// Identify the thread.
- ACE_thread_t thread_id_;
-
- /// Handle to the thread (typically used to "wait" on Win32).
- ACE_hthread_t thread_handle_;
-};
-
-// = The ACE_Sched_Priority type should be used for platform-
-// independent thread and process priorities, by convention.
-// int should be used for OS-specific priorities.
-typedef int ACE_Sched_Priority;
-
-# if !defined (ACE_DEFAULT_SYNCH_TYPE)
-# if defined (ACE_VXWORKS)
- // Types include these options: SEM_Q_PRIORITY, SEM_Q_FIFO,
- // SEM_DELETE_SAFE, and SEM_INVERSION_SAFE. SEM_Q_FIFO is
- // used as the default because that is VxWorks' default.
-# define ACE_DEFAULT_SYNCH_TYPE SEM_Q_FIFO
-# else
-# define ACE_DEFAULT_SYNCH_TYPE USYNC_THREAD
-# endif /* ACE_VXWORKS */
-#endif /* ! ACE_DEFAULT_SYNCH_TYPE */
-
-// forward declaration
-class ACE_Sched_Params;
-class ACE_Time_Value;
-
-#if defined (ACE_WIN32)
-typedef int ACE_idtype_t;
-typedef DWORD ACE_id_t;
-typedef int ACE_pri_t;
-# define ACE_SELF (0)
-#else /* !defined (ACE_WIN32) */
-# if defined (ACE_HAS_IDTYPE_T)
- typedef idtype_t ACE_idtype_t;
-# else
- typedef int ACE_idtype_t;
-# endif /* ACE_HAS_IDTYPE_T */
-# if defined (ACE_HAS_STHREADS) || defined (DIGITAL_UNIX)
-# if defined (ACE_LACKS_PRI_T)
- typedef int pri_t;
-# endif /* ACE_LACKS_PRI_T */
- typedef id_t ACE_id_t;
-# define ACE_SELF P_MYID
- typedef pri_t ACE_pri_t;
-# else /* ! ACE_HAS_STHREADS && ! DIGITAL_UNIX */
- typedef long ACE_id_t;
-# define ACE_SELF (-1)
- typedef short ACE_pri_t;
-# endif /* ! ACE_HAS_STHREADS && ! DIGITAL_UNIX */
-#endif /* !defined (ACE_WIN32) */
-
-# if defined (ACE_HAS_TSS_EMULATION)
- // Allow config.h to set the default number of thread keys.
-# if !defined (ACE_DEFAULT_THREAD_KEYS)
-# define ACE_DEFAULT_THREAD_KEYS 64
-# endif /* ! ACE_DEFAULT_THREAD_KEYS */
-
-// forward declaration
-class ACE_TSS_Keys;
-
-/**
- * @class ACE_TSS_Emulation
- *
- * @brief Thread-specific storage emulation.
- *
- * This provides a thread-specific storage implementation.
- * It is intended for use on platforms that don't have a
- * native TSS, or have a TSS with limitations such as the
- * number of keys or lack of support for removing keys.
- */
-class ACE_Export ACE_TSS_Emulation
-{
-public:
- typedef void (*ACE_TSS_DESTRUCTOR)(void *value) /* throw () */;
-
- /// Maximum number of TSS keys allowed over the life of the program.
- enum { ACE_TSS_THREAD_KEYS_MAX = ACE_DEFAULT_THREAD_KEYS };
-
- /// Returns the total number of keys allocated so far.
- static u_int total_keys ();
-
- /// Sets the argument to the next available key. Returns 0 on success,
- /// -1 if no keys are available.
- static int next_key (ACE_thread_key_t &key);
-
- /// Release a key that was used. This way the key can be given out in a
- /// new request. Returns 0 on success, 1 if the key was not reserved.
- static int release_key (ACE_thread_key_t key);
-
- /// Check a key for validity.
- static int is_key (ACE_thread_key_t key);
-
- /// Returns the exit hook associated with the key. Does _not_ check
- /// for a valid key.
- static ACE_TSS_DESTRUCTOR tss_destructor (const ACE_thread_key_t key);
-
- /// Associates the TSS destructor with the key. Does _not_ check
- /// for a valid key.
- static void tss_destructor (const ACE_thread_key_t key,
- ACE_TSS_DESTRUCTOR destructor);
-
- /// Accesses the object referenced by key in the current thread's TSS array.
- /// Does _not_ check for a valid key.
- static void *&ts_object (const ACE_thread_key_t key);
-
- /**
- * Setup an array to be used for local TSS. Returns the array
- * address on success. Returns 0 if local TSS had already been
- * setup for this thread. There is no corresponding tss_close ()
- * because it is not needed.
- * @note tss_open () is called by ACE for threads that it spawns.
- * If your application spawns threads without using ACE, and it uses
- * ACE's TSS emulation, each of those threads should call tss_open
- * (). See the ace_thread_adapter () implementation for an example.
- */
- static void *tss_open (void *ts_storage[ACE_TSS_THREAD_KEYS_MAX]);
-
- /// Shutdown TSS emulation. For use only by ACE_OS::cleanup_tss ().
- static void tss_close ();
-
-private:
- // Global TSS structures.
- /// Contains the possible value of the next key to be allocated. Which key
- /// is actually allocated is based on the tss_keys_used
- static u_int total_keys_;
-
- /// Array of thread exit hooks (TSS destructors) that are called for each
- /// key (that has one) when the thread exits.
- static ACE_TSS_DESTRUCTOR tss_destructor_ [ACE_TSS_THREAD_KEYS_MAX];
-
- /// TSS_Keys instance to administrate whether a specific key is in used
- /// or not.
- /// or not.
- // Static construction in VxWorks 5.4 and later is slightly broken.
- // If the static object is more complex than an integral type, static
- // construction will occur twice. The tss_keys_used_ object is
- // statically constructed and then modified by ACE_Log_Msg::instance()
- // when two keys are created and TSS data is stored. However, at
- // the end of static construction the tss_keys_used_ object is again
- // initialized and therefore it will appear to next_key() that no
- // TSS keys have been handed out. That is all true unless the
- // tss_keys_used object is a static pointer instead of a static object.
- static ACE_TSS_Keys* tss_keys_used_;
-
-# if defined (ACE_HAS_THREAD_SPECIFIC_STORAGE)
- /// Location of current thread's TSS array.
- static void **tss_base (void* ts_storage[] = 0, u_int *ts_created = 0);
-# else /* ! ACE_HAS_THREAD_SPECIFIC_STORAGE */
- /// Location of current thread's TSS array.
- static void **&tss_base ();
-# endif /* ! ACE_HAS_THREAD_SPECIFIC_STORAGE */
-
-# if defined (ACE_HAS_THREAD_SPECIFIC_STORAGE)
- // Rely on native thread specific storage for the implementation,
- // but just use one key.
- static ACE_OS_thread_key_t native_tss_key_;
-
- // Used to indicate if native tss key has been allocated
- static bool key_created_;
-# endif /* ACE_HAS_THREAD_SPECIFIC_STORAGE */
-};
-# endif /* ACE_HAS_TSS_EMULATION */
-
-// moved ACE_TSS_Ref, ACE_TSS_Info, and ACE_TSS_Keys class
-// declarations from OS.cpp so they are visible to the single
-// file of template instantiations.
-# if defined (ACE_WIN32) || defined (ACE_HAS_TSS_EMULATION)
-/**
- * @class ACE_TSS_Ref
- *
- * @brief "Reference count" for thread-specific storage keys.
- *
- * Since the <ACE_Unbounded_Stack> doesn't allow duplicates, the
- * "reference count" is the identify of the thread_id.
- */
-class ACE_TSS_Ref
-{
-public:
- /// Constructor
- ACE_TSS_Ref (ACE_thread_t id);
-
- /// Default constructor
- ACE_TSS_Ref (void);
-
- /// Check for equality.
- bool operator== (const ACE_TSS_Ref &) const;
-
- /// Check for inequality.
- bool operator!= (const ACE_TSS_Ref &) const;
-
-// private:
-
- /// ID of thread using a specific key.
- ACE_thread_t tid_;
-};
-
-/**
- * @class ACE_TSS_Info
- *
- * @brief Thread Specific Key management.
- *
- * This class maps a key to a "destructor."
- */
-class ACE_TSS_Info
-{
-public:
- /// Declare pointer to function to destroy tss object.
- typedef void (*Destructor)(void *);
-
- /// Constructor
- ACE_TSS_Info (ACE_thread_key_t key,
- Destructor dest = 0);
-
- /// Default constructor
- ACE_TSS_Info (void);
-
- /// Returns 1 if the key is in use, 0 if not.
- int key_in_use (void) const { return thread_count_ != -1; }
-
- /// Mark the key as being in use if the flag is non-zero, or
- /// not in use if the flag is 0.
- void key_in_use (int flag) { thread_count_ = flag == 0 ? -1 : 1; }
-
- /// Check for equality.
- bool operator== (const ACE_TSS_Info &) const;
-
- /// Check for inequality.
- bool operator!= (const ACE_TSS_Info &) const;
-
- /// Dump the state.
- void dump (void);
-
-private:
- /// Key to the thread-specific storage item.
- ACE_thread_key_t key_;
-
- /// "Destructor" that gets called when the item is finally released.
- Destructor destructor_;
-
- /// Count of threads that are using this key. Contains -1 when the
- /// key is not in use.
- int thread_count_;
-
- friend class ACE_TSS_Cleanup;
-};
-
-/**
- * @class ACE_TSS_Keys
- *
- * @brief Collection of in-use flags for a thread's TSS keys.
- * For internal use only by ACE_TSS_Cleanup; it is public because
- * some compilers can't use nested classes for template instantiation
- * parameters.
- *
- * Wrapper around array of whether each key is in use. A simple
- * typedef doesn't work with Sun C++ 4.2.
- */
-class ACE_TSS_Keys
-{
-public:
- /// Default constructor, to initialize all bits to zero (unused).
- ACE_TSS_Keys (void);
-
- /// Mark the specified key as being in use, if it was not already so marked.
- /// Returns 1 if the had already been marked, 0 if not.
- int test_and_set (const ACE_thread_key_t key);
-
- /// Mark the specified key as not being in use, if it was not already so
- /// cleared. Returns 1 if the key had already been cleared, 0 if not.
- int test_and_clear (const ACE_thread_key_t key);
-
- /// Return whether the specific key is marked as in use.
- /// Returns 1 if the key is been marked, 0 if not.
- int is_set (const ACE_thread_key_t key) const;
-
-private:
- /// For a given key, find the word and bit number that represent it.
- static void find (const u_int key, u_int &word, u_int &bit);
-
- enum
- {
-# if ACE_SIZEOF_LONG == 8
- ACE_BITS_PER_WORD = 64,
-# elif ACE_SIZEOF_LONG == 4
- ACE_BITS_PER_WORD = 32,
-# else
-# error ACE_TSS_Keys only supports 32 or 64 bit longs.
-# endif /* ACE_SIZEOF_LONG == 8 */
- ACE_WORDS = (ACE_DEFAULT_THREAD_KEYS - 1) / ACE_BITS_PER_WORD + 1
- };
-
- /// Bit flag collection. A bit value of 1 indicates that the key is in
- /// use by this thread.
- u_long key_bit_words_[ACE_WORDS];
-};
-
-# endif /* defined (ACE_WIN32) || defined (ACE_HAS_TSS_EMULATION) */
-
-// Support non-scalar thread keys, such as with some POSIX
-// implementations, e.g., MVS.
-# if defined (ACE_HAS_NONSCALAR_THREAD_KEY_T)
-# define ACE_KEY_INDEX(OBJ,KEY) \
- u_int OBJ; \
- ACE_OS::memcpy (&OBJ, &KEY, sizeof (u_int))
-# else
-# define ACE_KEY_INDEX(OBJ,KEY) u_int OBJ = KEY
-# endif /* ACE_HAS_NONSCALAR_THREAD_KEY_T */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if (defined (ACE_HAS_VERSIONED_NAMESPACE) && ACE_HAS_VERSIONED_NAMESPACE == 1)
-# define ACE_MUTEX_LOCK_CLEANUP_ADAPTER_NAME ACE_PREPROC_CONCATENATE(ACE_VERSIONED_NAMESPACE_NAME, _ace_mutex_lock_cleanup_adapter)
-#endif /* ACE_HAS_VERSIONED_NAMESPACE == 1 */
-
-# if defined (ACE_HAS_THR_C_FUNC)
-// This is necessary to work around nasty problems with MVS C++.
-extern "C" ACE_Export void ACE_MUTEX_LOCK_CLEANUP_ADAPTER_NAME (void *args);
-# define ACE_PTHREAD_CLEANUP_PUSH(A) pthread_cleanup_push (ACE_MUTEX_LOCK_CLEANUP_ADAPTER_NAME, (void *) A);
-# define ACE_PTHREAD_CLEANUP_POP(A) pthread_cleanup_pop(A)
-# elif defined (ACE_HAS_PTHREADS) && !defined (ACE_LACKS_PTHREAD_CLEANUP)
-// Though we are defining a extern "C" function to match the prototype of
-// pthread_cleanup_push, it is undone by the Solaris header file
-// /usr/include/pthread.h. So this macro generates a warning under Solaris
-// with SunCC. This is a bug in the Solaris header file.
-extern "C" ACE_Export void ACE_MUTEX_LOCK_CLEANUP_ADAPTER_NAME (void *args);
-# define ACE_PTHREAD_CLEANUP_PUSH(A) pthread_cleanup_push (ACE_MUTEX_LOCK_CLEANUP_ADAPTER_NAME, (void *) A);
-# define ACE_PTHREAD_CLEANUP_POP(A) pthread_cleanup_pop(A)
-# else
-# define ACE_PTHREAD_CLEANUP_PUSH(A)
-# define ACE_PTHREAD_CLEANUP_POP(A)
-# endif /* ACE_HAS_THR_C_FUNC */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-# if !defined (ACE_WIN32)
-// forward decl's
-class ACE_event_t;
-# endif
-
-class ACE_Base_Thread_Adapter;
-
-namespace ACE_OS {
- //@{ @name A set of wrappers for threads
-
- /// This is necessary to deal with POSIX pthreads and their use of
- /// structures for thread ids.
- extern ACE_Export ACE_thread_t NULL_thread;
-
- /// This is necessary to deal with POSIX pthreads and their use of
- /// structures for thread handles.
- extern ACE_Export ACE_hthread_t NULL_hthread;
-
- /// This is necessary to deal with POSIX pthreads and their use of
- /// structures for TSS keys.
- extern ACE_Export ACE_thread_key_t NULL_key;
- //@}
-
- /**
- * Call TSS destructors for the current thread. If the current
- * thread is the main thread, then the argument must be 1.
- * For private use of ACE_Object_Manager and ACE_Thread_Adapter only.
- */
- extern ACE_Export
- void cleanup_tss (const u_int main_thread);
-
- //@{ @name A set of wrappers for condition variables.
-#if defined (ACE_LACKS_COND_T)
- extern ACE_Export
-#else
- ACE_NAMESPACE_INLINE_FUNCTION
-#endif /* ACE_LACKS_COND_T */
- int condattr_init (ACE_condattr_t &attributes,
- int type = ACE_DEFAULT_SYNCH_TYPE);
-
-#if defined (ACE_LACKS_COND_T)
- extern ACE_Export
-#else
- ACE_NAMESPACE_INLINE_FUNCTION
-#endif /* ACE_LACKS_COND_T */
- int condattr_destroy (ACE_condattr_t &attributes);
-
-#if defined (ACE_LACKS_COND_T)
- extern ACE_Export
-#else
- ACE_NAMESPACE_INLINE_FUNCTION
-#endif /* ACE_LACKS_COND_T */
- int cond_broadcast (ACE_cond_t *cv);
-
-#if defined (ACE_LACKS_COND_T)
- extern ACE_Export
-#else
- ACE_NAMESPACE_INLINE_FUNCTION
-#endif /* ACE_LACKS_COND_T */
- int cond_destroy (ACE_cond_t *cv);
-
- extern ACE_Export
- int cond_init (ACE_cond_t *cv,
- short type = ACE_DEFAULT_SYNCH_TYPE,
- const char *name = 0,
- void *arg = 0);
-
-#if defined (ACE_LACKS_COND_T)
- extern ACE_Export
-#else
- ACE_NAMESPACE_INLINE_FUNCTION
-#endif /* ACE_LACKS_COND_T */
- int cond_init (ACE_cond_t *cv,
- ACE_condattr_t &attributes,
- const char *name = 0,
- void *arg = 0);
-
-# if defined (ACE_HAS_WCHAR)
-# if defined (ACE_LACKS_COND_T)
- extern ACE_Export
-# else
- ACE_NAMESPACE_INLINE_FUNCTION
-# endif /* ACE_LACKS_COND_T */
- int cond_init (ACE_cond_t *cv,
- short type,
- const wchar_t *name,
- void *arg = 0);
-
-# if defined (ACE_LACKS_COND_T)
- extern ACE_Export
-# else
- ACE_NAMESPACE_INLINE_FUNCTION
-# endif /* ACE_LACKS_COND_T */
- int cond_init (ACE_cond_t *cv,
- ACE_condattr_t &attributes,
- const wchar_t *name,
- void *arg = 0);
-# endif /* ACE_HAS_WCHAR */
-
-#if defined (ACE_LACKS_COND_T)
- extern ACE_Export
-#else
- ACE_NAMESPACE_INLINE_FUNCTION
-#endif /* ACE_LACKS_COND_T */
- int cond_signal (ACE_cond_t *cv);
-
-#if defined (ACE_LACKS_COND_T)
- extern ACE_Export
-#else
- ACE_NAMESPACE_INLINE_FUNCTION
-#endif /* ACE_LACKS_COND_T */
- int cond_timedwait (ACE_cond_t *cv,
- ACE_mutex_t *m,
- ACE_Time_Value *);
-
-#if defined (ACE_LACKS_COND_T)
- extern ACE_Export
-#else
- ACE_NAMESPACE_INLINE_FUNCTION
-#endif /* ACE_LACKS_COND_T */
- int cond_wait (ACE_cond_t *cv,
- ACE_mutex_t *m);
-
-# if defined (ACE_WIN32) && defined (ACE_HAS_WTHREADS)
-# if defined (ACE_LACKS_COND_T)
- extern ACE_Export
-# else
- ACE_NAMESPACE_INLINE_FUNCTION
-# endif /* ACE_LACKS_COND_T */
- int cond_timedwait (ACE_cond_t *cv,
- ACE_thread_mutex_t *m,
- ACE_Time_Value *);
-
-# if defined (ACE_LACKS_COND_T)
- extern ACE_Export
-# else
- ACE_NAMESPACE_INLINE_FUNCTION
-# endif /* ACE_LACKS_COND_T */
- int cond_wait (ACE_cond_t *cv,
- ACE_thread_mutex_t *m);
-# endif /* ACE_WIN32 && ACE_HAS_WTHREADS */
-
- //@{ @name A set of wrappers for auto-reset and manual events.
-
- extern ACE_Export
- int event_destroy (ACE_event_t *event);
-
- extern ACE_Export
- int event_init (ACE_event_t *event,
- int manual_reset = 0,
- int initial_state = 0,
- int type = ACE_DEFAULT_SYNCH_TYPE,
- const char *name = 0,
- void *arg = 0,
- LPSECURITY_ATTRIBUTES sa = 0);
-
-# if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- int event_init (ACE_event_t *event,
- int manual_reset,
- int initial_state,
- int type,
- const wchar_t *name,
- void *arg = 0,
- LPSECURITY_ATTRIBUTES sa = 0);
-# endif /* ACE_HAS_WCHAR */
-
- extern ACE_Export
- int event_pulse (ACE_event_t *event);
-
- extern ACE_Export
- int event_reset (ACE_event_t *event);
-
- extern ACE_Export
- int event_signal (ACE_event_t *event);
-
- extern ACE_Export
- int event_timedwait (ACE_event_t *event,
- ACE_Time_Value *timeout,
- int use_absolute_time = 1);
-
- extern ACE_Export
- int event_wait (ACE_event_t *event);
-
- //@}
-
- extern ACE_Export
- int lwp_getparams (ACE_Sched_Params &);
-
- extern ACE_Export
- int lwp_setparams (const ACE_Sched_Params &);
-
- //@{ @name A set of wrappers for mutex locks.
-
- extern ACE_Export
- int mutex_destroy (ACE_mutex_t *m);
-
- extern ACE_Export
- int mutex_init (ACE_mutex_t *m,
- int lock_scope = ACE_DEFAULT_SYNCH_TYPE,
- const char *name = 0,
- ACE_mutexattr_t *arg = 0,
- LPSECURITY_ATTRIBUTES sa = 0,
- int lock_type = 0);
-
-#if defined (ACE_HAS_WCHAR)
- extern ACE_Export
- int mutex_init (ACE_mutex_t *m,
- int lock_scope,
- const wchar_t *name,
- ACE_mutexattr_t *arg = 0,
- LPSECURITY_ATTRIBUTES sa = 0,
- int lock_type = 0);
-#endif /* ACE_HAS_WCHAR */
-
- /// Win32 note: Abandoned mutexes are not treated differently. 0 is
- /// returned since the calling thread does get the ownership.
- extern ACE_Export
- int mutex_lock (ACE_mutex_t *m);
-
- /// This method is only implemented for Win32. For abandoned
- /// mutexes, @a abandoned is set to 1 and 0 is returned.
- extern ACE_Export
- int mutex_lock (ACE_mutex_t *m,
- int &abandoned);
-
- /**
- * This method attempts to acquire a lock, but gives up if the lock
- * has not been acquired by the given time. If the lock is not
- * acquired within the given amount of time, then this method
- * returns -1 with an @c ETIME errno on platforms that actually
- * support timed mutexes. The timeout should be an absolute time.
- * Note that the mutex should not be a recursive one, i.e., it
- * should only be a standard mutex or an error checking mutex since
- * some implementations of this method don't support recursive
- * mutexes. If you want to use a recursive mutex see the methods
- * below.
- */
- extern ACE_Export
- int mutex_lock (ACE_mutex_t *m,
- const ACE_Time_Value &timeout);
-
- /**
- * If <timeout> == 0, calls <ACE_OS::mutex_lock(m)>. Otherwise,
- * this method attempts to acquire a lock, but gives up if the lock
- * has not been acquired by the given time, in which case it returns
- * -1 with an @c ETIME errno on platforms that actually support timed
- * mutexes. The timeout should be an absolute time. Note that the
- * mutex should not be a recursive one, i.e., it should only be a
- * standard mutex or an error checking mutex since some
- * implementations of this method don't support recursive mutexes.
- * If you want to use a recursive mutex see the methods below.
- */
- ACE_NAMESPACE_INLINE_FUNCTION
- int mutex_lock (ACE_mutex_t *m,
- const ACE_Time_Value *timeout);
-
- /// Handle asynchronous thread cancellation cleanup.
- extern ACE_Export
- void mutex_lock_cleanup (void *mutex);
-
- /// Win32 note: Abandoned mutexes are not treated differently. 0 is
- /// returned since the calling thread does get the ownership.
- extern ACE_Export
- int mutex_trylock (ACE_mutex_t *m);
-
- /// This method is only implemented for Win32. For abandoned
- /// mutexes, <abandoned> is set to 1 and 0 is returned.
- extern ACE_Export
- int mutex_trylock (ACE_mutex_t *m,
- int &abandoned);
-
- extern ACE_Export
- int mutex_unlock (ACE_mutex_t *m);
-
- //@}
-
- /// Low-level interface to <priocntl>(2).
- /**
- * Can't call the following priocntl, because that's a macro on
- * Solaris.
- */
- ACE_NAMESPACE_INLINE_FUNCTION
- long priority_control (ACE_idtype_t, ACE_id_t, int, void *);
-
- //@{ @name A set of wrappers for recursive mutex locks.
-
- // These two methods are primarily in support of
- // ACE_Condition<ACE_Recursive_Thread_Mutex> and should probably not
- // be called outside that context.
- ACE_NAMESPACE_INLINE_FUNCTION
- int recursive_mutex_cond_unlock (ACE_recursive_thread_mutex_t *m,
- ACE_recursive_mutex_state &state);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void recursive_mutex_cond_relock (ACE_recursive_thread_mutex_t *m,
- ACE_recursive_mutex_state &state);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int recursive_mutex_destroy (ACE_recursive_thread_mutex_t *m);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int recursive_mutex_init (ACE_recursive_thread_mutex_t *m,
- const ACE_TCHAR *name = 0,
- ACE_mutexattr_t *arg = 0,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int recursive_mutex_lock (ACE_recursive_thread_mutex_t *m);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int recursive_mutex_lock (ACE_recursive_thread_mutex_t *m,
- const ACE_Time_Value &timeout);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int recursive_mutex_lock (ACE_recursive_thread_mutex_t *m,
- const ACE_Time_Value *timeout);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int recursive_mutex_trylock (ACE_recursive_thread_mutex_t *m);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int recursive_mutex_unlock (ACE_recursive_thread_mutex_t *m);
-
- //@}
-
- //@{ @name A set of wrappers for readers/writer locks.
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int rw_rdlock (ACE_rwlock_t *rw);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int rw_tryrdlock (ACE_rwlock_t *rw);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int rw_trywrlock (ACE_rwlock_t *rw);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int rw_trywrlock_upgrade (ACE_rwlock_t *rw);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int rw_unlock (ACE_rwlock_t *rw);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int rw_wrlock (ACE_rwlock_t *rw);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int rwlock_destroy (ACE_rwlock_t *rw);
-
- extern ACE_Export
- int rwlock_init (ACE_rwlock_t *rw,
- int type = ACE_DEFAULT_SYNCH_TYPE,
- const ACE_TCHAR *name = 0,
- void *arg = 0);
-
- //@}
-
- //@{ @name Thread scheduler interface.
- /// Set scheduling parameters. An id of ACE_SELF indicates, e.g.,
- /// set the parameters on the calling thread.
- extern ACE_Export
- int sched_params (const ACE_Sched_Params &, ACE_id_t id = ACE_SELF);
- //@}
-
- /// Find the schedling class ID that corresponds to the class name.
- extern ACE_Export
- int scheduling_class (const char *class_name, ACE_id_t &);
-
- //@{ @name A set of wrappers for semaphores.
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sema_destroy (ACE_sema_t *s);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sema_init (ACE_sema_t *s,
- u_int count,
- int type = ACE_DEFAULT_SYNCH_TYPE,
- const char *name = 0,
- void *arg = 0,
- int max = 0x7fffffff,
- LPSECURITY_ATTRIBUTES sa = 0);
-
-# if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- int sema_init (ACE_sema_t *s,
- u_int count,
- int type,
- const wchar_t *name,
- void *arg = 0,
- int max = 0x7fffffff,
- LPSECURITY_ATTRIBUTES sa = 0);
-# endif /* ACE_HAS_WCHAR */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sema_post (ACE_sema_t *s);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sema_post (ACE_sema_t *s,
- u_int release_count);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sema_trywait (ACE_sema_t *s);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sema_wait (ACE_sema_t *s);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sema_wait (ACE_sema_t *s,
- ACE_Time_Value &tv);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sema_wait (ACE_sema_t *s,
- ACE_Time_Value *tv);
- //@}
-
- //@{ @name A set of wrappers for System V semaphores.
- ACE_NAMESPACE_INLINE_FUNCTION
- int semctl (int int_id,
- int semnum,
- int cmd,
- semun);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int semget (key_t key,
- int nsems,
- int flags);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int semop (int int_id,
- struct sembuf *sops,
- size_t nsops);
- //@}
-
- /// Friendly interface to <priocntl>(2).
- extern ACE_Export
- int set_scheduling_params (const ACE_Sched_Params &,
- ACE_id_t id = ACE_SELF);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sigtimedwait (const sigset_t *set,
- siginfo_t *info,
- const ACE_Time_Value *timeout);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sigwait (sigset_t *set,
- int *sig = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sigwaitinfo (const sigset_t *set,
- siginfo_t *info);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thr_cancel (ACE_thread_t t_id);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thr_cmp (ACE_hthread_t t1,
- ACE_hthread_t t2);
-
- // These are non-portable since they use ACE_thread_t and
- // ACE_hthread_t and will go away in a future release.
- ACE_NAMESPACE_INLINE_FUNCTION
- int thr_continue (ACE_hthread_t target_thread);
-
- /*
- * Creates a new thread having @a flags attributes and running @a func
- * with @a args (if @a thread_adapter is non-0 then @a func and @a args
- * are ignored and are obtained from @a thread_adapter). @a thr_id
- * and @a t_handle are set to the thread's ID and handle (?),
- * respectively. The thread runs at @a priority priority (see
- * below).
- *
- * The @a flags are a bitwise-OR of the following:
- * = BEGIN<INDENT>
- * THR_CANCEL_DISABLE, THR_CANCEL_ENABLE, THR_CANCEL_DEFERRED,
- * THR_CANCEL_ASYNCHRONOUS, THR_BOUND, THR_NEW_LWP, THR_DETACHED,
- * THR_SUSPENDED, THR_DAEMON, THR_JOINABLE, THR_SCHED_FIFO,
- * THR_SCHED_RR, THR_SCHED_DEFAULT, THR_EXPLICIT_SCHED,
- * THR_SCOPE_SYSTEM, THR_SCOPE_PROCESS
- * = END<INDENT>
- *
- * By default, or if @a priority is set to
- * ACE_DEFAULT_THREAD_PRIORITY, an "appropriate" priority value for
- * the given scheduling policy (specified in @a flags, e.g.,
- * @c THR_SCHED_DEFAULT) is used. This value is calculated
- * dynamically, and is the median value between the minimum and
- * maximum priority values for the given policy. If an explicit
- * value is given, it is used. Note that actual priority values are
- * EXTREMEMLY implementation-dependent, and are probably best
- * avoided.
- *
- * Note that @a thread_adapter is always deleted by @c thr_create,
- * therefore it must be allocated with global operator new.
- *
- * At the moment for @a thr_name a valid string is passed then this
- * will be used on VxWorks to set the task name. If we just pass a pointer
- * the name of the task is returned
- */
- extern ACE_Export
- int thr_create (ACE_THR_FUNC func,
- void *args,
- long flags,
- ACE_thread_t *thr_id,
- ACE_hthread_t *t_handle = 0,
- long priority = ACE_DEFAULT_THREAD_PRIORITY,
- void *stack = 0,
- size_t stacksize = ACE_DEFAULT_THREAD_STACKSIZE,
- ACE_Base_Thread_Adapter *thread_adapter = 0,
- const char** thr_name = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thr_equal (ACE_thread_t t1,
- ACE_thread_t t2);
-
- extern ACE_Export
- void thr_exit (ACE_THR_FUNC_RETURN status = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thr_getconcurrency (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thr_getprio (ACE_hthread_t id,
- int &priority);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thr_getprio (ACE_hthread_t id,
- int &priority,
- int &policy);
-
-# if defined (ACE_HAS_THREAD_SPECIFIC_STORAGE)
- ACE_NAMESPACE_INLINE_FUNCTION
- /// for internal use only. Applications should call thr_getspecific
- int thr_getspecific_native (ACE_OS_thread_key_t key,
- void **data);
-# endif /* ACE_HAS_THREAD_SPECIFIC_STORAGE */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thr_getspecific (ACE_thread_key_t key,
- void **data);
-
-#if defined (ACE_HAS_VXTHREADS)
- extern ACE_Export
-#else
- ACE_NAMESPACE_INLINE_FUNCTION
-#endif /* ACE_HAS_VXTHREADS */
- int thr_join (ACE_hthread_t waiter_id,
- ACE_THR_FUNC_RETURN *status);
-
-#if defined (ACE_HAS_VXTHREADS)
- extern ACE_Export
-#else
- ACE_NAMESPACE_INLINE_FUNCTION
-#endif /* ACE_HAS_VXTHREADS */
- int thr_join (ACE_thread_t waiter_id,
- ACE_thread_t *thr_id,
- ACE_THR_FUNC_RETURN *status);
-
- /**
- * Get the thread affinity
- *
- * @param thr_id For NPTL-threads, when ACE_HAS_PTHREAD_SETAFFINITY_NP
- * defined, this is the thread-id. For linux-threads, when
- * ACE_HAS_SCHED_SETAFFINITY defined, it expects a process-id. Since for
- * linux-threads a thread is seen as a process, it does the job.
- * @param cpu_set_size The size of the cpu_mask
- * @param cpu_mask Is a bitmask of CPUs to bind to, e.g value 1 binds the
- * thread to the "CPU 0", etc
- */
- extern ACE_Export
- int thr_get_affinity (ACE_hthread_t thr_id,
- size_t cpu_set_size,
- cpu_set_t * cpu_mask);
-
- /**
- * Set the thread affinity
- *
- * @param thr_id For NPTL-threads, when ACE_HAS_PTHREAD_SETAFFINITY_NP
- * defined, this is the thread-id. For linux-threads, when
- * ACE_HAS_SCHED_SETAFFINITY defined, it expects a process-id. Since for
- * linux-threads a thread is seen as a process, it does the job.
- * @param cpu_set_size The size of the cpu_mask
- * @param cpu_mask Is a bitmask of CPUs to bind to, e.g value 1 binds the
- * thread to the "CPU 0", etc
- */
- extern ACE_Export
- int thr_set_affinity (ACE_hthread_t thr_id,
- size_t cpu_set_size,
- const cpu_set_t * cpu_mask);
-
- /**
- * @note the "inst" arg is deprecated. It will be ignored.
- */
- extern ACE_Export
- int thr_key_detach (ACE_thread_key_t key, void * inst);
-
- extern ACE_Export
- int thr_key_used (ACE_thread_key_t key);
-
-# if defined (ACE_HAS_THR_C_DEST)
-# if defined (ACE_HAS_THREAD_SPECIFIC_STORAGE)
- /// @internal Applications should call thr_keycreate
- extern ACE_Export
- int thr_keycreate_native (ACE_OS_thread_key_t *key,
- ACE_THR_C_DEST);
-# endif /* ACE_HAS_THREAD_SPECIFIC_STORAGE */
-
- /**
- * @note the "inst" arge is deprecated. It will be ignored.
- */
- extern ACE_Export
- int thr_keycreate (ACE_thread_key_t *key,
- ACE_THR_C_DEST,
- void *inst = 0);
-# else
-# if defined (ACE_HAS_THREAD_SPECIFIC_STORAGE)
- /// @internal Applications should call thr_keycreate instead
- extern ACE_Export
- int thr_keycreate_native (ACE_OS_thread_key_t *key,
- ACE_THR_DEST);
-# endif /* ACE_HAS_THREAD_SPECIFIC_STORAGE */
- /**
- * @note the "inst" arge is deprecated. It will be ignored.
- */
- extern ACE_Export
- int thr_keycreate (ACE_thread_key_t *key,
- ACE_THR_DEST,
- void *inst = 0);
-
-# endif /* ACE_HAS_THR_C_DEST */
-
-# if defined (ACE_HAS_THREAD_SPECIFIC_STORAGE)
- /// @internal Applications should call thr_keyfree instead
- extern ACE_Export
- int thr_keyfree_native (ACE_OS_thread_key_t key);
-# endif /* ACE_HAS_THREAD_SPECIFIC_STORAGE */
-
- extern ACE_Export
- int thr_keyfree (ACE_thread_key_t key);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thr_kill (ACE_thread_t thr_id,
- int signum);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- size_t thr_min_stack (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_thread_t thr_self (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void thr_self (ACE_hthread_t &);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- const char* thr_name (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thr_setcancelstate (int new_state,
- int *old_state);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thr_setcanceltype (int new_type,
- int *old_type);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thr_setconcurrency (int hint);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thr_setprio (ACE_hthread_t ht_id,
- int priority,
- int policy = -1);
-
- extern ACE_Export
- int thr_setprio (const ACE_Sched_Priority prio);
-
-# if defined (ACE_HAS_THREAD_SPECIFIC_STORAGE)
- /// @internal Applications should call thr_setspecific
- extern ACE_Export
- int thr_setspecific_native (ACE_OS_thread_key_t key,
- void *data);
-# endif /* ACE_HAS_THREAD_SPECIFIC_STORAGE */
-
- extern ACE_Export
- int thr_setspecific (ACE_thread_key_t key,
- void *data);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thr_sigsetmask (int how,
- const sigset_t *nsm,
- sigset_t *osm);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thr_suspend (ACE_hthread_t target_thread);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void thr_testcancel (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void thr_yield (void);
-
- //@{ @name A set of wrappers for mutex locks that only work within a single process.
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thread_mutex_destroy (ACE_thread_mutex_t *m);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thread_mutex_init (ACE_thread_mutex_t *m,
- int lock_type = 0,
- const char *name = 0,
- ACE_mutexattr_t *arg = 0);
-
-#if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- int thread_mutex_init (ACE_thread_mutex_t *m,
- int lock_type,
- const wchar_t *name,
- ACE_mutexattr_t *arg = 0);
-#endif /* ACE_HAS_WCHAR */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thread_mutex_lock (ACE_thread_mutex_t *m);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thread_mutex_lock (ACE_thread_mutex_t *m,
- const ACE_Time_Value &timeout);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thread_mutex_lock (ACE_thread_mutex_t *m,
- const ACE_Time_Value *timeout);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thread_mutex_trylock (ACE_thread_mutex_t *m);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int thread_mutex_unlock (ACE_thread_mutex_t *m);
-
- //@}
-
- /**
- * This method uses process id and object pointer to come up with a
- * machine wide unique name. The process ID will provide uniqueness
- * between processes on the same machine. The "this" pointer of the
- * @a object will provide uniqueness between other "live" objects in
- * the same process. The uniqueness of this name is therefore only
- * valid for the life of @a object.
- */
- extern ACE_Export
- void unique_name (const void *object,
- char *name,
- size_t length);
-#if defined (ACE_USES_WCHAR)
- extern ACE_Export
- void unique_name (const void *object,
- wchar_t *name,
- size_t length);
-#endif /* ACE_USES_WCHAR */
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if !defined (ACE_WIN32)
-
-extern "C"
-{
- typedef struct
- {
-#if (defined (ACE_HAS_PTHREADS) && defined (_POSIX_THREAD_PROCESS_SHARED) && !defined (ACE_LACKS_CONDATTR_PSHARED)) || \
- (!defined (ACE_USES_FIFO_SEM) && \
- (!defined (ACE_HAS_POSIX_SEM) || !defined (ACE_HAS_POSIX_SEM_TIMEOUT) || defined (ACE_LACKS_NAMED_POSIX_SEM)))
- /// Protect critical section.
- ACE_mutex_t lock_;
- /// Keeps track of waiters.
- ACE_cond_t condition_;
-#else
-# if (defined (ACE_HAS_PTHREADS) && defined (_POSIX_THREAD_PROCESS_SHARED) && !defined (ACE_LACKS_MUTEXATTR_PSHARED)) || \
- (!defined (ACE_USES_FIFO_SEM) && (!defined (ACE_HAS_POSIX_SEM) || defined (ACE_LACKS_NAMED_POSIX_SEM)))
- /// Protect critical section.
- ACE_mutex_t lock_;
-# endif
-#endif
-
- /// Object type.
- int type_;
-
- /// Specifies if this is an auto- or manual-reset event.
- int manual_reset_;
-
- /// "True" if signaled.
- int is_signaled_;
-
- /// Special bool for auto_events alone
- /**
- * The semantics of auto events forces us to introduce this extra
- * variable to ensure that the thread is not woken up
- * spuriously. Please see event_wait and event_timedwait () to see
- * how this is used for auto_events.
- * @todo This is a hack that needs revisiting after x.4
- */
- bool auto_event_signaled_;
-
- /// Number of waiting threads.
- unsigned long waiting_threads_;
-
- /// Signal count
- unsigned long signal_count_;
- } ACE_eventdata_t;
-}
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_event_t
- *
- * @brief Wrapper for NT events on UNIX.
- */
-class ACE_Export ACE_event_t
-{
- friend int ACE_OS::event_init(ACE_event_t*, int, int, int, const char*, void*,int);
- friend int ACE_OS::event_destroy(ACE_event_t*);
- friend int ACE_OS::event_wait(ACE_event_t*);
- friend int ACE_OS::event_timedwait(ACE_event_t*, ACE_Time_Value*, int);
- friend int ACE_OS::event_signal(ACE_event_t*);
- friend int ACE_OS::event_pulse(ACE_event_t*);
- friend int ACE_OS::event_reset(ACE_event_t*);
-protected:
-
- /// Event name if process shared.
- char* name_;
-
- /// Event data
- ACE_eventdata_t* eventdata_;
-
-#if (!defined (ACE_HAS_PTHREADS) || !defined (_POSIX_THREAD_PROCESS_SHARED) || defined (ACE_LACKS_CONDATTR_PSHARED)) && \
- (defined (ACE_USES_FIFO_SEM) || \
- (defined (ACE_HAS_POSIX_SEM) && defined (ACE_HAS_POSIX_SEM_TIMEOUT) && !defined (ACE_LACKS_NAMED_POSIX_SEM)))
- /// Keeps track of waiters.
- ACE_sema_t semaphore_;
-
-# if (!defined (ACE_HAS_PTHREADS) || !defined (_POSIX_THREAD_PROCESS_SHARED) || defined (ACE_LACKS_MUTEXATTR_PSHARED)) && \
- (defined (ACE_USES_FIFO_SEM) || (defined (ACE_HAS_POSIX_SEM) && !defined (ACE_LACKS_NAMED_POSIX_SEM)))
- /// Protect critical section.
- ACE_sema_t lock_;
-# endif
-#endif
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_WIN32 */
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_OS_Thread_Mutex_Guard
- *
- * This data structure is meant to be used within an ACE_OS
- * function. It performs automatic aquisition and release of
- * an ACE_thread_mutex_t.
- *
- * If an object of this class is instantiated before ACE_Object_Manager is
- * initialized, it will not do anything. This is because this class is
- * used only with the ACE_OS_GUARD macro which is passing a reference to
- * one of the preallocated Object Manager locks. If the object manager
- * hasn't been initialized yet, the lock reference is bogus. This is an
- * acceptable tradeoff since in cases where the lock reference is bogus,
- * there isn't multithreaded access. Please see detailed comments in
- * Object_Manager.h for further information.
- *
- * For internal use only by ACE_OS.
- */
-class ACE_OS_Thread_Mutex_Guard
-{
-public:
- /// Implicitly and automatically acquire the lock.
- ACE_OS_Thread_Mutex_Guard (ACE_thread_mutex_t &m);
-
- /// Implicitly release the lock.
- ~ACE_OS_Thread_Mutex_Guard (void);
-
- /// Explicitly acquire the lock.
- int acquire (void);
-
- /// Explicitly release the lock.
- int release (void);
-
-protected:
- /// Reference to the mutex.
- ACE_thread_mutex_t &lock_;
-
- /// Keeps track of whether we acquired the lock or failed.
- int owner_;
-
- // = Prevent assignment and initialization.
- ACE_OS_Thread_Mutex_Guard &operator= (const ACE_OS_Thread_Mutex_Guard &);
- ACE_OS_Thread_Mutex_Guard (const ACE_OS_Thread_Mutex_Guard &);
-};
-
-/**
- * @class ACE_OS_Recursive_Thread_Mutex_Guard
- *
- * @brief For internal use only by ACE_OS.
- *
- * This data structure is meant to be used within an ACE_OS
- * function. It performs automatic aquisition and release of
- * an ACE_recursive_thread_mutex_t.
- *
- * If an object of this class is instantiated before ACE_Object_Manager is
- * initialized, it will not do anything. This is because this class is
- * used only with the ACE_TSS_GUARD macro which is passing a reference to
- * one of the preallocated Object Manager locks. If the object manager
- * hasn't been initialized yet, the lock reference is bogus. This is an
- * acceptable tradeoff since in cases where the lock reference is bogus,
- * there isn't multithreaded access. Please see detailed comments in
- * Object_Manager.h for further information.
- */
-class ACE_OS_Recursive_Thread_Mutex_Guard
-{
-public:
- /// Implicitly and automatically acquire the lock.
- ACE_OS_Recursive_Thread_Mutex_Guard (ACE_recursive_thread_mutex_t &m);
-
- /// Implicitly release the lock.
- ~ACE_OS_Recursive_Thread_Mutex_Guard (void);
-
- /// Explicitly acquire the lock.
- int acquire (void);
-
- /// Explicitly release the lock.
- int release (void);
-
-protected:
- /// Reference to the mutex.
- ACE_recursive_thread_mutex_t &lock_;
-
- /// Keeps track of whether we acquired the lock or failed.
- int owner_;
-
- // = Prevent assignment and initialization.
- ACE_OS_Recursive_Thread_Mutex_Guard &operator= (
- const ACE_OS_Recursive_Thread_Mutex_Guard &);
- ACE_OS_Recursive_Thread_Mutex_Guard (
- const ACE_OS_Recursive_Thread_Mutex_Guard &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// used in time and unistd
-# define ACE_OS_GUARD \
- ACE_OS_Thread_Mutex_Guard ace_os_guard__ (*(ACE_thread_mutex_t *) \
- ACE_OS_Object_Manager::preallocated_object[ \
- ACE_OS_Object_Manager::ACE_OS_MONITOR_LOCK]);
-
-// used in Thread
-# define ACE_TSS_CLEANUP_GUARD \
- ACE_OS_Recursive_Thread_Mutex_Guard ace_tss_cleanup_guard__ (*(ACE_recursive_thread_mutex_t *) \
- ACE_OS_Object_Manager::preallocated_object[ \
- ACE_OS_Object_Manager::ACE_TSS_CLEANUP_LOCK]);
-
-// used in Thread
-# define ACE_TSS_BASE_GUARD \
- ACE_OS_Recursive_Thread_Mutex_Guard ace_tss_base_guard__ (*(ACE_recursive_thread_mutex_t *) \
- ACE_OS_Object_Manager::preallocated_object[ \
- ACE_OS_Object_Manager::ACE_TSS_BASE_LOCK]);
-
-#else /* ! ACE_MT_SAFE */
-# define ACE_OS_GUARD
-# define ACE_TSS_CLEANUP_GUARD
-# define ACE_TSS_BASE_GUARD
-#endif /* ! ACE_MT_SAFE */
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_Thread.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_THREAD_H */
-
diff --git a/dep/include/ace/OS_NS_Thread.inl b/dep/include/ace/OS_NS_Thread.inl
deleted file mode 100644
index 0c61edd3ec7..00000000000
--- a/dep/include/ace/OS_NS_Thread.inl
+++ /dev/null
@@ -1,3634 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_Thread.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_macros.h"
-// for timespec_t, perhaps move it to os_time.h
-#include "ace/Time_Value.h"
-#include "ace/OS_NS_sys_mman.h"
-#include "ace/OS_NS_sys_time.h"
-#include "ace/OS_NS_string.h"
-#include "ace/OS_NS_unistd.h"
-#include "ace/OS_NS_stdio.h"
-#include "ace/OS_NS_errno.h"
-
-#if defined (ACE_USES_FIFO_SEM)
-# include "ace/OS_NS_sys_stat.h"
-# include "ace/OS_NS_sys_select.h"
-# include "ace/OS_NS_fcntl.h"
-# include "ace/Handle_Set.h"
-# endif /* ACE_USES_FIFO_SEM */
-
-#if defined (ACE_HAS_PRIOCNTL)
-# include /**/ <sys/priocntl.h>
-#endif /* ACE_HAS_PRIOCNTL */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/*****************************************************************************/
-
-#if defined (ACE_LACKS_COND_T) && defined (ACE_HAS_THREADS)
-ACE_INLINE long
-ACE_cond_t::waiters (void) const
-{
- return this->waiters_;
-}
-#endif /* ACE_LACKS_COND_T && ACE_HAS_THREADS */
-
-/*****************************************************************************/
-
-#if defined (ACE_HAS_TSS_EMULATION)
-
-# if !defined (ACE_HAS_THREAD_SPECIFIC_STORAGE)
-ACE_INLINE
-void **&
-ACE_TSS_Emulation::tss_base ()
-{
-# if defined (ACE_HAS_VXTHREADS)
- int &spare = taskIdCurrent->ACE_VXWORKS_SPARE;
- return reinterpret_cast <void **&> (spare);
-# else
- // Uh oh.
- ACE_NOTSUP_RETURN (0);
-# endif /* ACE_HAS_VXTHREADS */
-}
-# endif /* ! ACE_HAS_THREAD_SPECIFIC_STORAGE */
-
-ACE_INLINE
-ACE_TSS_Emulation::ACE_TSS_DESTRUCTOR
-ACE_TSS_Emulation::tss_destructor (const ACE_thread_key_t key)
-{
- ACE_KEY_INDEX (key_index, key);
- return tss_destructor_ [key_index];
-}
-
-ACE_INLINE
-void
-ACE_TSS_Emulation::tss_destructor (const ACE_thread_key_t key,
- ACE_TSS_DESTRUCTOR destructor)
-{
- ACE_KEY_INDEX (key_index, key);
- tss_destructor_ [key_index] = destructor;
-}
-
-ACE_INLINE
-void *&
-ACE_TSS_Emulation::ts_object (const ACE_thread_key_t key)
-{
- ACE_KEY_INDEX (key_index, key);
-
-# if defined (ACE_HAS_VXTHREADS)
- /* If someone wants tss_base make sure they get one. This
- gets used if someone spawns a VxWorks task directly, not
- through ACE. The allocated array will never be deleted! */
- if (0 == taskIdCurrent->ACE_VXWORKS_SPARE)
- {
- taskIdCurrent->ACE_VXWORKS_SPARE =
- reinterpret_cast<int> (new void *[ACE_TSS_THREAD_KEYS_MAX]);
-
- // Zero the entire TSS array. Do it manually instead of using
- // memset, for optimum speed. Though, memset may be faster :-)
- void **tss_base_p =
- reinterpret_cast<void **> (taskIdCurrent->ACE_VXWORKS_SPARE);
- for (u_int i = 0; i < ACE_TSS_THREAD_KEYS_MAX; ++i, ++tss_base_p)
- {
- *tss_base_p = 0;
- }
- }
-# endif /* ACE_HAS_VXTHREADS */
-
- return tss_base ()[key_index];
-}
-
-#endif /* ACE_HAS_TSS_EMULATION */
-
-/*****************************************************************************/
-
-ACE_INLINE int
-ACE_OS::thr_equal (ACE_thread_t t1, ACE_thread_t t2)
-{
-#if defined (ACE_HAS_PTHREADS)
-# if defined (pthread_equal)
- // If it's a macro we can't say "pthread_equal"...
- return pthread_equal (t1, t2);
-# else
- return pthread_equal (t1, t2);
-# endif /* pthread_equal */
-#else /* For both STHREADS and WTHREADS... */
- // Hum, Do we need to treat WTHREAD differently?
- // levine 13 oct 98 % I don't think so, ACE_thread_t is a DWORD.
- return t1 == t2;
-#endif /* ACE_HAS_PTHREADS */
-}
-
-#if !defined (ACE_LACKS_COND_T)
-// NOTE: The ACE_OS::cond_* functions for Unix platforms are defined
-// here because the ACE_OS::sema_* functions below need them.
-// However, ACE_WIN32 and VXWORKS define the ACE_OS::cond_* functions
-// using the ACE_OS::sema_* functions. So, they are defined in OS.cpp.
-
-ACE_INLINE int
-ACE_OS::condattr_destroy (ACE_condattr_t &attributes)
-{
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_PTHREADS)
-
- pthread_condattr_destroy (&attributes);
-
-# elif defined (ACE_HAS_STHREADS)
- attributes.type = 0;
-
-# endif /* ACE_HAS_PTHREADS vs. ACE_HAS_STHREADS */
- return 0;
-# else
- ACE_UNUSED_ARG (attributes);
- return 0;
-# endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::condattr_init (ACE_condattr_t &attributes,
- int type)
-{
- ACE_UNUSED_ARG (type);
-# if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_PTHREADS)
- int result = -1;
-
-# if defined (ACE_VXWORKS) && (ACE_VXWORKS >= 0x600) && (ACE_VXWORKS <= 0x620)
- /* Tests show that VxWorks 6.x pthread lib does not only
- * require zeroing of mutex/condition objects to function correctly
- * but also of the attribute objects.
- */
- ACE_OS::memset (&attributes, 0, sizeof (attributes));
-# endif
- if (
- ACE_ADAPT_RETVAL (pthread_condattr_init (&attributes), result) == 0
-# if defined (_POSIX_THREAD_PROCESS_SHARED) && !defined (ACE_LACKS_CONDATTR_PSHARED)
- && ACE_ADAPT_RETVAL (pthread_condattr_setpshared (&attributes, type),
- result) == 0
-# endif /* _POSIX_THREAD_PROCESS_SHARED && ! ACE_LACKS_CONDATTR_PSHARED */
- )
- result = 0;
- else
- result = -1; // ACE_ADAPT_RETVAL used it for intermediate status
-
- return result;
-# elif defined (ACE_HAS_STHREADS)
- attributes.type = type;
-
- return 0;
-
-# else
- ACE_UNUSED_ARG (attributes);
- ACE_UNUSED_ARG (type);
- ACE_NOTSUP_RETURN (-1);
-
-# endif /* ACE_HAS_PTHREADS vs. ACE_HAS_STHREADS */
-
-# else
- ACE_UNUSED_ARG (attributes);
- ACE_UNUSED_ARG (type);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::cond_broadcast (ACE_cond_t *cv)
-{
- ACE_OS_TRACE ("ACE_OS::cond_broadcast");
-# if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_PTHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_cond_broadcast (cv),
- result),
- int, -1);
-# elif defined (ACE_HAS_STHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::cond_broadcast (cv),
- result),
- int, -1);
-# endif /* ACE_HAS_STHREADS */
-# else
- ACE_UNUSED_ARG (cv);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::cond_destroy (ACE_cond_t *cv)
-{
- ACE_OS_TRACE ("ACE_OS::cond_destroy");
-# if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_PTHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_cond_destroy (cv), result), int, -1);
-# elif defined (ACE_HAS_STHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::cond_destroy (cv), result), int, -1);
-# endif /* ACE_HAS_STHREADS */
-# else
- ACE_UNUSED_ARG (cv);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::cond_init (ACE_cond_t *cv,
- ACE_condattr_t &attributes,
- const char *name,
- void *arg)
-{
- // ACE_OS_TRACE ("ACE_OS::cond_init");
- ACE_UNUSED_ARG (name);
- ACE_UNUSED_ARG (arg);
-# if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_PTHREADS)
- int result = -1;
-
-# if defined (ACE_VXWORKS) && (ACE_VXWORKS >= 0x600) && (ACE_VXWORKS <= 0x620)
- /* VxWorks 6.x API reference states:
- * If the memory for the condition variable object has been allocated
- * dynamically, it is a good policy to always zero out the
- * block of memory so as to avoid spurious EBUSY return code
- * when calling this routine.
- */
- ACE_OS::memset (cv, 0, sizeof (*cv));
-# endif
-
- if (ACE_ADAPT_RETVAL (pthread_cond_init (cv, &attributes), result) == 0)
- result = 0;
- else
- result = -1; // ACE_ADAPT_RETVAL used it for intermediate status
-
- return result;
-# elif defined (ACE_HAS_STHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::cond_init (cv,
- attributes.type,
- arg),
- result),
- int, -1);
-# endif /* ACE_HAS_PTHREADS vs. ACE_HAS_STHREADS */
-# else
- ACE_UNUSED_ARG (cv);
- ACE_UNUSED_ARG (attributes);
- ACE_UNUSED_ARG (name);
- ACE_UNUSED_ARG (arg);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_THREADS */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::cond_init (ACE_cond_t *cv,
- ACE_condattr_t &attributes,
- const wchar_t *name,
- void *arg)
-{
- return ACE_OS::cond_init (cv, attributes, ACE_Wide_To_Ascii (name).char_rep (), arg);
-}
-#endif /* ACE_HAS_WCHAR */
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::cond_init (ACE_cond_t *cv, short type, const wchar_t *name, void *arg)
-{
- return ACE_OS::cond_init (cv, type, ACE_Wide_To_Ascii (name).char_rep (), arg);
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE int
-ACE_OS::cond_signal (ACE_cond_t *cv)
-{
- ACE_OS_TRACE ("ACE_OS::cond_signal");
-# if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_PTHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_cond_signal (cv), result),
- int, -1);
-# elif defined (ACE_HAS_STHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::cond_signal (cv), result), int, -1);
-# endif /* ACE_HAS_STHREADS */
-# else
- ACE_UNUSED_ARG (cv);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::cond_wait (ACE_cond_t *cv,
- ACE_mutex_t *external_mutex)
-{
- ACE_OS_TRACE ("ACE_OS::cond_wait");
-# if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_PTHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_cond_wait (cv, external_mutex), result),
- int, -1);
-# elif defined (ACE_HAS_STHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::cond_wait (cv, external_mutex), result),
- int, -1);
-# endif /* ACE_HAS_PTHREADS */
-# else
- ACE_UNUSED_ARG (cv);
- ACE_UNUSED_ARG (external_mutex);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::cond_timedwait (ACE_cond_t *cv,
- ACE_mutex_t *external_mutex,
- ACE_Time_Value *timeout)
-{
- ACE_OS_TRACE ("ACE_OS::cond_timedwait");
-# if defined (ACE_HAS_THREADS)
- int result;
- timespec_t ts;
-
- if (timeout != 0)
- ts = *timeout; // Calls ACE_Time_Value::operator timespec_t().
-
-# if defined (ACE_HAS_PTHREADS)
-
- ACE_OSCALL (ACE_ADAPT_RETVAL (timeout == 0
- ? pthread_cond_wait (cv, external_mutex)
- : pthread_cond_timedwait (cv, external_mutex,
- (ACE_TIMESPEC_PTR) &ts),
- result),
- int, -1, result);
- // We need to adjust this to make the POSIX and Solaris return
- // values consistent. EAGAIN is from Pthreads DRAFT4 (HP-UX 10.20 and down)
- if (result == -1 &&
- (errno == ETIMEDOUT || errno == EAGAIN))
- errno = ETIME;
-
-# elif defined (ACE_HAS_STHREADS)
- ACE_OSCALL (ACE_ADAPT_RETVAL (timeout == 0
- ? ::cond_wait (cv, external_mutex)
- : ::cond_timedwait (cv,
- external_mutex,
- (timestruc_t*)&ts),
- result),
- int, -1, result);
-# endif /* ACE_HAS_STHREADS */
- if (timeout != 0)
- timeout->set (ts); // Update the time value before returning.
-
- return result;
-# else
- ACE_UNUSED_ARG (cv);
- ACE_UNUSED_ARG (external_mutex);
- ACE_UNUSED_ARG (timeout);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_THREADS */
-}
-#endif /* !ACE_LACKS_COND_T */
-
-ACE_INLINE int
-ACE_OS::mutex_lock (ACE_mutex_t *m,
- const ACE_Time_Value *timeout)
-{
- return timeout == 0 ? ACE_OS::mutex_lock (m) : ACE_OS::mutex_lock (m, *timeout);
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::event_init (ACE_event_t *event,
- int manual_reset,
- int initial_state,
- int type,
- const wchar_t *name,
- void *arg,
- LPSECURITY_ATTRIBUTES sa)
-{
-#if defined (ACE_WIN32)
- ACE_UNUSED_ARG (type);
- ACE_UNUSED_ARG (arg);
- SECURITY_ATTRIBUTES sa_buffer;
- SECURITY_DESCRIPTOR sd_buffer;
- *event = ::CreateEventW (ACE_OS::default_win32_security_attributes_r
- (sa, &sa_buffer, &sd_buffer),
- manual_reset,
- initial_state,
- name);
- if (*event == 0)
- ACE_FAIL_RETURN (-1);
-
- return 0;
-#else /* ACE_WIN32 */
- return ACE_OS::event_init (event,
- manual_reset,
- initial_state,
- type,
- ACE_Wide_To_Ascii (name).char_rep (),
- arg,
- sa);
-#endif /* ACE_WIN32 */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE long
-ACE_OS::priority_control (ACE_idtype_t idtype, ACE_id_t identifier, int cmd, void *arg)
-{
- ACE_OS_TRACE ("ACE_OS::priority_control");
-#if defined (ACE_HAS_PRIOCNTL)
- ACE_OSCALL_RETURN (priocntl (idtype, identifier, cmd, static_cast<caddr_t> (arg)),
- long, -1);
-#else /* ! ACE_HAS_PRIOCNTL*/
- ACE_UNUSED_ARG (idtype);
- ACE_UNUSED_ARG (identifier);
- ACE_UNUSED_ARG (cmd);
- ACE_UNUSED_ARG (arg);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ! ACE_HAS_PRIOCNTL*/
-}
-
-// This method is used to prepare the recursive mutex for releasing
-// when waiting on a condition variable. If the platform doesn't have
-// native recursive mutex and condition variable support, then ACE needs
-// to save the recursion state around the wait and also ensure that the
-// wait and lock release are atomic. recursive_mutex_cond_relock()
-// is the inverse of this method.
-ACE_INLINE int
-ACE_OS::recursive_mutex_cond_unlock (ACE_recursive_thread_mutex_t *m,
- ACE_recursive_mutex_state &state)
-{
-#if defined (ACE_HAS_THREADS)
- ACE_OS_TRACE ("ACE_OS::recursive_mutex_cond_unlock");
-# if defined (ACE_HAS_RECURSIVE_MUTEXES)
- // Windows need special handling since it has recursive mutexes, but
- // does not integrate them into a condition variable.
-# if defined (ACE_WIN32)
- // For Windows, the OS takes care of the mutex and its recursion. We just
- // need to release the lock one fewer times than this thread has acquired
- // it. Remember how many times, and reacquire it that many more times when
- // the condition is signaled.
- //
- // For WinCE, the situation is a bit trickier. CE doesn't have
- // RecursionCount, and LockCount has changed semantics over time.
- // In CE 3 (and maybe 4?) LockCount is not an indicator of recursion;
- // instead, see when it's unlocked by watching the OwnerThread, which will
- // change to something other than the current thread when it's been
- // unlocked "enough" times. Note that checking for 0 (unlocked) is not
- // sufficient. Another thread may acquire the lock between our unlock and
- // checking the OwnerThread. So grab our thread ID value first, then
- // compare to it in the loop condition. NOTE - the problem with this
- // scheme is that we really want to unlock the mutex one _less_ times than
- // required to release it for another thread to acquire. With CE 5 we
- // can do this by watching LockCount alone. I _think_ it can be done by
- // watching LockCount on CE 4 as well (though its meaning is different),
- // but I'm leary of changing this code since a user reported success
- // with it.
- //
- // We're using undocumented fields in the CRITICAL_SECTION structure
- // and they've been known to change across Windows variants and versions./
- // So be careful if you need to change these - there may be other
- // Windows variants that depend on existing values and limits.
-# if defined (ACE_HAS_WINCE) && (UNDER_CE < 500)
- ACE_thread_t me = ACE_OS::thr_self ();
-# endif /* ACE_HAS_WINCE && CE 4 or earlier */
-
- state.relock_count_ = 0;
- while (
-# if !defined (ACE_HAS_WINCE)
- m->LockCount > 0 && m->RecursionCount > 1
-# else
- // WinCE doesn't have RecursionCount and the LockCount semantic
- // has changed between versions; pre-Mobile 5 the LockCount
- // was 0-indexed, and Mobile 5 has it 1-indexed.
-# if (UNDER_CE < 500)
- m->LockCount > 0 && m->OwnerThread == (HANDLE)me
-# else
- m->LockCount > 1
-# endif /* UNDER_CE < 500 */
-# endif /* ACE_HAS_WINCE */
- )
- {
- // This may fail if the current thread doesn't own the mutex. If it
- // does fail, it'll be on the first try, so don't worry about resetting
- // the state.
- if (ACE_OS::recursive_mutex_unlock (m) == -1)
- return -1;
- ++state.relock_count_;
- }
-# else /* not ACE_WIN32 */
- // prevent warnings for unused variables
- ACE_UNUSED_ARG (state);
- ACE_UNUSED_ARG (m);
-# endif /* ACE_WIN32 */
- return 0;
-# else /* ACE_HAS_RECURSIVE_MUTEXES */
- // For platforms without recursive mutexes, we obtain the nesting mutex
- // to gain control over the mutex internals. Then set the internals to say
- // the mutex is available. If there are waiters, signal the condition
- // to notify them (this is mostly like the recursive_mutex_unlock() method).
- // Then, return with the nesting mutex still held. The condition wait
- // will release it atomically, allowing mutex waiters to continue.
- // Note that this arrangement relies on the fact that on return from
- // the condition wait, this thread will again own the nesting mutex
- // and can either set the mutex internals directly or get in line for
- // the mutex... this part is handled in recursive_mutex_cond_relock().
- if (ACE_OS::thread_mutex_lock (&m->nesting_mutex_) == -1)
- return -1;
-
-# if !defined (ACE_NDEBUG)
- if (m->nesting_level_ == 0
- || ACE_OS::thr_equal (ACE_OS::thr_self (), m->owner_id_) == 0)
- {
- ACE_OS::thread_mutex_unlock (&m->nesting_mutex_);
- errno = EINVAL;
- return -1;
- }
-# endif /* ACE_NDEBUG */
-
- // To make error recovery a bit easier, signal the condition now. Any
- // waiter won't regain control until the mutex is released, which won't
- // be until the caller returns and does the wait on the condition.
- if (ACE_OS::cond_signal (&m->lock_available_) == -1)
- {
- // Save/restore errno.
- ACE_Errno_Guard error (errno);
- ACE_OS::thread_mutex_unlock (&m->nesting_mutex_);
- return -1;
- }
-
- // Ok, the nesting_mutex_ lock is still held, the condition has been
- // signaled... reset the nesting info and return _WITH_ the lock
- // held. The lock will be released when the condition waits, in the
- // caller.
- state.nesting_level_ = m->nesting_level_;
- state.owner_id_ = m->owner_id_;
- m->nesting_level_ = 0;
- m->owner_id_ = ACE_OS::NULL_thread;
- return 0;
-# endif /* ACE_HAS_RECURSIVE_MUTEXES */
-#else
- ACE_UNUSED_ARG (m);
- ACE_UNUSED_ARG (state);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-// This method is called after waiting on a condition variable when a
-// recursive mutex must be reacquired. If the platform doesn't natively
-// integrate recursive mutexes and condition variables, it's taken care
-// of here (inverse of ACE_OS::recursive_mutex_cond_unlock).
-ACE_INLINE void
-ACE_OS::recursive_mutex_cond_relock (ACE_recursive_thread_mutex_t *m,
- ACE_recursive_mutex_state &state)
-{
-#if defined (ACE_HAS_THREADS)
- ACE_OS_TRACE ("ACE_OS::recursive_mutex_cond_relock");
-# if defined (ACE_HAS_RECURSIVE_MUTEXES)
- // Windows need special handling since it has recursive mutexes, but
- // does not integrate them into a condition variable.
- // On entry, the OS has already reacquired the lock for us. Just
- // reacquire it the proper number of times so the recursion is the same as
- // before waiting on the condition.
-# if defined (ACE_WIN32)
- while (state.relock_count_ > 0)
- {
- ACE_OS::recursive_mutex_lock (m);
- --state.relock_count_;
- }
- return;
-# else /* not ACE_WIN32 */
- // prevent warnings for unused variables
- ACE_UNUSED_ARG (state);
- ACE_UNUSED_ARG (m);
-
-# endif /* ACE_WIN32 */
-# else
- // Without recursive mutex support, it's somewhat trickier. On entry,
- // the current thread holds the nesting_mutex_, but another thread may
- // still be holding the ACE_recursive_mutex_t. If so, mimic the code
- // in ACE_OS::recursive_mutex_lock that waits to acquire the mutex.
- // After acquiring it, restore the nesting counts and release the
- // nesting mutex. This will restore the conditions to what they were
- // before calling ACE_OS::recursive_mutex_cond_unlock().
- while (m->nesting_level_ > 0)
- ACE_OS::cond_wait (&m->lock_available_, &m->nesting_mutex_);
-
- // At this point, we still have nesting_mutex_ and the mutex is free.
- m->nesting_level_ = state.nesting_level_;
- m->owner_id_ = state.owner_id_;
- ACE_OS::thread_mutex_unlock (&m->nesting_mutex_);
- return;
-# endif /* ACE_HAS_RECURSIVE_MUTEXES */
-#else
- ACE_UNUSED_ARG (m);
- ACE_UNUSED_ARG (state);
- return;
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::recursive_mutex_destroy (ACE_recursive_thread_mutex_t *m)
-{
-#if defined (ACE_HAS_THREADS)
-#if defined (ACE_HAS_RECURSIVE_MUTEXES)
- return ACE_OS::thread_mutex_destroy (m);
-#else
- if (ACE_OS::thread_mutex_destroy (&m->nesting_mutex_) == -1)
- return -1;
- else if (ACE_OS::cond_destroy (&m->lock_available_) == -1)
- return -1;
- else
- return 0;
-#endif /* ACE_HAS_RECURSIVE_MUTEXES */
-#else
- ACE_UNUSED_ARG (m);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::recursive_mutex_init (ACE_recursive_thread_mutex_t *m,
- const ACE_TCHAR *name,
- ACE_mutexattr_t *arg,
- LPSECURITY_ATTRIBUTES sa)
-{
- ACE_UNUSED_ARG (sa);
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_RECURSIVE_MUTEXES)
-# if defined (ACE_HAS_PTHREADS_UNIX98_EXT)
- return ACE_OS::thread_mutex_init (m, PTHREAD_MUTEX_RECURSIVE, name, arg);
-# else
- return ACE_OS::thread_mutex_init (m, 0, name, arg);
-# endif /* ACE_HAS_PTHREADS_UNIX98_EXT */
-# else
- if (ACE_OS::thread_mutex_init (&m->nesting_mutex_, 0, name, arg) == -1)
- return -1;
- else if (ACE_OS::cond_init (&m->lock_available_,
- (short) USYNC_THREAD,
- name,
- 0) == -1)
- return -1;
- else
- {
- m->nesting_level_ = 0;
- m->owner_id_ = ACE_OS::NULL_thread;
- return 0;
- }
-# endif /* ACE_HAS_RECURSIVE_MUTEXES */
-#else
- ACE_UNUSED_ARG (m);
- ACE_UNUSED_ARG (name);
- ACE_UNUSED_ARG (arg);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::recursive_mutex_lock (ACE_recursive_thread_mutex_t *m)
-{
-#if defined (ACE_HAS_THREADS)
-#if defined (ACE_HAS_RECURSIVE_MUTEXES)
- return ACE_OS::thread_mutex_lock (m);
-#else
- ACE_thread_t const t_id = ACE_OS::thr_self ();
- int result = 0;
-
- // Acquire the guard.
- if (ACE_OS::thread_mutex_lock (&m->nesting_mutex_) == -1)
- result = -1;
- else
- {
- // If there's no contention, just grab the lock immediately
- // (since this is the common case we'll optimize for it).
- if (m->nesting_level_ == 0)
- m->owner_id_ = t_id;
- // If we already own the lock, then increment the nesting level
- // and return.
- else if (ACE_OS::thr_equal (t_id, m->owner_id_) == 0)
- {
- // Wait until the nesting level has dropped to zero, at
- // which point we can acquire the lock.
- while (m->nesting_level_ > 0)
- ACE_OS::cond_wait (&m->lock_available_,
- &m->nesting_mutex_);
-
- // At this point the nesting_mutex_ is held...
- m->owner_id_ = t_id;
- }
-
- // At this point, we can safely increment the nesting_level_ no
- // matter how we got here!
- ++m->nesting_level_;
- }
-
- {
- // Save/restore errno.
- ACE_Errno_Guard error (errno);
- ACE_OS::thread_mutex_unlock (&m->nesting_mutex_);
- }
- return result;
-#endif /* ACE_HAS_RECURSIVE_MUTEXES */
-#else
- ACE_UNUSED_ARG (m);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::recursive_mutex_lock (ACE_recursive_thread_mutex_t *m,
- const ACE_Time_Value &timeout)
-{
-#if defined (ACE_HAS_THREADS)
-#if defined (ACE_HAS_RECURSIVE_MUTEXES)
- return ACE_OS::thread_mutex_lock (m, timeout);
-#else
- ACE_thread_t t_id = ACE_OS::thr_self ();
- int result = 0;
-
- // Try to acquire the guard.
- if (ACE_OS::thread_mutex_lock (&m->nesting_mutex_, timeout) == -1)
- result = -1;
- else
- {
- // If there's no contention, just grab the lock immediately
- // (since this is the common case we'll optimize for it).
- if (m->nesting_level_ == 0)
- m->owner_id_ = t_id;
- // If we already own the lock, then increment the nesting level
- // and return.
- else if (ACE_OS::thr_equal (t_id, m->owner_id_) == 0)
- {
- // Wait until the nesting level has dropped to zero, at
- // which point we can acquire the lock.
- while (m->nesting_level_ > 0)
- {
- result = ACE_OS::cond_timedwait (&m->lock_available_,
- &m->nesting_mutex_,
- const_cast <ACE_Time_Value *> (&timeout));
-
- // The mutex is reacquired even in the case of a timeout
- // release the mutex to prevent a deadlock
- if (result == -1)
- {
- // Save/restore errno.
- ACE_Errno_Guard error (errno);
- ACE_OS::thread_mutex_unlock (&m->nesting_mutex_);
-
- return result;
- }
- }
-
- // At this point the nesting_mutex_ is held...
- m->owner_id_ = t_id;
- }
-
- // At this point, we can safely increment the nesting_level_ no
- // matter how we got here!
- m->nesting_level_++;
-
- // Save/restore errno.
- ACE_Errno_Guard error (errno);
- ACE_OS::thread_mutex_unlock (&m->nesting_mutex_);
- }
- return result;
-#endif /* ACE_HAS_RECURSIVE_MUTEXES */
-#else
- ACE_UNUSED_ARG (m);
- ACE_UNUSED_ARG (timeout);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::recursive_mutex_lock (ACE_recursive_thread_mutex_t *m,
- const ACE_Time_Value *timeout)
-{
- return timeout == 0
- ? ACE_OS::recursive_mutex_lock (m)
- : ACE_OS::recursive_mutex_lock (m, *timeout);
-}
-
-ACE_INLINE int
-ACE_OS::recursive_mutex_trylock (ACE_recursive_thread_mutex_t *m)
-{
-#if defined (ACE_HAS_THREADS)
-#if defined (ACE_HAS_RECURSIVE_MUTEXES)
- return ACE_OS::thread_mutex_trylock (m);
-#else
- ACE_thread_t t_id = ACE_OS::thr_self ();
- int result = 0;
-
- // Acquire the guard.
- if (ACE_OS::thread_mutex_lock (&m->nesting_mutex_) == -1)
- result = -1;
- else
- {
- // If there's no contention, just grab the lock immediately.
- if (m->nesting_level_ == 0)
- {
- m->owner_id_ = t_id;
- m->nesting_level_ = 1;
- }
- // If we already own the lock, then increment the nesting level
- // and proceed.
- else if (ACE_OS::thr_equal (t_id, m->owner_id_))
- m->nesting_level_++;
- else
- {
- errno = EBUSY;
- result = -1;
- }
- }
-
- {
- // Save/restore errno.
- ACE_Errno_Guard error (errno);
- ACE_OS::thread_mutex_unlock (&m->nesting_mutex_);
- }
- return result;
-#endif /* ACE_HAS_RECURSIVE_MUTEXES */
-#else
- ACE_UNUSED_ARG (m);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::recursive_mutex_unlock (ACE_recursive_thread_mutex_t *m)
-{
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_RECURSIVE_MUTEXES)
- return ACE_OS::thread_mutex_unlock (m);
-# else
- ACE_OS_TRACE ("ACE_OS::recursive_mutex_unlock");
-# if !defined (ACE_NDEBUG)
- ACE_thread_t t_id = ACE_OS::thr_self ();
-# endif /* ACE_NDEBUG */
- int result = 0;
-
- if (ACE_OS::thread_mutex_lock (&m->nesting_mutex_) == -1)
- result = -1;
- else
- {
-# if !defined (ACE_NDEBUG)
- if (m->nesting_level_ == 0
- || ACE_OS::thr_equal (t_id, m->owner_id_) == 0)
-{
- errno = EINVAL;
- result = -1;
-}
- else
-# endif /* ACE_NDEBUG */
-{
- m->nesting_level_--;
- if (m->nesting_level_ == 0)
- {
- // This may not be strictly necessary, but it does put
- // the mutex into a known state...
- m->owner_id_ = ACE_OS::NULL_thread;
-
- // Inform a waiter that the lock is free.
- if (ACE_OS::cond_signal (&m->lock_available_) == -1)
- result = -1;
- }
-}
- }
-
-{
- // Save/restore errno.
- ACE_Errno_Guard error (errno);
- ACE_OS::thread_mutex_unlock (&m->nesting_mutex_);
-}
- return result;
-# endif /* ACE_HAS_RECURSIVE_MUTEXES */
-#else
- ACE_UNUSED_ARG (m);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::rw_rdlock (ACE_rwlock_t *rw)
-{
- ACE_OS_TRACE ("ACE_OS::rw_rdlock");
-#if defined (ACE_HAS_THREADS)
-# if !defined (ACE_LACKS_RWLOCK_T) || defined (ACE_HAS_PTHREADS_UNIX98_EXT)
-# if defined (ACE_HAS_PTHREADS_UNIX98_EXT)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_rwlock_rdlock (rw),
- result),
- int, -1);
-# else /* Solaris */
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::rw_rdlock (rw), result), int, -1);
-# endif /* ACE_HAS_PTHREADS_UNIX98_EXT */
-# else /* NT, POSIX, and VxWorks don't support this natively. */
-# if defined (ACE_HAS_PTHREADS)
- ACE_PTHREAD_CLEANUP_PUSH (&rw->lock_);
-# endif /* ACE_HAS_PTHREADS */
- int result = 0;
- if (ACE_OS::mutex_lock (&rw->lock_) == -1)
- result = -1; // -1 means didn't get the mutex.
- else
- {
- // Give preference to writers who are waiting.
- while (rw->ref_count_ < 0 || rw->num_waiting_writers_ > 0)
- {
- rw->num_waiting_readers_++;
- if (ACE_OS::cond_wait (&rw->waiting_readers_, &rw->lock_) == -1)
- {
- result = -2; // -2 means that we need to release the mutex.
- break;
- }
- rw->num_waiting_readers_--;
- }
- }
- if (result == 0)
- rw->ref_count_++;
- if (result != -1)
- ACE_OS::mutex_unlock (&rw->lock_);
-# if defined (ACE_HAS_PTHREADS)
- ACE_PTHREAD_CLEANUP_POP (0);
-# endif /* defined (ACE_HAS_PTHREADS) */
- return 0;
-# endif /* ! ACE_LACKS_RWLOCK_T */
-#else
- ACE_UNUSED_ARG (rw);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::rw_tryrdlock (ACE_rwlock_t *rw)
-{
- ACE_OS_TRACE ("ACE_OS::rw_tryrdlock");
-#if defined (ACE_HAS_THREADS)
-# if !defined (ACE_LACKS_RWLOCK_T) || defined (ACE_HAS_PTHREADS_UNIX98_EXT)
-# if defined (ACE_HAS_PTHREADS_UNIX98_EXT)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_rwlock_tryrdlock (rw),
- result),
- int, -1);
-# else /* Solaris */
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::rw_tryrdlock (rw), result), int, -1);
-# endif /* ACE_HAS_PTHREADS_UNIX98_EXT */
-# else /* NT, POSIX, and VxWorks don't support this natively. */
- int result = -1;
-
- if (ACE_OS::mutex_lock (&rw->lock_) != -1)
- {
- ACE_Errno_Guard error (errno);
-
- if (rw->ref_count_ == -1 || rw->num_waiting_writers_ > 0)
- {
- error = EBUSY;
- result = -1;
- }
- else
- {
- rw->ref_count_++;
- result = 0;
- }
-
- ACE_OS::mutex_unlock (&rw->lock_);
- }
- return result;
-# endif /* ! ACE_LACKS_RWLOCK_T */
-#else
- ACE_UNUSED_ARG (rw);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::rw_trywrlock (ACE_rwlock_t *rw)
-{
- ACE_OS_TRACE ("ACE_OS::rw_trywrlock");
-#if defined (ACE_HAS_THREADS)
-# if !defined (ACE_LACKS_RWLOCK_T) || defined (ACE_HAS_PTHREADS_UNIX98_EXT)
-# if defined (ACE_HAS_PTHREADS_UNIX98_EXT)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_rwlock_trywrlock (rw),
- result),
- int, -1);
-# else /* Solaris */
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::rw_trywrlock (rw), result), int, -1);
-# endif /* ACE_HAS_PTHREADS_UNIX98_EXT */
-# else /* NT, POSIX, and VxWorks don't support this natively. */
- int result = -1;
-
- if (ACE_OS::mutex_lock (&rw->lock_) != -1)
- {
- ACE_Errno_Guard error (errno);
-
- if (rw->ref_count_ != 0)
- {
- error = EBUSY;
- result = -1;
- }
- else
- {
- rw->ref_count_ = -1;
- result = 0;
- }
-
- ACE_OS::mutex_unlock (&rw->lock_);
- }
- return result;
-# endif /* ! ACE_LACKS_RWLOCK_T */
-#else
- ACE_UNUSED_ARG (rw);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-// Note that the caller of this method *must* already possess this
-// lock as a read lock.
-// return {-1 and no errno set means: error,
-// -1 and errno==EBUSY set means: could not upgrade,
-// 0 means: upgraded successfully}
-
-ACE_INLINE int
-ACE_OS::rw_trywrlock_upgrade (ACE_rwlock_t *rw)
-{
- ACE_OS_TRACE ("ACE_OS::rw_trywrlock_upgrade");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_PTHREADS_UNIX98_EXT)
- // This will probably result in -1, EDEADLK, at least on HP-UX, but let it
- // go - it's a more descriptive error than ENOTSUP.
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_rwlock_trywrlock (rw),
- result),
- int, -1);
-# elif !defined (ACE_LACKS_RWLOCK_T)
- // Some native rwlocks, such as those on Solaris, don't
- // support the upgrade feature . . .
- ACE_UNUSED_ARG (rw);
- ACE_NOTSUP_RETURN (-1);
-# else /* NT, POSIX, and VxWorks don't support this natively. */
- // The ACE rwlock emulation does support upgrade . . .
- int result = 0;
-
-# if defined (ACE_HAS_PTHREADS)
- ACE_PTHREAD_CLEANUP_PUSH (&rw->lock_);
-# endif /* defined (ACE_HAS_PTHREADS) */
-
- if (ACE_OS::mutex_lock (&rw->lock_) == -1)
- return -1;
- // -1 means didn't get the mutex, error
- else if (rw->important_writer_)
- // an other reader upgrades already
- {
- result = -1;
- errno = EBUSY;
- }
- else
- {
- while (rw->ref_count_ > 1) // wait until only I am left
- {
- rw->num_waiting_writers_++; // prohibit any more readers
- rw->important_writer_ = 1;
-
- if (ACE_OS::cond_wait (&rw->waiting_important_writer_, &rw->lock_) == -1)
- {
- result = -1;
- // we know that we have the lock again, we have this guarantee,
- // but something went wrong
- }
- rw->important_writer_ = 0;
- rw->num_waiting_writers_--;
- }
- if (result == 0)
- {
- // nothing bad happend
- rw->ref_count_ = -1;
- // now I am a writer
- // everything is O.K.
- }
- }
-
- ACE_OS::mutex_unlock (&rw->lock_);
-
-# if defined (ACE_HAS_PTHREADS)
- ACE_PTHREAD_CLEANUP_POP (0);
-# endif /* defined (ACE_HAS_PTHREADS) */
-
- return result;
-
-# endif /* ! ACE_LACKS_RWLOCK_T */
-#else
- ACE_UNUSED_ARG (rw);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::rw_unlock (ACE_rwlock_t *rw)
-{
- ACE_OS_TRACE ("ACE_OS::rw_unlock");
-#if defined (ACE_HAS_THREADS)
-# if !defined (ACE_LACKS_RWLOCK_T) || defined (ACE_HAS_PTHREADS_UNIX98_EXT)
-# if defined (ACE_HAS_PTHREADS_UNIX98_EXT)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_rwlock_unlock (rw),
- result),
- int, -1);
-# else /* Solaris */
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::rw_unlock (rw), result), int, -1);
-# endif /* ACE_HAS_PTHREADS_UNIX98_EXT */
-# else /* NT, POSIX, and VxWorks don't support this natively. */
- if (ACE_OS::mutex_lock (&rw->lock_) == -1)
- return -1;
-
- if (rw->ref_count_ > 0) // Releasing a reader.
- rw->ref_count_--;
- else if (rw->ref_count_ == -1) // Releasing a writer.
- rw->ref_count_ = 0;
- else
- {
- (void) ACE_OS::mutex_unlock (&rw->lock_);
- return -1; // @@ ACE_ASSERT (!"count should not be 0!\n");
- }
-
- int result = 0;
- ACE_Errno_Guard error (errno);
-
- if (rw->important_writer_ && rw->ref_count_ == 1)
- // only the reader requesting to upgrade its lock is left over.
- {
- result = ACE_OS::cond_signal (&rw->waiting_important_writer_);
- error = errno;
- }
- else if (rw->num_waiting_writers_ > 0 && rw->ref_count_ == 0)
- // give preference to writers over readers...
- {
- result = ACE_OS::cond_signal (&rw->waiting_writers_);
- error = errno;
- }
- else if (rw->num_waiting_readers_ > 0 && rw->num_waiting_writers_ == 0)
- {
- result = ACE_OS::cond_broadcast (&rw->waiting_readers_);
- error = errno;
- }
-
- (void) ACE_OS::mutex_unlock (&rw->lock_);
- return result;
-# endif /* ! ace_lacks_rwlock_t */
-#else
- ACE_UNUSED_ARG (rw);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ace_has_threads */
-}
-
-ACE_INLINE int
-ACE_OS::rw_wrlock (ACE_rwlock_t *rw)
-{
- ACE_OS_TRACE ("ACE_OS::rw_wrlock");
-#if defined (ACE_HAS_THREADS)
-# if !defined (ACE_LACKS_RWLOCK_T) || defined (ACE_HAS_PTHREADS_UNIX98_EXT)
-# if defined (ACE_HAS_PTHREADS_UNIX98_EXT)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_rwlock_wrlock (rw),
- result),
- int, -1);
-# else /* Solaris */
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::rw_wrlock (rw), result), int, -1);
-# endif /* ACE_HAS_PTHREADS_UNIX98_EXT */
-# else /* NT, POSIX, and VxWorks don't support this natively. */
-# if defined (ACE_HAS_PTHREADS)
- ACE_PTHREAD_CLEANUP_PUSH (&rw->lock_);
-# endif /* defined (ACE_HAS_PTHREADS) */
- int result = 0;
-
- if (ACE_OS::mutex_lock (&rw->lock_) == -1)
- result = -1; // -1 means didn't get the mutex.
- else
- {
- while (rw->ref_count_ != 0)
- {
- rw->num_waiting_writers_++;
-
- if (ACE_OS::cond_wait (&rw->waiting_writers_, &rw->lock_) == -1)
- {
- result = -2; // -2 means we need to release the mutex.
- break;
- }
-
- rw->num_waiting_writers_--;
- }
- }
- if (result == 0)
- rw->ref_count_ = -1;
- if (result != -1)
- ACE_OS::mutex_unlock (&rw->lock_);
-# if defined (ACE_HAS_PTHREADS)
- ACE_PTHREAD_CLEANUP_POP (0);
-# endif /* defined (ACE_HAS_PTHREADS) */
- return 0;
-# endif /* ! ACE_LACKS_RWLOCK_T */
-#else
- ACE_UNUSED_ARG (rw);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::rwlock_destroy (ACE_rwlock_t *rw)
-{
- ACE_OS_TRACE ("ACE_OS::rwlock_destroy");
-#if defined (ACE_HAS_THREADS)
-# if !defined (ACE_LACKS_RWLOCK_T) || defined (ACE_HAS_PTHREADS_UNIX98_EXT)
-# if defined (ACE_HAS_PTHREADS_UNIX98_EXT)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_rwlock_destroy (rw),
- result),
- int, -1);
-# else /* Solaris */
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::rwlock_destroy (rw), result), int, -1);
-# endif /* ACE_HAS_PTHREADS_UNIX98_EXT */
-# else /* NT, POSIX, and VxWorks don't support this natively. */
- ACE_OS::mutex_destroy (&rw->lock_);
- ACE_OS::cond_destroy (&rw->waiting_readers_);
- ACE_OS::cond_destroy (&rw->waiting_important_writer_);
- return ACE_OS::cond_destroy (&rw->waiting_writers_);
-# endif /* ACE_HAS_STHREADS && !defined (ACE_LACKS_RWLOCK_T) */
-#else
- ACE_UNUSED_ARG (rw);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-#if defined (ACE_HAS_THREADS) && (!defined (ACE_LACKS_RWLOCK_T) || \
- defined (ACE_HAS_PTHREADS_UNIX98_EXT))
-ACE_INLINE int
-ACE_OS::rwlock_init (ACE_rwlock_t *rw,
- int type,
- const ACE_TCHAR *name,
- void *arg)
-{
- // ACE_OS_TRACE ("ACE_OS::rwlock_init");
-# if defined (ACE_HAS_PTHREADS_UNIX98_EXT)
- ACE_UNUSED_ARG (name);
- ACE_UNUSED_ARG (arg);
-
- int status;
- pthread_rwlockattr_t attr;
- pthread_rwlockattr_init (&attr);
-# if !defined (ACE_LACKS_RWLOCKATTR_PSHARED)
- pthread_rwlockattr_setpshared (&attr, (type == USYNC_THREAD ?
- PTHREAD_PROCESS_PRIVATE :
- PTHREAD_PROCESS_SHARED));
-# else
- ACE_UNUSED_ARG (type);
-# endif /* !ACE_LACKS_RWLOCKATTR_PSHARED */
- status = ACE_ADAPT_RETVAL (pthread_rwlock_init (rw, &attr), status);
- pthread_rwlockattr_destroy (&attr);
-
- return status;
-
-# else
- type = type;
- name = name;
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::rwlock_init (rw, type, arg), result), int, -1);
-# endif /* ACE_HAS_PTHREADS_UNIX98_EXT */
-}
-#endif /* ACE_HAS THREADS && !defined (ACE_LACKS_RWLOCK_T) */
-
-ACE_INLINE int
-ACE_OS::sema_destroy (ACE_sema_t *s)
-{
- ACE_OS_TRACE ("ACE_OS::sema_destroy");
-# if defined (ACE_HAS_POSIX_SEM)
- int result;
-# if !defined (ACE_HAS_POSIX_SEM_TIMEOUT) && !defined (ACE_DISABLE_POSIX_SEM_TIMEOUT_EMULATION)
- ACE_OS::mutex_destroy (&s->lock_);
- ACE_OS::cond_destroy (&s->count_nonzero_);
-# endif /* !ACE_HAS_POSIX_SEM_TIMEOUT && !ACE_DISABLE_POSIX_SEM_TIMEOUT_EMULATION */
-# if defined (ACE_LACKS_NAMED_POSIX_SEM)
- if (s->name_)
- {
- // Only destroy the semaphore if we're the ones who
- // initialized it.
- ACE_OSCALL (::sem_destroy (s->sema_),int, -1, result);
- ACE_OS::shm_unlink (s->name_);
- delete s->name_;
- return result;
- }
-# else
- if (s->name_)
- {
- ACE_OSCALL (::sem_unlink (s->name_), int, -1, result);
- ACE_OS::free ((void *) s->name_);
- ACE_OSCALL_RETURN (::sem_close (s->sema_), int, -1);
- }
-# endif /* ACE_LACKS_NAMED_POSIX_SEM */
- else
- {
- ACE_OSCALL (::sem_destroy (s->sema_), int, -1, result);
-# if defined (ACE_LACKS_NAMED_POSIX_SEM)
- if (s->new_sema_)
-# endif /* ACE_LACKS_NAMED_POSIX_SEM */
- delete s->sema_;
- s->sema_ = 0;
- return result;
- }
-# elif defined (ACE_USES_FIFO_SEM)
- int r0 = 0;
- if (s->name_)
- {
- r0 = ACE_OS::unlink (s->name_);
- ACE_OS::free (s->name_);
- s->name_ = 0;
- }
- int r1 = ACE_OS::close (s->fd_[0]); /* ignore error */
- int r2 = ACE_OS::close (s->fd_[1]); /* ignore error */
- return r0 != 0 || r1 != 0 || r2 != 0 ? -1 : 0;
-# elif defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_STHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::sema_destroy (s), result), int, -1);
-# elif defined (ACE_HAS_PTHREADS)
- int r1 = ACE_OS::mutex_destroy (&s->lock_);
- int r2 = ACE_OS::cond_destroy (&s->count_nonzero_);
- return r1 != 0 || r2 != 0 ? -1 : 0;
-# elif defined (ACE_HAS_WTHREADS)
-# if !defined (ACE_USES_WINCE_SEMA_SIMULATION)
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::CloseHandle (*s), ace_result_), int, -1);
-# else /* ACE_USES_WINCE_SEMA_SIMULATION */
- // Free up underlying objects of the simulated semaphore.
- int r1 = ACE_OS::thread_mutex_destroy (&s->lock_);
- int r2 = ACE_OS::event_destroy (&s->count_nonzero_);
- return r1 != 0 || r2 != 0 ? -1 : 0;
-# endif /* ACE_USES_WINCE_SEMA_SIMULATION */
-# elif defined (ACE_VXWORKS)
- int result;
- ACE_OSCALL (::semDelete (s->sema_), int, -1, result);
- s->sema_ = 0;
- return result;
-# endif /* ACE_HAS_STHREADS */
-# else
- ACE_UNUSED_ARG (s);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_POSIX_SEM */
-}
-
-// NOTE: The previous four function definitions must appear before
-// ACE_OS::sema_init ().
-
-ACE_INLINE int
-ACE_OS::sema_init (ACE_sema_t *s,
- u_int count,
- int type,
- const char *name,
- void *arg,
- int max,
- LPSECURITY_ATTRIBUTES sa)
-{
- ACE_OS_TRACE ("ACE_OS::sema_init");
-#if defined (ACE_HAS_POSIX_SEM)
- ACE_UNUSED_ARG (max);
- ACE_UNUSED_ARG (sa);
-
- s->name_ = 0;
-# if defined (ACE_HAS_POSIX_SEM_TIMEOUT) || defined (ACE_DISABLE_POSIX_SEM_TIMEOUT_EMULATION)
- ACE_UNUSED_ARG (arg);
-# else
- int result = -1;
-
- if (ACE_OS::mutex_init (&s->lock_, type, name,
- (ACE_mutexattr_t *) arg) == 0
- && ACE_OS::cond_init (&s->count_nonzero_, (short)type, name, arg) == 0
- && ACE_OS::mutex_lock (&s->lock_) == 0)
- {
- if (ACE_OS::mutex_unlock (&s->lock_) == 0)
- result = 0;
- }
-
- if (result == -1)
- {
- ACE_OS::mutex_destroy (&s->lock_);
- ACE_OS::cond_destroy (&s->count_nonzero_);
- return result;
- }
-# endif /* ACE_HAS_POSIX_SEM_TIMEOUT || ACE_DISABLE_POSIX_SEM_TIMEOUT_EMULATION */
-
-# if defined (ACE_LACKS_NAMED_POSIX_SEM)
- s->new_sema_ = false;
- if (type == USYNC_PROCESS)
- {
- // Let's see if it already exists.
- ACE_HANDLE fd = ACE_OS::shm_open (ACE_TEXT_CHAR_TO_TCHAR (name),
- O_RDWR | O_CREAT | O_EXCL,
- ACE_DEFAULT_FILE_PERMS);
- if (fd == ACE_INVALID_HANDLE)
- {
- if (errno == EEXIST)
- fd = ACE_OS::shm_open (ACE_TEXT_CHAR_TO_TCHAR (name),
- O_RDWR | O_CREAT,
- ACE_DEFAULT_FILE_PERMS);
- else
- return -1;
- }
- else
- {
- // We own this shared memory object! Let's set its
- // size.
- if (ACE_OS::ftruncate (fd,
- sizeof (ACE_sema_t)) == -1)
- return -1;
- s->name_ = ACE_OS::strdup (name);
- if (s->name_ == 0)
- return -1;
- }
- if (fd == -1)
- return -1;
-
- s->sema_ = (sem_t *)
- ACE_OS::mmap (0,
- sizeof (ACE_sema_t),
- PROT_RDWR,
- MAP_SHARED,
- fd,
- 0);
- ACE_OS::close (fd);
- if (s->sema_ == (sem_t *) MAP_FAILED)
- return -1;
- if (s->name_
- // @@ According UNIX Network Programming V2 by Stevens,
- // sem_init() is currently not required to return zero on
- // success, but it *does* return -1 upon failure. For
- // this reason, check for failure by comparing to -1,
- // instead of checking for success by comparing to zero.
- // -Ossama
- // Only initialize it if we're the one who created it.
- && ::sem_init (s->sema_, type == USYNC_PROCESS, count) == -1)
- return -1;
- return 0;
- }
-# else
- if (name)
- {
-# if defined (sun) || defined (HPUX)
- // Solaris and HP-UX require the name to start with a slash. Solaris
- // further requires that there be no other slashes than the first.
- const char *last_slash = ACE_OS::strrchr (name, '/');
- char name2[MAXPATHLEN];
- if (0 == last_slash)
- {
- ACE_OS::strcpy (name2, "/");
- ACE_OS::strcat (name2, name);
- name = name2;
- }
-# if defined (sun)
- else
- name = last_slash; // Chop off chars preceding last slash
-# endif /* sun */
-# endif /* sun || HPUX */
-
- ACE_ALLOCATOR_RETURN (s->name_,
- ACE_OS::strdup (name),
- -1);
- s->sema_ = ::sem_open (s->name_,
- O_CREAT,
- ACE_DEFAULT_FILE_PERMS,
- count);
- if (s->sema_ == (sem_t *) SEM_FAILED)
- return -1;
- else
- return 0;
- }
-# endif /* ACE_LACKS_NAMED_POSIX_SEM */
- else
- {
- ACE_NEW_RETURN (s->sema_,
- sem_t,
- -1);
-# if defined (ACE_LACKS_NAMED_POSIX_SEM)
- s->new_sema_ = true;
-# endif /* ACE_LACKS_NAMED_POSIX_SEM */
- ACE_OSCALL_RETURN (::sem_init (s->sema_,
- type != USYNC_THREAD,
- count), int, -1);
- }
-
-#elif defined (ACE_USES_FIFO_SEM)
- ACE_UNUSED_ARG (arg);
- ACE_UNUSED_ARG (max);
- ACE_UNUSED_ARG (sa);
- int flags = 0;
- mode_t mode = S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP;
-
- if (type == USYNC_THREAD)
- {
- // Create systemwide unique name for semaphore
- char uname[ACE_UNIQUE_NAME_LEN];
- ACE_OS::unique_name ((const void *) s,
- uname,
- ACE_UNIQUE_NAME_LEN);
- name = &uname[0];
- }
-
- s->name_ = 0;
- s->fd_[0] = s->fd_[1] = ACE_INVALID_HANDLE;
- bool creator = false;
-
- if (ACE_OS::mkfifo (ACE_TEXT_CHAR_TO_TCHAR (name), mode) < 0)
- {
- if (errno != EEXIST) /* already exists OK else ERR */
- return -1;
- // check if this is a real FIFO, not just some other existing file
- ACE_stat fs;
- if (ACE_OS::stat (name, &fs))
- return -1;
- if (!S_ISFIFO (fs.st_mode))
- {
- // existing file is not a FIFO
- errno = EEXIST;
- return -1;
- }
- }
- else
- creator = true; // remember we created it for initialization at end
-
- // for processshared semaphores remember who we are to be able to remove
- // the FIFO when we're done with it
- if (type == USYNC_PROCESS)
- {
- s->name_ = ACE_OS::strdup (name);
- if (s->name_ == 0)
- {
- if (creator)
- ACE_OS::unlink (name);
- return -1;
- }
- }
-
- if ((s->fd_[0] = ACE_OS::open (name, O_RDONLY | O_NONBLOCK)) == ACE_INVALID_HANDLE
- || (s->fd_[1] = ACE_OS::open (name, O_WRONLY | O_NONBLOCK)) == ACE_INVALID_HANDLE)
- return (-1);
-
- /* turn off nonblocking for fd_[0] */
- if ((flags = ACE_OS::fcntl (s->fd_[0], F_GETFL, 0)) < 0)
- return (-1);
-
- flags &= ~O_NONBLOCK;
- if (ACE_OS::fcntl (s->fd_[0], F_SETFL, flags) < 0)
- return (-1);
-
- //if (s->name_ && count)
- if (creator && count)
- {
- char c = 1;
- for (u_int i=0; i<count ; ++i)
- if (ACE_OS::write (s->fd_[1], &c, sizeof (char)) != 1)
- return (-1);
- }
-
- // In the case of process scope semaphores we can already unlink the FIFO now that
- // we completely set it up (the opened handles will keep it active until we close
- // thos down). This way we're protected against unexpected crashes as far as removal
- // is concerned.
- // Unfortunately this does not work for processshared FIFOs since as soon as we
- // have unlinked the semaphore no other process will be able to open it anymore.
- if (type == USYNC_THREAD)
- {
- ACE_OS::unlink (name);
- }
-
- return (0);
-#elif defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_STHREADS)
- ACE_UNUSED_ARG (name);
- ACE_UNUSED_ARG (max);
- ACE_UNUSED_ARG (sa);
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::sema_init (s, count, type, arg), result),
- int, -1);
-# elif defined (ACE_HAS_PTHREADS)
- ACE_UNUSED_ARG (max);
- ACE_UNUSED_ARG (sa);
- int result = -1;
-
- if (ACE_OS::mutex_init (&s->lock_, type, name,
- (ACE_mutexattr_t *) arg) == 0
- && ACE_OS::cond_init (&s->count_nonzero_, type, name, arg) == 0
- && ACE_OS::mutex_lock (&s->lock_) == 0)
- {
- s->count_ = count;
- s->waiters_ = 0;
-
- if (ACE_OS::mutex_unlock (&s->lock_) == 0)
- result = 0;
- }
-
- if (result == -1)
- {
- ACE_OS::mutex_destroy (&s->lock_);
- ACE_OS::cond_destroy (&s->count_nonzero_);
- }
- return result;
-# elif defined (ACE_HAS_WTHREADS)
-# if ! defined (ACE_USES_WINCE_SEMA_SIMULATION)
- ACE_UNUSED_ARG (type);
- ACE_UNUSED_ARG (arg);
- // Create the semaphore with its value initialized to <count> and
- // its maximum value initialized to <max>.
- SECURITY_ATTRIBUTES sa_buffer;
- SECURITY_DESCRIPTOR sd_buffer;
- *s = ::CreateSemaphoreA
- (ACE_OS::default_win32_security_attributes_r (sa, &sa_buffer, &sd_buffer),
- count,
- max,
- name);
-
- if (*s == 0)
- ACE_FAIL_RETURN (-1);
- /* NOTREACHED */
- else
- return 0;
-# else /* ACE_USES_WINCE_SEMA_SIMULATION */
- int result = -1;
-
- // Initialize internal object for semaphore simulation.
- // Grab the lock as soon as possible when we initializing
- // the semaphore count. Notice that we initialize the
- // event object as "manually reset" so we can amortize the
- // cost for singling/reseting the event.
- // @@ I changed the mutex type to thread_mutex. Notice that this
- // is basically a CriticalSection object and doesn't not has
- // any security attribute whatsoever. However, since this
- // semaphore implementation only works within a process, there
- // shouldn't any security issue at all.
- if (ACE_OS::thread_mutex_init (&s->lock_, type, name, (ACE_mutexattr_t *)arg) == 0
- && ACE_OS::event_init (&s->count_nonzero_, 1,
- count > 0, type, name, arg, sa) == 0
- && ACE_OS::thread_mutex_lock (&s->lock_) == 0)
- {
- s->count_ = count;
-
- if (ACE_OS::thread_mutex_unlock (&s->lock_) == 0)
- result = 0;
- }
-
- // Destroy the internal objects if we didn't initialize
- // either of them successfully. Don't bother to check
- // for errors.
- if (result == -1)
- {
- ACE_OS::thread_mutex_destroy (&s->lock_);
- ACE_OS::event_destroy (&s->count_nonzero_);
- }
- return result;
-# endif /* ACE_USES_WINCE_SEMA_SIMULATION */
-# elif defined (ACE_VXWORKS)
- ACE_UNUSED_ARG (name);
- ACE_UNUSED_ARG (arg);
- ACE_UNUSED_ARG (max);
- ACE_UNUSED_ARG (sa);
- s->name_ = 0;
- s->sema_ = ::semCCreate (type, count);
- return s->sema_ ? 0 : -1;
-# endif /* ACE_HAS_STHREADS */
-#else
- ACE_UNUSED_ARG (s);
- ACE_UNUSED_ARG (count);
- ACE_UNUSED_ARG (type);
- ACE_UNUSED_ARG (name);
- ACE_UNUSED_ARG (arg);
- ACE_UNUSED_ARG (max);
- ACE_UNUSED_ARG (sa);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_POSIX_SEM */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::sema_init (ACE_sema_t *s,
- u_int count,
- int type,
- const wchar_t *name,
- void *arg,
- int max,
- LPSECURITY_ATTRIBUTES sa)
-{
-# if defined (ACE_HAS_WTHREADS)
-# if ! defined (ACE_USES_WINCE_SEMA_SIMULATION)
- ACE_UNUSED_ARG (type);
- ACE_UNUSED_ARG (arg);
- // Create the semaphore with its value initialized to <count> and
- // its maximum value initialized to <max>.
- SECURITY_ATTRIBUTES sa_buffer;
- SECURITY_DESCRIPTOR sd_buffer;
- *s = ::CreateSemaphoreW
- (ACE_OS::default_win32_security_attributes_r (sa, &sa_buffer, &sd_buffer),
- count,
- max,
- name);
-
- if (*s == 0)
- ACE_FAIL_RETURN (-1);
- /* NOTREACHED */
- else
- return 0;
-# else /* ACE_USES_WINCE_SEMA_SIMULATION */
- int result = -1;
-
- // Initialize internal object for semaphore simulation.
- // Grab the lock as soon as possible when we initializing
- // the semaphore count. Notice that we initialize the
- // event object as "manually reset" so we can amortize the
- // cost for singling/reseting the event.
- // @@ I changed the mutex type to thread_mutex. Notice that this
- // is basically a CriticalSection object and doesn't not has
- // any security attribute whatsoever. However, since this
- // semaphore implementation only works within a process, there
- // shouldn't any security issue at all.
- if (ACE_OS::thread_mutex_init (&s->lock_, type, name, (ACE_mutexattr_t *)arg) == 0
- && ACE_OS::event_init (&s->count_nonzero_, 1,
- count > 0, type, name, arg, sa) == 0
- && ACE_OS::thread_mutex_lock (&s->lock_) == 0)
- {
- s->count_ = count;
-
- if (ACE_OS::thread_mutex_unlock (&s->lock_) == 0)
- result = 0;
- }
-
- // Destroy the internal objects if we didn't initialize
- // either of them successfully. Don't bother to check
- // for errors.
- if (result == -1)
- {
- ACE_OS::thread_mutex_destroy (&s->lock_);
- ACE_OS::event_destroy (&s->count_nonzero_);
- }
- return result;
-# endif /* ACE_USES_WINCE_SEMA_SIMULATION */
-# else /* ACE_HAS_WTHREADS */
- // Just call the normal char version.
- return ACE_OS::sema_init (s, count, type, ACE_Wide_To_Ascii (name).char_rep (), arg, max, sa);
-# endif /* ACE_HAS_WTHREADS */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE int
-ACE_OS::sema_post (ACE_sema_t *s)
-{
- ACE_OS_TRACE ("ACE_OS::sema_post");
-# if defined (ACE_HAS_POSIX_SEM)
-# if defined (ACE_HAS_POSIX_SEM_TIMEOUT) || defined (ACE_DISABLE_POSIX_SEM_TIMEOUT_EMULATION)
- ACE_OSCALL_RETURN (::sem_post (s->sema_), int, -1);
-# else
- int result = -1;
-
- if (ACE_OS::mutex_lock (&s->lock_) == 0)
- {
- if (::sem_post (s->sema_) == 0)
- result = ACE_OS::cond_signal (&s->count_nonzero_);
-
- ACE_OS::mutex_unlock (&s->lock_);
- }
- return result;
-# endif /* ACE_HAS_POSIX_SEM_TIMEOUT || ACE_DISABLE_POSIX_SEM_TIMEOUT_EMULATION */
-# elif defined (ACE_USES_FIFO_SEM)
- char c = 1;
- if (ACE_OS::write (s->fd_[1], &c, sizeof (char)) == sizeof (char))
- return (0);
- return (-1);
-# elif defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_STHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::sema_post (s), result), int, -1);
-# elif defined (ACE_HAS_PTHREADS)
- int result = -1;
-
- if (ACE_OS::mutex_lock (&s->lock_) == 0)
- {
- // Always allow a waiter to continue if there is one.
- if (s->waiters_ > 0)
- result = ACE_OS::cond_signal (&s->count_nonzero_);
- else
- result = 0;
-
- s->count_++;
- ACE_OS::mutex_unlock (&s->lock_);
- }
- return result;
-# elif defined (ACE_HAS_WTHREADS)
-# if !defined (ACE_USES_WINCE_SEMA_SIMULATION)
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::ReleaseSemaphore (*s, 1, 0),
- ace_result_),
- int, -1);
-# else /* ACE_USES_WINCE_SEMA_SIMULATION */
- int result = -1;
-
- // Since we are simulating semaphores, we need to update semaphore
- // count manually. Grab the lock to prevent race condition first.
- if (ACE_OS::thread_mutex_lock (&s->lock_) == 0)
- {
- // Check the original state of event object. Single the event
- // object in transition from semaphore not available to
- // semaphore available.
- if (s->count_++ <= 0)
- result = ACE_OS::event_signal (&s->count_nonzero_);
- else
- result = 0;
-
- ACE_OS::thread_mutex_unlock (&s->lock_);
- }
- return result;
-# endif /* ACE_USES_WINCE_SEMA_SIMULATION */
-# elif defined (ACE_VXWORKS)
- ACE_OSCALL_RETURN (::semGive (s->sema_), int, -1);
-# endif /* ACE_HAS_STHREADS */
-# else
- ACE_UNUSED_ARG (s);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_POSIX_SEM */
-}
-
-ACE_INLINE int
-ACE_OS::sema_post (ACE_sema_t *s, u_int release_count)
-{
-#if defined (ACE_WIN32) && !defined (ACE_USES_WINCE_SEMA_SIMULATION)
- // Win32 supports this natively.
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::ReleaseSemaphore (*s, release_count, 0),
- ace_result_), int, -1);
-#else
- // On POSIX platforms we need to emulate this ourselves.
- // @@ We can optimize on this implementation. However,
- // the semaphore promitive on Win32 doesn't allow one
- // to increase a semaphore to more than the count it was
- // first initialized. Posix and solaris don't seem to have
- // this restriction. Should we impose the restriction in
- // our semaphore simulation?
- for (size_t i = 0; i < release_count; i++)
- if (ACE_OS::sema_post (s) == -1)
- return -1;
-
- return 0;
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE int
-ACE_OS::sema_trywait (ACE_sema_t *s)
-{
- ACE_OS_TRACE ("ACE_OS::sema_trywait");
-# if defined (ACE_HAS_POSIX_SEM)
- // POSIX semaphores set errno to EAGAIN if trywait fails
- ACE_OSCALL_RETURN (::sem_trywait (s->sema_), int, -1);
-# elif defined (ACE_USES_FIFO_SEM)
- char c;
- int rc, flags;
-
- /* turn on nonblocking for s->fd_[0] */
- if ((flags = ACE_OS::fcntl (s->fd_[0], F_GETFL, 0)) < 0)
- return (-1);
- flags |= O_NONBLOCK;
- if (ACE_OS::fcntl (s->fd_[0], F_SETFL, flags) < 0)
- return (-1);
-
- // read sets errno to EAGAIN if no input
- rc = ACE_OS::read (s->fd_[0], &c, sizeof (char));
-
- /* turn off nonblocking for fd_[0] */
- if ((flags = ACE_OS::fcntl (s->fd_[0], F_GETFL, 0)) >= 0)
- {
- flags &= ~O_NONBLOCK;
- ACE_OS::fcntl (s->fd_[0], F_SETFL, flags);
- }
-
- return rc == 1 ? 0 : (-1);
-# elif defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_STHREADS)
- // STHREADS semaphores set errno to EBUSY if trywait fails.
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::sema_trywait (s),
- result),
- int, -1);
-# elif defined (ACE_HAS_PTHREADS)
-
- int result = -1;
-
- if (ACE_OS::mutex_lock (&s->lock_) == 0)
- {
- if (s->count_ > 0)
- {
- --s->count_;
- result = 0;
- }
- else
- errno = EBUSY;
-
- ACE_OS::mutex_unlock (&s->lock_);
- }
- return result;
-# elif defined (ACE_HAS_WTHREADS)
-# if !defined (ACE_USES_WINCE_SEMA_SIMULATION)
- DWORD result = ::WaitForSingleObject (*s, 0);
-
- if (result == WAIT_OBJECT_0)
- return 0;
- else
- {
- if (result == WAIT_TIMEOUT)
- errno = EBUSY;
- else
- ACE_OS::set_errno_to_last_error ();
- // This is a hack, we need to find an appropriate mapping...
- return -1;
- }
-# else /* ACE_USES_WINCE_SEMA_SIMULATION */
- // Check the status of semaphore first. Return immediately
- // if the semaphore is not available and avoid grabing the
- // lock.
- DWORD result = ::WaitForSingleObject (s->count_nonzero_, 0);
-
- if (result == WAIT_OBJECT_0) // Proceed when it is available.
- {
- ACE_OS::thread_mutex_lock (&s->lock_);
-
- // Need to double check if the semaphore is still available.
- // The double checking scheme will slightly affect the
- // efficiency if most of the time semaphores are not blocked.
- result = ::WaitForSingleObject (s->count_nonzero_, 0);
- if (result == WAIT_OBJECT_0)
- {
- // Adjust the semaphore count. Only update the event
- // object status when the state changed.
- s->count_--;
- if (s->count_ <= 0)
- ACE_OS::event_reset (&s->count_nonzero_);
- result = 0;
- }
-
- ACE_OS::thread_mutex_unlock (&s->lock_);
- }
-
- // Translate error message to errno used by ACE.
- if (result == WAIT_TIMEOUT)
- errno = EBUSY;
- else
- ACE_OS::set_errno_to_last_error ();
- // This is taken from the hack above. ;)
- return -1;
-# endif /* ACE_USES_WINCE_SEMA_SIMULATION */
-# elif defined (ACE_VXWORKS)
- if (::semTake (s->sema_, NO_WAIT) == ERROR)
- if (errno == S_objLib_OBJ_UNAVAILABLE)
- {
- // couldn't get the semaphore
- errno = EBUSY;
- return -1;
- }
- else
- // error
- return -1;
- else
- // got the semaphore
- return 0;
-# endif /* ACE_HAS_STHREADS */
-# else
- ACE_UNUSED_ARG (s);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_POSIX_SEM */
-}
-
-ACE_INLINE int
-ACE_OS::sema_wait (ACE_sema_t *s)
-{
- ACE_OS_TRACE ("ACE_OS::sema_wait");
-# if defined (ACE_HAS_POSIX_SEM)
- ACE_OSCALL_RETURN (::sem_wait (s->sema_), int, -1);
-# elif defined (ACE_USES_FIFO_SEM)
- char c;
- if (ACE_OS::read (s->fd_[0], &c, sizeof (char)) == 1)
- return (0);
- return (-1);
-# elif defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_STHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::sema_wait (s), result), int, -1);
-# elif defined (ACE_HAS_PTHREADS)
- int result = 0;
-
- ACE_PTHREAD_CLEANUP_PUSH (&s->lock_);
-
- if (ACE_OS::mutex_lock (&s->lock_) != 0)
- result = -1;
- else
- {
- // Keep track of the number of waiters so that we can signal
- // them properly in <ACE_OS::sema_post>.
- s->waiters_++;
-
- // Wait until the semaphore count is > 0.
- while (s->count_ == 0)
- if (ACE_OS::cond_wait (&s->count_nonzero_,
- &s->lock_) == -1)
- {
- result = -2; // -2 means that we need to release the mutex.
- break;
- }
-
- --s->waiters_;
- }
-
- if (result == 0)
- --s->count_;
-
- if (result != -1)
- ACE_OS::mutex_unlock (&s->lock_);
- ACE_PTHREAD_CLEANUP_POP (0);
- return result < 0 ? -1 : result;
-
-# elif defined (ACE_HAS_WTHREADS)
-# if !defined (ACE_USES_WINCE_SEMA_SIMULATION)
- switch (::WaitForSingleObject (*s, INFINITE))
- {
- case WAIT_OBJECT_0:
- return 0;
- default:
- // This is a hack, we need to find an appropriate mapping...
- ACE_OS::set_errno_to_last_error ();
- return -1;
- }
- /* NOTREACHED */
-# else /* ACE_USES_WINCE_SEMA_SIMULATION */
- // Timed wait.
- int result = -1;
- for (;;)
- // Check if the semaphore is avialable or not and wait forever.
- // Don't bother to grab the lock if it is not available (to avoid
- // deadlock.)
- switch (::WaitForSingleObject (s->count_nonzero_, INFINITE))
- {
- case WAIT_OBJECT_0:
- ACE_OS::thread_mutex_lock (&s->lock_);
-
- // Need to double check if the semaphore is still available.
- // This time, we shouldn't wait at all.
- if (::WaitForSingleObject (s->count_nonzero_, 0) == WAIT_OBJECT_0)
- {
- // Decrease the internal counter. Only update the event
- // object's status when the state changed.
- s->count_--;
- if (s->count_ <= 0)
- ACE_OS::event_reset (&s->count_nonzero_);
- result = 0;
- }
-
- ACE_OS::thread_mutex_unlock (&s->lock_);
- // if we didn't get a hold on the semaphore, the result won't
- // be 0 and thus, we'll start from the beginning again.
- if (result == 0)
- return 0;
- break;
-
- default:
- // Since we wait indefinitely, anything other than
- // WAIT_OBJECT_O indicates an error.
- ACE_OS::set_errno_to_last_error ();
- // This is taken from the hack above. ;)
- return -1;
- }
- /* NOTREACHED */
-# endif /* ACE_USES_WINCE_SEMA_SIMULATION */
-# elif defined (ACE_VXWORKS)
- ACE_OSCALL_RETURN (::semTake (s->sema_, WAIT_FOREVER), int, -1);
-# endif /* ACE_HAS_STHREADS */
-# else
- ACE_UNUSED_ARG (s);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_POSIX_SEM */
-}
-
-ACE_INLINE int
-ACE_OS::sema_wait (ACE_sema_t *s, ACE_Time_Value &tv)
-{
- ACE_OS_TRACE ("ACE_OS::sema_wait");
-# if defined (ACE_HAS_POSIX_SEM)
-# if defined (ACE_HAS_POSIX_SEM_TIMEOUT)
- int rc;
- timespec_t ts;
- ts = tv; // Calls ACE_Time_Value::operator timespec_t().
- ACE_OSCALL (::sem_timedwait (s->sema_, &ts), int, -1, rc);
- if (rc == -1 && errno == ETIMEDOUT)
- errno = ETIME; /* POSIX returns ETIMEDOUT but we need ETIME */
- return rc;
-# elif !defined (ACE_DISABLE_POSIX_SEM_TIMEOUT_EMULATION)
- int result = 0;
- bool expired = false;
- ACE_Errno_Guard error (errno);
-
- ACE_PTHREAD_CLEANUP_PUSH (&s->lock_);
-
- if (ACE_OS::mutex_lock (&s->lock_) != 0)
- result = -2;
- else
- {
- bool finished = true;
- do
- {
- result = ACE_OS::sema_trywait (s);
- if (result == -1 && errno == EAGAIN)
- expired = ACE_OS::gettimeofday () > tv;
- else
- expired = false;
-
- finished = result != -1 || expired ||
- (result == -1 && errno != EAGAIN);
- if (!finished)
- {
- if (ACE_OS::cond_timedwait (&s->count_nonzero_,
- &s->lock_,
- &tv) == -1)
- {
- error = errno;
- result = -1;
- break;
- }
- }
- } while (!finished);
-
- if (expired)
- error = ETIME;
-
-# if defined (ACE_LACKS_COND_TIMEDWAIT_RESET)
- tv = ACE_OS::gettimeofday ();
-# endif /* ACE_LACKS_COND_TIMEDWAIT_RESET */
- }
-
- if (result != -2)
- ACE_OS::mutex_unlock (&s->lock_);
- ACE_PTHREAD_CLEANUP_POP (0);
- return result < 0 ? -1 : result;
-# else /* No native sem_timedwait(), and emulation disabled */
- ACE_UNUSED_ARG (s);
- ACE_UNUSED_ARG (tv);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_POSIX_SEM_TIMEOUT */
-# elif defined (ACE_USES_FIFO_SEM)
- int rc;
- ACE_Time_Value now = ACE_OS::gettimeofday ();
-
- while (tv > now)
- {
- ACE_Time_Value timeout = tv;
- timeout -= now;
-
- ACE_Handle_Set fds_;
-
- fds_.set_bit (s->fd_[0]);
- if ((rc = ACE_OS::select (ACE_Handle_Set::MAXSIZE, fds_, 0, 0, timeout)) != 1)
- {
- if (rc == 0 || errno != EAGAIN)
- {
- if (rc == 0)
- errno = ETIME;
- return (-1);
- }
- }
-
- // try to read the signal *but* do *not* block
- if (rc == 1 && ACE_OS::sema_trywait (s) == 0)
- return (0);
-
- // we were woken for input but someone beat us to it
- // so we wait again if there is still time
- now = ACE_OS::gettimeofday ();
- }
-
- // make sure errno is set right
- errno = ETIME;
-
- return (-1);
-# elif defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_STHREADS)
- ACE_UNUSED_ARG (s);
- ACE_UNUSED_ARG (tv);
- ACE_NOTSUP_RETURN (-1);
-# elif defined (ACE_HAS_PTHREADS)
- int result = 0;
- ACE_Errno_Guard error (errno);
-
- ACE_PTHREAD_CLEANUP_PUSH (&s->lock_);
-
- if (ACE_OS::mutex_lock (&s->lock_) != 0)
- result = -1;
- else
- {
- // Keep track of the number of waiters so that we can signal
- // them properly in <ACE_OS::sema_post>.
- s->waiters_++;
-
- // Wait until the semaphore count is > 0 or until we time out.
- while (s->count_ == 0)
- if (ACE_OS::cond_timedwait (&s->count_nonzero_,
- &s->lock_,
- &tv) == -1)
- {
- error = errno;
- result = -2; // -2 means that we need to release the mutex.
- break;
- }
-
- --s->waiters_;
- }
-
- if (result == 0)
- {
-# if defined (ACE_LACKS_COND_TIMEDWAIT_RESET)
- tv = ACE_OS::gettimeofday ();
-# endif /* ACE_LACKS_COND_TIMEDWAIT_RESET */
- --s->count_;
- }
-
- if (result != -1)
- ACE_OS::mutex_unlock (&s->lock_);
- ACE_PTHREAD_CLEANUP_POP (0);
- return result < 0 ? -1 : result;
-# elif defined (ACE_HAS_WTHREADS)
-# if !defined (ACE_USES_WINCE_SEMA_SIMULATION)
- int msec_timeout;
-
- if (tv.sec () == 0 && tv.usec () == 0)
- msec_timeout = 0; // Do a "poll."
- else
- {
- // Note that we must convert between absolute time (which is
- // passed as a parameter) and relative time (which is what
- // <WaitForSingleObjects> expects).
- ACE_Time_Value relative_time (tv - ACE_OS::gettimeofday ());
-
- // Watchout for situations where a context switch has caused the
- // current time to be > the timeout.
- if (relative_time < ACE_Time_Value::zero)
- msec_timeout = 0;
- else
- msec_timeout = relative_time.msec ();
- }
-
- switch (::WaitForSingleObject (*s, msec_timeout))
- {
- case WAIT_OBJECT_0:
- tv = ACE_OS::gettimeofday (); // Update time to when acquired
- return 0;
- case WAIT_TIMEOUT:
- errno = ETIME;
- return -1;
- default:
- // This is a hack, we need to find an appropriate mapping...
- ACE_OS::set_errno_to_last_error ();
- return -1;
- }
- /* NOTREACHED */
-# else /* ACE_USES_WINCE_SEMA_SIMULATION */
- // Note that in this mode, the acquire is done in two steps, and
- // we may get signaled but cannot grab the semaphore before
- // timeout. In that case, we'll need to restart the process with
- // updated timeout value.
-
- // tv is an absolute time, but we need relative to work with the Windows
- // API. Also, some users have become accustomed to using a 0 time value
- // as a shortcut for "now", which works on non-Windows because 0 is
- // always earlier than now. However, the need to convert to relative time
- // means we need to watch out for this case.
- ACE_Time_Value end_time = tv;
- if (tv == ACE_Time_Value::zero)
- end_time = ACE_OS::gettimeofday ();
- ACE_Time_Value relative_time = end_time - ACE_OS::gettimeofday ();
- int result = -1;
-
- // While we are not timeout yet. >= 0 will let this go through once
- // and if not able to get the object, it should hit WAIT_TIMEOUT
- // right away.
- while (relative_time >= ACE_Time_Value::zero)
- {
- // Wait for our turn to get the object.
- switch (::WaitForSingleObject (s->count_nonzero_, relative_time.msec ()))
- {
- case WAIT_OBJECT_0:
- ACE_OS::thread_mutex_lock (&s->lock_);
-
- // Need to double check if the semaphore is still available.
- // We can only do a "try lock" styled wait here to avoid
- // blocking threads that want to signal the semaphore.
- if (::WaitForSingleObject (s->count_nonzero_, 0) == WAIT_OBJECT_0)
- {
- // As before, only reset the object when the semaphore
- // is no longer available.
- s->count_--;
- if (s->count_ <= 0)
- ACE_OS::event_reset (&s->count_nonzero_);
- result = 0;
- }
-
- ACE_OS::thread_mutex_unlock (&s->lock_);
-
- // Only return when we successfully get the semaphore.
- if (result == 0)
- {
- tv = ACE_OS::gettimeofday (); // Update to time acquired
- return 0;
- }
- break;
-
- // We have timed out.
- case WAIT_TIMEOUT:
- errno = ETIME;
- return -1;
-
- // What?
- default:
- ACE_OS::set_errno_to_last_error ();
- // This is taken from the hack above. ;)
- return -1;
- };
-
- // Haven't been able to get the semaphore yet, update the
- // timeout value to reflect the remaining time we want to wait.
- relative_time = end_time - ACE_OS::gettimeofday ();
- }
-
- // We have timed out.
- errno = ETIME;
- return -1;
-# endif /* ACE_USES_WINCE_SEMA_SIMULATION */
-# elif defined (ACE_VXWORKS)
- // Note that we must convert between absolute time (which is
- // passed as a parameter) and relative time (which is what
- // the system call expects).
- ACE_Time_Value relative_time (tv - ACE_OS::gettimeofday ());
-
- int ticks_per_sec = ::sysClkRateGet ();
-
- int ticks = relative_time.sec () * ticks_per_sec +
- relative_time.usec () * ticks_per_sec / ACE_ONE_SECOND_IN_USECS;
- if (::semTake (s->sema_, ticks) == ERROR)
- {
- if (errno == S_objLib_OBJ_TIMEOUT)
- // Convert the VxWorks errno to one that's common for to ACE
- // platforms.
- errno = ETIME;
- else if (errno == S_objLib_OBJ_UNAVAILABLE)
- errno = EBUSY;
- return -1;
- }
- else
- {
- tv = ACE_OS::gettimeofday (); // Update to time acquired
- return 0;
- }
-# endif /* ACE_HAS_STHREADS */
-# else
- ACE_UNUSED_ARG (s);
- ACE_UNUSED_ARG (tv);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_POSIX_SEM */
-}
-
-ACE_INLINE int
-ACE_OS::sema_wait (ACE_sema_t *s, ACE_Time_Value *tv)
-{
- return tv == 0 ? ACE_OS::sema_wait (s) : ACE_OS::sema_wait (s, *tv);
-}
-
-ACE_INLINE int
-ACE_OS::semctl (int int_id, int semnum, int cmd, semun value)
-{
- ACE_OS_TRACE ("ACE_OS::semctl");
-#if defined (ACE_HAS_SYSV_IPC)
- ACE_OSCALL_RETURN (::semctl (int_id, semnum, cmd, value), int, -1);
-#else
- ACE_UNUSED_ARG (int_id);
- ACE_UNUSED_ARG (semnum);
- ACE_UNUSED_ARG (cmd);
- ACE_UNUSED_ARG (value);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_SYSV_IPC */
-}
-
-ACE_INLINE int
-ACE_OS::semget (key_t key, int nsems, int flags)
-{
- ACE_OS_TRACE ("ACE_OS::semget");
-#if defined (ACE_HAS_SYSV_IPC)
- ACE_OSCALL_RETURN (::semget (key, nsems, flags), int, -1);
-#else
- ACE_UNUSED_ARG (key);
- ACE_UNUSED_ARG (nsems);
- ACE_UNUSED_ARG (flags);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_SYSV_IPC */
-}
-
-ACE_INLINE int
-ACE_OS::semop (int int_id, struct sembuf *sops, size_t nsops)
-{
- ACE_OS_TRACE ("ACE_OS::semop");
-#if defined (ACE_HAS_SYSV_IPC)
- ACE_OSCALL_RETURN (::semop (int_id, sops, nsops), int, -1);
-#else
- ACE_UNUSED_ARG (int_id);
- ACE_UNUSED_ARG (sops);
- ACE_UNUSED_ARG (nsops);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_SYSV_IPC */
-}
-
-ACE_INLINE int
-ACE_OS::sigtimedwait (const sigset_t *sset,
- siginfo_t *info,
- const ACE_Time_Value *timeout)
-{
- ACE_OS_TRACE ("ACE_OS::sigtimedwait");
-#if defined (ACE_HAS_SIGTIMEDWAIT)
- timespec_t ts;
- timespec_t *tsp;
-
- if (timeout != 0)
- {
- ts = *timeout; // Calls ACE_Time_Value::operator timespec_t().
- tsp = &ts;
- }
- else
- tsp = 0;
-
- ACE_OSCALL_RETURN (::sigtimedwait (sset, info, tsp),
- int, -1);
-#else
- ACE_UNUSED_ARG (sset);
- ACE_UNUSED_ARG (info);
- ACE_UNUSED_ARG (timeout);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_SIGTIMEDWAIT */
-}
-
-ACE_INLINE int
-ACE_OS::sigwait (sigset_t *sset, int *sig)
-{
- ACE_OS_TRACE ("ACE_OS::sigwait");
- int local_sig;
- if (sig == 0)
- sig = &local_sig;
-#if defined (ACE_HAS_THREADS)
-# if (defined (__FreeBSD__) && (__FreeBSD__ < 3))
- ACE_UNUSED_ARG (sset);
- ACE_NOTSUP_RETURN (-1);
-# elif defined (ACE_HAS_STHREADS)
- # if (_POSIX_C_SOURCE - 0 >= 199506L) || defined (_POSIX_PTHREAD_SEMANTICS)
- errno = ::sigwait (sset, sig);
- return errno == 0 ? *sig : -1;
- #else
- *sig = ::sigwait (sset);
- return *sig;
- #endif /* _POSIX_C_SOURCE - 0 >= 199506L || _POSIX_PTHREAD_SEMANTICS */
-# elif defined (ACE_HAS_PTHREADS)
- // LynxOS and Digital UNIX have their own hoops to jump through.
-# if defined (__Lynx__)
- // Second arg is a void **, which we don't need (the selected
- // signal number is returned).
- *sig = ::sigwait (sset, 0);
- return *sig;
-# elif defined (DIGITAL_UNIX) && defined (__DECCXX_VER)
- // DEC cxx (but not g++) needs this direct call to its internal
- // sigwait (). This allows us to #undef sigwait, so that we can
- // have ACE_OS::sigwait. cxx gets confused by ACE_OS::sigwait
- // if sigwait is _not_ #undef'ed.
- errno = ::_Psigwait (sset, sig);
- return errno == 0 ? *sig : -1;
-# else /* ! __Lynx __ && ! (DIGITAL_UNIX && __DECCXX_VER) */
-# if defined (CYGWIN32)
- // Cygwin has sigwait definition, but it is not implemented
- ACE_UNUSED_ARG (sset);
- ACE_NOTSUP_RETURN (-1);
-# elif defined (ACE_TANDEM_T1248_PTHREADS)
- errno = ::spt_sigwait (sset, sig);
- return errno == 0 ? *sig : -1;
-# else /* this is draft 7 or std */
- errno = ::sigwait (sset, sig);
- return errno == 0 ? *sig : -1;
-# endif /* CYGWIN32 */
-# endif /* ! __Lynx__ && ! (DIGITAL_UNIX && __DECCXX_VER) */
-# elif defined (ACE_HAS_WTHREADS)
- ACE_UNUSED_ARG (sset);
- ACE_NOTSUP_RETURN (-1);
-# elif defined (ACE_VXWORKS)
- // Second arg is a struct siginfo *, which we don't need (the
- // selected signal number is returned). Third arg is timeout: 0
- // means forever.
- *sig = ::sigtimedwait (sset, 0, 0);
- return *sig;
-# endif /* __FreeBSD__ */
-#else
- ACE_UNUSED_ARG (sset);
- ACE_UNUSED_ARG (sig);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::sigwaitinfo (const sigset_t *sset,
- siginfo_t *info)
-{
- ACE_OS_TRACE ("ACE_OS::sigwaitinfo");
- // If this platform has sigtimedwait, it should have sigwaitinfo as well.
- // If this isn't true somewhere, let me know and I'll fix this.
- // -Steve Huston <shuston@riverace.com>.
-#if defined (ACE_HAS_SIGTIMEDWAIT)
- ACE_OSCALL_RETURN (::sigwaitinfo (sset, info), int, -1);
-#else
- ACE_UNUSED_ARG (sset);
- ACE_UNUSED_ARG (info);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_SIGTIMEDWAIT */
-}
-
-ACE_INLINE int
-ACE_OS::thr_cancel (ACE_thread_t thr_id)
-{
- ACE_OS_TRACE ("ACE_OS::thr_cancel");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_PTHREADS) && !defined (ACE_LACKS_PTHREAD_CANCEL)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_cancel (thr_id),
- result),
- int, -1);
-# elif defined (ACE_HAS_VXTHREADS)
- ACE_OSCALL_RETURN (::taskDelete (thr_id), int, -1);
-# else /* Could be ACE_HAS_PTHREADS && ACE_LACKS_PTHREAD_CANCEL */
- ACE_UNUSED_ARG (thr_id);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_PTHREADS */
-#else
- ACE_UNUSED_ARG (thr_id);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::thr_cmp (ACE_hthread_t t1, ACE_hthread_t t2)
-{
-#if defined (ACE_HAS_PTHREADS)
-# if defined (pthread_equal)
- // If it's a macro we can't say "pthread_equal"...
- return pthread_equal (t1, t2);
-# else
- return pthread_equal (t1, t2);
-# endif /* pthread_equal */
-#else /* For STHREADS, WTHREADS, and VXWORKS ... */
- // Hum, Do we need to treat WTHREAD differently?
- // levine 13 oct 98 % Probably, ACE_hthread_t is a HANDLE.
- return t1 == t2;
-#endif /* ACE_HAS_PTHREADS */
-}
-
-ACE_INLINE int
-ACE_OS::thr_continue (ACE_hthread_t target_thread)
-{
- ACE_OS_TRACE ("ACE_OS::thr_continue");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_STHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::thr_continue (target_thread), result), int, -1);
-# elif defined (ACE_HAS_PTHREADS)
-# if defined (ACE_HAS_PTHREAD_CONTINUE)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_continue (target_thread),
- result),
- int, -1);
-# elif defined (ACE_HAS_PTHREAD_CONTINUE_NP)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_continue_np (target_thread),
- result),
- int, -1);
-# elif defined (ACE_HAS_PTHREAD_RESUME_NP)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_resume_np (target_thread),
- result),
- int, -1);
-# else
- ACE_UNUSED_ARG (target_thread);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_PTHREAD_CONTINUE */
-# elif defined (ACE_HAS_WTHREADS)
- DWORD result = ::ResumeThread (target_thread);
- if (result == ACE_SYSCALL_FAILED)
- ACE_FAIL_RETURN (-1);
- else
- return 0;
-# elif defined (ACE_HAS_VXTHREADS)
- ACE_OSCALL_RETURN (::taskResume (target_thread), int, -1);
-# endif /* ACE_HAS_STHREADS */
-#else
- ACE_UNUSED_ARG (target_thread);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::thr_getconcurrency (void)
-{
- ACE_OS_TRACE ("ACE_OS::thr_getconcurrency");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_STHREADS)
- return ::thr_getconcurrency ();
-# elif defined (ACE_HAS_PTHREADS) && defined (ACE_HAS_PTHREAD_GETCONCURRENCY)
- return pthread_getconcurrency ();
-# else
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_STHREADS */
-#else
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::thr_getprio (ACE_hthread_t ht_id, int &priority, int &policy)
-{
- ACE_OS_TRACE ("ACE_OS::thr_getprio");
- ACE_UNUSED_ARG (policy);
-#if defined (ACE_HAS_THREADS)
-# if (defined (ACE_HAS_PTHREADS) && \
- (!defined (ACE_LACKS_SETSCHED) || defined (ACE_HAS_PTHREAD_SCHEDPARAM)))
-
- struct sched_param param;
- int result;
-
- ACE_OSCALL (ACE_ADAPT_RETVAL (pthread_getschedparam (ht_id, &policy, &param),
- result), int,
- -1, result);
- priority = param.sched_priority;
- return result;
-# elif defined (ACE_HAS_STHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::thr_getprio (ht_id, &priority), result), int, -1);
-# elif defined (ACE_HAS_WTHREADS) && !defined (ACE_HAS_WINCE)
- ACE_Errno_Guard error (errno);
-
- priority = ::GetThreadPriority (ht_id);
-
-# if defined (ACE_HAS_PHARLAP)
-# if defined (ACE_PHARLAP_LABVIEW_RT)
- policy = ACE_SCHED_FIFO;
-# else
- DWORD timeslice = ::EtsGetTimeSlice ();
- policy = timeslice == 0 ? ACE_SCHED_OTHER : ACE_SCHED_FIFO;
-# endif /* ACE_PHARLAP_LABVIEW_RT */
-# else
- DWORD priority_class = ::GetPriorityClass (::GetCurrentProcess ());
- if (priority_class == 0 && (error = ::GetLastError ()) != NO_ERROR)
- ACE_FAIL_RETURN (-1);
-
- policy =
- (priority_class ==
- REALTIME_PRIORITY_CLASS) ? ACE_SCHED_FIFO : ACE_SCHED_OTHER;
-# endif /* ACE_HAS_PHARLAP */
-
- return 0;
-# elif defined (ACE_HAS_VXTHREADS)
- ACE_OSCALL_RETURN (::taskPriorityGet (ht_id, &priority), int, -1);
-# else
- ACE_UNUSED_ARG (ht_id);
- ACE_UNUSED_ARG (priority);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_STHREADS */
-#else
- ACE_UNUSED_ARG (ht_id);
- ACE_UNUSED_ARG (priority);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::thr_getprio (ACE_hthread_t ht_id, int &priority)
-{
- ACE_OS_TRACE ("ACE_OS::thr_getprio");
- int policy = 0;
- return ACE_OS::thr_getprio (ht_id, priority, policy);
-}
-
-#if defined (ACE_HAS_THREAD_SPECIFIC_STORAGE)
-ACE_INLINE int
-ACE_OS::thr_getspecific_native (ACE_OS_thread_key_t key, void **data)
-{
-// ACE_OS_TRACE ("ACE_OS::thr_getspecific_native");
-# if defined (ACE_HAS_PTHREADS)
- *data = pthread_getspecific (key);
- return 0;
-# elif defined (ACE_HAS_STHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::thr_getspecific (key, data), result), int, -1);
-# elif defined (ACE_HAS_WTHREADS)
- *data = ::TlsGetValue (key);
- if (*data == 0 && ::GetLastError () != NO_ERROR)
- {
- ACE_OS::set_errno_to_last_error ();
- return -1;
- }
- else
- return 0;
-# else /* ACE_HAS_PTHREADS etc.*/
- ACE_UNUSED_ARG (key);
- ACE_UNUSED_ARG (data);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_PTHREADS etc.*/
-}
-#endif /* ACE_HAS_THREAD_SPECIFIC_STORAGE */
-
-ACE_INLINE int
-ACE_OS::thr_getspecific (ACE_thread_key_t key, void **data)
-{
-// ACE_OS_TRACE ("ACE_OS::thr_getspecific");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_TSS_EMULATION)
- if (ACE_TSS_Emulation::is_key (key) == 0)
- {
- errno = EINVAL;
- data = 0;
- return -1;
- }
- else
- {
- *data = ACE_TSS_Emulation::ts_object (key);
- return 0;
- }
-# elif defined (ACE_HAS_THREAD_SPECIFIC_STORAGE)
- return ACE_OS::thr_getspecific_native (key, data);
-#else
- ACE_UNUSED_ARG (key);
- ACE_UNUSED_ARG (data);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_TSS_EMULATION */
-#else
- ACE_UNUSED_ARG (key);
- ACE_UNUSED_ARG (data);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-#if !defined (ACE_HAS_VXTHREADS)
-ACE_INLINE int
-ACE_OS::thr_join (ACE_hthread_t thr_handle,
- ACE_THR_FUNC_RETURN *status)
-{
- ACE_OS_TRACE ("ACE_OS::thr_join");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_STHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::thr_join (thr_handle, 0, status), result),
- int, -1);
-# elif defined (ACE_HAS_PTHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_join (thr_handle, status), result),
- int, -1);
-# elif defined (ACE_HAS_WTHREADS)
- ACE_THR_FUNC_RETURN local_status = 0;
-
- // Make sure that status is non-NULL.
- if (status == 0)
- status = &local_status;
-
- if (::WaitForSingleObject (thr_handle, INFINITE) == WAIT_OBJECT_0
- && ::GetExitCodeThread (thr_handle, status) != FALSE)
- {
- ::CloseHandle (thr_handle);
- return 0;
- }
- ACE_FAIL_RETURN (-1);
- /* NOTREACHED */
-# else
- ACE_UNUSED_ARG (thr_handle);
- ACE_UNUSED_ARG (status);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_STHREADS */
-#else
- ACE_UNUSED_ARG (thr_handle);
- ACE_UNUSED_ARG (status);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::thr_join (ACE_thread_t waiter_id,
- ACE_thread_t *thr_id,
- ACE_THR_FUNC_RETURN *status)
-{
- ACE_OS_TRACE ("ACE_OS::thr_join");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_STHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::thr_join (waiter_id, thr_id, status), result),
- int, -1);
-# elif defined (ACE_HAS_PTHREADS)
- ACE_UNUSED_ARG (thr_id);
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_join (waiter_id, status), result),
- int, -1);
-# elif defined (ACE_HAS_WTHREADS)
- ACE_UNUSED_ARG (waiter_id);
- ACE_UNUSED_ARG (thr_id);
- ACE_UNUSED_ARG (status);
-
- // This could be implemented if the DLL-Main function or the
- // task exit base class some log the threads which have exited
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_STHREADS */
-#else
- ACE_UNUSED_ARG (waiter_id);
- ACE_UNUSED_ARG (thr_id);
- ACE_UNUSED_ARG (status);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-#endif /* !VXWORKS */
-
-ACE_INLINE int
-ACE_OS::thr_kill (ACE_thread_t thr_id, int signum)
-{
- ACE_OS_TRACE ("ACE_OS::thr_kill");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_PTHREADS)
-# if defined (ACE_LACKS_PTHREAD_KILL)
- ACE_UNUSED_ARG (signum);
- ACE_UNUSED_ARG (thr_id);
- ACE_NOTSUP_RETURN (-1);
-# else
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_kill (thr_id, signum),
- result),
- int, -1);
-# endif /* ACE_LACKS_PTHREAD_KILL */
-# elif defined (ACE_HAS_STHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::thr_kill (thr_id, signum),
- result),
- int, -1);
-# elif defined (ACE_HAS_VXTHREADS)
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_OSCALL_RETURN (::kill (thr_id, signum), int, -1);
- //FUZZ: enable check_for_lack_ACE_OS
-# else
- ACE_UNUSED_ARG (thr_id);
- ACE_UNUSED_ARG (signum);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_STHREADS */
-#else
- ACE_UNUSED_ARG (thr_id);
- ACE_UNUSED_ARG (signum);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE size_t
-ACE_OS::thr_min_stack (void)
-{
- ACE_OS_TRACE ("ACE_OS::thr_min_stack");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_STHREADS)
-# if defined (ACE_HAS_THR_MINSTACK)
- // Tandem did some weirdo mangling of STHREAD names...
- return ::thr_minstack ();
-# else
- return ::thr_min_stack ();
-# endif /* !ACE_HAS_THR_MINSTACK */
-# elif defined (ACE_HAS_PTHREADS)
-# if defined (_SC_THREAD_STACK_MIN)
- return (size_t) ACE_OS::sysconf (_SC_THREAD_STACK_MIN);
-# elif defined (PTHREAD_STACK_MIN)
- return PTHREAD_STACK_MIN;
-# else
- ACE_NOTSUP_RETURN (0);
-# endif /* _SC_THREAD_STACK_MIN */
-# elif defined (ACE_HAS_WTHREADS)
- ACE_NOTSUP_RETURN (0);
-# elif defined (ACE_HAS_VXTHREADS)
- TASK_DESC taskDesc;
- STATUS status;
-
- ACE_thread_t tid = ACE_OS::thr_self ();
-
- ACE_OSCALL (ACE_ADAPT_RETVAL (::taskInfoGet (tid, &taskDesc),
- status),
- STATUS, -1, status);
- return status == OK ? taskDesc.td_stackSize : 0;
-# else /* Should not happen... */
- ACE_NOTSUP_RETURN (0);
-# endif /* ACE_HAS_STHREADS */
-#else
- ACE_NOTSUP_RETURN (0);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE ACE_thread_t
-ACE_OS::thr_self (void)
-{
- // ACE_OS_TRACE ("ACE_OS::thr_self");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_PTHREADS)
- // Note, don't use "::" here since the following call is often a macro.
- return pthread_self ();
-# elif defined (ACE_HAS_STHREADS)
- ACE_OSCALL_RETURN (::thr_self (), int, -1);
-# elif defined (ACE_HAS_WTHREADS)
- return ::GetCurrentThreadId ();
-# elif defined (ACE_HAS_VXTHREADS)
- return ::taskIdSelf ();
-# endif /* ACE_HAS_STHREADS */
-#else
- return 1; // Might as well make it the first thread ;-)
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE const char*
-ACE_OS::thr_name (void)
-{
-#if defined (ACE_HAS_THREADS)
-#if defined (ACE_HAS_VXTHREADS)
- return ::taskName (ACE_OS::thr_self ());
-#else
- ACE_NOTSUP_RETURN (0);
-#endif
-#else
- ACE_NOTSUP_RETURN (0);
-#endif
-}
-
-ACE_INLINE void
-ACE_OS::thr_self (ACE_hthread_t &self)
-{
- ACE_OS_TRACE ("ACE_OS::thr_self");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_PTHREADS)
- // Note, don't use "::" here since the following call is often a macro.
- self = pthread_self ();
-# elif defined (ACE_HAS_THREAD_SELF)
- self = ::thread_self ();
-# elif defined (ACE_HAS_STHREADS)
- self = ::thr_self ();
-# elif defined (ACE_HAS_WTHREADS)
- self = ::GetCurrentThread ();
-# elif defined (ACE_HAS_VXTHREADS)
- self = ::taskIdSelf ();
-# endif /* ACE_HAS_STHREADS */
-#else
- self = 1; // Might as well make it the main thread ;-)
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::thr_setcancelstate (int new_state, int *old_state)
-{
- ACE_OS_TRACE ("ACE_OS::thr_setcancelstate");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_PTHREADS) && !defined (ACE_LACKS_PTHREAD_CANCEL)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_setcancelstate (new_state,
- old_state),
- result),
- int, -1);
-# elif defined (ACE_HAS_STHREADS)
- ACE_UNUSED_ARG (new_state);
- ACE_UNUSED_ARG (old_state);
- ACE_NOTSUP_RETURN (-1);
-# elif defined (ACE_HAS_WTHREADS)
- ACE_UNUSED_ARG (new_state);
- ACE_UNUSED_ARG (old_state);
- ACE_NOTSUP_RETURN (-1);
-# else /* Could be ACE_HAS_PTHREADS && ACE_LACKS_PTHREAD_CANCEL */
- ACE_UNUSED_ARG (new_state);
- ACE_UNUSED_ARG (old_state);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_PTHREADS */
-#else
- ACE_UNUSED_ARG (new_state);
- ACE_UNUSED_ARG (old_state);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::thr_setcanceltype (int new_type, int *old_type)
-{
- ACE_OS_TRACE ("ACE_OS::thr_setcanceltype");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_PTHREADS) && !defined (ACE_LACKS_PTHREAD_CANCEL)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_setcanceltype (new_type,
- old_type),
- result),
- int, -1);
-# else /* Could be ACE_HAS_PTHREADS && ACE_LACKS_PTHREAD_CANCEL */
- ACE_UNUSED_ARG (new_type);
- ACE_UNUSED_ARG (old_type);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_PTHREADS */
-#else
- ACE_UNUSED_ARG (new_type);
- ACE_UNUSED_ARG (old_type);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::thr_setconcurrency (int hint)
-{
- ACE_OS_TRACE ("ACE_OS::thr_setconcurrency");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_STHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::thr_setconcurrency (hint),
- result),
- int, -1);
-# elif defined (ACE_HAS_PTHREADS) && defined (ACE_HAS_PTHREAD_SETCONCURRENCY)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_setconcurrency (hint),
- result),
- int, -1);
-# else
- ACE_UNUSED_ARG (hint);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_STHREADS */
-#else
- ACE_UNUSED_ARG (hint);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::thr_setprio (ACE_hthread_t ht_id, int priority, int policy)
-{
- ACE_OS_TRACE ("ACE_OS::thr_setprio");
- ACE_UNUSED_ARG (policy);
-#if defined (ACE_HAS_THREADS)
-# if (defined (ACE_HAS_PTHREADS) && \
- (!defined (ACE_LACKS_SETSCHED) || defined (ACE_HAS_PTHREAD_SCHEDPARAM)))
-
- int result;
- struct sched_param param;
- ACE_OS::memset ((void *) &param, 0, sizeof param);
-
- // If <policy> is -1, we don't want to use it for
- // pthread_setschedparam(). Instead, obtain policy from
- // pthread_getschedparam().
- if (policy == -1)
- {
- ACE_OSCALL (ACE_ADAPT_RETVAL (pthread_getschedparam (ht_id, &policy, &param),
- result),
- int, -1, result);
- if (result == -1)
- return result;
- }
-
- param.sched_priority = priority;
-
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_setschedparam (ht_id,
- policy,
- &param),
- result),
- int, -1);
-# elif defined (ACE_HAS_STHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::thr_setprio (ht_id, priority),
- result),
- int, -1);
-# elif defined (ACE_HAS_WTHREADS)
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::SetThreadPriority (ht_id, priority),
- ace_result_),
- int, -1);
-# elif defined (ACE_HAS_VXTHREADS)
- ACE_OSCALL_RETURN (::taskPrioritySet (ht_id, priority), int, -1);
-# else
- // For example, platforms that support Pthreads but LACK_SETSCHED.
- ACE_UNUSED_ARG (ht_id);
- ACE_UNUSED_ARG (priority);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_STHREADS */
-#else
- ACE_UNUSED_ARG (ht_id);
- ACE_UNUSED_ARG (priority);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::thr_sigsetmask (int how,
- const sigset_t *nsm,
- sigset_t *osm)
-{
- ACE_OS_TRACE ("ACE_OS::thr_sigsetmask");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_LACKS_PTHREAD_THR_SIGSETMASK)
- // DCE threads and Solaris 2.4 have no such function.
- ACE_UNUSED_ARG (osm);
- ACE_UNUSED_ARG (nsm);
- ACE_UNUSED_ARG (how);
-
- ACE_NOTSUP_RETURN (-1);
-# elif defined (ACE_HAS_SIGTHREADMASK)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::sigthreadmask (how, nsm, osm),
- result), int, -1);
-# elif defined (ACE_HAS_STHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::thr_sigsetmask (how, nsm, osm),
- result),
- int, -1);
-# elif defined (ACE_HAS_PTHREADS)
-# if !defined (ACE_LACKS_PTHREAD_SIGMASK)
- int result;
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::pthread_sigmask (how, nsm, osm),
- result), int, -1);
- //FUZZ: enable check_for_lack_ACE_OS
-# endif /* !ACE_LACKS_PTHREAD_SIGMASK */
-
-#if 0
- /* Don't know if any platform actually needs this... */
- // as far as I can tell, this is now pthread_sigaction() -- jwr
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_sigaction (how, nsm, osm),
- result), int, -1);
-#endif /* 0 */
-
-# elif defined (ACE_HAS_WTHREADS)
- ACE_UNUSED_ARG (osm);
- ACE_UNUSED_ARG (nsm);
- ACE_UNUSED_ARG (how);
-
- ACE_NOTSUP_RETURN (-1);
-# elif defined (ACE_VXWORKS)
- int old_mask = 0;
- switch (how)
- {
- case SIG_BLOCK:
- case SIG_UNBLOCK:
- {
- // get the old mask
- old_mask = ::sigsetmask (*nsm);
- // create a new mask: the following assumes that sigset_t is 4 bytes,
- // which it is on VxWorks 5.2, so bit operations are done simply . . .
- ::sigsetmask (how == SIG_BLOCK ? (old_mask |= *nsm) : (old_mask &= ~*nsm));
- if (osm)
- *osm = old_mask;
- break;
- }
- case SIG_SETMASK:
- old_mask = ::sigsetmask (*nsm);
- if (osm)
- *osm = old_mask;
- break;
- default:
- return -1;
- }
-
- return 0;
-# else /* Should not happen. */
- ACE_UNUSED_ARG (how);
- ACE_UNUSED_ARG (nsm);
- ACE_UNUSED_ARG (osm);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_LACKS_PTHREAD_THR_SIGSETMASK */
-#else
- ACE_UNUSED_ARG (how);
- ACE_UNUSED_ARG (nsm);
- ACE_UNUSED_ARG (osm);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::thr_suspend (ACE_hthread_t target_thread)
-{
- ACE_OS_TRACE ("ACE_OS::thr_suspend");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_STHREADS)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::thr_suspend (target_thread), result), int, -1);
-# elif defined (ACE_HAS_PTHREADS)
-# if defined (ACE_HAS_PTHREAD_SUSPEND)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_suspend (target_thread),
- result),
- int, -1);
-# elif defined (ACE_HAS_PTHREAD_SUSPEND_NP)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (pthread_suspend_np (target_thread),
- result),
- int, -1);
-# else
- ACE_UNUSED_ARG (target_thread);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_PTHREAD_SUSPEND */
-# elif defined (ACE_HAS_WTHREADS)
- if (::SuspendThread (target_thread) != ACE_SYSCALL_FAILED)
- return 0;
- else
- ACE_FAIL_RETURN (-1);
- /* NOTREACHED */
-# elif defined (ACE_HAS_VXTHREADS)
- ACE_OSCALL_RETURN (::taskSuspend (target_thread), int, -1);
-# endif /* ACE_HAS_STHREADS */
-#else
- ACE_UNUSED_ARG (target_thread);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE void
-ACE_OS::thr_testcancel (void)
-{
- ACE_OS_TRACE ("ACE_OS::thr_testcancel");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_PTHREADS) && !defined (ACE_LACKS_PTHREAD_CANCEL)
- pthread_testcancel ();
-# elif defined (ACE_HAS_STHREADS)
-# elif defined (ACE_HAS_WTHREADS)
-# elif defined (ACE_HAS_VXTHREADS)
-# else
- // no-op: can't use ACE_NOTSUP_RETURN because there is no return value
-# endif /* ACE_HAS_PTHREADS */
-#else
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE void
-ACE_OS::thr_yield (void)
-{
- ACE_OS_TRACE ("ACE_OS::thr_yield");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_PTHREADS)
- ::sched_yield ();
-# elif defined (ACE_HAS_STHREADS)
- ::thr_yield ();
-# elif defined (ACE_HAS_WTHREADS)
- ::Sleep (0);
-# elif defined (ACE_HAS_VXTHREADS)
- // An argument of 0 to ::taskDelay doesn't appear to yield the
- // current thread.
- // Now, it does seem to work. The context_switch_time test
- // works fine with task_delay set to 0.
- ::taskDelay (0);
-# endif /* ACE_HAS_STHREADS */
-#else
- ;
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::thread_mutex_destroy (ACE_thread_mutex_t *m)
-{
- ACE_OS_TRACE ("ACE_OS::thread_mutex_destroy");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_WTHREADS)
- ::DeleteCriticalSection (m);
- return 0;
-# else
- return ACE_OS::mutex_destroy (m);
-# endif /* ACE_HAS_WTHREADS */
-#else
- ACE_UNUSED_ARG (m);
- ACE_NOTSUP_RETURN (-1);
-
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::thread_mutex_init (ACE_thread_mutex_t *m,
- int lock_type,
- const char *name,
- ACE_mutexattr_t *arg)
-{
- // ACE_OS_TRACE ("ACE_OS::thread_mutex_init");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_WTHREADS)
- ACE_UNUSED_ARG (lock_type);
- ACE_UNUSED_ARG (name);
- ACE_UNUSED_ARG (arg);
-
- ACE_SEH_TRY
- {
- ::InitializeCriticalSection (m);
- }
- ACE_SEH_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
- {
- errno = ENOMEM;
- return -1;
- }
- return 0;
-
-# elif defined (ACE_HAS_STHREADS) || defined (ACE_HAS_PTHREADS)
- // Force the use of USYNC_THREAD!
- return ACE_OS::mutex_init (m, USYNC_THREAD, name, arg, 0, lock_type);
-# elif defined (ACE_HAS_VXTHREADS)
- return mutex_init (m, lock_type, name, arg);
-
-# endif /* ACE_HAS_STHREADS || ACE_HAS_PTHREADS */
-
-#else
- ACE_UNUSED_ARG (m);
- ACE_UNUSED_ARG (lock_type);
- ACE_UNUSED_ARG (name);
- ACE_UNUSED_ARG (arg);
- ACE_NOTSUP_RETURN (-1);
-
-#endif /* ACE_HAS_THREADS */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::thread_mutex_init (ACE_thread_mutex_t *m,
- int lock_type,
- const wchar_t *name,
- ACE_mutexattr_t *arg)
-{
- // ACE_OS_TRACE ("ACE_OS::thread_mutex_init");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_WTHREADS)
- ACE_UNUSED_ARG (lock_type);
- ACE_UNUSED_ARG (name);
- ACE_UNUSED_ARG (arg);
-
- ACE_SEH_TRY
- {
- ::InitializeCriticalSection (m);
- }
- ACE_SEH_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
- {
- errno = ENOMEM;
- return -1;
- }
- return 0;
-
-# elif defined (ACE_HAS_STHREADS) || defined (ACE_HAS_PTHREADS)
- // Force the use of USYNC_THREAD!
- return ACE_OS::mutex_init (m, USYNC_THREAD, name, arg, 0, lock_type);
-# elif defined (ACE_HAS_VXTHREADS)
- return mutex_init (m, lock_type, name, arg);
-# endif /* ACE_HAS_STHREADS || ACE_HAS_PTHREADS */
-#else
- ACE_UNUSED_ARG (m);
- ACE_UNUSED_ARG (lock_type);
- ACE_UNUSED_ARG (name);
- ACE_UNUSED_ARG (arg);
- ACE_NOTSUP_RETURN (-1);
-
-#endif /* ACE_HAS_THREADS */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE int
-ACE_OS::thread_mutex_lock (ACE_thread_mutex_t *m)
-{
- // ACE_OS_TRACE ("ACE_OS::thread_mutex_lock");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_WTHREADS)
- ::EnterCriticalSection (m);
- return 0;
-# else
- return ACE_OS::mutex_lock (m);
-# endif /* ACE_HAS_WTHREADS */
-#else
- ACE_UNUSED_ARG (m);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::thread_mutex_lock (ACE_thread_mutex_t *m,
- const ACE_Time_Value &timeout)
-{
- // ACE_OS_TRACE ("ACE_OS::thread_mutex_lock");
-
- // For all platforms, except MS Windows, this method is equivalent
- // to calling ACE_OS::mutex_lock() since ACE_thread_mutex_t and
- // ACE_mutex_t are the same type. However, those typedefs evaluate
- // to different types on MS Windows. The "thread mutex"
- // implementation in ACE for MS Windows cannot readily support
- // timeouts due to a lack of timeout features for this type of MS
- // Windows synchronization mechanism.
-
-#if defined (ACE_HAS_THREADS) && !defined (ACE_HAS_WTHREADS)
- return ACE_OS::mutex_lock (m, timeout);
-#else
- ACE_UNUSED_ARG (m);
- ACE_UNUSED_ARG (timeout);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::thread_mutex_lock (ACE_thread_mutex_t *m,
- const ACE_Time_Value *timeout)
-{
- return timeout == 0
- ? ACE_OS::thread_mutex_lock (m)
- : ACE_OS::thread_mutex_lock (m, *timeout);
-}
-
-ACE_INLINE int
-ACE_OS::thread_mutex_trylock (ACE_thread_mutex_t *m)
-{
- ACE_OS_TRACE ("ACE_OS::thread_mutex_trylock");
-
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_WTHREADS)
-# if defined (ACE_HAS_WIN32_TRYLOCK)
- BOOL result = ::TryEnterCriticalSection (m);
- if (result == TRUE)
- return 0;
- else
- {
- errno = EBUSY;
- return -1;
- }
-# else
- ACE_UNUSED_ARG (m);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_WIN32_TRYLOCK */
-# elif defined (ACE_HAS_STHREADS) || defined (ACE_HAS_PTHREADS) || defined (ACE_VXWORKS)
- return ACE_OS::mutex_trylock (m);
-#endif /* Threads variety case */
-
-#else
- ACE_UNUSED_ARG (m);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-ACE_INLINE int
-ACE_OS::thread_mutex_unlock (ACE_thread_mutex_t *m)
-{
- ACE_OS_TRACE ("ACE_OS::thread_mutex_unlock");
-#if defined (ACE_HAS_THREADS)
-# if defined (ACE_HAS_WTHREADS)
- ::LeaveCriticalSection (m);
- return 0;
-# else
- return ACE_OS::mutex_unlock (m);
-# endif /* ACE_HAS_WTHREADS */
-#else
- ACE_UNUSED_ARG (m);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_THREADS */
-}
-
-/*****************************************************************************/
-
-# if defined (ACE_IS_SPLITTING)
-# define ACE_SPECIAL_INLINE
-# else
-# define ACE_SPECIAL_INLINE ACE_INLINE
-//# define ACE_SPECIAL_INLINE inline
-# endif
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
-
-ACE_INLINE
-int
-ACE_OS_Thread_Mutex_Guard::acquire (void)
-{
- return owner_ = ACE_OS::thread_mutex_lock (&lock_);
-}
-
-ACE_INLINE
-int
-ACE_OS_Thread_Mutex_Guard::release (void)
-{
- if (owner_ == -1)
- return 0;
- else
- {
- owner_ = -1;
- return ACE_OS::thread_mutex_unlock (&lock_);
- }
-}
-
-ACE_INLINE
-ACE_OS_Thread_Mutex_Guard::ACE_OS_Thread_Mutex_Guard (ACE_thread_mutex_t &m)
- : lock_ (m), owner_ (-1)
-{
- if (!ACE_OS_Object_Manager::starting_up ())
- acquire ();
-}
-
-ACE_INLINE
-ACE_OS_Thread_Mutex_Guard::~ACE_OS_Thread_Mutex_Guard ()
-{
- release ();
-}
-
-/*****************************************************************************/
-
-ACE_INLINE
-int
-ACE_OS_Recursive_Thread_Mutex_Guard::acquire (void)
-{
- return owner_ = ACE_OS::recursive_mutex_lock (&lock_);
-}
-
-ACE_INLINE
-int
-ACE_OS_Recursive_Thread_Mutex_Guard::release (void)
-{
- if (owner_ == -1)
- return 0;
- else
- {
- owner_ = -1;
- return ACE_OS::recursive_mutex_unlock (&lock_);
- }
-}
-
-ACE_INLINE
-ACE_OS_Recursive_Thread_Mutex_Guard::ACE_OS_Recursive_Thread_Mutex_Guard (
- ACE_recursive_thread_mutex_t &m)
- : lock_ (m),
- owner_ (-1)
-{
- if (!ACE_OS_Object_Manager::starting_up ())
- acquire ();
-}
-
-ACE_INLINE
-ACE_OS_Recursive_Thread_Mutex_Guard::~ACE_OS_Recursive_Thread_Mutex_Guard ()
-{
- release ();
-}
-
-#endif /* ACE_MT_SAFE && ACE_MT_SAFE != 0 */
-
-/*****************************************************************************/
-
-ACE_INLINE
-ACE_Thread_ID::ACE_Thread_ID (ACE_thread_t thread_id,
- ACE_hthread_t thread_handle)
- : thread_id_ (thread_id),
- thread_handle_ (thread_handle)
-{
-}
-
-ACE_INLINE
-ACE_Thread_ID::ACE_Thread_ID (const ACE_Thread_ID &id)
- : thread_id_ (id.thread_id_),
- thread_handle_ (id.thread_handle_)
-{
-}
-
-ACE_INLINE
-ACE_Thread_ID::ACE_Thread_ID (void)
- : thread_id_ (ACE_OS::thr_self ())
-{
- ACE_OS::thr_self (thread_handle_);
-}
-
-ACE_INLINE
-ACE_thread_t
-ACE_Thread_ID::id (void) const
-{
- return this->thread_id_;
-}
-
-ACE_INLINE void
-ACE_Thread_ID::id (ACE_thread_t thread_id)
-{
- this->thread_id_ = thread_id;
-}
-
-ACE_INLINE ACE_hthread_t
-ACE_Thread_ID::handle (void) const
-{
- return this->thread_handle_;
-}
-
-ACE_INLINE void
-ACE_Thread_ID::handle (ACE_hthread_t thread_handle)
-{
- this->thread_handle_ = thread_handle;
-}
-
-ACE_INLINE bool
-ACE_Thread_ID::operator== (const ACE_Thread_ID &rhs) const
-{
- return
- ACE_OS::thr_cmp (this->thread_handle_, rhs.thread_handle_)
- && ACE_OS::thr_equal (this->thread_id_, rhs.thread_id_);
-}
-
-ACE_INLINE bool
-ACE_Thread_ID::operator!= (const ACE_Thread_ID &rhs) const
-{
- return !(*this == rhs);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_arpa_inet.h b/dep/include/ace/OS_NS_arpa_inet.h
deleted file mode 100644
index dba0f6bd4da..00000000000
--- a/dep/include/ace/OS_NS_arpa_inet.h
+++ /dev/null
@@ -1,75 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_arpa_inet.h
- *
- * $Id: OS_NS_arpa_inet.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_ARPA_INET_H
-# define ACE_OS_NS_ARPA_INET_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/arpa/os_inet.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS {
-
- ACE_NAMESPACE_INLINE_FUNCTION
- unsigned long inet_addr (const char *name);
-
- extern ACE_Export
- int inet_aton (const char *strptr,
- struct in_addr *addr);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- char *inet_ntoa (const struct in_addr addr);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- const char *inet_ntop (int family,
- const void *addrptr,
- char *strptr,
- size_t len);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int inet_pton (int family,
- const char *strptr,
- void *addrptr);
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_arpa_inet.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_ARPA_INET_H */
-
diff --git a/dep/include/ace/OS_NS_arpa_inet.inl b/dep/include/ace/OS_NS_arpa_inet.inl
deleted file mode 100644
index 71db747c942..00000000000
--- a/dep/include/ace/OS_NS_arpa_inet.inl
+++ /dev/null
@@ -1,98 +0,0 @@
-// -*- C++ -*-
-// $Id: OS_NS_arpa_inet.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_string.h"
-#include "ace/OS_NS_errno.h"
-#include "ace/OS_NS_stdio.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE unsigned long
-ACE_OS::inet_addr (const char *name)
-{
- ACE_OS_TRACE ("ACE_OS::inet_addr");
-#if defined (ACE_LACKS_INET_ADDR)
- ACE_UNUSED_ARG (name);
- ACE_NOTSUP_RETURN (0);
-#elif defined (ACE_HAS_NONCONST_GETBY)
- return ::inet_addr (const_cast <char*> (name));
-#else
- return ::inet_addr (name);
-#endif /* ACE_HAS_NONCONST_GETBY */
-}
-
-ACE_INLINE char *
-ACE_OS::inet_ntoa (const struct in_addr addr)
-{
- ACE_OS_TRACE ("ACE_OS::inet_ntoa");
-#if defined (ACE_LACKS_INET_NTOA)
- ACE_UNUSED_ARG (addr);
- ACE_NOTSUP_RETURN (0);
-#else
- ACE_OSCALL_RETURN (::inet_ntoa (addr),
- char *,
- 0);
-#endif
-}
-
-ACE_INLINE const char *
-ACE_OS::inet_ntop (int family, const void *addrptr, char *strptr, size_t len)
-{
- ACE_OS_TRACE ("ACE_OS::inet_ntop");
-
-#if defined (ACE_HAS_IPV6) && !defined (ACE_WIN32)
- ACE_OSCALL_RETURN (::inet_ntop (family, addrptr, strptr, len), const char *, 0);
-#else
- const u_char *p = reinterpret_cast<const u_char *> (addrptr);
-
- if (family == AF_INET)
- {
- char temp[INET_ADDRSTRLEN];
-
- // Stevens uses snprintf() in his implementation but snprintf()
- // doesn't appear to be very portable. For now, hope that using
- // sprintf() will not cause any string/memory overrun problems.
- ACE_OS::sprintf (temp,
- "%d.%d.%d.%d",
- p[0], p[1], p[2], p[3]);
-
- if (ACE_OS::strlen (temp) >= len)
- {
- errno = ENOSPC;
- return 0; // Failure
- }
-
- ACE_OS::strcpy (strptr, temp);
- return strptr;
- }
-
- ACE_NOTSUP_RETURN(0);
-#endif /* ACE_HAS_IPV6 */
-}
-
-ACE_INLINE int
-ACE_OS::inet_pton (int family, const char *strptr, void *addrptr)
-{
- ACE_OS_TRACE ("ACE_OS::inet_pton");
-
-#if defined (ACE_HAS_IPV6) && !defined (ACE_WIN32)
- ACE_OSCALL_RETURN (::inet_pton (family, strptr, addrptr), int, -1);
-#else
- if (family == AF_INET)
- {
- struct in_addr in_val;
-
- if (ACE_OS::inet_aton (strptr, &in_val))
- {
- ACE_OS::memcpy (addrptr, &in_val, sizeof (struct in_addr));
- return 1; // Success
- }
-
- return 0; // Input is not a valid presentation format
- }
-
- ACE_NOTSUP_RETURN(-1);
-#endif /* ACE_HAS_IPV6 */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_ctype.h b/dep/include/ace/OS_NS_ctype.h
deleted file mode 100644
index c03143eea90..00000000000
--- a/dep/include/ace/OS_NS_ctype.h
+++ /dev/null
@@ -1,131 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_ctype.h
- *
- * $Id: OS_NS_ctype.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_CTYPE_H
-# define ACE_OS_NS_CTYPE_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS {
-
- // these are non-standard names...
-
- /** @name Functions from <cctype>
- *
- * Included are the functions defined in <cctype> and their <cwctype>
- * equivalents.
- *
- * Since they are often implemented as macros, we don't use the same name
- * here. Instead, we change by prepending "ace_".
- */
- //@{
-
- /// Returns true if the character is an alphanumeric character.
- ACE_NAMESPACE_INLINE_FUNCTION
- int ace_isalnum (ACE_TCHAR c);
-
- /// Returns true if the character is an alphabetic character.
- ACE_NAMESPACE_INLINE_FUNCTION
- int ace_isalpha (ACE_TCHAR c);
-
- /// Returns true if the character is a control character.
- ACE_NAMESPACE_INLINE_FUNCTION
- int ace_iscntrl (ACE_TCHAR c);
-
- /// Returns true if the character is a decimal-digit character.
- ACE_NAMESPACE_INLINE_FUNCTION
- int ace_isdigit (ACE_TCHAR c);
-
- /// Returns true if the character is a printable character other than a space.
- ACE_NAMESPACE_INLINE_FUNCTION
- int ace_isgraph (ACE_TCHAR c);
-
- /// Returns true if the character is a lowercase character.
- ACE_NAMESPACE_INLINE_FUNCTION
- int ace_islower (ACE_TCHAR c);
-
- /// Returns true if the character is a printable character.
- ACE_NAMESPACE_INLINE_FUNCTION
- int ace_isprint (ACE_TCHAR c);
-
- /// Returns true if the character is a punctuation character.
- ACE_NAMESPACE_INLINE_FUNCTION
- int ace_ispunct (ACE_TCHAR c);
-
- /// Returns true if the character is a space character.
- ACE_NAMESPACE_INLINE_FUNCTION
- int ace_isspace (ACE_TCHAR c);
-
- /// Returns true if the character is an uppercase character.
- ACE_NAMESPACE_INLINE_FUNCTION
- int ace_isupper (ACE_TCHAR c);
-
- /// Returns true if the character is a hexadecimal-digit character.
- ACE_NAMESPACE_INLINE_FUNCTION
- int ace_isxdigit (ACE_TCHAR c);
-
- /// Converts a character to lower case (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- int ace_tolower (int c);
-
-#if defined (ACE_HAS_WCHAR)
- /// Converts a character to lower case (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- wint_t ace_towlower (wint_t c);
-#endif /* ACE_HAS_WCHAR */
-
- /// Converts a character to upper case (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- int ace_toupper (int c);
-
-#if defined (ACE_HAS_WCHAR) && !defined (ACE_LACKS_TOWUPPER)
- /// Converts a character to upper case (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- wint_t ace_towupper (wint_t c);
-#endif /* ACE_HAS_WCHAR && !ACE_LACKS_TOWUPPER */
-
- //@}
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_ctype.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_CTYPE_H */
-
diff --git a/dep/include/ace/OS_NS_ctype.inl b/dep/include/ace/OS_NS_ctype.inl
deleted file mode 100644
index 8ca1f1a2976..00000000000
--- a/dep/include/ace/OS_NS_ctype.inl
+++ /dev/null
@@ -1,163 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_ctype.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/os_include/os_ctype.h"
-#if defined ACE_HAS_WCHAR
-# include "ace/os_include/os_wctype.h"
-#endif /* ACE_HAS_WCHAR */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_OS::ace_isalnum (ACE_TCHAR c)
-{
-#if defined (ACE_USES_WCHAR)
-# if defined (_MSC_VER) && (_MSC_VER >= 1300)
- // For MSVC 7.x, we need to prevent "illegal" character getting into
- // isalnum, otherwise, it will crash the program.
- return c > 0 && c < 256 && iswalnum (c);
-# else
- return iswalnum (c);
-# endif /* _MSC_VER && _MSC_VER >= 1300 */
-#else /* ACE_USES_WCHAR */
- return isalnum ((unsigned char) c);
-#endif /* ACE_USES_WCHAR */
-}
-
-ACE_INLINE int
-ACE_OS::ace_isalpha (ACE_TCHAR c)
-{
-#if defined (ACE_USES_WCHAR)
- return iswalpha (c);
-#else /* ACE_USES_WCHAR */
- return isalpha ((unsigned char) c);
-#endif /* ACE_USES_WCHAR */
-}
-
-ACE_INLINE int
-ACE_OS::ace_iscntrl (ACE_TCHAR c)
-{
-#if defined (ACE_USES_WCHAR)
- return iswcntrl (c);
-#else /* ACE_USES_WCHAR */
- return iscntrl ((unsigned char) c);
-#endif /* ACE_USES_WCHAR */
-}
-
-ACE_INLINE int
-ACE_OS::ace_isdigit (ACE_TCHAR c)
-{
-#if defined (ACE_USES_WCHAR)
- return iswdigit (c);
-#else /* ACE_USES_WCHAR */
- return isdigit ((unsigned char) c);
-#endif /* ACE_USES_WCHAR */
-}
-
-ACE_INLINE int
-ACE_OS::ace_isgraph (ACE_TCHAR c)
-{
-#if defined (ACE_USES_WCHAR)
- return iswgraph (c);
-#else /* ACE_USES_WCHAR */
- return isgraph ((unsigned char) c);
-#endif /* ACE_USES_WCHAR */
-}
-
-ACE_INLINE int
-ACE_OS::ace_islower (ACE_TCHAR c)
-{
-#if defined (ACE_USES_WCHAR)
- return iswlower (c);
-#else /* ACE_USES_WCHAR */
- return islower ((unsigned char) c);
-#endif /* ACE_USES_WCHAR */
-}
-
-ACE_INLINE int
-ACE_OS::ace_isprint (ACE_TCHAR c)
-{
-#if defined (ACE_USES_WCHAR)
- return iswprint (c);
-#else /* ACE_USES_WCHAR */
- return isprint ((unsigned char) c);
-#endif /* ACE_USES_WCHAR */
-}
-
-ACE_INLINE int
-ACE_OS::ace_ispunct (ACE_TCHAR c)
-{
-#if defined (ACE_USES_WCHAR)
- return iswpunct (c);
-#else /* ACE_USES_WCHAR */
- return ispunct ((unsigned char) c);
-#endif /* ACE_USES_WCHAR */
-}
-
-ACE_INLINE int
-ACE_OS::ace_isspace (ACE_TCHAR c)
-{
-#if defined (ACE_USES_WCHAR)
- return iswspace (c);
-#else /* ACE_USES_WCHAR */
- return isspace ((unsigned char) c);
-#endif /* ACE_USES_WCHAR */
-}
-
-ACE_INLINE int
-ACE_OS::ace_isupper (ACE_TCHAR c)
-{
-#if defined (ACE_USES_WCHAR)
- return iswupper (c);
-#else /* ACE_USES_WCHAR */
- return isupper ((unsigned char) c);
-#endif /* ACE_USES_WCHAR */
-}
-
-ACE_INLINE int
-ACE_OS::ace_isxdigit (ACE_TCHAR c)
-{
-#if defined (ACE_USES_WCHAR)
- return iswxdigit (c);
-#else /* ACE_USES_WCHAR */
- return isxdigit ((unsigned char) c);
-#endif /* ACE_USES_WCHAR */
-}
-
-ACE_INLINE int
-ACE_OS::ace_tolower (int c)
-{
- return tolower (c);
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE wint_t
-ACE_OS::ace_towlower (wint_t c)
-{
-#if defined (ACE_LACKS_TOWLOWER)
- if (c < 256)
- return tolower (static_cast<int> (c));
- else
- return c;
-#else
- return towlower (c);
-#endif /* ACE_LACKS_TOWLOWER */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE int
-ACE_OS::ace_toupper (int c)
-{
- return toupper (c);
-}
-
-#if defined (ACE_HAS_WCHAR) && !defined (ACE_LACKS_TOWUPPER)
-ACE_INLINE wint_t
-ACE_OS::ace_towupper (wint_t c)
-{
- return towupper (c);
-}
-#endif /* ACE_HAS_WCHAR && !ACE_LACKS_TOWUPPER */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_dirent.h b/dep/include/ace/OS_NS_dirent.h
deleted file mode 100644
index 72f06b91648..00000000000
--- a/dep/include/ace/OS_NS_dirent.h
+++ /dev/null
@@ -1,154 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_dirent.h
- *
- * $Id: OS_NS_dirent.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_DIRENT_H
-# define ACE_OS_NS_DIRENT_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_dirent.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-// Define the scandir() selector and comparator function types. Many platforms
-// define these in terms of const pointers to dirent arrays/structs. Some
-// platforms use void pointers instead. The ACE-exported API is defined in
-// terms of the dirent-using function types, and if the OS-native scandir()
-// uses void*, that's handled internal to the ACE_OS::scandir() wrapper using
-// the ACE_SCANDIR_OS_COMPARATOR.
-extern "C" {
-#if defined (ACE_SCANDIR_CMP_USES_VOIDPTR)
- typedef int (*ACE_SCANDIR_OS_COMPARATOR)(void *f1, void *f2);
-#elif defined (ACE_SCANDIR_CMP_USES_CONST_VOIDPTR)
- typedef int (*ACE_SCANDIR_OS_COMPARATOR)(const void *f1, const void *f2);
-#endif /* ACE_SCANDIR_CMP_USES_VOIDPTR */
- typedef int (*ACE_SCANDIR_COMPARATOR)(const ACE_DIRENT **f1,
- const ACE_DIRENT **f2);
-
-#if defined (ACE_SCANDIR_SEL_LACKS_CONST)
- typedef int (*ACE_SCANDIR_OS_SELECTOR)(ACE_DIRENT *filename);
-#endif /* ACE_SCANDIR_SEL_LACKS_CONST */
- typedef int (*ACE_SCANDIR_SELECTOR)(const ACE_DIRENT *filename);
-}
-
-/*
- * We inline and undef some functions that may be implemented
- * as macros on some platforms. This way macro definitions will
- * be usable later as there is no way to save the macro definition
- * using the pre-processor.
- *
- */
-
-#if !defined (ACE_LACKS_REWINDDIR)
-# if !defined (ACE_HAS_WREWINDDIR) || !defined (ACE_USES_WCHAR)
-inline void ace_rewinddir_helper (ACE_DIR *dir)
-{
-# if defined (rewinddir)
- rewinddir (dir);
-# undef rewinddir
-# else
- ::rewinddir (dir);
-# endif /* defined (rewinddir) */
-}
-# endif /* !defined (ACE_HAS_WREWINDDIR) && !defined (ACE_USES_WCHAR) */
-#endif /* ACE_LACKS_REWINDDIR */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS {
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void closedir (ACE_DIR *);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_DIR *opendir (const ACE_TCHAR *filename);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- struct ACE_DIRENT *readdir (ACE_DIR *);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int readdir_r (ACE_DIR *dirp,
- struct ACE_DIRENT *entry,
- struct ACE_DIRENT **result);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void rewinddir (ACE_DIR *);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int scandir (const ACE_TCHAR *dirname,
- struct ACE_DIRENT **namelist[],
- ACE_SCANDIR_SELECTOR selector,
- ACE_SCANDIR_COMPARATOR comparator);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int alphasort (const void *, const void *);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void seekdir (ACE_DIR *,
- long loc);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- long telldir (ACE_DIR *);
-
- // Win32 emulation functions
-#if defined (ACE_LACKS_OPENDIR)
- extern ACE_Export
- ACE_DIR *opendir_emulation (const ACE_TCHAR *filename);
-#endif /* ACE_LACKS_OPENDIR */
-
-#if !defined (ACE_HAS_SCANDIR)
- extern ACE_Export
- int scandir_emulation (const ACE_TCHAR *dirname,
- ACE_DIRENT **namelist[],
- ACE_SCANDIR_SELECTOR selector,
- ACE_SCANDIR_COMPARATOR comparator);
-#endif /* !ACE_HAS_SCANDIR */
-
-#if defined (ACE_LACKS_CLOSEDIR)
- extern ACE_Export
- void closedir_emulation (ACE_DIR *);
-#endif /* ACE_LACKS_CLOSEDIR */
-
-#if defined (ACE_LACKS_READDIR)
- extern ACE_Export
- struct ACE_DIRENT *readdir_emulation (ACE_DIR *);
-#endif /* ACE_LACKS_READDIR */
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_dirent.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_DIRENT_H */
-
diff --git a/dep/include/ace/OS_NS_dirent.inl b/dep/include/ace/OS_NS_dirent.inl
deleted file mode 100644
index 2f73e091a24..00000000000
--- a/dep/include/ace/OS_NS_dirent.inl
+++ /dev/null
@@ -1,184 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_dirent.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_Memory.h"
-
-#if defined (ACE_LACKS_ALPHASORT)
-# include "ace/OS_NS_string.h"
-#endif /* ACE_LACKS_ALPHASORT */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS
-{
-
-ACE_INLINE void
-closedir (ACE_DIR *d)
-{
-#if defined (ACE_HAS_DIRENT)
-# if defined (ACE_WIN32) && defined (ACE_LACKS_CLOSEDIR)
- ACE_OS::closedir_emulation (d);
- delete [] d->directory_name_;
- delete d;
-# elif defined (ACE_HAS_WCLOSEDIR) && defined (ACE_USES_WCHAR)
- ::wclosedir (d);
-# else /* ACE_WIN32 && ACE_LACKS_CLOSEDIR */
- ::closedir (d);
-# endif /* ACE_WIN32 && ACE_LACKS_CLOSEDIR */
-
-#else /* ACE_HAS_DIRENT */
- ACE_UNUSED_ARG (d);
-#endif /* ACE_HAS_DIRENT */
-}
-
-ACE_INLINE ACE_DIR *
-opendir (const ACE_TCHAR *filename)
-{
-#if defined (ACE_HAS_DIRENT)
-# if defined (ACE_WIN32) && defined (ACE_LACKS_OPENDIR)
- return ::ACE_OS::opendir_emulation (filename);
-# elif defined (ACE_HAS_WOPENDIR) && defined (ACE_USES_WCHAR)
- return ::wopendir (filename);
-# elif defined (ACE_HAS_NONCONST_OPENDIR)
- return ::opendir (const_cast<char *> (filename));
-# else /* ! ACE_WIN32 && ACE_LACKS_OPENDIR */
- return ::opendir (ACE_TEXT_ALWAYS_CHAR (filename));
-# endif /* ACE_WIN32 && ACE_LACKS_OPENDIR */
-#else
- ACE_UNUSED_ARG (filename);
- ACE_NOTSUP_RETURN (0);
-#endif /* ACE_HAS_DIRENT */
-}
-
-ACE_INLINE struct ACE_DIRENT *
-readdir (ACE_DIR *d)
-{
-#if defined (ACE_HAS_DIRENT)
-# if defined (ACE_WIN32) && defined (ACE_LACKS_READDIR)
- return ACE_OS::readdir_emulation (d);
-# elif defined (ACE_HAS_WREADDIR) && defined (ACE_USES_WCHAR)
- return ::wreaddir (d);
-# else /* ACE_WIN32 && ACE_LACKS_READDIR */
- return ::readdir (d);
-# endif /* ACE_WIN32 && ACE_LACKS_READDIR */
-#else
- ACE_UNUSED_ARG (d);
- ACE_NOTSUP_RETURN (0);
-#endif /* ACE_HAS_DIRENT */
-}
-
-ACE_INLINE int
-readdir_r (ACE_DIR *dirp,
- struct ACE_DIRENT *entry,
- struct ACE_DIRENT **result)
-{
-#if !defined (ACE_HAS_REENTRANT_FUNCTIONS)
- ACE_UNUSED_ARG (entry);
- // <result> has better not be 0!
- *result = ACE_OS::readdir (dirp);
- if (*result)
- return 0; // Keep iterating
- else
- return 1; // Oops, some type of error!
-#elif defined (ACE_HAS_DIRENT) && !defined (ACE_LACKS_READDIR_R)
-# if defined (ACE_HAS_3_PARAM_READDIR_R)
- return ::readdir_r (dirp, entry, result);
-# else
- // <result> had better not be 0!
- *result = ::readdir_r (dirp, entry);
- return 0;
-# endif /* sun */
-#else /* ! ACE_HAS_DIRENT || ACE_LACKS_READDIR_R */
- ACE_UNUSED_ARG (dirp);
- ACE_UNUSED_ARG (entry);
- ACE_UNUSED_ARG (result);
- ACE_NOTSUP_RETURN (0);
-
-#endif /* ACE_HAS_REENTRANT_FUNCTIONS */
-}
-
-ACE_INLINE void
-rewinddir (ACE_DIR *d)
-{
-#if defined (ACE_HAS_DIRENT)
-# if defined (ACE_HAS_WREWINDDIR) && defined (ACE_USES_WCHAR)
- ::wrewinddir (d);
-# elif !defined (ACE_LACKS_REWINDDIR)
- ace_rewinddir_helper (d);
-# else
- ACE_UNUSED_ARG (d);
-# endif /* !defined (ACE_LACKS_REWINDDIR) */
-#endif /* ACE_HAS_DIRENT */
-}
-
-ACE_INLINE int
-scandir (const ACE_TCHAR *dirname,
- struct ACE_DIRENT **namelist[],
- ACE_SCANDIR_SELECTOR selector,
- ACE_SCANDIR_COMPARATOR comparator)
-{
-#if defined (ACE_HAS_SCANDIR)
- return ::scandir (ACE_TEXT_ALWAYS_CHAR (dirname),
- namelist,
-# if defined (ACE_SCANDIR_SEL_LACKS_CONST)
- reinterpret_cast<ACE_SCANDIR_OS_SELECTOR> (selector),
-# else
- selector,
-# endif /* ACE_SCANDIR_SEL_LACKS_CONST */
-# if defined (ACE_SCANDIR_CMP_USES_VOIDPTR) || \
- defined (ACE_SCANDIR_CMP_USES_CONST_VOIDPTR)
- reinterpret_cast<ACE_SCANDIR_OS_COMPARATOR> (comparator));
-# else
- comparator);
-# endif /* ACE_SCANDIR_CMP_USES_VOIDPTR */
-
-#else /* ! defined ( ACE_HAS_SCANDIR) */
- return ACE_OS::scandir_emulation (dirname, namelist, selector, comparator);
-#endif /* ACE_HAS_SCANDIR */
-}
-
-ACE_INLINE int
-alphasort (const void *a, const void *b)
-{
-#if defined (ACE_LACKS_ALPHASORT)
- return ACE_OS::strcmp ((*static_cast<const struct ACE_DIRENT * const *>(a))->d_name,
- (*static_cast<const struct ACE_DIRENT * const *>(b))->d_name);
-#else
-# if defined (ACE_SCANDIR_CMP_USES_VOIDPTR)
- return ::alphasort (const_cast<void *>(a),
- const_cast<void *>(b));
-# elif defined (ACE_SCANDIR_CMP_USES_CONST_VOIDPTR)
- return ::alphasort (a, b);
-# else
- return ::alphasort ((const struct ACE_DIRENT **)a,
- (const struct ACE_DIRENT **)b);
-# endif
-#endif
-}
-
-ACE_INLINE void
-seekdir (ACE_DIR *d, long loc)
-{
-#if defined (ACE_HAS_DIRENT) && !defined (ACE_LACKS_SEEKDIR)
- ::seekdir (d, loc);
-#else /* ! ACE_HAS_DIRENT || ACE_LACKS_SEEKDIR */
- ACE_UNUSED_ARG (d);
- ACE_UNUSED_ARG (loc);
-#endif /* ! ACE_HAS_DIRENT || ACE_LACKS_SEEKDIR */
-}
-
-ACE_INLINE long
-telldir (ACE_DIR *d)
-{
-#if defined (ACE_HAS_DIRENT) && !defined (ACE_LACKS_TELLDIR)
- return ::telldir (d);
-#else /* ! ACE_HAS_DIRENT || ACE_LACKS_TELLDIR */
- ACE_UNUSED_ARG (d);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ! ACE_HAS_DIRENT || ACE_LACKS_TELLDIR */
-}
-
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_dlfcn.h b/dep/include/ace/OS_NS_dlfcn.h
deleted file mode 100644
index 13a8e7d0cfa..00000000000
--- a/dep/include/ace/OS_NS_dlfcn.h
+++ /dev/null
@@ -1,70 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_dlfcn.h
- *
- * $Id: OS_NS_dlfcn.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_DLFCN_H
-# define ACE_OS_NS_DLFCN_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_dlfcn.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS {
-
- //@{ @name A set of wrappers for explicit dynamic linking.
- ACE_NAMESPACE_INLINE_FUNCTION
- int dlclose (ACE_SHLIB_HANDLE handle);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_TCHAR *dlerror (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_SHLIB_HANDLE dlopen (const ACE_TCHAR *filename,
- int mode = ACE_DEFAULT_SHLIB_MODE);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void *dlsym (ACE_SHLIB_HANDLE handle,
- const ACE_TCHAR *symbol);
- //@}
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_dlfcn.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_DLFCN_H */
-
diff --git a/dep/include/ace/OS_NS_dlfcn.inl b/dep/include/ace/OS_NS_dlfcn.inl
deleted file mode 100644
index 9b75ac3ad5c..00000000000
--- a/dep/include/ace/OS_NS_dlfcn.inl
+++ /dev/null
@@ -1,286 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_dlfcn.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_macros.h"
-#include "ace/OS_NS_errno.h"
-#include "ace/OS_NS_fcntl.h"
-#include "ace/OS_NS_string.h"
-#include "ace/OS_NS_unistd.h"
-#include "ace/Default_Constants.h"
-#include "ace/os_include/os_fcntl.h"
-#include "ace/os_include/os_string.h"
-
-#if defined (ACE_WIN32) && defined (ACE_HAS_PHARLAP)
-# include "ace/OS_NS_stdio.h"
-#endif
-
-#if defined (ACE_USES_ASM_SYMBOL_IN_DLSYM)
-# include "ace/OS_Memory.h"
-# include "ace/OS_NS_string.h"
-#endif /* ACE_USES_ASM_SYMBOL_IN_DLSYM */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_OS::dlclose (ACE_SHLIB_HANDLE handle)
-{
- ACE_OS_TRACE ("ACE_OS::dlclose");
-#if defined (ACE_LACKS_DLCLOSE)
- ACE_UNUSED_ARG (handle);
- return 0;
-#elif defined (ACE_HAS_SVR4_DYNAMIC_LINKING)
-
-# if !defined (ACE_HAS_AUTOMATIC_INIT_FINI)
- // SunOS4 does not automatically call _fini()!
- void *ptr;
-
- ACE_OSCALL (::dlsym (handle, ACE_TEXT ("_fini")), void *, 0, ptr);
-
- if (ptr != 0)
- (*((int (*)(void)) ptr)) (); // Call _fini hook explicitly.
-# endif /* ACE_HAS_AUTOMATIC_INIT_FINI */
-#if defined (_M_UNIX)
- ACE_OSCALL_RETURN (::_dlclose (handle), int, -1);
-#else /* _MUNIX */
- ACE_OSCALL_RETURN (::dlclose (handle), int, -1);
-#endif /* _M_UNIX */
-#elif defined (ACE_WIN32)
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::FreeLibrary (handle), ace_result_), int, -1);
-#elif defined (__hpux)
- // HP-UX 10.x and 32-bit 11.00 do not pay attention to the ref count
- // when unloading a dynamic lib. So, if the ref count is more than
- // 1, do not unload the lib. This will cause a library loaded more
- // than once to not be unloaded until the process runs down, but
- // that's life. It's better than unloading a library that's in use.
- // So far as I know, there's no way to decrement the refcnt that the
- // kernel is looking at - the shl_descriptor is a copy of what the
- // kernel has, not the actual struct. On 64-bit HP-UX using dlopen,
- // this problem has been fixed.
- struct shl_descriptor desc;
- if (shl_gethandle_r (handle, &desc) == -1)
- return -1;
- if (desc.ref_count > 1)
- return 0;
-# if defined(__GNUC__) || __cplusplus >= 199707L
- ACE_OSCALL_RETURN (::shl_unload (handle), int, -1);
-# else
- ACE_OSCALL_RETURN (::cxxshl_unload (handle), int, -1);
-# endif /* aC++ vs. Hp C++ */
-#else
- ACE_UNUSED_ARG (handle);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_SVR4_DYNAMIC_LINKING */
-}
-
-ACE_INLINE ACE_TCHAR *
-ACE_OS::dlerror (void)
-{
- ACE_OS_TRACE ("ACE_OS::dlerror");
-# if defined (ACE_HAS_SVR4_DYNAMIC_LINKING)
- const char *err;
-# if defined(_M_UNIX)
- ACE_OSCALL (::_dlerror (), const char *, 0, err);
-# else /* _M_UNIX */
- ACE_OSCALL (::dlerror (), const char *, 0, err);
-# endif /* _M_UNIX */
- if (err == 0)
- return 0;
-# if defined (ACE_USES_WCHAR)
- const size_t BufLen = 256;
- static wchar_t buf[BufLen];
- ACE_OS::strncpy (buf, ACE_TEXT_CHAR_TO_TCHAR (err), BufLen);
- return buf;
-# else
- return const_cast <char *> (err);
-# endif /* ACE_USES_WCHAR */
-# elif defined (__hpux) || defined (ACE_VXWORKS)
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_OSCALL_RETURN (::strerror(errno), char *, 0);
- //FUZZ: enable check_for_lack_ACE_OS
-# elif defined (ACE_WIN32)
- static ACE_TCHAR buf[128];
-# if defined (ACE_HAS_PHARLAP)
- ACE_OS::sprintf (buf, "error code %d", GetLastError());
-# else
- ACE_TEXT_FormatMessage (FORMAT_MESSAGE_FROM_SYSTEM,
- 0,
- ::GetLastError (),
- 0,
- buf,
- sizeof buf / sizeof buf[0],
- 0);
-# endif /* ACE_HAS_PHARLAP */
- return buf;
-# else
- ACE_NOTSUP_RETURN (0);
-# endif /* ACE_HAS_SVR4_DYNAMIC_LINKING */
-}
-
-ACE_INLINE ACE_SHLIB_HANDLE
-ACE_OS::dlopen (const ACE_TCHAR *fname,
- int mode)
-{
- ACE_OS_TRACE ("ACE_OS::dlopen");
-
-# if defined (ACE_HAS_SVR4_DYNAMIC_LINKING)
- void *handle;
-# if defined (ACE_HAS_SGIDLADD)
- ACE_OSCALL
- (::sgidladd (ACE_TEXT_ALWAYS_CHAR (fname), mode), void *, 0, handle);
-# elif defined (_M_UNIX)
- ACE_OSCALL
- (::_dlopen (ACE_TEXT_ALWAYS_CHAR (fname), mode), void *, 0, handle);
-# else
- ACE_OSCALL
- (::dlopen (ACE_TEXT_ALWAYS_CHAR (fname), mode), void *, 0, handle);
-# endif /* ACE_HAS_SGIDLADD */
-# if !defined (ACE_HAS_AUTOMATIC_INIT_FINI)
- if (handle != 0)
- {
- void *ptr;
- // Some systems (e.g., SunOS4) do not automatically call _init(), so
- // we'll have to call it manually.
-
- ACE_OSCALL (::dlsym (handle, ACE_TEXT ("_init")), void *, 0, ptr);
-
- if (ptr != 0 && (*((int (*)(void)) ptr)) () == -1) // Call _init hook explicitly.
- {
- // Close down the handle to prevent leaks.
- ::dlclose (handle);
- return 0;
- }
- }
-# endif /* ACE_HAS_AUTOMATIC_INIT_FINI */
- return handle;
-# elif defined (ACE_WIN32)
- ACE_UNUSED_ARG (mode);
-
- ACE_WIN32CALL_RETURN (ACE_TEXT_LoadLibrary (fname), ACE_SHLIB_HANDLE, 0);
-# elif defined (__hpux)
-
-# if defined(__GNUC__) || __cplusplus >= 199707L
- ACE_OSCALL_RETURN (::shl_load(fname, mode, 0L), ACE_SHLIB_HANDLE, 0);
-# else
- ACE_OSCALL_RETURN (::cxxshl_load(fname, mode, 0L), ACE_SHLIB_HANDLE, 0);
-# endif /* aC++ vs. Hp C++ */
-# elif defined (ACE_VXWORKS) && !defined (__RTP__)
- MODULE* handle = 0;
- // Open readonly
- ACE_HANDLE filehandle = ACE_OS::open (fname,
- O_RDONLY,
- ACE_DEFAULT_FILE_PERMS);
-
- if (filehandle != ACE_INVALID_HANDLE)
- {
- ACE_OS::last_error(0);
- ACE_OSCALL ( ::loadModule (filehandle, LOAD_GLOBAL_SYMBOLS|LOAD_COMMON_MATCH_ALL ), MODULE *, 0, handle);
- int loaderror = ACE_OS::last_error();
- ACE_OS::close (filehandle);
-
- if ( (loaderror != 0) && (handle != 0) )
- {
- // ouch something went wrong most likely unresolved externals
- if (handle)
- ::unldByModuleId ( handle, 0 );
- handle = 0;
- }
- }
- else
- {
- // couldn't open file
- handle = 0;
- }
- return handle;
-# else
- ACE_UNUSED_ARG (fname);
- ACE_UNUSED_ARG (mode);
- ACE_NOTSUP_RETURN (0);
-# endif /* ACE_HAS_SVR4_DYNAMIC_LINKING */
-}
-
-ACE_INLINE void *
-ACE_OS::dlsym (ACE_SHLIB_HANDLE handle,
- const ACE_TCHAR *sname)
-{
- ACE_OS_TRACE ("ACE_OS::dlsym");
-
-#if defined (ACE_HAS_DLSYM_SEGFAULT_ON_INVALID_HANDLE)
- // Check if the handle is valid before making any calls using it.
- if (handle == ACE_SHLIB_INVALID_HANDLE)
- return 0;
-#endif /* ACE_HAS_DLSYM_SEGFAULT_ON_INVALID_HANDLE */
-
- // Get the correct OS type.
-#if defined (ACE_HAS_WINCE)
- // CE (at least thru Pocket PC 2003) offers GetProcAddressW, not ...A, so
- // we always need a wide-char string.
- const wchar_t *symbolname = 0;
-# if defined (ACE_USES_WCHAR)
- symbolname = sname;
-# else
- ACE_Ascii_To_Wide sname_xlate (sname);
- symbolname = sname_xlate.wchar_rep ();
-# endif /* ACE_USES_WCHAR */
-#elif defined (ACE_USES_WCHAR)
- // WinCE is WCHAR always; other platforms need a char * symbol name
- ACE_Wide_To_Ascii w_sname (sname);
- char *symbolname = w_sname.char_rep ();
-#elif defined (ACE_VXWORKS)
- char *symbolname = const_cast<char *> (sname);
-#else
- const char *symbolname = sname;
-#endif /* ACE_HAS_WINCE */
-
-# if defined (ACE_HAS_SVR4_DYNAMIC_LINKING)
-
-# if defined (ACE_USES_ASM_SYMBOL_IN_DLSYM)
- int l = ACE_OS::strlen (symbolname) + 2;
- char *asm_symbolname = 0;
- ACE_NEW_RETURN (asm_symbolname, char[l], 0);
- ACE_OS::strcpy (asm_symbolname, "_") ;
- ACE_OS::strcpy (asm_symbolname + 1, symbolname) ;
- void *ace_result;
- ACE_OSCALL (::dlsym (handle, asm_symbolname), void *, 0, ace_result);
- delete [] asm_symbolname;
- return ace_result;
-# elif defined (_M_UNIX)
- ACE_OSCALL_RETURN (::_dlsym (handle, symbolname), void *, 0);
-# else
- ACE_OSCALL_RETURN (::dlsym (handle, symbolname), void *, 0);
-# endif /* ACE_USES_ASM_SYMBOL_IN_DLSYM */
-
-# elif defined (ACE_WIN32)
-
- ACE_WIN32CALL_RETURN (::GetProcAddress (handle, symbolname), void *, 0);
-
-# elif defined (__hpux)
-
- void *value = 0;
- int status;
- shl_t _handle = handle;
- ACE_OSCALL (::shl_findsym(&_handle, symbolname, TYPE_UNDEFINED, &value), int, -1, status);
- return status == 0 ? value : 0;
-
-# elif defined (ACE_VXWORKS) && !defined (__RTP__)
-
- // For now we use the VxWorks global symbol table
- // which resolves the most recently loaded symbols .. which resolve mostly what we want..
- ACE_UNUSED_ARG (handle);
- SYM_TYPE symtype;
- char *value = 0;
- STATUS status;
- ACE_OSCALL (::symFindByName(sysSymTbl, symbolname, &value, &symtype), int, -1, status);
-
- return status == OK ? reinterpret_cast <void*>(value) : 0;
-
-# else
-
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (symbolname);
- ACE_NOTSUP_RETURN (0);
-
-# endif /* ACE_HAS_SVR4_DYNAMIC_LINKING */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_errno.h b/dep/include/ace/OS_NS_errno.h
deleted file mode 100644
index 9ab6d1b1f38..00000000000
--- a/dep/include/ace/OS_NS_errno.h
+++ /dev/null
@@ -1,101 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_errno.h
- *
- * $Id: OS_NS_errno.h 81286 2008-04-09 07:27:30Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_ERRNO_H
-# define ACE_OS_NS_ERRNO_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-lite.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_errno.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS {
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int last_error (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void last_error (int error);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int set_errno_to_last_error (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int set_errno_to_wsa_last_error (void);
-
-} /* namespace ACE_OS */
-
-#if defined (ACE_HAS_WINCE_BROKEN_ERRNO)
-/**
- * @class ACE_CE_Errno
- *
- * Some versions of CE don't support @c errno and some versions'
- * implementations are busted. So we implement our own.
- * Our implementation takes up one Tls key, however, it does not
- * allocate memory fromt the heap so there's no problem with cleanin
- * up the errno when a thread exit.
- */
-class ACE_Export ACE_CE_Errno
-{
-public:
- ACE_CE_Errno () {}
- static void init ();
- static void fini ();
- static ACE_CE_Errno *instance ();
-
- operator int (void) const;
- int operator= (int);
-
-private:
- static ACE_CE_Errno *instance_;
- static DWORD errno_key_;
-};
-
-# define errno (* (ACE_CE_Errno::instance ()))
-#endif /* ACE_HAS_WINCE_BROKEN_ERRNO */
-
-#if defined (ACE_HAS_WINCE_BROKEN_ERRNO)
-# define ACE_ERRNO_TYPE ACE_CE_Errno
-#else
-# define ACE_ERRNO_TYPE int
-#endif /* ACE_HAS_WINCE_BROKEN_ERRNO */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_errno.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_ERRNO_H */
-
diff --git a/dep/include/ace/OS_NS_errno.inl b/dep/include/ace/OS_NS_errno.inl
deleted file mode 100644
index 3795eec54a7..00000000000
--- a/dep/include/ace/OS_NS_errno.inl
+++ /dev/null
@@ -1,83 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_errno.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/config-all.h" /* Need ACE_TRACE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_OS::last_error (void)
-{
- // ACE_OS_TRACE ("ACE_OS::last_error");
-
-#if defined (ACE_WIN32)
- // ACE_OS::last_error() prefers errnor since started out as a way to
- // avoid directly accessing errno in ACE code - particularly the ACE
- // C++ socket wrapper facades. On Windows, some things that would
- // use errno on UNIX require ::GetLastError(), so this method tries
- // to shield the rest of ACE from having to know about this.
- int lerror = ::GetLastError ();
- int lerrno = errno;
- return lerrno == 0 ? lerror : lerrno;
-#else
- return errno;
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE void
-ACE_OS::last_error (int error)
-{
- ACE_OS_TRACE ("ACE_OS::last_error");
-#if defined (ACE_WIN32)
- ::SetLastError (error);
-#endif /* ACE_WIN32 */
- errno = error;
-}
-
-ACE_INLINE int
-ACE_OS::set_errno_to_last_error (void)
-{
-# if defined (ACE_WIN32)
- return errno = ::GetLastError ();
-#else
- return errno;
-# endif /* defined(ACE_WIN32) */
-}
-
-ACE_INLINE int
-ACE_OS::set_errno_to_wsa_last_error (void)
-{
-# if defined (ACE_WIN32)
- return errno = ::WSAGetLastError ();
-#else
- return errno;
-# endif /* defined(ACE_WIN32) */
-}
-
-#if defined (ACE_HAS_WINCE_BROKEN_ERRNO)
-
-ACE_INLINE ACE_CE_Errno *
-ACE_CE_Errno::instance ()
-{
- // This should be inlined.
- return ACE_CE_Errno::instance_;
-}
-
-ACE_INLINE
-ACE_CE_Errno::operator int (void) const
-{
- return (int) TlsGetValue (ACE_CE_Errno::errno_key_);
-}
-
-ACE_INLINE int
-ACE_CE_Errno::operator= (int x)
-{
- // error checking?
- TlsSetValue (ACE_CE_Errno::errno_key_, (void *) x);
- return x;
-}
-
-#endif /* ACE_HAS_WINCE_BROKEN_ERRNO */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_fcntl.h b/dep/include/ace/OS_NS_fcntl.h
deleted file mode 100644
index 1fc765ce0bd..00000000000
--- a/dep/include/ace/OS_NS_fcntl.h
+++ /dev/null
@@ -1,84 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_fcntl.h
- *
- * $Id: OS_NS_fcntl.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_FCNTL_H
-# define ACE_OS_NS_FCNTL_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_fcntl.h"
-#include "ace/Global_Macros.h" // for LPSECURITY_ATTRIBUTES :-(
-#include "ace/Default_Constants.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS {
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int fcntl (ACE_HANDLE handle,
- int cmd,
- long arg = 0);
-
-#if !defined (ACE_DEFAULT_OPEN_PERMS)
-# define ACE_DEFAULT_OPEN_PERMS ACE_DEFAULT_FILE_PERMS
-#endif /* ACE_DEFAULT_OPEN_PERMS */
-
- /// The O_APPEND flag is only partly supported on Win32. If you specify
- /// O_APPEND, then the file pointer will be positioned at the end of
- /// the file initially during open, but it is not re-positioned at
- /// the end prior to each write, as specified by POSIX. This
- /// is generally good enough for typical situations, but it is ``not
- /// quite right'' in its semantics.
- extern ACE_Export
- ACE_HANDLE open (const char *filename,
- int mode,
- mode_t perms = ACE_DEFAULT_OPEN_PERMS,
- LPSECURITY_ATTRIBUTES sa = 0);
-#if defined (ACE_HAS_WCHAR)
- extern ACE_Export
- ACE_HANDLE open (const wchar_t *filename,
- int mode,
- mode_t perms = ACE_DEFAULT_OPEN_PERMS,
- LPSECURITY_ATTRIBUTES sa = 0);
-#endif /* ACE_HAS_WCHAR */
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_fcntl.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_FCNTL_H */
-
diff --git a/dep/include/ace/OS_NS_fcntl.inl b/dep/include/ace/OS_NS_fcntl.inl
deleted file mode 100644
index ddace065e7c..00000000000
--- a/dep/include/ace/OS_NS_fcntl.inl
+++ /dev/null
@@ -1,23 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_fcntl.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_errno.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_OS::fcntl (ACE_HANDLE handle, int cmd, long arg)
-{
- ACE_OS_TRACE ("ACE_OS::fcntl");
-# if defined (ACE_LACKS_FCNTL)
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (cmd);
- ACE_UNUSED_ARG (arg);
- ACE_NOTSUP_RETURN (-1);
-# else
- ACE_OSCALL_RETURN (::fcntl (handle, cmd, arg), int, -1);
-# endif /* ACE_LACKS_FCNTL */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_macros.h b/dep/include/ace/OS_NS_macros.h
deleted file mode 100644
index 5568bd46203..00000000000
--- a/dep/include/ace/OS_NS_macros.h
+++ /dev/null
@@ -1,113 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_macros.h
- *
- * $Id: OS_NS_macros.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_MACROS_H
-# define ACE_OS_NS_MACROS_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_WIN32)
-# define ACE_SOCKCALL_RETURN(OP,TYPE,FAILVALUE) \
- do { TYPE ace_result_ = (TYPE) OP; \
- if (ace_result_ == FAILVALUE) { int ___ = ::WSAGetLastError (); errno = ___; return (TYPE) FAILVALUE; } else return ace_result_; \
- } while (0)
-# define ACE_SOCKCALL(OP,TYPE,FAILVALUE,RESULT) \
- do { RESULT = (TYPE) OP; \
- if (RESULT == FAILVALUE) { int ___ = ::WSAGetLastError (); errno = ___; RESULT = FAILVALUE; } \
- } while (0)
-#else
-# define ACE_SOCKCALL_RETURN(OP,TYPE,FAILVALUE) ACE_OSCALL_RETURN(OP,TYPE,FAILVALUE)
-# define ACE_SOCKCALL(OP,TYPE,FAILVALUE,RESULT) ACE_OSCALL(OP,TYPE,FAILVALUE,RESULT)
-#endif /* ACE_WIN32 */
-
-#if !defined (ACE_WIN32)
-
-// Adapt the weird threading and synchronization routines (which
-// return errno rather than -1) so that they return -1 and set errno.
-// This is more consistent with the rest of ACE_OS and enables us to
-// use the ACE_OSCALL* macros.
-# if defined (ACE_VXWORKS)
-# define ACE_ADAPT_RETVAL(OP,RESULT) ((RESULT = (OP)) != OK ? (errno = RESULT, -1) : 0)
-# else
-# define ACE_ADAPT_RETVAL(OP,RESULT) ((RESULT = (OP)) != 0 ? (errno = RESULT, -1) : 0)
-# endif /* ACE_VXWORKS */
-
-#else /* ACE_WIN32 */
-
-// Adapt the Win32 System Calls (which return BOOLEAN values of TRUE
-// and FALSE) into int values expected by the ACE_OSCALL macros.
-# define ACE_ADAPT_RETVAL(OP,RESULT) ((RESULT = (OP)) == FALSE ? -1 : 0)
-
-// Perform a mapping of Win32 error numbers into POSIX errnos.
-# define ACE_FAIL_RETURN(RESULT) do { \
- switch (ACE_OS::set_errno_to_last_error ()) { \
- case ERROR_NOT_ENOUGH_MEMORY: errno = ENOMEM; break; \
- case ERROR_FILE_EXISTS: errno = EEXIST; break; \
- case ERROR_SHARING_VIOLATION: errno = EACCES; break; \
- case ERROR_PATH_NOT_FOUND: errno = ENOENT; break; \
- } \
- return RESULT; } while (0)
-
-#endif /* !ACE_WIN32 */
-
-// Helper functions to split large intergers into smaller high-order
-// and low-order parts, and reconstitute them again. These are
-// required primarily for supporting _FILE_OFFSET_BITS==64 on windows.
-
-#if defined(ACE_WIN32)
-# if defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS==64)
-# include "ace/Basic_Types.h"
-
-# define ACE_LOW_PART(X) static_cast<DWORD>(X)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-LONG
-inline ACE_High_Part (ACE_OFF_T value)
-{
- LARGE_INTEGER new_value;
- new_value.QuadPart = value;
- return new_value.HighPart;
-}
-# define ACE_HIGH_PART(X) ACE_High_Part(X)
-
-LONGLONG
-inline ACE_Combine_Parts (LONG high, DWORD low)
-{
- LARGE_INTEGER value;
- value.LowPart = low; // DWORD
- value.HighPart = high; // LONG
- return value.QuadPart;
-}
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# define ACE_COMBINE_PARTS(X,Y) ACE_Combine_Parts(X,Y)
-# else /* _FILE_OFFSET_BITS==64 */
-# define ACE_LOW_PART(X) X
-# define ACE_HIGH_PART(X) 0
-# define ACE_COMBINE_PARTS(X,Y) X
-# endif /* _FILE_OFFSET_BITS==64 */
-#endif /* ACE_WIN32 */
-
-# include /**/ "ace/post.h"
-
-#endif /* ACE_OS_NS_MACROS_H */
-
diff --git a/dep/include/ace/OS_NS_math.h b/dep/include/ace/OS_NS_math.h
deleted file mode 100644
index 6207692cb30..00000000000
--- a/dep/include/ace/OS_NS_math.h
+++ /dev/null
@@ -1,113 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_math.h
- *
- * $Id: OS_NS_math.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_MATH_H
-# define ACE_OS_NS_MATH_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_math.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-/*
- * We inline and undef some functions that may be implemented
- * as macros on some platforms. This way macro definitions will
- * be usable later as there is no way to save the macro definition
- * using the pre-processor.
- *
- */
-inline double ace_log2_helper (double x)
-{
-#if defined (log2)
- return log2 (x);
-#undef log2
-#else
-# if !defined (ACE_LACKS_LOG2)
- return ACE_STD_NAMESPACE::log2 (x);
-# else
- /*
- ==================================================================
-
- log (x)
- k
- log (x) = -------
- b log (b)
- k
-
- meaning the binary logarithm of x using the natural logarithm, for
- example, is:
-
- log (x)
- e
- log (x) = -------
- 2 log (2)
- e
-
- ==================================================================
- */
-
- // Precomputed value of 1/log(2.0). Saves an expensive division and
- // computing log(2.0) in each call.
- double const _1_ln2 = 1.442695040888963407359924681002;
-
- return log (x) * _1_ln2;
-# endif /* !ACE_LACKS_LOG2 */
-#endif /* defined (log2) */
-}
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS
-{
- /// This method computes the largest integral value not greater than x.
- ACE_NAMESPACE_INLINE_FUNCTION
- double floor (double x);
-
- /// This method computes the smallest integral value not less than x.
- ACE_NAMESPACE_INLINE_FUNCTION
- double ceil (double x);
-
- /// This method computes the base-2 logarithm of x.
- ACE_NAMESPACE_INLINE_FUNCTION
- double log2 (double x);
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_math.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_MATH_H */
-
diff --git a/dep/include/ace/OS_NS_math.inl b/dep/include/ace/OS_NS_math.inl
deleted file mode 100644
index edfeb41869d..00000000000
--- a/dep/include/ace/OS_NS_math.inl
+++ /dev/null
@@ -1,41 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_math.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS {
-
- ACE_INLINE double
- floor (double x)
- {
- // This method computes the largest integral value not greater than x.
- if(x > 0)
- return static_cast<long> (x);
- else if (static_cast<long> (x) == x)
- return x;
- else
- return static_cast<long>(x) - 1;
- }
-
- ACE_INLINE double
- ceil (double x)
- {
- // This method computes the smallest integral value not less than x.
- if (x < 0)
- return static_cast<long> (x);
- else if (static_cast<long> (x) == x)
- return x;
- else
- return static_cast<long> (x) + 1;
- }
-
- ACE_INLINE double
- log2 (double x)
- {
- return ace_log2_helper (x);
- }
-
-} // ACE_OS namespace
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_netdb.h b/dep/include/ace/OS_NS_netdb.h
deleted file mode 100644
index 6b29e067b96..00000000000
--- a/dep/include/ace/OS_NS_netdb.h
+++ /dev/null
@@ -1,146 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_netdb.h
- *
- * $Id: OS_NS_netdb.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_NETDB_H
-#define ACE_OS_NS_NETDB_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_netdb.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS
-{
-
-#if defined (ACE_VXWORKS) && defined (ACE_LACKS_GETHOSTBYADDR)
- extern ACE_Export
-#else
- ACE_NAMESPACE_INLINE_FUNCTION
-#endif /* ACE_VXWORKS */
- struct hostent *gethostbyaddr (const char *addr,
- int length,
- int type);
-
-#if defined (ACE_VXWORKS) && defined (ACE_LACKS_GETHOSTBYADDR)
- extern ACE_Export
-#else
- ACE_NAMESPACE_INLINE_FUNCTION
-#endif /* ACE_VXWORKS */
- struct hostent *gethostbyaddr_r (const char *addr,
- int length,
- int type,
- struct hostent *result,
- ACE_HOSTENT_DATA buffer,
- int *h_errnop);
-
-#if defined (ACE_VXWORKS) && defined (ACE_LACKS_GETHOSTBYNAME)
- extern ACE_Export
-#else
- ACE_NAMESPACE_INLINE_FUNCTION
-#endif /* ACE_VXWORKS */
- struct hostent *gethostbyname (const char *name);
-
-#if defined (ACE_VXWORKS) && defined (ACE_LACKS_GETHOSTBYNAME)
- extern ACE_Export
-#else
- ACE_NAMESPACE_INLINE_FUNCTION
-#endif /* ACE_VXWORKS */
- struct hostent *gethostbyname_r (const char *name,
- struct hostent *result,
- ACE_HOSTENT_DATA buffer,
- int *h_errnop);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- struct hostent *getipnodebyaddr (const void *src, size_t len,
- int family);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- struct hostent *getipnodebyname (const char *name, int family,
- int flags = 0);
-
- /**
- * Get the first adapter found on the machine.
- * @todo: this is really useless except for UUID, move there? dhinton
- */
- struct macaddr_node_t {
- unsigned char node[6];
- };
-
- extern ACE_Export
- int getmacaddress (struct macaddr_node_t *node);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- struct protoent *getprotobyname (const char *name);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- struct protoent *getprotobyname_r (const char *name,
- struct protoent *result,
- ACE_PROTOENT_DATA buffer);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- struct protoent *getprotobynumber (int proto);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- struct protoent *getprotobynumber_r (int proto,
- struct protoent *result,
- ACE_PROTOENT_DATA buffer);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- struct servent *getservbyname (const char *svc,
- const char *proto);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- struct servent *getservbyname_r (const char *svc,
- const char *proto,
- struct servent *result,
- ACE_SERVENT_DATA buf);
-
-# if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0) && defined (ACE_LACKS_NETDB_REENTRANT_FUNCTIONS)
- extern ACE_Export
- int netdb_acquire (void);
-
- extern ACE_Export
- int netdb_release (void);
-# endif /* defined (ACE_MT_SAFE) && ACE_LACKS_NETDB_REENTRANT_FUNCTIONS */
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_netdb.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_NETDB_H */
-
diff --git a/dep/include/ace/OS_NS_netdb.inl b/dep/include/ace/OS_NS_netdb.inl
deleted file mode 100644
index 508831d4380..00000000000
--- a/dep/include/ace/OS_NS_netdb.inl
+++ /dev/null
@@ -1,750 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_netdb.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_macros.h"
-#include "ace/OS_NS_string.h"
-#include "ace/OS_NS_errno.h"
-
-#if defined (ACE_LACKS_NETDB_REENTRANT_FUNCTIONS)
-# if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
-# define ACE_NETDBCALL_RETURN(OP,TYPE,FAILVALUE,TARGET,SIZE) \
- do \
- { \
- if (ACE_OS::netdb_acquire ()) \
- return FAILVALUE; \
- else \
- { \
- TYPE ace_result_; \
- ACE_OSCALL (OP, TYPE, FAILVALUE, ace_result_); \
- if (ace_result_ != FAILVALUE) \
- ACE_OS::memcpy (TARGET, \
- ace_result_, \
- SIZE < sizeof (TYPE) ? SIZE : sizeof (TYPE)); \
- ACE_OS::netdb_release (); \
- return ace_result_; \
- } \
- } while(0)
-# else /* ! (ACE_MT_SAFE && ACE_MT_SAFE != 0) */
-# define ACE_NETDBCALL_RETURN(OP,TYPE,FAILVALUE,TARGET,SIZE) \
- do \
- { \
- TYPE ace_result_; \
- ACE_OSCALL(OP,TYPE,FAILVALUE,ace_result_); \
- if (ace_result_ != FAILVALUE) \
- ACE_OS::memcpy (TARGET, \
- ace_result_, \
- SIZE < sizeof (TYPE) ? SIZE : sizeof (TYPE)); \
- return ace_result_; \
- } while(0)
-# endif /* ACE_MT_SAFE && ACE_MT_SAFE != 0 */
-#endif /* ACE_LACKS_NETDB_REENTRANT_FUNCTIONS */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if !(defined (ACE_VXWORKS) && defined (ACE_LACKS_GETHOSTBYADDR))
-
-ACE_INLINE struct hostent *
-ACE_OS::gethostbyaddr (const char *addr, int length, int type)
-{
- ACE_OS_TRACE ("ACE_OS::gethostbyaddr");
-# if defined (ACE_LACKS_GETHOSTBYADDR)
- ACE_UNUSED_ARG (addr);
- ACE_UNUSED_ARG (length);
- ACE_UNUSED_ARG (type);
- ACE_NOTSUP_RETURN (0);
-# else
-
- if (0 == addr || '\0' == addr[0])
- return 0;
-
-# if defined (ACE_VXWORKS)
- // VxWorks 6.x has a gethostbyaddr() that is threadsafe and
- // returns an heap-allocated hostentry structure.
- // just call ACE_OS::gethostbyaddr_r () which knows how to handle this.
- struct hostent hentry;
- ACE_HOSTENT_DATA buf;
- int h_error; // Not the same as errno!
- return ACE_OS::gethostbyaddr_r (addr, length, type, &hentry, buf, &h_error);
-# elif defined (ACE_HAS_NONCONST_GETBY)
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::gethostbyaddr (const_cast<char *> (addr),
- (ACE_SOCKET_LEN) length,
- type),
- struct hostent *,
- 0);
- //FUZZ: enable check_for_lack_ACE_OS
-# else
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::gethostbyaddr (addr,
- (ACE_SOCKET_LEN) length,
- type),
- struct hostent *,
- 0);
- //FUZZ: enable check_for_lack_ACE_OS
-# endif /* ACE_HAS_NONCONST_GETBY */
-# endif /* !ACE_LACKS_GETHOSTBYADDR */
-}
-
-#endif
-
-#if !(defined (ACE_VXWORKS) && defined (ACE_LACKS_GETHOSTBYADDR))
-
-ACE_INLINE struct hostent *
-ACE_OS::gethostbyaddr_r (const char *addr,
- int length,
- int type,
- struct hostent *result,
- ACE_HOSTENT_DATA buffer,
- int *h_errnop)
-{
- ACE_OS_TRACE ("ACE_OS::gethostbyaddr_r");
-# if defined (ACE_LACKS_GETHOSTBYADDR_R)
- ACE_UNUSED_ARG (addr);
- ACE_UNUSED_ARG (length);
- ACE_UNUSED_ARG (type);
- ACE_UNUSED_ARG (result);
- ACE_UNUSED_ARG (buffer);
- ACE_UNUSED_ARG (h_errnop);
- ACE_NOTSUP_RETURN (0);
-# elif defined (ACE_HAS_REENTRANT_FUNCTIONS) && !defined (UNIXWARE)
-
- if (0 == addr || '\0' == addr[0])
- return 0;
-
-# if defined (AIX) || defined (DIGITAL_UNIX)
- ACE_OS::memset (buffer, 0, sizeof (ACE_HOSTENT_DATA));
-
- //FUZZ: disable check_for_lack_ACE_OS
- if (::gethostbyaddr_r ((char *) addr, length, type, result,
- (struct hostent_data *) buffer)== 0)
- return result;
- //FUZZ: enable check_for_lack_ACE_OS
- else
- {
- *h_errnop = h_errno;
- return (struct hostent *) 0;
- }
-# elif defined (__GLIBC__) || defined (__FreeBSD__)
- // GNU C library has a different signature
- ACE_OS::memset (buffer, 0, sizeof (ACE_HOSTENT_DATA));
-
- //FUZZ: disable check_for_lack_ACE_OS
- if (::gethostbyaddr_r ((char *) addr,
- length,
- type,
- result,
- buffer,
- sizeof (ACE_HOSTENT_DATA),
- &result,
- h_errnop) == 0)
- return result;
- //FUZZ: enable check_for_lack_ACE_OS
- else
- return (struct hostent *) 0;
-# elif defined (ACE_VXWORKS)
- // VxWorks 6.x has a threadsafe gethostbyaddr() which returns a heap-allocated
- // data structure which needs to be freed with hostentFree()
- //FUZZ: disable check_for_lack_ACE_OS
- struct hostent* hp = ::gethostbyaddr (addr, length, type);
- //FUZZ: enable check_for_lack_ACE_OS
-
- if (hp)
- {
- result->h_addrtype = hp->h_addrtype;
- result->h_length = hp->h_length;
-
- // buffer layout:
- // buffer[0-3]: h_addr_list[0], pointer to the addr.
- // buffer[4-7]: h_addr_list[1], null terminator for the h_addr_list.
- // buffer[8..(8+h_length)]: the first (and only) addr.
- // buffer[(8+h_length)...]: hostname
-
- // Store the address list in buffer.
- result->h_addr_list = (char **) buffer;
- // Store the actual address _after_ the address list.
- result->h_addr_list[0] = (char *) &result->h_addr_list[2];
- ACE_OS::memcpy (result->h_addr_list[0], hp->h_addr_list[0], hp->h_length);
- // Null-terminate the list of addresses.
- result->h_addr_list[1] = 0;
- // And no aliases, so null-terminate h_aliases.
- result->h_aliases = &result->h_addr_list[1];
-
- if (((2*sizeof(char*))+hp->h_length+ACE_OS::strlen (hp->h_name)+1) <= sizeof (ACE_HOSTENT_DATA))
- {
- result->h_name = (char *) result->h_addr_list[0] + hp->h_length;
- ACE_OS::strcpy (result->h_name, hp->h_name);
- }
- else
- {
- result->h_name = (char *)0;
- }
-
- // free hostent memory
- ::hostentFree (hp);
-
- return result;
- }
- else
- {
- return (struct hostent *) 0;
- }
-# else
-# if defined(ACE_LACKS_NETDB_REENTRANT_FUNCTIONS)
- ACE_UNUSED_ARG (result);
- ACE_UNUSED_ARG (h_errnop);
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_NETDBCALL_RETURN (::gethostbyaddr (addr, (ACE_SOCKET_LEN) length, type),
- struct hostent *, 0,
- buffer, sizeof (ACE_HOSTENT_DATA));
- //FUZZ: enable check_for_lack_ACE_OS
-# else
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::gethostbyaddr_r (addr, length, type, result,
- buffer, sizeof (ACE_HOSTENT_DATA),
- h_errnop),
- struct hostent *, 0);
- //FUZZ: enable check_for_lack_ACE_OS
-# endif /* ACE_LACKS_NETDB_REENTRANT_FUNCTIONS */
-# endif /* defined (AIX) || defined (DIGITAL_UNIX) */
-# elif defined (ACE_HAS_NONCONST_GETBY)
- ACE_UNUSED_ARG (result);
- ACE_UNUSED_ARG (buffer);
- ACE_UNUSED_ARG (h_errnop);
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::gethostbyaddr (const_cast<char *> (addr),
- (ACE_SOCKET_LEN) length,
- type),
- struct hostent *,
- 0);
- //FUZZ: enable check_for_lack_ACE_OS
-# else
- ACE_UNUSED_ARG (h_errnop);
- ACE_UNUSED_ARG (buffer);
- ACE_UNUSED_ARG (result);
-
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::gethostbyaddr (addr,
- (ACE_SOCKET_LEN) length,
- type),
- struct hostent *,
- 0);
- //FUZZ: enable check_for_lack_ACE_OS
-# endif /* ACE_LACKS_GETHOSTBYADDR_R */
-}
-
-#endif
-
-#if !(defined (ACE_VXWORKS) && defined (ACE_LACKS_GETHOSTBYNAME))
-
-ACE_INLINE struct hostent *
-ACE_OS::gethostbyname (const char *name)
-{
- ACE_OS_TRACE ("ACE_OS::gethostbyname");
-# if defined (ACE_LACKS_GETHOSTBYNAME)
- ACE_UNUSED_ARG (name);
- ACE_NOTSUP_RETURN (0);
-# else
-
- if (0 == name || '\0' == name[0])
- return 0;
-
-# if defined (ACE_VXWORKS)
- // VxWorks 6.x has a gethostbyname() that is threadsafe and
- // returns an heap-allocated hostentry structure.
- // just call ACE_OS::gethostbyname_r () which knows how to handle this.
- struct hostent hentry;
- ACE_HOSTENT_DATA buf;
- int h_error; // Not the same as errno!
- return ACE_OS::gethostbyname_r (name, &hentry, buf, &h_error);
-# elif defined (ACE_HAS_NONCONST_GETBY)
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::gethostbyname (const_cast<char *> (name)),
- struct hostent *,
- 0);
- //FUZZ: enable check_for_lack_ACE_OS
-# else
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::gethostbyname (name),
- struct hostent *,
- 0);
- //FUZZ: enable check_for_lack_ACE_OS
-# endif /* ACE_HAS_NONCONST_GETBY */
-# endif /* !ACE_LACKS_GETHOSTBYNAME */
-}
-
-#endif
-
-#if !(defined (ACE_VXWORKS) && defined (ACE_LACKS_GETHOSTBYNAME))
-
-ACE_INLINE struct hostent *
-ACE_OS::gethostbyname_r (const char *name,
- struct hostent *result,
- ACE_HOSTENT_DATA buffer,
- int *h_errnop)
-{
- ACE_OS_TRACE ("ACE_OS::gethostbyname_r");
-#if defined (ACE_LACKS_GETHOSTBYNAME)
- ACE_UNUSED_ARG (name);
- ACE_UNUSED_ARG (result);
- ACE_UNUSED_ARG (buffer);
- ACE_UNUSED_ARG (h_errnop);
- ACE_NOTSUP_RETURN (0);
-# elif defined (ACE_HAS_REENTRANT_FUNCTIONS) && !defined (UNIXWARE)
-
- if (0 == name || '\0' == name[0])
- return (struct hostent *)0;
-
-# if defined (DIGITAL_UNIX) || \
- (defined (ACE_AIX_MINOR_VERS) && (ACE_AIX_MINOR_VERS > 2))
- ACE_UNUSED_ARG (result);
- ACE_UNUSED_ARG (buffer);
- ACE_UNUSED_ARG (h_errnop);
-
- // gethostbyname returns thread-specific storage on Digital Unix and
- // AIX 4.3
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::gethostbyname (name), struct hostent *, 0);
- //FUZZ: enable check_for_lack_ACE_OS
-# elif defined (AIX)
- ACE_OS::memset (buffer, 0, sizeof (ACE_HOSTENT_DATA));
-
- //FUZZ: disable check_for_lack_ACE_OS
- if (::gethostbyname_r (name, result, (struct hostent_data *) buffer) == 0)
- return result;
- //FUZZ: enable check_for_lack_ACE_OS
- else
- {
- *h_errnop = h_errno;
- return (struct hostent *) 0;
- }
-# elif defined (__GLIBC__) || defined (__FreeBSD__)
- // GNU C library has a different signature
- ACE_OS::memset (buffer, 0, sizeof (ACE_HOSTENT_DATA));
-
- //FUZZ: disable check_for_lack_ACE_OS
- if (::gethostbyname_r (name,
- result,
- buffer,
- sizeof (ACE_HOSTENT_DATA),
- &result,
- h_errnop) == 0)
- return result;
- //FUZZ: enable check_for_lack_ACE_OS
- else
- return (struct hostent *) 0;
-# elif defined (ACE_VXWORKS)
- // VxWorks 6.x has a threadsafe gethostbyname() which returns a heap-allocated
- // data structure which needs to be freed with hostentFree()
- //FUZZ: disable check_for_lack_ACE_OS
- struct hostent* hp = ::gethostbyname (name);
- //FUZZ: enable check_for_lack_ACE_OS
-
- if (hp)
- {
- result->h_addrtype = hp->h_addrtype;
- result->h_length = hp->h_length;
-
- // buffer layout:
- // buffer[0-3]: h_addr_list[0], pointer to the addr.
- // buffer[4-7]: h_addr_list[1], null terminator for the h_addr_list.
- // buffer[8...]: the first (and only) addr.
-
- // Store the address list in buffer.
- result->h_addr_list = (char **) buffer;
- // Store the actual address _after_ the address list.
- result->h_addr_list[0] = (char *) &result->h_addr_list[2];
- ACE_OS::memcpy (result->h_addr_list[0], hp->h_addr_list[0], hp->h_length);
- // Null-terminate the list of addresses.
- result->h_addr_list[1] = 0;
- // And no aliases, so null-terminate h_aliases.
- result->h_aliases = &result->h_addr_list[1];
-
- if (((2*sizeof(char*))+hp->h_length+ACE_OS::strlen (hp->h_name)+1) <= sizeof (ACE_HOSTENT_DATA))
- {
- result->h_name = (char *) result->h_addr_list[0] + hp->h_length;
- ACE_OS::strcpy (result->h_name, hp->h_name);
- }
- else
- {
- result->h_name = (char *)0;
- }
-
- // free hostent memory
- ::hostentFree (hp);
-
- return result;
- }
- else
- {
- return (struct hostent *) 0;
- }
-# else
-# if defined(ACE_LACKS_NETDB_REENTRANT_FUNCTIONS)
- ACE_UNUSED_ARG (result);
- ACE_UNUSED_ARG (h_errnop);
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_NETDBCALL_RETURN (::gethostbyname (name),
- struct hostent *, 0,
- buffer, sizeof (ACE_HOSTENT_DATA));
- //FUZZ: enable check_for_lack_ACE_OS
-# else
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::gethostbyname_r (name, result, buffer,
- sizeof (ACE_HOSTENT_DATA),
- h_errnop),
- struct hostent *,
- 0);
- //FUZZ: enable check_for_lack_ACE_OS
-# endif /* ACE_LACKS_NETDB_REENTRANT_FUNCTIONS */
-# endif /* defined (AIX) || defined (DIGITAL_UNIX) */
-# elif defined (ACE_HAS_NONCONST_GETBY)
- ACE_UNUSED_ARG (result);
- ACE_UNUSED_ARG (buffer);
- ACE_UNUSED_ARG (h_errnop);
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::gethostbyname (const_cast<char *> (name)),
- struct hostent *,
- 0);
- //FUZZ: enable check_for_lack_ACE_OS
-# else
- ACE_UNUSED_ARG (result);
- ACE_UNUSED_ARG (buffer);
- ACE_UNUSED_ARG (h_errnop);
-
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::gethostbyname (name),
- struct hostent *,
- 0);
- //FUZZ: enable check_for_lack_ACE_OS
-# endif /* defined (ACE_HAS_REENTRANT_FUNCTIONS) && !defined (UNIXWARE) */
-}
-
-#endif
-
-ACE_INLINE struct hostent *
-ACE_OS::getipnodebyaddr (const void *src, size_t len, int family)
-{
-#if defined (ACE_HAS_IPV6) && !defined (ACE_WIN32)
-# if defined (ACE_LACKS_GETIPNODEBYADDR)
- ACE_UNUSED_ARG (src);
- ACE_UNUSED_ARG (len);
- ACE_UNUSED_ARG (family);
- ACE_NOTSUP_RETURN (0);
-# else
- struct hostent *hptr = 0;
- int errnum;
- //FUZZ: disable check_for_lack_ACE_OS
- if ((hptr = ::getipnodebyaddr (src, len, family, &errnum)) == 0)
- {
- errno = errnum;
- }
- //FUZZ: enable check_for_lack_ACE_OS
- return hptr;
-# endif /* ACE_LACKS_GETIPNODEBYADDR */
-#else
- // IPv4-only implementation
- if (family == AF_INET)
- return ACE_OS::gethostbyaddr (static_cast<const char *> (src),
- static_cast<int> (len),
- family);
-
- ACE_NOTSUP_RETURN (0);
-# endif /* defined (ACE_HAS_IPV6) && !defined (ACE_WIN32) */
-}
-
-ACE_INLINE struct hostent *
-ACE_OS::getipnodebyname (const char *name, int family, int flags)
-{
- ACE_OS_TRACE ("ACE_OS::getipnodebyname");
-# if defined (ACE_HAS_IPV6) && !defined (ACE_LACKS_GETIPNODEBYNAME_IPV6)
-# if defined (ACE_LACKS_GETIPNODEBYNAME)
- ACE_UNUSED_ARG (flags);
-# if defined (ACE_HAS_NONCONST_GETBY)
- ACE_SOCKCALL_RETURN (::gethostbyname2 (const_cast<char *> (name),
- family),
- struct hostent *, 0);
-# else
- ACE_SOCKCALL_RETURN (::gethostbyname2 (name, family),
- struct hostent *, 0);
-# endif /* ACE_HAS_NONCONST_GETBY */
-# else
- struct hostent *hptr = 0;
- int errnum;
- //FUZZ: disable check_for_lack_ACE_OS
- if ((hptr = ::getipnodebyname (name, family, flags, &errnum)) == 0)
- {
- errno = errnum;
- }
- //FUZZ: enable check_for_lack_ACE_OS
- return hptr;
-# endif /* ACE_LACKS_GETIPNODEBYNAME */
-# else
- // IPv4-only implementation
- ACE_UNUSED_ARG (flags);
- if (family == AF_INET)
- return ACE_OS::gethostbyname (name);
-
- ACE_NOTSUP_RETURN (0);
-# endif /* defined (ACE_HAS_IPV6) && !ACE_LACKS_GETIPNODEBYNAME_IPV6 */
-}
-
-ACE_INLINE struct protoent *
-ACE_OS::getprotobyname (const char *name)
-{
-#if defined (ACE_LACKS_GETPROTOBYNAME)
- ACE_UNUSED_ARG (name);
- ACE_NOTSUP_RETURN (0);
-#elif defined (ACE_HAS_NONCONST_GETBY)
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::getprotobyname (const_cast<char *> (name)),
- struct protoent *,
- 0);
- //FUZZ: enable check_for_lack_ACE_OS
-#else
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::getprotobyname (name),
- struct protoent *,
- 0);
- //FUZZ: enable check_for_lack_ACE_OS
-#endif /* ACE_LACKS_GETPROTOBYNAME */
-}
-
-ACE_INLINE struct protoent *
-ACE_OS::getprotobyname_r (const char *name,
- struct protoent *result,
- ACE_PROTOENT_DATA buffer)
-{
-#if defined (ACE_LACKS_GETPROTOBYNAME)
- ACE_UNUSED_ARG (name);
- ACE_UNUSED_ARG (result);
- ACE_UNUSED_ARG (buffer);
- ACE_NOTSUP_RETURN (0);
-#elif defined (ACE_HAS_REENTRANT_FUNCTIONS) && !defined (UNIXWARE)
-# if defined (AIX) || defined (DIGITAL_UNIX)
- //FUZZ: disable check_for_lack_ACE_OS
- if (::getprotobyname_r (name, result, (struct protoent_data *) buffer) == 0)
- return result;
- else
- return 0;
- //FUZZ: enable check_for_lack_ACE_OS
-# elif defined (__GLIBC__) || defined (__FreeBSD__)
- // GNU C library has a different signature
- //FUZZ: disable check_for_lack_ACE_OS
- if (::getprotobyname_r (name,
- result,
- buffer,
- sizeof (ACE_PROTOENT_DATA),
- &result) == 0)
- //FUZZ: enable check_for_lack_ACE_OS
- return result;
- else
- return 0;
-# else
-# if defined(ACE_LACKS_NETDB_REENTRANT_FUNCTIONS)
- ACE_UNUSED_ARG (result);
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_NETDBCALL_RETURN (::getprotobyname (name),
- struct protoent *, 0,
- buffer, sizeof (ACE_PROTOENT_DATA));
- //FUZZ: enable check_for_lack_ACE_OS
-# else
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::getprotobyname_r (name,
- result,
- buffer,
- sizeof (ACE_PROTOENT_DATA)),
- struct protoent *, 0);
- //FUZZ: enable check_for_lack_ACE_OS
-# endif /* ACE_LACKS_NETDB_REENTRANT_FUNCTIONS */
-# endif /* defined (AIX) || defined (DIGITAL_UNIX) */
-#elif defined (ACE_HAS_NONCONST_GETBY)
- ACE_UNUSED_ARG (result);
- ACE_UNUSED_ARG (buffer);
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::getprotobyname (const_cast<char *> (name)),
- struct protoent *, 0);
- //FUZZ: enable check_for_lack_ACE_OS
-#else
- ACE_UNUSED_ARG (buffer);
- ACE_UNUSED_ARG (result);
-
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::getprotobyname (name),
- struct protoent *,
- 0);
- //FUZZ: enable check_for_lack_ACE_OS
-#endif /* defined (ACE_HAS_REENTRANT_FUNCTIONS) !defined (UNIXWARE) */
-}
-
-ACE_INLINE struct protoent *
-ACE_OS::getprotobynumber (int proto)
-{
-#if defined (ACE_LACKS_GETPROTOBYNUMBER)
- ACE_UNUSED_ARG (proto);
- ACE_NOTSUP_RETURN (0);
-#else
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::getprotobynumber (proto),
- struct protoent *, 0);
- //FUZZ: enable check_for_lack_ACE_OS
-#endif /* ACE_LACKS_GETPROTOBYNUMBER */
-}
-
-ACE_INLINE struct protoent *
-ACE_OS::getprotobynumber_r (int proto,
- struct protoent *result,
- ACE_PROTOENT_DATA buffer)
-{
-#if defined (ACE_LACKS_GETPROTOBYNUMBER)
- ACE_UNUSED_ARG (proto);
- ACE_UNUSED_ARG (result);
- ACE_UNUSED_ARG (buffer);
- ACE_NOTSUP_RETURN (0);
-#elif defined (ACE_HAS_REENTRANT_FUNCTIONS) && !defined (UNIXWARE)
-# if defined (AIX) || defined (DIGITAL_UNIX)
- //FUZZ: disable check_for_lack_ACE_OS
- if (::getprotobynumber_r (proto, result, (struct protoent_data *) buffer) == 0)
- return result;
- //FUZZ: enable check_for_lack_ACE_OS
- else
- return 0;
-# elif defined (__GLIBC__) || defined (__FreeBSD__)
- // GNU C library has a different signature
- //FUZZ: disable check_for_lack_ACE_OS
- if (::getprotobynumber_r (proto,
- result,
- buffer,
- sizeof (ACE_PROTOENT_DATA),
- &result) == 0)
- //FUZZ: enable check_for_lack_ACE_OS
- return result;
- else
- return 0;
-# else
-# if defined(ACE_LACKS_NETDB_REENTRANT_FUNCTIONS)
- ACE_UNUSED_ARG (result);
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_NETDBCALL_RETURN (::getprotobynumber (proto),
- struct protoent *, 0,
- buffer, sizeof (ACE_PROTOENT_DATA));
- //FUZZ: enable check_for_lack_ACE_OS
-# else
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::getprotobynumber_r (proto, result, buffer, sizeof (ACE_PROTOENT_DATA)),
- struct protoent *, 0);
- //FUZZ: enable check_for_lack_ACE_OS
-# endif /* ACE_LACKS_NETDB_REENTRANT_FUNCTIONS */
-# endif /* defined (AIX) || defined (DIGITAL_UNIX) */
-#else
- ACE_UNUSED_ARG (buffer);
- ACE_UNUSED_ARG (result);
-
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::getprotobynumber (proto),
- struct protoent *, 0);
- //FUZZ: enable check_for_lack_ACE_OS
-#endif /* defined (ACE_HAS_REENTRANT_FUNCTIONS) && !defined (UNIXWARE) */
-}
-
-ACE_INLINE struct servent *
-ACE_OS::getservbyname (const char *svc, const char *proto)
-{
- ACE_OS_TRACE ("ACE_OS::getservbyname");
-#if defined (ACE_LACKS_GETSERVBYNAME)
- ACE_UNUSED_ARG (svc);
- ACE_UNUSED_ARG (proto);
- ACE_NOTSUP_RETURN (0);
-#elif defined (ACE_HAS_NONCONST_GETBY)
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::getservbyname (const_cast<char *> (svc),
- const_cast<char *> (proto)),
- struct servent *,
- 0);
- //FUZZ: enable check_for_lack_ACE_OS
-#else
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::getservbyname (svc,
- proto),
- struct servent *,
- 0);
- //FUZZ: enable check_for_lack_ACE_OS
-#endif /* ACE_HAS_NONCONST_GETBY */
-}
-
-ACE_INLINE struct servent *
-ACE_OS::getservbyname_r (const char *svc,
- const char *proto,
- struct servent *result,
- ACE_SERVENT_DATA buf)
-{
- ACE_OS_TRACE ("ACE_OS::getservbyname_r");
-#if defined (ACE_LACKS_GETSERVBYNAME)
- ACE_UNUSED_ARG (svc);
- ACE_UNUSED_ARG (proto);
- ACE_UNUSED_ARG (result);
- ACE_UNUSED_ARG (buf);
- ACE_NOTSUP_RETURN (0);
-#elif defined (ACE_HAS_REENTRANT_FUNCTIONS) && !defined (UNIXWARE)
-# if defined (AIX) || defined (DIGITAL_UNIX)
- ACE_OS::memset (buf, 0, sizeof (ACE_SERVENT_DATA));
-
- //FUZZ: disable check_for_lack_ACE_OS
- if (::getservbyname_r (svc, proto, result, (struct servent_data *) buf) == 0)
- return result;
- //FUZZ: enable check_for_lack_ACE_OS
- else
- return (struct servent *) 0;
-# elif defined (__GLIBC__) || defined (__FreeBSD__)
- // GNU C library has a different signature
- ACE_OS::memset (buf, 0, sizeof (ACE_SERVENT_DATA));
-
- //FUZZ: disable check_for_lack_ACE_OS
- if (::getservbyname_r (svc,
- proto,
- result,
- buf,
- sizeof (ACE_SERVENT_DATA),
- &result) == 0)
- return result;
- //FUZZ: enable check_for_lack_ACE_OS
- else
- return (struct servent *) 0;
-# else
-# if defined(ACE_LACKS_NETDB_REENTRANT_FUNCTIONS)
- ACE_UNUSED_ARG (result);
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_NETDBCALL_RETURN (::getservbyname (svc, proto),
- struct servent *, 0,
- buf, sizeof (ACE_SERVENT_DATA));
- //FUZZ: enable check_for_lack_ACE_OS
-# else
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::getservbyname_r (svc, proto, result, buf,
- sizeof (ACE_SERVENT_DATA)),
- struct servent *, 0);
- //FUZZ: enable check_for_lack_ACE_OS
-# endif /* ACE_LACKS_NETDB_REENTRANT_FUNCTIONS */
-# endif /* defined (AIX) || defined (DIGITAL_UNIX) */
-#elif defined (ACE_HAS_NONCONST_GETBY)
- ACE_UNUSED_ARG (buf);
- ACE_UNUSED_ARG (result);
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::getservbyname (const_cast<char *> (svc),
- const_cast<char *> (proto)),
- struct servent *,
- 0);
- //FUZZ: enable check_for_lack_ACE_OS
-#else
- ACE_UNUSED_ARG (buf);
- ACE_UNUSED_ARG (result);
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_SOCKCALL_RETURN (::getservbyname (svc,
- proto),
- struct servent *,
- 0);
- //FUZZ: enable check_for_lack_ACE_OS
-#endif /* defined (ACE_HAS_REENTRANT_FUNCTIONS) && !defined (UNIXWARE) */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_poll.h b/dep/include/ace/OS_NS_poll.h
deleted file mode 100644
index bf20577bc6b..00000000000
--- a/dep/include/ace/OS_NS_poll.h
+++ /dev/null
@@ -1,67 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_poll.h
- *
- * $Id: OS_NS_poll.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_POLL_H
-# define ACE_OS_NS_POLL_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_poll.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-namespace ACE_OS
-{
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int poll (struct pollfd *pollfds,
- unsigned long len,
- const ACE_Time_Value *tv = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int poll (struct pollfd *pollfds,
- unsigned long len,
- const ACE_Time_Value &tv);
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_poll.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_POLL_H */
-
diff --git a/dep/include/ace/OS_NS_poll.inl b/dep/include/ace/OS_NS_poll.inl
deleted file mode 100644
index 92ce0c41e63..00000000000
--- a/dep/include/ace/OS_NS_poll.inl
+++ /dev/null
@@ -1,45 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_poll.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Time_Value.h"
-#include "ace/OS_NS_errno.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_OS::poll (struct pollfd *pollfds,
- unsigned long len,
- const ACE_Time_Value *timeout)
-{
- ACE_OS_TRACE ("ACE_OS::poll");
-#if defined (ACE_HAS_POLL)
- int to = timeout == 0 ? -1 : int (timeout->msec ());
- ACE_OSCALL_RETURN (::poll (pollfds, len, to), int, -1);
-#else
- ACE_UNUSED_ARG (timeout);
- ACE_UNUSED_ARG (len);
- ACE_UNUSED_ARG (pollfds);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_POLL */
-}
-
-ACE_INLINE int
-ACE_OS::poll (struct pollfd *pollfds,
- unsigned long len,
- const ACE_Time_Value &timeout)
-{
- ACE_OS_TRACE ("ACE_OS::poll");
-#if defined (ACE_HAS_POLL)
- ACE_OSCALL_RETURN (::poll (pollfds, len, int (timeout.msec ())), int, -1);
-#else
- ACE_UNUSED_ARG (timeout);
- ACE_UNUSED_ARG (len);
- ACE_UNUSED_ARG (pollfds);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_POLL */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_pwd.h b/dep/include/ace/OS_NS_pwd.h
deleted file mode 100644
index bf6bb4cea97..00000000000
--- a/dep/include/ace/OS_NS_pwd.h
+++ /dev/null
@@ -1,81 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_pwd.h
- *
- * $Id: OS_NS_pwd.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_PWD_H
-#define ACE_OS_NS_PWD_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_pwd.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-# if defined (ACE_HAS_BROKEN_R_ROUTINES)
-# undef getpwnam_r
-# endif /* ACE_HAS_BROKEN_R_ROUTINES */
-
-struct passwd;
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS
-{
-
- //@{ @name A set of wrappers for password routines.
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void endpwent (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- struct passwd *getpwent (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- struct passwd *getpwnam (const char *user);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- struct passwd *getpwnam_r (const char *name,
- struct passwd *pwent,
- char *buffer,
- int buflen);
- ACE_NAMESPACE_INLINE_FUNCTION
- void setpwent (void);
- //@}
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_pwd.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_PWD_H */
-
diff --git a/dep/include/ace/OS_NS_pwd.inl b/dep/include/ace/OS_NS_pwd.inl
deleted file mode 100644
index cb13fe8f292..00000000000
--- a/dep/include/ace/OS_NS_pwd.inl
+++ /dev/null
@@ -1,120 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_pwd.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_errno.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Accessors to PWD file.
-
-ACE_INLINE void
-ACE_OS::endpwent (void)
-{
-#if !defined (ACE_LACKS_PWD_FUNCTIONS)
- ::endpwent ();
-#endif /* ! ACE_LACKS_PWD_FUNCTIONS */
-}
-
-ACE_INLINE struct passwd *
-ACE_OS::getpwent (void)
-{
-#if !defined (ACE_LACKS_PWD_FUNCTIONS)
- return ::getpwent ();
-#else
- ACE_NOTSUP_RETURN (0);
-#endif /* ! ACE_LACKS_PWD_FUNCTIONS */
-}
-
-ACE_INLINE struct passwd *
-ACE_OS::getpwnam (const char *name)
-{
-#if !defined (ACE_LACKS_PWD_FUNCTIONS)
- return ::getpwnam (name);
-# else
- ACE_UNUSED_ARG (name);
- ACE_NOTSUP_RETURN (0);
-#endif /* ACE_LACKS_PWD_FUNCTIONS */
-}
-
-ACE_INLINE struct passwd *
-ACE_OS::getpwnam_r (const char *name, struct passwd *pwent,
- char *buffer, int buflen)
-{
-#if defined (ACE_HAS_POSIX_GETPWNAM_R)
- struct passwd *result = 0;
-
- int const status = ::getpwnam_r (name, pwent, buffer, buflen, &result);
-
- if (status != 0)
- {
- errno = status;
- result = 0;
- }
- return result;
-#elif !defined (ACE_LACKS_PWD_FUNCTIONS)
-# if defined (ACE_HAS_REENTRANT_FUNCTIONS)
-# if !defined (ACE_LACKS_PWD_REENTRANT_FUNCTIONS)
-# if defined (ACE_HAS_PTHREADS) && \
- !defined (ACE_HAS_STHREADS) || \
- defined (HPUX_11) || \
- defined (__USLC__) // Added by Roland Gigler for SCO UnixWare 7.
- struct passwd *result;
- int status;
-# if defined (DIGITAL_UNIX)
- ::_Pgetpwnam_r (name, pwent, buffer, buflen, &result);
-# else
- // VAC++ doesn't correctly grok the ::getpwnam_r - the function is redefined
- // in pwd.h, and that redefinition is used here
-# if defined (__IBMCPP__) && (__IBMCPP__ >= 400) /* VAC++ 4 */
- status = _posix_getpwnam_r (name, pwent, buffer, buflen, &result);
-# else
- status = ::getpwnam_r (name, pwent, buffer, buflen, &result);
-# endif /* __IBMCPP__ && (__IBMCPP__ >= 400) */
- if (status != 0)
- {
- errno = status;
- result = 0;
- }
-# endif /* (DIGITAL_UNIX) */
- return result;
-# elif defined (AIX)
- if (::getpwnam_r (name, pwent, buffer, buflen) == -1)
- return 0;
- else
- return pwent;
-# else
- return ::getpwnam_r (name, pwent, buffer, buflen);
-# endif /* ACE_HAS_PTHREADS */
-# else
- ACE_UNUSED_ARG (name);
- ACE_UNUSED_ARG (pwent);
- ACE_UNUSED_ARG (buffer);
- ACE_UNUSED_ARG (buflen);
- ACE_NOTSUP_RETURN (0);
-# endif /* ! ACE_LACKS_PWD_REENTRANT_FUNCTIONS */
-# else
- ACE_UNUSED_ARG (name);
- ACE_UNUSED_ARG (pwent);
- ACE_UNUSED_ARG (buffer);
- ACE_UNUSED_ARG (buflen);
- ACE_NOTSUP_RETURN (0);
-# endif /* ACE_HAS_REENTRANT_FUNCTIONS */
-#else
- ACE_UNUSED_ARG (name);
- ACE_UNUSED_ARG (pwent);
- ACE_UNUSED_ARG (buffer);
- ACE_UNUSED_ARG (buflen);
- ACE_NOTSUP_RETURN (0);
-#endif /* ACE_HAS_POSIX_GETPWNAM_R */
-}
-
-ACE_INLINE void
-ACE_OS::setpwent (void)
-{
-#if !defined (ACE_LACKS_PWD_FUNCTIONS)
- ::setpwent ();
-#endif /* ! ACE_LACKS_PWD_FUNCTIONS */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_regex.h b/dep/include/ace/OS_NS_regex.h
deleted file mode 100644
index 8684d087d5d..00000000000
--- a/dep/include/ace/OS_NS_regex.h
+++ /dev/null
@@ -1,66 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_regex.h
- *
- * $Id: OS_NS_regex.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_REGEX_H
-# define ACE_OS_NS_REGEX_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS
-{
-
- // non=standard..
- //@{ @name A set of wrappers for regular expressions.
- ACE_NAMESPACE_INLINE_FUNCTION
- char *compile (const char *instring,
- char *expbuf,
- char *endbuf);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int step (const char *str,
- char *expbuf);
- //@}
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_regex.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_REGEX_H */
-
diff --git a/dep/include/ace/OS_NS_regex.inl b/dep/include/ace/OS_NS_regex.inl
deleted file mode 100644
index 3f5a0aa932f..00000000000
--- a/dep/include/ace/OS_NS_regex.inl
+++ /dev/null
@@ -1,39 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_regex.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_errno.h"
-#include "ace/os_include/os_regex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE char *
-ACE_OS::compile (const char *instring, char *expbuf, char *endbuf)
-{
- ACE_OS_TRACE ("ACE_OS::compile");
-#if defined (ACE_HAS_REGEX)
- ACE_OSCALL_RETURN (::compile (instring, expbuf, endbuf), char *, 0);
-#else
- ACE_UNUSED_ARG (instring);
- ACE_UNUSED_ARG (expbuf);
- ACE_UNUSED_ARG (endbuf);
-
- ACE_NOTSUP_RETURN (0);
-#endif /* ACE_HAS_REGEX */
-}
-
-ACE_INLINE int
-ACE_OS::step (const char *str, char *expbuf)
-{
- ACE_OS_TRACE ("ACE_OS::step");
-#if defined (ACE_HAS_REGEX)
- ACE_OSCALL_RETURN (::step (str, expbuf), int, -1);
-#else
- ACE_UNUSED_ARG (str);
- ACE_UNUSED_ARG (expbuf);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_REGEX */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_signal.h b/dep/include/ace/OS_NS_signal.h
deleted file mode 100644
index d9abed0a666..00000000000
--- a/dep/include/ace/OS_NS_signal.h
+++ /dev/null
@@ -1,154 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_signal.h
- *
- * $Id: OS_NS_signal.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_SIGNAL_H
-# define ACE_OS_NS_SIGNAL_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-lite.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_signal.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-# if !defined (SIG_BLOCK)
-# define SIG_BLOCK 1
-# endif /* SIG_BLOCK */
-
-# if !defined (SIG_UNBLOCK)
-# define SIG_UNBLOCK 2
-# endif /* SIG_UNBLOCK */
-
-# if !defined (SIG_SETMASK)
-# define SIG_SETMASK 3
-# endif /* SIG_SETMASK */
-
-// Create some useful typedefs.
-
-# if !defined (ACE_HAS_SIGINFO_T)
-struct ACE_Export siginfo_t
-{
- siginfo_t (ACE_HANDLE handle);
- siginfo_t (ACE_HANDLE *handles); // JCEJ 12/23/96
-
- /// Win32 HANDLE that has become signaled.
- ACE_HANDLE si_handle_;
-
- /// Array of Win32 HANDLEs all of which have become signaled.
- ACE_HANDLE *si_handles_;
-};
-# endif /* ACE_HAS_SIGINFO_T */
-
-#if !defined (ACE_WIN32)
-extern "C"
-{
- typedef void (*ACE_SIGNAL_C_FUNC)(int, siginfo_t *, void *);
-}
-#endif /* ACE_WIN32 */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// This hack is needed to get around an odd and hard-to-reproduce problem
-// with HP aC++. If struct sigaction is defined extern "C" and the sigaction
-// function in namespace ACE_OS, the compiler sometimes gets confused.
-// If we help it with this typedef, it's fine. User code should not use
-// the ACE typedef - it will be removed without warning as soon as we can
-// either drop support for the broken compilers or figure out how to reproduce
-// it so it can be reported to HP and fixed.
-// There's a similar hack in OS_TLI.h for struct t_optmgmt.
-// Also see ChangeLog entries:
-// Mon Jan 23 16:35:40 UTC 2006 Steve Huston <shuston@riverace.com>
-// Mon Jan 23 22:08:56 UTC 2006 Steve Huston <shuston@riverace.com>
-#if defined (__HP_aCC) && (__HP_aCC <= 37300)
-typedef extern "C" struct sigaction ACE_SIGACTION;
-#else
-typedef struct sigaction ACE_SIGACTION;
-#endif
-
-namespace ACE_OS {
-
- //@{ @name A set of wrappers for Signals.
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int kill (pid_t pid,
- int signum);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int pthread_sigmask (int how,
- const sigset_t *nsp,
- sigset_t *osp);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sigaction (int signum,
- const ACE_SIGACTION *nsa,
- ACE_SIGACTION *osa);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sigaddset (sigset_t *s,
- int signum);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sigdelset (sigset_t *s,
- int signum);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sigemptyset (sigset_t *s);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sigfillset (sigset_t *s);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sigismember (sigset_t *s,
- int signum);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_SignalHandler signal (int signum,
- ACE_SignalHandler);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sigprocmask (int how,
- const sigset_t *nsp,
- sigset_t *osp);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sigsuspend (const sigset_t *set);
-
- //@}
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_signal.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_SIGNAL_H */
-
diff --git a/dep/include/ace/OS_NS_signal.inl b/dep/include/ace/OS_NS_signal.inl
deleted file mode 100644
index 5fae8f0e7fa..00000000000
--- a/dep/include/ace/OS_NS_signal.inl
+++ /dev/null
@@ -1,236 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_signal.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_macros.h"
-#include "ace/OS_NS_errno.h"
-#ifndef WIN32
-#include <pthread.h>
-#include <signal.h>
-#endif
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS
-{
-
-ACE_INLINE int
-kill (pid_t pid, int signum)
-{
- ACE_OS_TRACE ("ACE_OS::kill");
-#if defined (ACE_LACKS_KILL)
- ACE_UNUSED_ARG (pid);
- ACE_UNUSED_ARG (signum);
- ACE_NOTSUP_RETURN (-1);
-#else
- ACE_OSCALL_RETURN (::kill (pid, signum), int, -1);
-#endif /* ACE_LACKS_KILL */
-}
-
-ACE_INLINE int
-pthread_sigmask (int how, const sigset_t *nsp, sigset_t *osp)
-{
-#if defined (ACE_HAS_PTHREADS) && !defined (ACE_LACKS_PTHREAD_SIGMASK)
- int result;
- ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::pthread_sigmask (how, nsp, osp),
- result),
- int,
- -1);
-#else /* !ACE_HAS_PTHREADS && !ACE_LACKS_PTHREAD_SIGMASK */
- ACE_UNUSED_ARG (how);
- ACE_UNUSED_ARG (nsp);
- ACE_UNUSED_ARG (osp);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_PTHREADS && !ACE_LACKS_PTHREAD_SIGMASK */
-}
-
-ACE_INLINE int
-sigaction (int signum, const ACE_SIGACTION *nsa, ACE_SIGACTION *osa)
-{
- ACE_OS_TRACE ("ACE_OS::sigaction");
- if (signum == 0)
- return 0;
-#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)
- struct sigaction sa;
-
- if (osa == 0)
- osa = &sa;
-
- if (nsa == 0)
- {
- osa->sa_handler = ::signal (signum, SIG_IGN);
- ::signal (signum, osa->sa_handler);
- }
- else
- osa->sa_handler = ::signal (signum, nsa->sa_handler);
- return osa->sa_handler == SIG_ERR ? -1 : 0;
-#elif defined (ACE_LACKS_SIGACTION)
- ACE_UNUSED_ARG (nsa);
- ACE_UNUSED_ARG (osa);
- ACE_NOTSUP_RETURN (-1);
-#elif !defined (ACE_HAS_SIGACTION_CONSTP2)
- ACE_OSCALL_RETURN (::sigaction (signum,
- const_cast<ACE_SIGACTION*> (nsa),
- osa),
- int, -1);
-#else
- ACE_OSCALL_RETURN (::sigaction (signum, nsa, osa), int, -1);
-#endif /* ACE_WIN32 !ACE_HAS_WINCE */
-}
-
-ACE_INLINE int
-sigaddset (sigset_t *s, int signum)
-{
- ACE_OS_TRACE ("ACE_OS::sigaddset");
-#if defined (ACE_LACKS_SIGSET) || defined (ACE_LACKS_SIGSET_DEFINITIONS)
- if (s == 0)
- {
- errno = EFAULT;
- return -1;
- }
- else if (signum < 1 || signum >= ACE_NSIG)
- {
- errno = EINVAL;
- return -1; // Invalid signum, return error
- }
- *s |= (1 << (signum - 1)) ;
- return 0 ;
-#else
- ACE_OSCALL_RETURN (::sigaddset (s, signum), int, -1);
-#endif /* ACE_LACKS_SIGSET || ACE_LACKS_SIGSET_DEFINITIONS */
-}
-
-ACE_INLINE int
-sigdelset (sigset_t *s, int signum)
-{
-#if defined (ACE_LACKS_SIGSET) || defined (ACE_LACKS_SIGSET_DEFINITIONS)
- if (s == 0)
- {
- errno = EFAULT;
- return -1;
- }
- else if (signum < 1 || signum >= ACE_NSIG)
- {
- errno = EINVAL;
- return -1; // Invalid signum, return error
- }
- *s &= ~(1 << (signum - 1)) ;
- return 0;
-#else
- ACE_OSCALL_RETURN (::sigdelset (s, signum), int, -1);
-#endif /* ACE_LACKS_SIGSET || ACE_LACKS_SIGSET_DEFINITIONS */
-}
-
-ACE_INLINE int
-sigemptyset (sigset_t *s)
-{
-#if defined (ACE_LACKS_SIGSET) || defined (ACE_LACKS_SIGSET_DEFINITIONS)
- if (s == 0)
- {
- errno = EFAULT;
- return -1;
- }
- *s = 0 ;
- return 0;
-#else
- ACE_OSCALL_RETURN (::sigemptyset (s), int, -1);
-#endif /* ACE_LACKS_SIGSET || ACE_LACKS_SIGSET_DEFINITIONS */
-}
-
-ACE_INLINE int
-sigfillset (sigset_t *s)
-{
-#if defined (ACE_LACKS_SIGSET) || defined (ACE_LACKS_SIGSET_DEFINITIONS)
- if (s == 0)
- {
- errno = EFAULT;
- return -1;
- }
- *s = ~(sigset_t) 0;
- return 0 ;
-#else
- ACE_OSCALL_RETURN (::sigfillset (s), int, -1);
-#endif /* ACE_LACKS_SIGSET || ACE_LACKS_SIGSET_DEFINITIONS */
-}
-
-ACE_INLINE int
-sigismember (sigset_t *s, int signum)
-{
-#if defined (ACE_LACKS_SIGSET) || defined (ACE_LACKS_SIGSET_DEFINITIONS)
- if (s == 0)
- {
- errno = EFAULT;
- return -1;
- }
- else if (signum < 1 || signum >= ACE_NSIG)
- {
- errno = EINVAL;
- return -1; // Invalid signum, return error
- }
- return ((*s & (1 << (signum - 1))) != 0) ;
-#else
-# if defined (ACE_HAS_SIGISMEMBER_BUG)
- if (signum < 1 || signum >= ACE_NSIG)
- {
- errno = EINVAL;
- return -1; // Invalid signum, return error
- }
-# endif /* ACE_HAS_SIGISMEMBER_BUG */
- ACE_OSCALL_RETURN (::sigismember (s, signum), int, -1);
-#endif /* ACE_LACKS_SIGSET || ACE_LACKS_SIGSET_DEFINITIONS */
-}
-
-ACE_INLINE ACE_SignalHandler
-signal (int signum, ACE_SignalHandler func)
-{
- if (signum == 0)
- return 0;
- else
-# if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE) || !defined (ACE_LACKS_UNIX_SIGNALS)
-# if !defined (ACE_HAS_TANDEM_SIGNALS) && !defined (ACE_HAS_LYNXOS_SIGNALS)
- return ::signal (signum, func);
-# else
- return (ACE_SignalHandler) ::signal (signum, (void (*)(int)) func);
-# endif /* !ACE_HAS_TANDEM_SIGNALS */
-#else
- // @@ WINCE: Don't know how to implement signal on WinCE (yet.)
- ACE_UNUSED_ARG (signum);
- ACE_UNUSED_ARG (func);
- ACE_NOTSUP_RETURN (0); // Should return SIG_ERR but it is not defined on WinCE.
-#endif /* defined (ACE_WIN32) && !defined (ACE_HAS_WINCE) || !defined (ACE_LACKS_UNIX_SIGNALS) */
-}
-
-ACE_INLINE int
-sigprocmask (int how, const sigset_t *nsp, sigset_t *osp)
-{
-#if defined (ACE_LACKS_SIGSET) || defined (ACE_LACKS_SIGSET_DEFINITIONS)
- ACE_UNUSED_ARG (how);
- ACE_UNUSED_ARG (nsp);
- ACE_UNUSED_ARG (osp);
- ACE_NOTSUP_RETURN (-1);
-#else
- ACE_OSCALL_RETURN (::sigprocmask (how, nsp, osp), int, -1);
-#endif /* ACE_LACKS_SIGSET || ACE_LACKS_SIGSET_DEFINITIONS */
-}
-
-ACE_INLINE int
-sigsuspend (const sigset_t *sigset)
-{
-#if defined (ACE_HAS_SIGSUSPEND)
- sigset_t s;
-
- if (sigset == 0)
- {
- sigset = &s;
- ACE_OS::sigemptyset (&s);
- }
- ACE_OSCALL_RETURN (::sigsuspend (sigset), int, -1);
-#else
- ACE_UNUSED_ARG (sigset);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_SIGSUSPEND */
-}
-
-} /* end namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_stdio.h b/dep/include/ace/OS_NS_stdio.h
deleted file mode 100644
index be497f6cf90..00000000000
--- a/dep/include/ace/OS_NS_stdio.h
+++ /dev/null
@@ -1,542 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_stdio.h
- *
- * $Id: OS_NS_stdio.h 81840 2008-06-05 13:46:45Z sma $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_STDIO_H
-# define ACE_OS_NS_STDIO_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_stdio.h"
-#include "ace/os_include/os_fcntl.h"
-#include /**/ "ace/ACE_export.h"
-
-/* OPENVMS needs unistd for cuserid() */
-#if defined (CYGWIN32) || defined (ACE_OPENVMS)
-# include "ace/os_include/os_unistd.h"
-#endif /* CYGWIN32 || ACE_OPENVMS */
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-/*
- * We inline and undef some functions that may be implemented
- * as macros on some platforms. This way macro definitions will
- * be usable later as there is no way to save the macro definition
- * using the pre-processor.
- *
- */
-#if !defined (ACE_LACKS_CLEARERR)
-inline void ace_clearerr_helper (FILE *stream)
-{
-# if defined (clearerr)
- clearerr (stream);
-# undef clearerr
-# else
- ACE_STD_NAMESPACE::clearerr (stream);
-# endif /* defined (clearerr) */
-}
-#endif /* !ACE_LACKS_CLEARERR */
-
-inline int ace_fgetc_helper (FILE *fp)
-{
-#if defined (fgetc)
- return fgetc (fp);
-#undef fgetc
-#else
- return ACE_STD_NAMESPACE::fgetc (fp);
-#endif /* defined (fgetc) */
-}
-
-inline int ace_fputc_helper (int ch, FILE *fp)
-{
-#if defined (fputc)
- return fputc (ch, fp);
-#undef fputc
-#else
- return ACE_STD_NAMESPACE::fputc (ch, fp);
-#endif /* defined (fputc) */
-}
-
-inline int ace_getc_helper (FILE *fp)
-{
-#if defined (getc)
- return getc (fp);
-#undef getc
-#else
- return ACE_STD_NAMESPACE::getc (fp);
-#endif /* defined (getc) */
-}
-
-inline int ace_putc_helper (int ch, FILE *fp)
-{
-#if defined (putc)
- return putc (ch, fp);
-#undef putc
-#else
- return ACE_STD_NAMESPACE::putc (ch, fp);
-#endif /* defined (putc) */
-}
-
-inline int ace_ungetc_helper (int ch, FILE *fp)
-{
-#if defined (ungetc)
- return ungetc (ch, fp);
-#undef ungetc
-#else
- return ACE_STD_NAMESPACE::ungetc (ch, fp);
-#endif /* defined (ungetc) */
-}
-
-#if !defined (ACE_LACKS_CUSERID) && !defined(ACE_HAS_ALT_CUSERID) \
- && !defined(ACE_WIN32) && !defined (ACE_VXWORKS)
-/// Helper for the ACE_OS::cuserid() function
-/**
- * On some platforms cuserid is a macro. Defining ACE_OS::cuserid()
- * becomes really hard, as there is no way to save the macro
- * definition using the pre-processor.
- * This inline function achieves the same effect, without namespace
- * pollution or performance penalties.
- *
- * @todo We maybe should move a lot of the code in ACE_OS::cuserid here so
- * it is treated the same as the above ace_difftime and ace_timezone.
- * But since there is a good deal more code in ACE_OS::cuserid, we
- * probably need to move some of it off into some sort of emulation
- * function.
- */
-inline char *ace_cuserid(char *user)
-{
- return cuserid(user);
-}
-#endif /* !ACE_LACKS_CUSERID && !ACE_HAS_ALT_CUSERID && ... */
-
-# if defined (ACE_LACKS_FILELOCKS)
-# if ! defined (ACE_VXWORKS) && ! defined (ACE_HAS_RTEMS) && !defined (INTEGRITY)
-// VxWorks defines struct flock in sys/fcntlcom.h. But it doesn't
-// appear to support flock (). RTEMS defines struct flock but
-// currently does not support locking.
-struct flock
-{
- short l_type;
- short l_whence;
- ACE_OFF_T l_start;
- ACE_OFF_T l_len; /* len == 0 means until end of file */
- long l_sysid;
- pid_t l_pid;
- long l_pad[4]; /* reserve area */
-};
-# endif /* ! VXWORKS */
-# endif /* ACE_LACKS_FILELOCKS */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS {
-
- /**
- * @class ace_flock_t
- *
- * @brief OS file locking structure.
- */
- class ACE_Export ace_flock_t
- {
- public:
- /// Dump state of the object.
- void dump (void) const;
-
-# if defined (ACE_WIN32)
- ACE_OVERLAPPED overlapped_;
-# else
- struct flock lock_;
-# endif /* ACE_WIN32 */
-
- /// Name of this filelock.
- const ACE_TCHAR *lockname_;
-
- /// Handle to the underlying file.
- ACE_HANDLE handle_;
- };
-
-# if defined (ACE_USES_WCHAR)
- // If fp points to the Unicode format file, the file pointer will be moved right next
- // to the Unicode header (2 types). Otherwise, file pointer will be at the beginning.
- extern ACE_Export
- void checkUnicodeFormat (FILE* fp);
-# endif // ACE_USES_WCHAR
-
-# if !defined (ACE_LACKS_CLEARERR)
- ACE_NAMESPACE_INLINE_FUNCTION
- void clearerr (FILE* fp);
-# endif /* !ACE_LACKS_CLEARERR */
-
- //@{ @name Wrappers to obtain the current user id
- // Legacy as per SUSV3
-# if !defined (ACE_LACKS_CUSERID)
-# if defined(cuserid)
-# undef cuserid
-# endif /* cuserid */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- char *cuserid (char *user,
- size_t maxlen = ACE_MAX_USERID);
-
-# if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- wchar_t *cuserid (wchar_t *user,
- size_t maxlen = ACE_MAX_USERID);
-# endif /* ACE_HAS_WCHAR */
-# endif /* ACE_LACKS_CUSERID */
- //@}
-
- extern ACE_Export
- int asprintf (char **bufp, const char* format, ...);
-
-# if defined (ACE_HAS_WCHAR)
- extern ACE_Export
- int asprintf (wchar_t **bufp, const wchar_t* format, ...);
-#endif /* ACE_HAS_WCHAR */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int fclose (FILE *fp);
-
-# if defined (fdopen)
-# undef fdopen
-# endif /* fdopen */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- FILE *fdopen (ACE_HANDLE handle, const ACE_TCHAR *mode);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int fflush (FILE *fp);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int fgetc (FILE* fp);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int getc (FILE* fp);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int fgetpos (FILE* fp, fpos_t* pos);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- char *fgets (char *buf, int size, FILE *fp);
-
-# if defined (ACE_HAS_WCHAR) && !defined(ACE_LACKS_FGETWS)
- ACE_NAMESPACE_INLINE_FUNCTION
- wchar_t *fgets (wchar_t *buf, int size, FILE *fp);
-# endif /* ACE_HAS_WCHAR && !ACE_LACKS_FGETWS */
-
- //@{ @name A set of wrappers for file locks.
-
-# if defined (ACE_WIN32)
- ACE_NAMESPACE_INLINE_FUNCTION
- void flock_adjust_params (ace_flock_t *lock,
- short whence,
- ACE_OFF_T &start,
- ACE_OFF_T &len);
-# endif /* ACE_WIN32 */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int flock_init (ace_flock_t *lock,
- int flags = 0,
- const ACE_TCHAR *name = 0,
- mode_t perms = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int flock_destroy (ace_flock_t *lock,
- int unlink_file = 1);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int flock_rdlock (ace_flock_t *lock,
- short whence = 0,
- ACE_OFF_T start = 0,
- ACE_OFF_T len = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int flock_tryrdlock (ace_flock_t *lock,
- short whence = 0,
- ACE_OFF_T start = 0,
- ACE_OFF_T len = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int flock_trywrlock (ace_flock_t *lock,
- short whence = 0,
- ACE_OFF_T start = 0,
- ACE_OFF_T len = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int flock_unlock (ace_flock_t *lock,
- short whence = 0,
- ACE_OFF_T start = 0,
- ACE_OFF_T len = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int flock_wrlock (ace_flock_t *lock,
- short whence = 0,
- ACE_OFF_T start = 0,
- ACE_OFF_T len = 0);
-
- //@}
-
-#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)
- extern ACE_Export
-#else
- ACE_NAMESPACE_INLINE_FUNCTION
-#endif /* ACE_WIN32 */
- FILE *fopen (const char *filename, const char *mode);
-
-#if defined (ACE_HAS_WCHAR)
-#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)
- extern ACE_Export
-#else
- ACE_NAMESPACE_INLINE_FUNCTION
-#endif /* ACE_WIN32 */
- FILE *fopen (const char *filename, const wchar_t *mode);
-# if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)
- extern ACE_Export
-# else
- ACE_NAMESPACE_INLINE_FUNCTION
-# endif /* ACE_WIN32 */
- FILE *fopen (const wchar_t *filename, const wchar_t *mode);
-# if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)
- extern ACE_Export
-# else
- ACE_NAMESPACE_INLINE_FUNCTION
-# endif /* ACE_WIN32 */
- FILE *fopen (const wchar_t *filename, const char *mode);
-#endif /* ACE_HAS_WCHAR */
-
-#if defined (ACE_WIN32)
- /// Default Win32 Security Attributes definition.
- ACE_NAMESPACE_INLINE_FUNCTION
- LPSECURITY_ATTRIBUTES default_win32_security_attributes (LPSECURITY_ATTRIBUTES);
- ACE_NAMESPACE_INLINE_FUNCTION
- LPSECURITY_ATTRIBUTES default_win32_security_attributes_r (LPSECURITY_ATTRIBUTES,
- LPSECURITY_ATTRIBUTES,
- SECURITY_DESCRIPTOR*);
-
- // = Win32 OS version determination function.
- /// Return the win32 OSVERSIONINFO structure.
- ACE_NAMESPACE_INLINE_FUNCTION
- const ACE_TEXT_OSVERSIONINFO &get_win32_versioninfo (void);
-
- // = A pair of functions for modifying ACE's Win32 resource usage.
- /// Return the handle of the module containing ACE's resources. By
- /// default, for a DLL build of ACE this is a handle to the ACE DLL
- /// itself, and for a static build it is a handle to the executable.
- ACE_NAMESPACE_INLINE_FUNCTION
- HINSTANCE get_win32_resource_module (void);
-
- /// Allow an application to modify which module contains ACE's
- /// resources. This is mainly useful for a static build of ACE where
- /// the required resources reside somewhere other than the executable.
- ACE_NAMESPACE_INLINE_FUNCTION
- void set_win32_resource_module (HINSTANCE);
-
- extern ACE_Export ACE_TEXT_OSVERSIONINFO win32_versioninfo_;
-
- extern ACE_Export HINSTANCE win32_resource_module_;
-
-#endif /* ACE_WIN32 */
-
- extern ACE_Export
- int fprintf (FILE *fp, const char *format, ...);
-
-# if defined (ACE_HAS_WCHAR)
- extern ACE_Export
- int fprintf (FILE *fp, const wchar_t *format, ...);
-# endif /* ACE_HAS_WCHAR */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int ungetc (int c,
- FILE *fp);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int fputc (int c,
- FILE *fp);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int putc (int c,
- FILE *fp);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int fputs (const char *s,
- FILE *stream);
-
-# if defined (ACE_HAS_WCHAR) && !defined(ACE_LACKS_FPUTWS)
- ACE_NAMESPACE_INLINE_FUNCTION
- int fputs (const wchar_t *s,
- FILE *stream);
-# endif /* ACE_HAS_WCHAR && !ACE_LACKS_FPUTWS */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- size_t fread (void *ptr,
- size_t size,
- size_t nelems,
- FILE *fp);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- FILE *freopen (const ACE_TCHAR *filename,
- const ACE_TCHAR *mode,
- FILE* stream);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int fseek (FILE *fp,
- long offset,
- int ptrname);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int fsetpos (FILE* fp, fpos_t* pos);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- long ftell (FILE* fp);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- size_t fwrite (const void *ptr,
- size_t size,
- size_t nitems,
- FILE *fp);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void perror (const char *s);
-
-#if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- void perror (const wchar_t *s);
-#endif /* ACE_HAS_WCHAR */
-
- extern ACE_Export
- int printf (const char *format, ...);
-
-#if defined (ACE_HAS_WCHAR)
- extern ACE_Export
- int printf (const wchar_t *format, ...);
-#endif
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int puts (const char *s);
-
-#if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- int puts (const wchar_t *s);
-#endif /* ACE_HAS_WCHAR */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int rename (const char *old_name,
- const char *new_name,
- int flags = -1);
-
-#if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- int rename (const wchar_t *old_name,
- const wchar_t *new_name,
- int flags = -1);
-#endif /* ACE_HAS_WCHAR */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void rewind (FILE *fp);
-
- extern ACE_Export
- int snprintf (char *buf, size_t maxlen, const char *format, ...);
-
-# if defined (ACE_HAS_WCHAR)
- extern ACE_Export
- int snprintf (wchar_t *buf, size_t maxlen, const wchar_t *format, ...);
-# endif /* ACE_HAS_WCHAR */
-
- extern ACE_Export
- int sprintf (char *buf, const char *format, ...);
-
-# if defined (ACE_HAS_WCHAR)
- extern ACE_Export
- int sprintf (wchar_t *buf, const wchar_t *format, ...);
-# endif /* ACE_HAS_WCHAR */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- char *tempnam (const char *dir = 0,
- const char *pfx = 0);
-
-#if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- wchar_t *tempnam (const wchar_t *dir,
- const wchar_t *pfx = 0);
-#endif /* ACE_HAS_WCHAR */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int vasprintf (char **bufp, const char *format, va_list argptr);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int vprintf (const char *format, va_list argptr);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int vfprintf (FILE *fp, const char *format, va_list argptr);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int vsprintf (char *buffer, const char *format, va_list argptr);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int vsnprintf (char *buffer, size_t maxlen, const char *format, va_list argptr);
-
-# if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- int vasprintf (wchar_t **bufp, const wchar_t *format, va_list argptr);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int vprintf (const wchar_t *format, va_list argptr);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int vfprintf (FILE *fp, const wchar_t *format, va_list argptr);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int vsprintf (wchar_t *buffer, const wchar_t *format, va_list argptr);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int vsnprintf (wchar_t *buffer, size_t maxlen, const wchar_t *format, va_list argptr);
-# endif /* ACE_HAS_WCHAR */
-
-#if !defined (ACE_HAS_VASPRINTF)
- extern ACE_Export
- int vasprintf_emulation (char **bufp, const char *format, va_list argptr);
-#endif /* !ACE_HAS_VASPRINTF */
-
-#if defined (ACE_HAS_WCHAR)
-#if !defined (ACE_HAS_VASWPRINTF)
- extern ACE_Export
- int vaswprintf_emulation (wchar_t **bufp, const wchar_t *format, va_list argptr);
-#endif /* !ACE_HAS_VASWPRINTF */
-#endif /* ACE_HAS_WCHAR */
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_stdio.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_STDIO_H */
-
diff --git a/dep/include/ace/OS_NS_stdio.inl b/dep/include/ace/OS_NS_stdio.inl
deleted file mode 100644
index 2c6894e46c4..00000000000
--- a/dep/include/ace/OS_NS_stdio.inl
+++ /dev/null
@@ -1,1211 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_stdio.inl 82444 2008-07-28 13:33:07Z johnnyw $
-
-#include "ace/OS_NS_unistd.h"
-#include "ace/OS_NS_stdlib.h"
-#include "ace/OS_NS_fcntl.h"
-#include "ace/OS_NS_errno.h"
-#include "ace/OS_NS_string.h"
-#include "ace/OS_NS_pwd.h"
-#include "ace/OS_NS_macros.h"
-#include "ace/OS_NS_sys_stat.h"
-#include "ace/OS_Memory.h"
-
-#if defined (ACE_HAS_TRIO)
-# include <trio.h>
-#endif /* ACE_HAS_TRIO */
-
-/*****************************************************************************/
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_WIN32)
-ACE_INLINE void
-ACE_OS::flock_adjust_params (ACE_OS::ace_flock_t *lock,
- short whence,
- ACE_OFF_T &start,
- ACE_OFF_T &len)
-{
- switch (whence)
- {
- case SEEK_SET:
- break;
- case SEEK_CUR:
- {
- LARGE_INTEGER offset;
-# if !defined (ACE_LACKS_WIN32_SETFILEPOINTEREX)
- LARGE_INTEGER distance;
- distance.QuadPart = 0;
- if (!::SetFilePointerEx (lock->handle_,
- distance,
- &offset,
- FILE_CURRENT))
- {
- ACE_OS::set_errno_to_last_error ();
- return;
- }
-# else
- offset.LowPart = ::SetFilePointer (lock->handle_,
- 0,
- &offset.HighPart,
- FILE_CURRENT);
- if (offset.LowPart == INVALID_SET_FILE_POINTER &&
- ::GetLastError() != NO_ERROR)
- {
- ACE_OS::set_errno_to_last_error ();
- return;
- }
-# endif /* ACE_LACKS_WIN32_SETFILEPOINTEREX */
-
-# if defined (_FILE_OFFSET_BITS) && _FILE_OFFSET_BITS == 64
- start += offset.QuadPart;
-# else
- start += offset.LowPart;
-# endif /* _FILE_OFFSET_BITS == 64 */
- }
- break;
- case SEEK_END:
- {
- ACE_OFF_T const size = ACE_OS::filesize (lock->handle_);
- if (size == -1)
- return;
-
- start += size;
- }
- break;
- }
- lock->overlapped_.Offset = ACE_LOW_PART (start);
- lock->overlapped_.OffsetHigh = ACE_HIGH_PART (start);
- if (len == 0)
- {
- ACE_OFF_T const tlen = ACE_OS::filesize (lock->handle_);
- if (tlen != -1)
- len = tlen - start;
- }
-}
-#endif /* ACE_WIN32 */
-
-ACE_INLINE int
-ACE_OS::flock_init (ACE_OS::ace_flock_t *lock,
- int flags,
- const ACE_TCHAR *name,
- mode_t perms)
-{
- ACE_OS_TRACE ("ACE_OS::flock_init");
-#if defined (ACE_WIN32)
- // Once initialized, these values are never changed.
- lock->overlapped_.Internal = 0;
- lock->overlapped_.InternalHigh = 0;
- lock->overlapped_.OffsetHigh = 0;
- lock->overlapped_.hEvent = 0;
-#endif /* ACE_WIN32 */
- lock->handle_ = ACE_INVALID_HANDLE;
- lock->lockname_ = 0;
-
- if (name != 0)
- {
- ACE_OSCALL (ACE_OS::open (name, flags, perms),
- ACE_HANDLE,
- ACE_INVALID_HANDLE,
- lock->handle_);
- if (lock->handle_ != ACE_INVALID_HANDLE)
- lock->lockname_ = ACE_OS::strdup (name);
- return lock->handle_ == ACE_INVALID_HANDLE ? -1 : 0;
- }
- else
- return 0;
-}
-
-ACE_INLINE int
-ACE_OS::flock_unlock (ACE_OS::ace_flock_t *lock,
- short whence,
- ACE_OFF_T start,
- ACE_OFF_T len)
-{
- ACE_OS_TRACE ("ACE_OS::flock_unlock");
-#if defined (ACE_LACKS_FILELOCKS)
- ACE_UNUSED_ARG (lock);
- ACE_UNUSED_ARG (whence);
- ACE_UNUSED_ARG (start);
- ACE_UNUSED_ARG (len);
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_WIN32)
- ACE_OS::flock_adjust_params (lock, whence, start, len);
- DWORD low_len = ACE_LOW_PART (len);
- DWORD high_len = ACE_HIGH_PART (len);
- ACE_WIN32CALL_RETURN (
- ACE_ADAPT_RETVAL (::UnlockFile (lock->handle_,
- lock->overlapped_.Offset,
- lock->overlapped_.OffsetHigh,
- low_len,
- high_len),
- ace_result_), int, -1);
-#else
- lock->lock_.l_whence = whence;
- lock->lock_.l_start = start;
- lock->lock_.l_len = len;
- lock->lock_.l_type = F_UNLCK; // Unlock file.
-
- // release lock
- ACE_OSCALL_RETURN (ACE_OS::fcntl (lock->handle_, F_SETLK,
- reinterpret_cast<long> (&lock->lock_)),
- int, -1);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE int
-ACE_OS::flock_destroy (ACE_OS::ace_flock_t *lock,
- int unlink_file)
-{
- ACE_OS_TRACE ("ACE_OS::flock_destroy");
- if (lock->handle_ != ACE_INVALID_HANDLE)
- {
- ACE_OS::flock_unlock (lock);
- // Close the handle.
- ACE_OS::close (lock->handle_);
- lock->handle_ = ACE_INVALID_HANDLE;
- if (lock->lockname_ != 0)
- {
- if (unlink_file)
- ACE_OS::unlink (lock->lockname_);
- ACE_OS::free (
- static_cast<void *> (const_cast<ACE_TCHAR *> (lock->lockname_)));
- }
- lock->lockname_ = 0;
- }
- return 0;
-}
-
-ACE_INLINE int
-ACE_OS::flock_rdlock (ACE_OS::ace_flock_t *lock,
- short whence,
- ACE_OFF_T start,
- ACE_OFF_T len)
-{
- ACE_OS_TRACE ("ACE_OS::flock_rdlock");
-#if defined (ACE_LACKS_FILELOCKS)
- ACE_UNUSED_ARG (lock);
- ACE_UNUSED_ARG (whence);
- ACE_UNUSED_ARG (start);
- ACE_UNUSED_ARG (len);
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_WIN32)
- ACE_OS::flock_adjust_params (lock, whence, start, len);
- DWORD low_len = ACE_LOW_PART (len);
- DWORD high_len = ACE_HIGH_PART (len);
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::LockFileEx (lock->handle_,
- 0,
- 0,
- low_len,
- high_len,
- &lock->overlapped_),
- ace_result_), int, -1);
-#else
- lock->lock_.l_whence = whence;
- lock->lock_.l_start = start;
- lock->lock_.l_len = len;
- lock->lock_.l_type = F_RDLCK; // set read lock
- // block, if no access
- ACE_OSCALL_RETURN (ACE_OS::fcntl (lock->handle_, F_SETLKW,
- reinterpret_cast<long> (&lock->lock_)),
- int, -1);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE int
-ACE_OS::flock_tryrdlock (ACE_OS::ace_flock_t *lock,
- short whence,
- ACE_OFF_T start,
- ACE_OFF_T len)
-{
- ACE_OS_TRACE ("ACE_OS::ace_flock_tryrdlock");
-#if defined (ACE_LACKS_FILELOCKS)
- ACE_UNUSED_ARG (lock);
- ACE_UNUSED_ARG (whence);
- ACE_UNUSED_ARG (start);
- ACE_UNUSED_ARG (len);
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_WIN32)
- ACE_OS::flock_adjust_params (lock, whence, start, len);
- DWORD low_len = ACE_LOW_PART (len);
- DWORD high_len = ACE_HIGH_PART (len);
- ACE_WIN32CALL_RETURN (
- ACE_ADAPT_RETVAL (::LockFileEx (lock->handle_,
- LOCKFILE_FAIL_IMMEDIATELY,
- 0,
- low_len,
- high_len,
- &lock->overlapped_),
- ace_result_), int, -1);
-#else
- lock->lock_.l_whence = whence;
- lock->lock_.l_start = start;
- lock->lock_.l_len = len;
- lock->lock_.l_type = F_RDLCK; // set read lock
-
- int result = 0;
- // Does not block, if no access, returns -1 and set errno = EBUSY;
- ACE_OSCALL (ACE_OS::fcntl (lock->handle_, F_SETLK,
- reinterpret_cast<long> (&lock->lock_)),
- int, -1, result);
-
- if (result == -1 && (errno == EACCES || errno == EAGAIN))
- errno = EBUSY;
-
- return result;
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE int
-ACE_OS::flock_trywrlock (ACE_OS::ace_flock_t *lock,
- short whence,
- ACE_OFF_T start,
- ACE_OFF_T len)
-{
- ACE_OS_TRACE ("ACE_OS::ace_flock_trywrlock");
-#if defined (ACE_LACKS_FILELOCKS)
- ACE_UNUSED_ARG (lock);
- ACE_UNUSED_ARG (whence);
- ACE_UNUSED_ARG (start);
- ACE_UNUSED_ARG (len);
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_WIN32)
- ACE_OS::flock_adjust_params (lock, whence, start, len);
- DWORD low_len = ACE_LOW_PART (len);
- DWORD high_len = ACE_HIGH_PART (len);
- ACE_WIN32CALL_RETURN (
- ACE_ADAPT_RETVAL (::LockFileEx (lock->handle_,
- LOCKFILE_FAIL_IMMEDIATELY | LOCKFILE_EXCLUSIVE_LOCK,
- 0,
- low_len,
- high_len,
- &lock->overlapped_),
- ace_result_), int, -1);
-#else
- lock->lock_.l_whence = whence;
- lock->lock_.l_start = start;
- lock->lock_.l_len = len;
- lock->lock_.l_type = F_WRLCK; // set write lock
-
- int result = 0;
- // Does not block, if no access, returns -1 and set errno = EBUSY;
- ACE_OSCALL (ACE_OS::fcntl (lock->handle_,
- F_SETLK,
- reinterpret_cast<long> (&lock->lock_)),
- int, -1, result);
-
- if (result == -1 && (errno == EACCES || errno == EAGAIN))
- errno = EBUSY;
-
- return result;
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE int
-ACE_OS::flock_wrlock (ACE_OS::ace_flock_t *lock,
- short whence,
- ACE_OFF_T start,
- ACE_OFF_T len)
-{
- ACE_OS_TRACE ("ACE_OS::flock_wrlock");
-#if defined (ACE_LACKS_FILELOCKS)
- ACE_UNUSED_ARG (lock);
- ACE_UNUSED_ARG (whence);
- ACE_UNUSED_ARG (start);
- ACE_UNUSED_ARG (len);
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_WIN32)
- ACE_OS::flock_adjust_params (lock, whence, start, len);
- DWORD low_len = ACE_LOW_PART (len);
- DWORD high_len = ACE_HIGH_PART (len);
- ACE_WIN32CALL_RETURN (
- ACE_ADAPT_RETVAL (::LockFileEx (lock->handle_,
- LOCKFILE_EXCLUSIVE_LOCK,
- 0,
- low_len,
- high_len,
- &lock->overlapped_),
- ace_result_), int, -1);
-#else
- lock->lock_.l_whence = whence;
- lock->lock_.l_start = start;
- lock->lock_.l_len = len;
- lock->lock_.l_type = F_WRLCK; // set write lock
- // block, if no access
- ACE_OSCALL_RETURN (ACE_OS::fcntl (lock->handle_, F_SETLKW,
- reinterpret_cast<long> (&lock->lock_)),
- int, -1);
-#endif /* ACE_WIN32 */
-}
-
-#if !defined (ACE_LACKS_CLEARERR)
-ACE_INLINE void
-ACE_OS::clearerr (FILE* fp)
-{
- ace_clearerr_helper (fp);
-}
-#endif /* !ACE_LACKS_CLEARERR */
-
-#if !defined (ACE_LACKS_CUSERID)
-ACE_INLINE char *
-ACE_OS::cuserid (char *user, size_t maxlen)
-{
- ACE_OS_TRACE ("ACE_OS::cuserid");
-#if defined (ACE_VXWORKS)
- ACE_UNUSED_ARG (maxlen);
- if (user == 0)
- {
- // Require that the user field be non-null, i.e., don't
- // allocate or use static storage.
- ACE_NOTSUP_RETURN (0);
- }
- else
- {
- ::remCurIdGet (user, 0);
- return user;
- }
-#elif defined (__QNXNTO__) || defined (ACE_HAS_PHARLAP) || defined (ACE_HAS_WINCE)
- ACE_UNUSED_ARG (user);
- ACE_UNUSED_ARG (maxlen);
- ACE_NOTSUP_RETURN (0);
-#elif defined (ACE_WIN32)
- BOOL result = GetUserNameA (user, (u_long *) &maxlen);
- if (result == FALSE)
- ACE_FAIL_RETURN (0);
- else
- return user;
-#elif defined (ACE_HAS_ALT_CUSERID)
-# if defined (ACE_LACKS_PWD_FUNCTIONS)
-# error Cannot use alternate cuserid() without POSIX password functions!
-# endif /* ACE_LACKS_PWD_FUNCTIONS */
-
- // POSIX.1 dropped the cuserid() function.
- // GNU GLIBC and other platforms correctly deprecate the cuserid()
- // function.
-
- if (maxlen == 0)
- {
- // It doesn't make sense to have a zero length user ID.
- errno = EINVAL;
- return 0;
- }
-
- struct passwd *pw = 0;
-
- // Make sure the file pointer is at the beginning of the password file
- ACE_OS::setpwent ();
- // Should use ACE_OS::setpwent() but I didn't want to move this
- // method after it.
-
- // Use the effective user ID to determine the user name.
- pw = ::getpwuid (ACE_OS::geteuid ());
-
- // Make sure the password file is closed.
- ACE_OS::endpwent ();
-
- if (pw == 0)
- {
- errno = ENOENT;
- return 0;
- }
-
- size_t max_length = 0;
- char *userid = 0;
-
- if (user == 0)
- {
- // Not reentrant/thread-safe, but nothing else can be done if a
- // zero pointer was passed in as the destination.
-
-#if defined (_POSIX_SOURCE) && defined (L_cuserid)
- const size_t ACE_L_cuserid = L_cuserid;
-#else
- const size_t ACE_L_cuserid = 9; // 8 character user ID + NULL
-#endif /* _POSIX_SOURCE */
-
- static char tmp[ACE_L_cuserid] = { '\0' };
- max_length = ACE_L_cuserid - 1; // Do not include NULL in length
-
- userid = tmp;
- }
- else
- {
- max_length = maxlen;
- userid = user;
- }
-
- // Extract the user name from the passwd structure.
- if (ACE_OS::strlen (pw->pw_name) <= max_length)
- {
- return ACE_OS::strcpy (userid, pw->pw_name);
- }
- else
- {
- errno = ENOSPC; // Buffer is not large enough.
- return 0;
- }
-#else
- // Hackish because of missing buffer size!
- ACE_UNUSED_ARG (maxlen);
- ACE_OSCALL_RETURN (::ace_cuserid(user), char*, 0);
-#endif /* ACE_VXWORKS */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE wchar_t *
-ACE_OS::cuserid (wchar_t *user, size_t maxlen)
-{
-# if defined (ACE_HAS_WINCE)
- ACE_UNUSED_ARG (user);
- ACE_UNUSED_ARG (maxlen);
- ACE_NOTSUP_RETURN (0);
-# elif defined (ACE_WIN32)
- BOOL result = GetUserNameW (user, (u_long *) &maxlen);
- if (result == FALSE)
- ACE_FAIL_RETURN (0);
- else
- return user;
-# else /* ACE_WIN32 */
- char *char_user;
- wchar_t *result = 0;
-
- ACE_NEW_RETURN (char_user, char[maxlen + 1], 0);
-
- if (ACE_OS::cuserid (char_user, maxlen))
- {
- ACE_OS::strcpy (user, ACE_Ascii_To_Wide (char_user).wchar_rep ());
- result = user;
- }
-
- delete [] char_user;
-
- return result;
-# endif /* ACE_WIN32 */
-}
-#endif /* ACE_HAS_WCHAR */
-#endif /* ACE_LACKS_CUSERID */
-
-ACE_INLINE int
-ACE_OS::fclose (FILE *fp)
-{
- ACE_OS_TRACE ("ACE_OS::fclose");
- ACE_OSCALL_RETURN (ACE_STD_NAMESPACE::fclose (fp), int, -1);
-}
-
-ACE_INLINE FILE *
-ACE_OS::fdopen (ACE_HANDLE handle, const ACE_TCHAR *mode)
-{
- ACE_OS_TRACE ("ACE_OS::fdopen");
-#if defined (ACE_HAS_WINCE)
- ACE_OSCALL_RETURN (::_wfdopen (handle, ACE_TEXT_ALWAYS_WCHAR (mode)),
- FILE*,
- 0);
-#elif defined (ACE_WIN32)
- // kernel file handle -> FILE* conversion...
- // Options: _O_APPEND, _O_RDONLY and _O_TEXT are lost
-
- FILE * file = 0;
-
- int const crt_handle = ::_open_osfhandle (intptr_t (handle), 0);
-
- if (crt_handle != -1)
- {
-# if defined(ACE_HAS_NONCONST_FDOPEN) && !defined (ACE_USES_WCHAR)
- file = ::_fdopen (crt_handle, const_cast<ACE_TCHAR *> (mode));
-# elif defined (ACE_HAS_NONCONST_FDOPEN) && defined (ACE_USES_WCHAR)
- file = ::_wfdopen (crt_handle, const_cast<ACE_TCHAR *> (mode));
-# elif defined (ACE_USES_WCHAR)
- file = ::_wfdopen (crt_handle, mode);
-# else
- file = ::_fdopen (crt_handle, mode);
-# endif /* ACE_HAS_NONCONST_FDOPEN */
-
- if (!file)
- {
- ::_close (crt_handle);
- }
- }
-
- return file;
-#elif defined (ACE_LACKS_FDOPEN)
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (mode);
- ACE_NOTSUP_RETURN (0);
-#else
- ACE_OSCALL_RETURN
- (::fdopen (handle, ACE_TEXT_ALWAYS_CHAR (mode)), FILE *, 0);
-#endif /* ACE_HAS_WINCE */
-}
-
-ACE_INLINE int
-ACE_OS::fflush (FILE *fp)
-{
- ACE_OS_TRACE ("ACE_OS::fflush");
-#if defined (ACE_VXWORKS)
- if (fp == 0)
- {
- // Do not allow fflush(0) on VxWorks
- return 0;
- }
-#endif /* ACE_VXWORKS */
-
- ACE_OSCALL_RETURN (ACE_STD_NAMESPACE::fflush (fp), int, -1);
-}
-
-ACE_INLINE int
-ACE_OS::fgetc (FILE* fp)
-{
- return ace_fgetc_helper (fp);
-}
-
-ACE_INLINE int
-ACE_OS::getc (FILE* fp)
-{
- return ace_getc_helper (fp);
-}
-
-ACE_INLINE int
-ACE_OS::fgetpos (FILE* fp, fpos_t* pos)
-{
- ACE_OSCALL_RETURN (ACE_STD_NAMESPACE::fgetpos (fp, pos), int, -1);
-}
-
-ACE_INLINE char *
-ACE_OS::fgets (char *buf, int size, FILE *fp)
-{
- ACE_OS_TRACE ("ACE_OS::fgets");
- ACE_OSCALL_RETURN (ACE_STD_NAMESPACE::fgets (buf, size, fp), char *, 0);
-}
-
-#if defined (ACE_HAS_WCHAR) && !defined(ACE_LACKS_FGETWS)
-ACE_INLINE wchar_t *
-ACE_OS::fgets (wchar_t *buf, int size, FILE *fp)
-{
- ACE_OS_TRACE ("ACE_OS::fgets");
- ACE_OSCALL_RETURN (ACE_STD_NAMESPACE::fgetws (buf, size, fp), wchar_t *, 0);
-}
-#endif /* ACE_HAS_WCHAR && !ACE_LACKS_FGETWS */
-
-#if !(defined (ACE_WIN32) && !defined (ACE_HAS_WINCE))
-// Win32 PC implementation of fopen () is in OS_NS_stdio.cpp.
-ACE_INLINE FILE *
-ACE_OS::fopen (const char *filename, const char *mode)
-{
- ACE_OS_TRACE ("ACE_OS::fopen");
- ACE_OSCALL_RETURN
- (::fopen (filename, mode), FILE *, 0);
-}
-
-#if defined (ACE_HAS_WCHAR)
-// Win32 PC implementation of fopen () is in OS_NS_stdio.cpp.
-ACE_INLINE FILE *
-ACE_OS::fopen (const char *filename, const wchar_t *mode)
-{
- ACE_OS_TRACE ("ACE_OS::fopen");
- ACE_Wide_To_Ascii n_mode (mode);
- ACE_OSCALL_RETURN
- (::fopen (filename, n_mode.char_rep ()), FILE *, 0);
-}
-// Win32 PC implementation of fopen () is in OS_NS_stdio.cpp.
-ACE_INLINE FILE *
-ACE_OS::fopen (const wchar_t *filename, const wchar_t *mode)
-{
- ACE_OS_TRACE ("ACE_OS::fopen");
-#if defined (ACE_HAS_WINCE)
- ACE_OSCALL_RETURN
- (::_wfopen (filename, mode), FILE *, 0);
-#else
- // Non-Windows doesn't use wchar_t file systems.
- ACE_Wide_To_Ascii n_filename (filename);
- ACE_Wide_To_Ascii n_mode (mode);
- ACE_OSCALL_RETURN
- (::fopen (n_filename.char_rep (), n_mode.char_rep ()), FILE*, 0);
-#endif /* ACE_HAS_WINCE */
-}
-// Win32 PC implementation of fopen () is in OS_NS_stdio.cpp.
-ACE_INLINE FILE *
-ACE_OS::fopen (const wchar_t *filename, const char *mode)
-{
- ACE_OS_TRACE ("ACE_OS::fopen");
-#if defined (ACE_HAS_WINCE)
- ACE_Ascii_To_Wide n_mode (mode);
- ACE_OSCALL_RETURN
- (::_wfopen (filename, n_mode.wchar_rep ()), FILE *, 0);
-#else
- // Non-Windows doesn't use wchar_t file systems.
- ACE_Wide_To_Ascii n_filename (filename);
- ACE_OSCALL_RETURN
- (::fopen (n_filename.char_rep (), mode), FILE*, 0);
-#endif /* ACE_HAS_WINCE */
-}
-#endif /* ACE_HAS_WCHAR */
-
-#endif /* ACE_WIN32 */
-
-ACE_INLINE int
-ACE_OS::ungetc (int c, FILE *fp)
-{
- return ace_ungetc_helper (c, fp);
-}
-
-ACE_INLINE int
-ACE_OS::fputc (int c, FILE *fp)
-{
- return ace_fputc_helper (c, fp);
-}
-
-ACE_INLINE int
-ACE_OS::putc (int c, FILE *fp)
-{
- return ace_putc_helper (c, fp);
-}
-
-ACE_INLINE int
-ACE_OS::fputs (const char *s, FILE *stream)
-{
- ACE_OS_TRACE ("ACE_OS::fputs");
- ACE_OSCALL_RETURN (ACE_STD_NAMESPACE::fputs (s, stream), int, -1);
-}
-
-#if defined (ACE_HAS_WCHAR) && !defined(ACE_LACKS_FPUTWS)
-ACE_INLINE int
-ACE_OS::fputs (const wchar_t *s, FILE *stream)
-{
- ACE_OS_TRACE ("ACE_OS::fputs");
- ACE_OSCALL_RETURN (ACE_STD_NAMESPACE::fputws (s, stream), int, -1);
-}
-#endif /* ACE_HAS_WCHAR && !ACE_LACKS_FPUTWS */
-
-ACE_INLINE size_t
-ACE_OS::fread (void *ptr, size_t size, size_t nelems, FILE *fp)
-{
- ACE_OS_TRACE ("ACE_OS::fread");
- ACE_OSCALL_RETURN (ACE_STD_NAMESPACE::fread (ptr, size, nelems, fp),
- size_t,
- 0);
-}
-
-ACE_INLINE FILE *
-ACE_OS::freopen (const ACE_TCHAR *filename, const ACE_TCHAR *mode, FILE* stream)
-{
- ACE_OS_TRACE ("ACE_OS::freopen");
-#if defined (ACE_WIN32) && (defined(ACE_USES_WCHAR) || defined(ACE_HAS_WINCE))
- ACE_OSCALL_RETURN (::_wfreopen (ACE_TEXT_ALWAYS_WCHAR (filename),
- ACE_TEXT_ALWAYS_WCHAR (mode),
- stream),
- FILE *, 0);
-#else
- ACE_OSCALL_RETURN
- (ACE_STD_NAMESPACE::freopen (ACE_TEXT_ALWAYS_CHAR (filename),
- ACE_TEXT_ALWAYS_CHAR (mode),
- stream),
- FILE *, 0);
-#endif /* ACE_WIN32 && ACE_USES_WCHAR */
-}
-
-ACE_INLINE int
-ACE_OS::fseek (FILE *fp, long offset, int whence)
-{
-# if defined (ACE_WIN32)
-# if SEEK_SET != FILE_BEGIN || SEEK_CUR != FILE_CURRENT || SEEK_END != FILE_END
- //#error Windows NT is evil AND rude!
- switch (whence)
- {
- case SEEK_SET:
- whence = FILE_BEGIN;
- break;
- case SEEK_CUR:
- whence = FILE_CURRENT;
- break;
- case SEEK_END:
- whence = FILE_END;
- break;
- default:
- errno = EINVAL;
- return -1; // rather safe than sorry
- }
-# endif /* SEEK_SET != FILE_BEGIN || SEEK_CUR != FILE_CURRENT || SEEK_END != FILE_END */
-# endif /* ACE_WIN32 */
- ACE_OSCALL_RETURN (ACE_STD_NAMESPACE::fseek (fp, offset, whence), int, -1);
-}
-
-ACE_INLINE int
-ACE_OS::fsetpos (FILE* fp, fpos_t* pos)
-{
- ACE_OSCALL_RETURN (::fsetpos (fp, pos), int, -1);
-}
-
-ACE_INLINE long
-ACE_OS::ftell (FILE* fp)
-{
- ACE_OSCALL_RETURN (ACE_STD_NAMESPACE::ftell (fp), long, -1);
-}
-
-ACE_INLINE size_t
-ACE_OS::fwrite (const void *ptr, size_t size, size_t nitems, FILE *fp)
-{
- ACE_OS_TRACE ("ACE_OS::fwrite");
- ACE_OSCALL_RETURN (ACE_STD_NAMESPACE::fwrite (ptr, size, nitems, fp),
- size_t,
- 0);
-}
-
-ACE_INLINE void
-ACE_OS::perror (const char *s)
-{
- ACE_OS_TRACE ("ACE_OS::perror");
-#if defined (ACE_LACKS_PERROR)
- ACE_UNUSED_ARG (s);
-#else
- ::perror (s);
-#endif /* ACE_HAS_WINCE */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE void
-ACE_OS::perror (const wchar_t *s)
-{
- ACE_OS_TRACE ("ACE_OS::perror");
-#if defined (ACE_LACKS_PERROR)
- ACE_UNUSED_ARG (s);
-#elif defined (ACE_WIN32)
- ::_wperror (s);
-#else
- ACE_Wide_To_Ascii n_s (s);
- ::perror (n_s.char_rep ());
-#endif /* ACE_HAS_WINCE */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE int
-ACE_OS::puts (const char *s)
-{
- ACE_OS_TRACE ("ACE_OS::puts");
- ACE_OSCALL_RETURN (::puts (s), int, -1);
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::puts (const wchar_t *s)
-{
- ACE_OS_TRACE ("ACE_OS::puts");
-#if defined (ACE_WIN32)
- ACE_OSCALL_RETURN (::_putws (s), int, -1);
-#else /* ACE_WIN32 */
- // There's no putws()...
- ACE_Wide_To_Ascii n_s (s);
- ACE_OSCALL_RETURN (::puts (n_s.char_rep ()), int, -1);
-#endif /* ACE_WIN32 */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE int
-ACE_OS::rename (const char *old_name,
- const char *new_name,
- int flags)
-{
-# if defined (ACE_LACKS_RENAME)
- ACE_UNUSED_ARG (old_name);
- ACE_UNUSED_ARG (new_name);
- ACE_UNUSED_ARG (flags);
- ACE_NOTSUP_RETURN (-1);
-# elif defined (ACE_HAS_WINCE)
- // Win CE is always wide-char.
- ACE_UNUSED_ARG (flags);
- if (0 != MoveFile (ACE_TEXT_CHAR_TO_TCHAR (old_name),
- ACE_TEXT_CHAR_TO_TCHAR (new_name)))
- ACE_FAIL_RETURN (-1);
- return 0;
-# elif defined (ACE_WIN32) && !defined (ACE_LACKS_WIN32_MOVEFILEEX)
- // NT4 (and up) provides a way to rename/move a file with similar semantics
- // to what's usually done on UNIX - if there's an existing file with
- // <new_name> it is removed before the file is renamed/moved. The
- // MOVEFILE_COPY_ALLOWED is specified to allow such a rename across drives.
- if (flags == -1)
- flags = MOVEFILE_COPY_ALLOWED | MOVEFILE_REPLACE_EXISTING;
- if (::MoveFileExA (old_name, new_name, flags) == 0)
- ACE_FAIL_RETURN (-1);
- return 0;
-# else /* ACE_LACKS_RENAME */
- ACE_UNUSED_ARG (flags);
- ACE_OSCALL_RETURN (::rename (old_name, new_name), int, -1);
-# endif /* ACE_LACKS_RENAME */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::rename (const wchar_t *old_name,
- const wchar_t *new_name,
- int flags)
-{
-# if defined (ACE_LACKS_RENAME)
- ACE_UNUSED_ARG (old_name);
- ACE_UNUSED_ARG (new_name);
- ACE_UNUSED_ARG (flags);
- ACE_NOTSUP_RETURN (-1);
-# elif defined (ACE_HAS_WINCE)
- ACE_UNUSED_ARG (flags);
- if (MoveFileW (old_name, new_name) != 0)
- ACE_FAIL_RETURN (-1);
- return 0;
-# elif defined (ACE_WIN32) && !defined (ACE_LACKS_WIN32_MOVEFILEEX)
- // NT4 (and up) provides a way to rename/move a file with similar semantics
- // to what's usually done on UNIX - if there's an existing file with
- // <new_name> it is removed before the file is renamed/moved. The
- // MOVEFILE_COPY_ALLOWED is specified to allow such a rename across drives.
- if (flags == -1)
- flags = MOVEFILE_COPY_ALLOWED | MOVEFILE_REPLACE_EXISTING;
- if (::MoveFileExW (old_name, new_name, flags) == 0)
- ACE_FAIL_RETURN (-1);
- return 0;
-# elif defined (ACE_WIN32)
- ACE_UNUSED_ARG (flags);
- ACE_OSCALL_RETURN (::_wrename (old_name, new_name), int, -1);
-# else /* ACE_LACKS_RENAME */
- ACE_Wide_To_Ascii nold_name (old_name);
- ACE_Wide_To_Ascii nnew_name (new_name);
- return ACE_OS::rename (nold_name.char_rep (), nnew_name.char_rep (), flags);
-# endif /* ACE_LACKS_RENAME */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE void
-ACE_OS::rewind (FILE *fp)
-{
-#if !defined (ACE_HAS_WINCE)
- ACE_OS_TRACE ("ACE_OS::rewind");
- ::rewind (fp);
-#else
- // This isn't perfect since it doesn't reset EOF, but it's probably
- // the closest we can get on WINCE.
- (void) fseek (fp, 0L, SEEK_SET);
-#endif /* ACE_HAS_WINCE */
-}
-
-ACE_INLINE char *
-ACE_OS::tempnam (const char *dir, const char *pfx)
-{
- ACE_OS_TRACE ("ACE_OS::tempnam");
-#if defined (ACE_LACKS_TEMPNAM)
- ACE_UNUSED_ARG (dir);
- ACE_UNUSED_ARG (pfx);
- ACE_NOTSUP_RETURN (0);
-#elif defined (ACE_HAS_NONCONST_TEMPNAM)
- ACE_OSCALL_RETURN (ACE_STD_NAMESPACE::tempnam (const_cast <char *> (dir), const_cast<char *> (pfx)), char *, 0);
-#else /* ACE_LACKS_TEMPNAM */
- ACE_OSCALL_RETURN (ACE_STD_NAMESPACE::tempnam (dir, pfx), char *, 0);
-#endif /* ACE_LACKS_TEMPNAM */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE wchar_t *
-ACE_OS::tempnam (const wchar_t *dir, const wchar_t *pfx)
-{
- ACE_OS_TRACE ("ACE_OS::tempnam");
-#if defined (ACE_LACKS_TEMPNAM)
- ACE_UNUSED_ARG (dir);
- ACE_UNUSED_ARG (pfx);
- ACE_NOTSUP_RETURN (0);
-#elif defined(ACE_WIN32)
-# if defined (ACE_HAS_NONCONST_TEMPNAM)
- ACE_OSCALL_RETURN (::_wtempnam (const_cast <wchar_t*> (dir), const_cast <wchar_t*> (pfx)), wchar_t *, 0);
-# else
- ACE_OSCALL_RETURN (::_wtempnam (dir, pfx), wchar_t *, 0);
-# endif /* __BORLANDC__ */
-#else /* ACE_LACKS_TEMPNAM */
- // No native wide-char support; convert to narrow and call the char* variant.
- char *ndir = ACE_Wide_To_Ascii (dir).char_rep ();
- char *npfx = ACE_Wide_To_Ascii (pfx).char_rep ();
- char *name = ACE_OS::tempnam (ndir, npfx);
- // ACE_OS::tempnam returns a pointer to a malloc()-allocated space.
- // Convert that string to wide-char and free() the original.
- wchar_t *wname = 0;
- if (name != 0)
- {
- size_t namelen = ACE_OS::strlen (name) + 1;
- wname = reinterpret_cast<wchar_t *>
- (ACE_OS::malloc (namelen * sizeof (wchar_t)));
- if (wname != 0)
- ACE_OS::strcpy (wname, ACE_Ascii_To_Wide (name).wchar_rep ());
- ACE_OS::free (name);
- }
- return wname;
-#endif /* ACE_LACKS_TEMPNAM */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE int
-ACE_OS::vasprintf (char **bufp, const char* format, va_list argptr)
-{
-#if defined (ACE_HAS_VASPRINTF)
- return ::vasprintf (bufp, format, argptr);
-#else
- return ACE_OS::vasprintf_emulation (bufp, format, argptr);
-#endif /* ACE_HAS_VASPRINTF */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::vasprintf (wchar_t **bufp, const wchar_t* format, va_list argptr)
-{
-#if defined (ACE_HAS_VASWPRINTF)
- return ::vaswprintf (bufp, format, argptr);
-#else
- return ACE_OS::vaswprintf_emulation (bufp, format, argptr);
-#endif /* ACE_HAS_VASWPRINTF */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE int
-ACE_OS::vprintf (const char *format, va_list argptr)
-{
- return ::vprintf (format, argptr);
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::vprintf (const wchar_t *format, va_list argptr)
-{
-#if defined (ACE_HAS_VWPRINTF)
- return ::vwprintf (format, argptr);
-#else
- ACE_UNUSED_ARG (format);
- ACE_UNUSED_ARG (argptr);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_VWPRINTF */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE int
-ACE_OS::vfprintf (FILE *fp, const char *format, va_list argptr)
-{
- return ACE_STD_NAMESPACE::vfprintf (fp, format, argptr);
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::vfprintf (FILE *fp, const wchar_t *format, va_list argptr)
-{
-#if defined (ACE_HAS_VFWPRINTF)
- return ::vfwprintf (fp, format, argptr);
-#else
- ACE_UNUSED_ARG (fp);
- ACE_UNUSED_ARG (format);
- ACE_UNUSED_ARG (argptr);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_VFWPRINTF */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE int
-ACE_OS::vsprintf (char *buffer, const char *format, va_list argptr)
-{
- return ::vsprintf (buffer, format, argptr);
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::vsprintf (wchar_t *buffer, const wchar_t *format, va_list argptr)
-{
-# if (defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) >= 500) || \
- (defined (sun) && !(defined(_XOPEN_SOURCE) && (_XOPEN_VERSION-0==4))) || \
- defined (ACE_HAS_DINKUM_STL) || defined (__DMC__) || \
- defined (ACE_HAS_VSWPRINTF) || defined (ACE_WIN32_VC9) || \
- (defined (ACE_WIN32_VC8) && !defined (ACE_HAS_WINCE) && \
- _MSC_FULL_VER > 140050000)
-
- // The XPG4/UNIX98/C99 signature of the wide-char sprintf has a
- // maxlen argument. Since this method doesn't supply one, pass in
- // a length that works (ULONG_MAX doesn't on all platform since some check
- // to see if the operation will remain in bounds). If this isn't ok, use
- // ACE_OS::snprintf().
- return vswprintf (buffer, 4096, format, argptr);
-
-# elif defined (ACE_WIN32)
- // Windows has vswprintf, but the pre-VC8 signature is from the older
- // ISO C standard. Also see ACE_OS::snprintf() for more info on this.
-
- return vswprintf (buffer, format, argptr);
-
-# else
- ACE_UNUSED_ARG (buffer);
- ACE_UNUSED_ARG (format);
- ACE_UNUSED_ARG (argptr);
- ACE_NOTSUP_RETURN (-1);
-
-# endif /* XPG5 || ACE_HAS_DINKUM_STL */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE int
-ACE_OS::vsnprintf (char *buffer, size_t maxlen, const char *format, va_list ap)
-{
-#if !defined (ACE_LACKS_VSNPRINTF)
- int result;
-# if 0 /* defined (ACE_HAS_TR24731_2005_CRT) */
- // _vsnprintf_s() doesn't report the length needed when it truncates. This
- // info is needed and relied on by others things in ACE+TAO, so don't use
- // this. There's adequate protection via the maxlen.
- result = _vsnprintf_s (buffer, maxlen, _TRUNCATE, format, ap);
-# elif !defined (ACE_WIN32)
- result = ::vsnprintf (buffer, maxlen, format, ap);
-# else
- result = ::_vsnprintf (buffer, maxlen, format, ap);
-
- // Win32 doesn't regard a full buffer with no 0-terminate as an overrun.
- if (result == static_cast<int> (maxlen))
- buffer[maxlen-1] = '\0';
-
- // Win32 doesn't 0-terminate the string if it overruns maxlen.
- if (result == -1)
- buffer[maxlen-1] = '\0';
-# endif
- // In out-of-range conditions, C99 defines vsnprintf() to return the number
- // of characters that would have been written if enough space was available.
- // Earlier variants of the vsnprintf() (e.g. UNIX98) defined it to return
- // -1. This method follows the C99 standard, but needs to guess at the
- // value; uses maxlen + 1.
- if (result == -1)
- {
- result = static_cast <int> (maxlen + 1);
- }
-
- return result;
-#elif defined (ACE_HAS_TRIO)
- return trio_vsnprintf (buffer, maxlen, format, ap);
-#else
- ACE_UNUSED_ARG (buffer);
- ACE_UNUSED_ARG (maxlen);
- ACE_UNUSED_ARG (format);
- ACE_UNUSED_ARG (ap);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_LACKS_VSNPRINTF */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::vsnprintf (wchar_t *buffer, size_t maxlen, const wchar_t *format, va_list ap)
-{
-# if (defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) >= 500) || \
- (defined (sun) && !(defined(_XOPEN_SOURCE) && (_XOPEN_VERSION-0==4))) || \
- (defined (ACE_HAS_DINKUM_STL) || defined (__DMC__)) || \
- defined (ACE_HAS_VSWPRINTF) || \
- defined (ACE_WIN32)
-
- int result;
-
-# if defined (ACE_WIN32)
- // Microsoft's vswprintf() doesn't have the maxlen argument that
- // XPG4/UNIX98 define. They do, however, recommend use of _vsnwprintf()
- // as a substitute, which does have the same signature as the UNIX98 one.
- result = ::_vsnwprintf (buffer, maxlen, format, ap);
-
- // Win32 doesn't regard a full buffer with no 0-terminate as an overrun.
- if (result == static_cast<int> (maxlen))
- buffer[maxlen-1] = '\0';
-
- // Win32 doesn't 0-terminate the string if it overruns maxlen.
- if (result == -1)
- buffer[maxlen-1] = '\0';
-# else
- result = vswprintf (buffer, maxlen, format, ap);
-#endif
-
- // In out-of-range conditions, C99 defines vsnprintf() to return the number
- // of characters that would have been written if enough space was available.
- // Earlier variants of the vsnprintf() (e.g. UNIX98) defined it to return
- // -1. This method follows the C99 standard, but needs to guess at the
- // value; uses maxlen + 1.
- if (result == -1)
- {
- result = static_cast <int> (maxlen + 1);
- }
-
- return result;
-
-# else
-
- ACE_UNUSED_ARG (buffer);
- ACE_UNUSED_ARG (maxlen);
- ACE_UNUSED_ARG (format);
- ACE_UNUSED_ARG (ap);
- ACE_NOTSUP_RETURN (-1);
-
-# endif /* platforms with a variant of vswprintf */
-}
-#endif /* ACE_HAS_WCHAR */
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
-#if defined (ACE_WIN32)
-ACE_INLINE const ACE_TEXT_OSVERSIONINFO &
-ACE_OS::get_win32_versioninfo ()
-{
- return ACE_OS::win32_versioninfo_;
-}
-
-ACE_INLINE HINSTANCE
-ACE_OS::get_win32_resource_module ()
-{
- return ACE_OS::win32_resource_module_;
-}
-
-ACE_INLINE void
-ACE_OS::set_win32_resource_module (HINSTANCE instance)
-{
- ACE_OS::win32_resource_module_ = instance;
-}
-
-ACE_INLINE LPSECURITY_ATTRIBUTES
-ACE_OS::default_win32_security_attributes (LPSECURITY_ATTRIBUTES sa)
-{
-#if defined (ACE_DEFINES_DEFAULT_WIN32_SECURITY_ATTRIBUTES)
- if (sa == 0)
- {
- // @@ This is a good place to use pthread_once.
- static SECURITY_ATTRIBUTES default_sa;
- static SECURITY_DESCRIPTOR sd;
- InitializeSecurityDescriptor(&sd, SECURITY_DESCRIPTOR_REVISION);
- SetSecurityDescriptorDacl(&sd, TRUE, 0, FALSE);
- default_sa.nLength = sizeof(SECURITY_ATTRIBUTES);
- default_sa.lpSecurityDescriptor = &sd;
- default_sa.bInheritHandle = TRUE;
- sa = &default_sa;
- }
- return sa;
-#else /* !ACE_DEFINES_DEFAULT_WIN32_SECURITY_ATTRIBUTES */
- return sa;
-#endif /* ACE_DEFINES_DEFAULT_WIN32_SECURITY_ATTRIBUTES */
-}
-
-ACE_INLINE LPSECURITY_ATTRIBUTES
-ACE_OS::default_win32_security_attributes_r (LPSECURITY_ATTRIBUTES sa,
- LPSECURITY_ATTRIBUTES sa_buffer,
- SECURITY_DESCRIPTOR* sd_buffer)
-{
-#if defined (ACE_DEFINES_DEFAULT_WIN32_SECURITY_ATTRIBUTES)
- if (sa == 0)
- {
- if (sa_buffer != 0 && sd_buffer != 0)
- {
- InitializeSecurityDescriptor
- (sd_buffer, SECURITY_DESCRIPTOR_REVISION);
- SetSecurityDescriptorDacl (sd_buffer, TRUE, 0, FALSE);
- sa_buffer->nLength = sizeof(SECURITY_ATTRIBUTES);
- sa_buffer->lpSecurityDescriptor = sd_buffer;
- sa_buffer->bInheritHandle = TRUE;
- sa = sa_buffer;
- }
- }
- return sa;
-#else /* !ACE_DEFINES_DEFAULT_WIN32_SECURITY_ATTRIBUTES */
- ACE_UNUSED_ARG(sa_buffer);
- ACE_UNUSED_ARG(sd_buffer);
- return sa;
-#endif /* ACE_DEFINES_DEFAULT_WIN32_SECURITY_ATTRIBUTES */
-}
-
-#endif /* ACE_WIN32 */
-#endif
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_stdlib.h b/dep/include/ace/OS_NS_stdlib.h
deleted file mode 100644
index 696d5110eb2..00000000000
--- a/dep/include/ace/OS_NS_stdlib.h
+++ /dev/null
@@ -1,332 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_stdlib.h
- *
- * $Id: OS_NS_stdlib.h 81804 2008-05-29 16:12:07Z vzykov $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_STDLIB_H
-# define ACE_OS_NS_STDLIB_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_stdlib.h"
-#include /**/ "ace/ACE_export.h"
-
-#include "ace/Basic_Types.h" /* ACE_UINT64 and intptr_t in inl file */
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-# if defined (ACE_HAS_BROKEN_R_ROUTINES)
-# undef rand_r
-# endif /* ACE_HAS_BROKEN_R_ROUTINES */
-
-// We need this for MVS... as well as Linux, etc...
-// On Windows, we explicitly set this up as __cdecl so it's correct even
-// if building with another calling convention, such as __stdcall.
-#if defined (ACE_WIN32) && defined (_MSC_VER)
-extern "C" {
- typedef int (__cdecl *ACE_COMPARE_FUNC)(const void *, const void *);
-}
-#else
-extern "C" {
- typedef int (*ACE_COMPARE_FUNC)(const void *, const void *);
-}
-#endif /* ACE_WIN32 && _MSC_VER */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS {
-
- /** @name Non-standard functions
- *
- * These functions aren't in the standard.
- *
- */
- //@{
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void _exit (int status = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void abort (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int atexit (ACE_EXIT_HOOK func);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int atoi (const char *s);
-
-# if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- int atoi (const wchar_t *s);
-# endif /* ACE_HAS_WCHAR */
-
- // atop not in spec
-# if defined (atop)
-# undef atop
-# endif /* atop */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void *atop (const char *s);
-
-# if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- void *atop (const wchar_t *s);
-# endif /* ACE_HAS_WCHAR */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void *bsearch (const void *key,
- const void *base,
- size_t nel,
- size_t size,
- ACE_COMPARE_FUNC);
-
- extern ACE_Export
- void *calloc (size_t elements, size_t sizeof_elements);
-
- extern ACE_Export
- void exit (int status = 0);
-
- extern ACE_Export
- void free (void *);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- char *getenv (const char *symbol);
-
-# if defined (ACE_HAS_WCHAR) && defined (ACE_WIN32)
- ACE_NAMESPACE_INLINE_FUNCTION
- wchar_t *getenv (const wchar_t *symbol);
-# endif /* ACE_HAS_WCHAR && ACE_WIN32 */
-
- // not in spec
- extern ACE_Export
- ACE_TCHAR *getenvstrings (void);
-
- // itoa not in spec
- /// Converts an integer to a string.
- ACE_NAMESPACE_INLINE_FUNCTION
- char *itoa (int value, char *string, int radix);
-
-#if defined (ACE_HAS_WCHAR)
- /// Converts an integer to a string.
- ACE_NAMESPACE_INLINE_FUNCTION
- wchar_t *itoa (int value, wchar_t *string, int radix);
-#endif /* ACE_HAS_WCHAR */
-
-#if !defined (ACE_HAS_ITOA)
- /// Emulated itoa - Converts an integer to a string.
- extern ACE_Export
- char *itoa_emulation (int value, char *string, int radix);
-#endif /* !ACE_HAS_ITOA */
-
-#if defined (ACE_HAS_WCHAR) && defined (ACE_LACKS_ITOW)
- /// Emulated itow - Converts an integer to a string.
- extern ACE_Export
- wchar_t *itow_emulation (int value, wchar_t *string, int radix);
-#endif /* ACE_HAS_WCHAR && ACE_LACKS_ITOW */
-
- extern ACE_Export
- void *malloc (size_t);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_HANDLE mkstemp (char *s);
-
-# if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_HANDLE mkstemp (wchar_t *s);
-# endif /* ACE_HAS_WCHAR */
-
-#if defined (ACE_LACKS_MKSTEMP)
- extern ACE_Export
- ACE_HANDLE mkstemp_emulation (ACE_TCHAR * s);
-#endif /* ACE_LACKS_MKSTEMP */
-
-#if !defined (ACE_LACKS_MKTEMP)
- ACE_NAMESPACE_INLINE_FUNCTION
- char *mktemp (char *s);
-
-# if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- wchar_t *mktemp (wchar_t *s);
-# endif /* ACE_HAS_WCHAR */
-#else
- extern ACE_Export
- ACE_TCHAR *mktemp (ACE_TCHAR *s);
-#endif /* !ACE_LACKS_MSTEMP */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int putenv (const char *string);
-
-#if defined (ACE_HAS_WCHAR) && defined (ACE_WIN32)
- // Windows is the only platform that supports a wchar_t environment.
- // Since other platforms make @a string part of the environment, it's
- // a certain memory leak to copy and transform wchar_t to char for
- // emulating this, so it's not attempted.
- ACE_NAMESPACE_INLINE_FUNCTION
- int putenv (const wchar_t *string);
-#endif /* ACE_HAS_WCHAR && ACE_WIN32 */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void qsort (void *base,
- size_t nel,
- size_t width,
- ACE_COMPARE_FUNC);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int rand (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int rand_r (ACE_RANDR_TYPE &seed);
-
- extern ACE_Export
- void *realloc (void *, size_t);
-
-#if !defined (ACE_HAS_WINCE)
-# if !defined (ACE_LACKS_REALPATH)
- ACE_NAMESPACE_INLINE_FUNCTION
-# else
- extern ACE_Export
-# endif /* !ACE_LACKS_REALPATH */
- char *realpath (const char *file_name, char *resolved_name);
-
-# if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- wchar_t *realpath (const wchar_t *file_name, wchar_t *resolved_name);
-# endif /* ACE_HAS_WCHAR */
-#endif /* ACE_HAS_WINCE */
-
- // exit_hook and set_exit_hook not in spec
- /// Function that is called by <ACE_OS::exit>, if non-null.
- extern ACE_Export ACE_EXIT_HOOK exit_hook_;
-
- /// For use by ACE_Object_Manager only, to register its exit hook..
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_EXIT_HOOK set_exit_hook (ACE_EXIT_HOOK hook);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void srand (u_int seed);
-
- // not in spec
- extern ACE_Export
- ACE_TCHAR *strenvdup (const ACE_TCHAR *str);
-
-#if !defined (ACE_LACKS_STRTOD)
- /// Converts a string to a double value (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- double strtod (const char *s, char **endptr);
-#endif /* !ACE_LACKS_STRTOD */
-
-#if defined (ACE_HAS_WCHAR) && !defined (ACE_LACKS_WCSTOD)
- /// Converts a string to a double value (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- double strtod (const wchar_t *s, wchar_t **endptr);
-#endif /* ACE_HAS_WCHAR && !ACE_LACKS_WCSTOD */
-
- /// Converts a string to a long value (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- long strtol (const char *s, char **ptr, int base);
-
-#if defined (ACE_HAS_WCHAR) && !defined (ACE_LACKS_WCSTOL)
- /// Converts a string to a long value (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- long strtol (const wchar_t *s, wchar_t **ptr, int base);
-#endif /* ACE_HAS_WCHAR && !ACE_LACKS_WCSTOL */
-
-#if defined (ACE_LACKS_STRTOL)
- extern ACE_Export
- long strtol_emulation (const char *nptr, char **endptr, int base);
-#endif /* ACE_LACKS_STRTOL */
-
- /// Converts a string to an unsigned long value (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- unsigned long strtoul (const char *s, char **ptr, int base);
-
-#if defined (ACE_HAS_WCHAR) && !defined (ACE_LACKS_WCSTOUL)
- /// Converts a string to an unsigned long value (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- unsigned long strtoul (const wchar_t *s, wchar_t **ptr, int base);
-#endif /* ACE_HAS_WCHAR && !ACE_LACKS_WCSTOUL */
-
-#if defined (ACE_LACKS_STRTOUL)
- extern ACE_Export
- unsigned long strtoul_emulation (const char *nptr,
- char **endptr,
- int base);
-#endif /* ACE_LACKS_STRTOUL */
-
- /// Converts a string to a 64 bit int value (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_UINT64 strtoull (const char *s, char **ptr, int base);
-
-#if defined (ACE_HAS_WCHAR) && !defined (ACE_LACKS_WCSTOULL)
- /// Converts a string to a 64 bit int value (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_UINT64 strtoull (const wchar_t *s, wchar_t **ptr, int base);
-#endif /* ACE_HAS_WCHAR && !ACE_LACKS_WCSTOUL */
-
-#if defined (ACE_LACKS_STRTOULL)
- extern ACE_Export
- ACE_UINT64 strtoull_emulation (const char *nptr,
- char **endptr,
- int base);
-#endif /* ACE_LACKS_STRTOULL */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int system (const ACE_TCHAR *s);
-
- /// Get the name of the current program
- ///
- /// Originally from NetBSD, now found in *BSD, Cygwin, Darwin, etc.
- ACE_NAMESPACE_INLINE_FUNCTION
- const char *getprogname ();
-
-#if !defined (ACE_HAS_GETPROGNAME)
- extern ACE_Export
- const char *getprogname_emulation ();
-#endif /* !ACE_HAS_GETPROGNAME */
-
- /// Set the name of the current program
- ///
- /// Originally from NetBSD, now found in *BSD, Cygwin, Darwin, etc.
- ACE_NAMESPACE_INLINE_FUNCTION
- void setprogname (const char* name);
-
-#if !defined (ACE_HAS_SETPROGNAME)
- extern ACE_Export
- void setprogname_emulation (const char* name);
-#endif /* !ACE_HAS_SETPROGNAME */
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_stdlib.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_STDLIB_H */
-
diff --git a/dep/include/ace/OS_NS_stdlib.inl b/dep/include/ace/OS_NS_stdlib.inl
deleted file mode 100644
index e32929a353b..00000000000
--- a/dep/include/ace/OS_NS_stdlib.inl
+++ /dev/null
@@ -1,556 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_stdlib.inl 82643 2008-08-19 14:02:12Z johnnyw $
-
-#include "ace/config-all.h" /* Need ACE_TRACE */
-#include "ace/Object_Manager_Base.h"
-#include "ace/OS_NS_string.h"
-#include "ace/Global_Macros.h"
-#include "ace/os_include/os_errno.h"
-#include "ace/os_include/os_search.h"
-
-#if defined (ACE_WCHAR_IN_STD_NAMESPACE)
-# define ACE_WCHAR_STD_NAMESPACE std
-#else
-# define ACE_WCHAR_STD_NAMESPACE ACE_STD_NAMESPACE
-#endif /* ACE_WCHAR_IN_STD_NAMESPACE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Doesn't need a macro since it *never* returns!
-
-ACE_INLINE void
-ACE_OS::_exit (int status)
-{
- ACE_OS_TRACE ("ACE_OS::_exit");
-#if defined (ACE_VXWORKS)
- ::exit (status);
-#elif !defined (ACE_HAS_WINCE)
- ::_exit (status);
-#else
- ::TerminateProcess (::GetCurrentProcess (), status);
-#endif /* ACE_VXWORKS */
-}
-
-ACE_INLINE void
-ACE_OS::abort (void)
-{
-#if !defined (ACE_HAS_WINCE)
- ::abort ();
-#else
- // @@ CE doesn't support abort?
- exit (1);
-#endif /* !ACE_HAS_WINCE */
-}
-
-ACE_INLINE int
-ACE_OS::atexit (ACE_EXIT_HOOK func)
-{
- return ACE_OS_Object_Manager::instance ()->at_exit (func);
-}
-
-ACE_INLINE int
-ACE_OS::atoi (const char *s)
-{
- ACE_OSCALL_RETURN (::atoi (s), int, -1);
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::atoi (const wchar_t *s)
-{
-#if defined (ACE_WIN32)
- ACE_OSCALL_RETURN (::_wtoi (s), int, -1);
-#else /* ACE_WIN32 */
- return ACE_OS::atoi (ACE_Wide_To_Ascii (s).char_rep ());
-#endif /* ACE_WIN32 */
-}
-#endif /* ACE_HAS_WCHAR */
-
-#if defined (atop)
-# undef atop
-#endif /* atop */
-
-ACE_INLINE void *
-ACE_OS::atop (const char *s)
-{
- ACE_TRACE ("ACE_OS::atop");
-#if defined (ACE_WIN64)
- intptr_t ip = ::_atoi64 (s);
-#elif defined (ACE_OPENVMS)
-# if !defined (__INITIAL_POINTER_SIZE) || (__INITIAL_POINTER_SIZE < 64)
- int ip = ::atoi (s);
-# else
- intptr_t ip = ::atoi (s);
-# endif
-#else
- intptr_t ip = ::atoi (s);
-#endif /* ACE_WIN64 */
- void * p = reinterpret_cast<void *> (ip);
- return p;
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE void *
-ACE_OS::atop (const wchar_t *s)
-{
-# if defined (ACE_WIN64)
- intptr_t ip = ::_wtoi64 (s);
-# elif defined (ACE_OPENVMS)
-# if !defined (__INITIAL_POINTER_SIZE) || (__INITIAL_POINTER_SIZE < 64)
- int ip = ACE_OS::atoi (s);
-# else
- intptr_t ip = ACE_OS::atoi (s);
-# endif
-# else
- intptr_t ip = ACE_OS::atoi (s);
-# endif /* ACE_WIN64 */
- void * p = reinterpret_cast<void *> (ip);
- return p;
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE void *
-ACE_OS::bsearch (const void *key,
- const void *base,
- size_t nel,
- size_t size,
- ACE_COMPARE_FUNC compar)
-{
-#if !defined (ACE_LACKS_BSEARCH)
- return ::bsearch (key, base, nel, size, compar);
-#else
- ACE_UNUSED_ARG (key);
- ACE_UNUSED_ARG (base);
- ACE_UNUSED_ARG (nel);
- ACE_UNUSED_ARG (size);
- ACE_UNUSED_ARG (compar);
- ACE_NOTSUP_RETURN (0);
-#endif /* ACE_LACKS_BSEARCH */
-}
-
-ACE_INLINE char *
-ACE_OS::getenv (const char *symbol)
-{
- ACE_OS_TRACE ("ACE_OS::getenv");
-#if defined (ACE_LACKS_ENV)
- ACE_UNUSED_ARG (symbol);
- ACE_NOTSUP_RETURN (0);
-#else /* ACE_LACKS_ENV */
- ACE_OSCALL_RETURN (::getenv (symbol), char *, 0);
-#endif /* ACE_LACKS_ENV */
-}
-
-#if defined (ACE_HAS_WCHAR) && defined (ACE_WIN32)
-ACE_INLINE wchar_t *
-ACE_OS::getenv (const wchar_t *symbol)
-{
-#if defined (ACE_LACKS_ENV)
- ACE_UNUSED_ARG (symbol);
- ACE_NOTSUP_RETURN (0);
-#else
- ACE_OSCALL_RETURN (::_wgetenv (symbol), wchar_t *, 0);
-#endif /* ACE_LACKS_ENV */
-}
-#endif /* ACE_HAS_WCHAR && ACE_WIN32 */
-
-ACE_INLINE char *
-ACE_OS::itoa (int value, char *string, int radix)
-{
-#if !defined (ACE_HAS_ITOA)
- return ACE_OS::itoa_emulation (value, string, radix);
-#elif defined (ACE_ITOA_EQUIVALENT)
- return ACE_ITOA_EQUIVALENT (value, string, radix);
-#else /* !ACE_HAS_ITOA */
- return ::itoa (value, string, radix);
-#endif /* !ACE_HAS_ITOA */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE wchar_t *
-ACE_OS::itoa (int value, wchar_t *string, int radix)
-{
-#if defined (ACE_LACKS_ITOW)
- return ACE_OS::itow_emulation (value, string, radix);
-#else /* ACE_LACKS_ITOW */
- return ::_itow (value, string, radix);
-#endif /* ACE_LACKS_ITOW */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE ACE_HANDLE
-ACE_OS::mkstemp (char *s)
-{
-#if !defined (ACE_LACKS_MKSTEMP)
- return ::mkstemp (s);
-#elif defined (ACE_USES_WCHAR)
- // For wide-char filesystems, we must convert the narrow-char input to
- // a wide-char string for mkstemp_emulation(), then convert the name
- // back to narrow-char for the caller.
- ACE_Ascii_To_Wide wide_s (s);
- const ACE_HANDLE fh = ACE_OS::mkstemp_emulation (wide_s.wchar_rep ());
- if (fh != ACE_INVALID_HANDLE)
- {
- ACE_Wide_To_Ascii narrow_s (wide_s.wchar_rep ());
- ACE_OS::strcpy (s, narrow_s.char_rep ());
- }
- return fh;
-#else
- return ACE_OS::mkstemp_emulation (s);
-#endif /* !ACE_LACKS_MKSTEMP */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE ACE_HANDLE
-ACE_OS::mkstemp (wchar_t *s)
-{
-# if !defined (ACE_LACKS_MKSTEMP)
- // For wide-char filesystems, we must convert the wide-char input to
- // a narrow-char string for mkstemp(), then convert the name
- // back to wide-char for the caller.
- ACE_Wide_To_Ascii narrow_s (s);
- const ACE_HANDLE fh = ::mkstemp (narrow_s.char_rep ());
- if (fh != ACE_INVALID_HANDLE)
- {
- ACE_Ascii_To_Wide wide_s (narrow_s.char_rep ());
- ACE_OS::strcpy (s, wide_s.wchar_rep ());
- }
- return fh;
-# elif defined (ACE_USES_WCHAR)
- return ACE_OS::mkstemp_emulation (s);
-# else
- // For wide-char filesystems, we must convert the wide-char input to
- // a narrow-char string for mkstemp_emulation(), then convert the name
- // back to wide-char for the caller.
- ACE_Wide_To_Ascii narrow_s (s);
- const ACE_HANDLE fh = ACE_OS::mkstemp_emulation (narrow_s.char_rep ());
- if (fh != ACE_INVALID_HANDLE)
- {
- ACE_Ascii_To_Wide wide_s (narrow_s.char_rep ());
- ACE_OS::strcpy (s, wide_s.wchar_rep ());
- }
- return fh;
-# endif /* !ACE_LACKS_MKSTEMP */
-}
-#endif /* ACE_HAS_WCHAR */
-
-#if !defined (ACE_LACKS_MKTEMP)
-ACE_INLINE char *
-ACE_OS::mktemp (char *s)
-{
-# if defined (ACE_WIN32)
- return ::_mktemp (s);
-# else /* ACE_WIN32 */
- return ::mktemp (s);
-# endif /* ACE_WIN32 */
-}
-
-# if defined (ACE_HAS_WCHAR)
-ACE_INLINE wchar_t *
-ACE_OS::mktemp (wchar_t *s)
-{
-# if defined (ACE_WIN32)
- return ::_wmktemp (s);
-# else
- // For narrow-char filesystems, we must convert the wide-char input to
- // a narrow-char string for mktemp (), then convert the name back to
- // wide-char for the caller.
- ACE_Wide_To_Ascii narrow_s (s);
- if (::mktemp (narrow_s.char_rep ()) == 0)
- return 0;
- ACE_Ascii_To_Wide wide_s (narrow_s.char_rep ());
- ACE_OS::strcpy (s, wide_s.wchar_rep ());
- return s;
-# endif
-}
-# endif /* ACE_HAS_WCHAR */
-
-#endif /* !ACE_LACKS_MKTEMP */
-
-#if defined (INTEGRITY)
-extern "C" {
- int putenv (char *string);
-}
-#endif
-
-ACE_INLINE int
-ACE_OS::putenv (const char *string)
-{
- ACE_OS_TRACE ("ACE_OS::putenv");
-#if defined (ACE_HAS_WINCE)
- // WinCE don't have the concept of environment variables.
- ACE_UNUSED_ARG (string);
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_LACKS_PUTENV) && defined (ACE_HAS_SETENV)
- int result = 0;
- char *sp = ACE_OS::strchr (const_cast <char *> (string), '=');
- if (sp)
- {
- char *stmp = ACE_OS::strdup (string);
- if (stmp)
- {
- stmp[sp - string] = '\0';
- ACE_OSCALL (::setenv (stmp, sp+sizeof (char), 1), int, -1, result);
- ACE_OS::free (stmp);
- }
- else
- {
- errno = ENOMEM;
- result = -1;
- }
- }
- else
- ACE_OSCALL (::setenv (string, "", 1), int, -1, result);
-
- return result;
-#elif defined (ACE_LACKS_ENV) || defined (ACE_LACKS_PUTENV)
- ACE_UNUSED_ARG (string);
- ACE_NOTSUP_RETURN (0);
-#else /* ! ACE_HAS_WINCE */
- ACE_OSCALL_RETURN (ACE_STD_NAMESPACE::putenv (const_cast <char *> (string)), int, -1);
-#endif /* ACE_HAS_WINCE */
-}
-
-#if defined (ACE_HAS_WCHAR) && defined (ACE_WIN32)
-ACE_INLINE int
-ACE_OS::putenv (const wchar_t *string)
-{
- ACE_OS_TRACE ("ACE_OS::putenv");
-#if defined (ACE_HAS_WINCE)
- // WinCE doesn't have the concept of environment variables.
- ACE_UNUSED_ARG (string);
- ACE_NOTSUP_RETURN (-1);
-#else
- ACE_OSCALL_RETURN (::_wputenv (string), int, -1);
-#endif /* ACE_HAS_WINCE */
-}
-#endif /* ACE_HAS_WCHAR && ACE_WIN32 */
-
-ACE_INLINE void
-ACE_OS::qsort (void *base,
- size_t nel,
- size_t width,
- ACE_COMPARE_FUNC compar)
-{
-#if !defined (ACE_LACKS_QSORT)
- ::qsort (base, nel, width, compar);
-#else
- ACE_UNUSED_ARG (base);
- ACE_UNUSED_ARG (nel);
- ACE_UNUSED_ARG (width);
- ACE_UNUSED_ARG (compar);
-#endif /* !ACE_LACKS_QSORT */
-}
-
-ACE_INLINE int
-ACE_OS::rand (void)
-{
- ACE_OS_TRACE ("ACE_OS::rand");
- ACE_OSCALL_RETURN (::rand (), int, -1);
-}
-
-#if !defined (ACE_WIN32)
-
-ACE_INLINE int
-ACE_OS::rand_r (ACE_RANDR_TYPE &seed)
-{
- ACE_OS_TRACE ("ACE_OS::rand_r");
-# if defined (ACE_HAS_REENTRANT_FUNCTIONS) && \
- !defined (ACE_LACKS_RAND_REENTRANT_FUNCTIONS)
-# if defined (DIGITAL_UNIX)
- ACE_OSCALL_RETURN (::_Prand_r (&seed), int, -1);
-# elif defined (ACE_HAS_BROKEN_RANDR)
- ACE_OSCALL_RETURN (::rand_r (seed), int, -1);
-# else
- ACE_OSCALL_RETURN (::rand_r (&seed), int, -1);
-# endif /* DIGITAL_UNIX */
-# else
- ACE_UNUSED_ARG (seed);
- ACE_OSCALL_RETURN (::rand (), int, -1);
-# endif /* ACE_HAS_REENTRANT_FUNCTIONS */
-}
-
-#else /* ACE_WIN32 */
-
-ACE_INLINE int
-ACE_OS::rand_r (ACE_RANDR_TYPE& seed)
-{
- ACE_OS_TRACE ("ACE_OS::rand_r");
-
- long new_seed = (long) (seed);
- if (new_seed == 0)
- new_seed = 0x12345987;
- long temp = new_seed / 127773;
- new_seed = 16807 * (new_seed - temp * 127773) - 2836 * temp;
- if (new_seed < 0)
- new_seed += 2147483647;
- (seed) = (unsigned int)new_seed;
- return (int) (new_seed & RAND_MAX);
-}
-
-#endif /* !ACE_WIN32 */
-
-#if !defined (ACE_HAS_WINCE)
-# if !defined (ACE_LACKS_REALPATH)
-ACE_INLINE char *
-ACE_OS::realpath (const char *file_name,
- char *resolved_name)
-{
-# if defined (ACE_WIN32)
- return ::_fullpath (resolved_name, file_name, PATH_MAX);
-# else /* ACE_WIN32 */
- return ::realpath (file_name, resolved_name);
-# endif /* ! ACE_WIN32 */
-}
-# endif /* !ACE_LACKS_REALPATH */
-
-# if defined (ACE_HAS_WCHAR)
-ACE_INLINE wchar_t *
-ACE_OS::realpath (const wchar_t *file_name,
- wchar_t *resolved_name)
-{
-# if defined (ACE_WIN32)
- return ::_wfullpath (resolved_name, file_name, PATH_MAX);
-# else /* ACE_WIN32 */
- ACE_Wide_To_Ascii n_file_name (file_name);
- char n_resolved[PATH_MAX];
- if (0 != ACE_OS::realpath (n_file_name.char_rep (), n_resolved))
- {
- ACE_Ascii_To_Wide w_resolved (n_resolved);
- ACE_OS::strcpy (resolved_name, w_resolved.wchar_rep ());
- return resolved_name;
- }
- return 0;
-# endif /* ! ACE_WIN32 */
-}
-# endif /* ACE_HAS_WCHAR */
-#endif /* ACE_HAS_WINCE */
-
-ACE_INLINE ACE_EXIT_HOOK
-ACE_OS::set_exit_hook (ACE_EXIT_HOOK exit_hook)
-{
- ACE_EXIT_HOOK old_hook = exit_hook_;
- exit_hook_ = exit_hook;
- return old_hook;
-}
-
-ACE_INLINE void
-ACE_OS::srand (u_int seed)
-{
- ACE_OS_TRACE ("ACE_OS::srand");
- ::srand (seed);
-}
-
-#if !defined (ACE_LACKS_STRTOD)
-ACE_INLINE double
-ACE_OS::strtod (const char *s, char **endptr)
-{
- return ::strtod (s, endptr);
-}
-#endif /* !ACE_LACKS_STRTOD */
-
-#if defined (ACE_HAS_WCHAR) && !defined (ACE_LACKS_WCSTOD)
-ACE_INLINE double
-ACE_OS::strtod (const wchar_t *s, wchar_t **endptr)
-{
- return ACE_WCHAR_STD_NAMESPACE::wcstod (s, endptr);
-}
-#endif /* ACE_HAS_WCHAR && !ACE_LACKS_WCSTOD */
-
-ACE_INLINE long
-ACE_OS::strtol (const char *s, char **ptr, int base)
-{
-#if defined (ACE_LACKS_STRTOL)
- return ACE_OS::strtol_emulation (s, ptr, base);
-#else /* ACE_LACKS_STRTOL */
- return ::strtol (s, ptr, base);
-#endif /* ACE_LACKS_STRTOL */
-}
-
-#if defined (ACE_HAS_WCHAR) && !defined (ACE_LACKS_WCSTOL)
-ACE_INLINE long
-ACE_OS::strtol (const wchar_t *s, wchar_t **ptr, int base)
-{
- return ACE_WCHAR_STD_NAMESPACE::wcstol (s, ptr, base);
-}
-#endif /* ACE_HAS_WCHAR && !ACE_LACKS_WCSTOL */
-
-ACE_INLINE unsigned long
-ACE_OS::strtoul (const char *s, char **ptr, int base)
-{
-#if defined (ACE_LACKS_STRTOUL)
- return ACE_OS::strtoul_emulation (s, ptr, base);
-#else /* ACE_LACKS_STRTOUL */
- return ::strtoul (s, ptr, base);
-#endif /* ACE_LACKS_STRTOUL */
-}
-
-#if defined (ACE_HAS_WCHAR) && !defined (ACE_LACKS_WCSTOUL)
-ACE_INLINE unsigned long
-ACE_OS::strtoul (const wchar_t *s, wchar_t **ptr, int base)
-{
- return ACE_WCHAR_STD_NAMESPACE::wcstoul (s, ptr, base);
-}
-#endif /* ACE_HAS_WCHAR && !ACE_LACKS_WCSTOUL */
-
-ACE_INLINE ACE_UINT64
-ACE_OS::strtoull (const char *s, char **ptr, int base)
-{
-#if defined (ACE_LACKS_STRTOULL)
- return ACE_OS::strtoull_emulation (s, ptr, base);
-#elif defined (ACE_STRTOULL_EQUIVALENT)
- return ACE_STRTOULL_EQUIVALENT (s, ptr, base);
-#else
- return ::strtoull (s, ptr, base);
-#endif /* ACE_LACKS_STRTOULL */
-}
-
-#if defined (ACE_HAS_WCHAR) && !defined (ACE_LACKS_WCSTOULL)
-ACE_INLINE ACE_UINT64
-ACE_OS::strtoull (const wchar_t *s, wchar_t **ptr, int base)
-{
-#if defined (ACE_WCSTOOULL_EQUIVALENT)
- return ACE_WCSTOOULL_EQUIVALENT (s, ptr, base);
-#else
- return ACE_WCHAR_STD_NAMESPACE::wcstoull (s, ptr, base);
-#endif /* ACE_WIN32 */
-}
-#endif /* ACE_HAS_WCHAR && !ACE_LACKS_WCSTOULL */
-
-ACE_INLINE int
-ACE_OS::system (const ACE_TCHAR *s)
-{
- // ACE_OS_TRACE ("ACE_OS::system");
-#if defined (ACE_LACKS_SYSTEM)
- ACE_UNUSED_ARG (s);
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_WIN32) && defined (ACE_USES_WCHAR)
- ACE_OSCALL_RETURN (::_wsystem (s), int, -1);
-#elif defined (ACE_TANDEM_T1248_PTHREADS)
- ACE_OSCALL_RETURN (::spt_system (s), int, -1);
-#else
- ACE_OSCALL_RETURN (::system (ACE_TEXT_ALWAYS_CHAR (s)), int, -1);
-#endif /* ACE_LACKS_SYSTEM */
-}
-
-ACE_INLINE const char*
-ACE_OS::getprogname ()
-{
-#if defined (ACE_HAS_GETPROGNAME)
- return ::getprogname ();
-#else
- return ACE_OS::getprogname_emulation ();
-#endif /* ACE_HAS_GETPROGNAME */
-}
-
-ACE_INLINE void
-ACE_OS::setprogname (const char* name)
-{
-#if defined (ACE_HAS_SETPROGNAME)
- ::setprogname (name);
-#else
- ACE_OS::setprogname_emulation (name);
-#endif /* ACE_HAS_SETPROGNAME */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_string.h b/dep/include/ace/OS_NS_string.h
deleted file mode 100644
index d75fbce6ece..00000000000
--- a/dep/include/ace/OS_NS_string.h
+++ /dev/null
@@ -1,472 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_string.h
- *
- * $Id: OS_NS_string.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_STRING_H
-#define ACE_OS_NS_STRING_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-lite.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Basic_Types.h" // to get ACE_WCHAR_T,
- // should be in os_stddef.h or not used like this.
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS {
-
- /** @name Functions from <cstring>
- *
- * Included are the functions defined in <cstring> and their <cwchar>
- * equivalents.
- *
- * @todo To be complete, we should add strcoll, and strxfrm.
- */
- //@{
-
- /// Finds characters in a buffer (const void version).
- ACE_NAMESPACE_INLINE_FUNCTION
- const void *memchr (const void *s, int c, size_t len);
-
- /// Finds characters in a buffer (void version).
- ACE_NAMESPACE_INLINE_FUNCTION
- void *memchr (void *s, int c, size_t len);
-
-#if defined (ACE_LACKS_MEMCHR)
- /// Emulated memchr - Finds a character in a buffer.
- extern ACE_Export
- const void *memchr_emulation (const void *s, int c, size_t len);
-#endif /* ACE_LACKS_MEMCHR */
-
- /// Compares two buffers.
- ACE_NAMESPACE_INLINE_FUNCTION
- int memcmp (const void *t, const void *s, size_t len);
-
- /// Copies one buffer to another.
- ACE_NAMESPACE_INLINE_FUNCTION
- void *memcpy (void *t, const void *s, size_t len);
-
-#if defined (ACE_HAS_MEMCPY_LOOP_UNROLL)
-/*
- * Version of memcpy where the copy loop is unrolled.
- * On certain platforms this results in better performance.
- * This is determined and set via autoconf.
- */
- extern ACE_Export
- void *fast_memcpy (void *t, const void *s, size_t len);
-#endif
-
- /// Moves one buffer to another.
- ACE_NAMESPACE_INLINE_FUNCTION
- void *memmove (void *t, const void *s, size_t len);
-
- /// Fills a buffer with a character value.
- ACE_NAMESPACE_INLINE_FUNCTION
- void *memset (void *s, int c, size_t len);
-
- /// Appends a string to another string (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- char *strcat (char *s, const char *t);
-
-#if defined (ACE_HAS_WCHAR)
- /// Appends a string to another string (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- wchar_t *strcat (wchar_t *s, const wchar_t *t);
-#endif /* ACE_HAS_WCHAR */
-
- /// Finds the first occurance of a character in a string (const char
- /// version).
- ACE_NAMESPACE_INLINE_FUNCTION
- const char *strchr (const char *s, int c);
-
-#if defined (ACE_HAS_WCHAR)
- /// Finds the first occurance of a character in a string (const wchar_t
- /// version).
- ACE_NAMESPACE_INLINE_FUNCTION
- const wchar_t *strchr (const wchar_t *s, wchar_t c);
-#endif /* ACE_HAS_WCHAR */
-
- /// Finds the first occurance of a character in a string (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- char *strchr (char *s, int c);
-
-#if defined (ACE_HAS_WCHAR)
- /// Finds the first occurance of a character in a string (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- wchar_t *strchr (wchar_t *s, wchar_t c);
-#endif /* ACE_HAS_WCHAR */
-
- /// Compares two strings (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- int strcmp (const char *s, const char *t);
-
- /// Compares two strings (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- int strcmp (const ACE_WCHAR_T *s, const ACE_WCHAR_T *t);
-
- /// Copies a string (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- char *strcpy (char *s, const char *t);
-
-#if defined (ACE_HAS_WCHAR)
- /// Copies a string (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- wchar_t *strcpy (wchar_t *s, const wchar_t *t);
-#endif /* ACE_HAS_WCHAR */
-
- /// Searches for the first substring without any of the specified
- /// characters and returns the size of the substring (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- size_t strcspn (const char *s, const char *reject);
-
-#if defined (ACE_HAS_WCHAR)
- /// Searches for the first substring without any of the specified
- /// characters and returns the size of the substring (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- size_t strcspn (const wchar_t *s, const wchar_t *reject);
-#endif /* ACE_HAS_WCHAR */
-
- /// Returns a malloced duplicated string (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- char *strdup (const char *s);
-
-#if (defined (ACE_LACKS_STRDUP) && !defined(ACE_STRDUP_EQUIVALENT)) \
- || defined (ACE_HAS_STRDUP_EMULATION)
- extern ACE_Export
- char *strdup_emulation (const char *s);
-#endif
-
-#if defined (ACE_HAS_WCHAR)
- /// Returns a malloced duplicated string (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- wchar_t *strdup (const wchar_t *s);
-
-#if (defined (ACE_LACKS_WCSDUP) && !defined(ACE_WCSDUP_EQUIVALENT)) \
- || defined (ACE_HAS_WCSDUP_EMULATION)
- extern ACE_Export
- wchar_t *strdup_emulation (const wchar_t *s);
-#endif
-#endif /* ACE_HAS_WCHAR */
-
- /// Copies a string, but returns a pointer to the end of the
- /// copied region (char version).
- extern ACE_Export
- char *strecpy (char *des, const char *src);
-
-#if defined (ACE_HAS_WCHAR)
- /// Copies a string, but returns a pointer to the end of the
- /// copied region (wchar_t version).
- extern ACE_Export
- wchar_t *strecpy (wchar_t *s, const wchar_t *t);
-#endif /* ACE_HAS_WCHAR */
-
- /*
- ** Returns a system error message. If the supplied errnum is out of range,
- ** a string of the form "Unknown error %d" is used to format the string
- ** whose pointer is returned and errno is set to EINVAL.
- */
- extern ACE_Export
- char *strerror (int errnum);
-
-#if defined (ACE_LACKS_STRERROR)
- /// Emulated strerror - Returns a system error message.
- extern ACE_Export
- char *strerror_emulation (int errnum);
-#endif /* ACE_LACKS_STRERROR */
-
- /// Finds the length of a string (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- size_t strlen (const char *s);
-
- /// Finds the length of a string (ACE_WCHAR_T version).
- ACE_NAMESPACE_INLINE_FUNCTION
- size_t strlen (const ACE_WCHAR_T *s);
-
- /// Appends part of a string to another string (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- char *strncat (char *s, const char *t, size_t len);
-
- /// Appends part of a string to another string (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_WCHAR_T *strncat (ACE_WCHAR_T *s, const ACE_WCHAR_T *t, size_t len);
-
- /// Finds the first occurance of a character in an array (const char
- /// version).
- extern ACE_Export
- const char *strnchr (const char *s, int c, size_t len);
-
- /// Finds the first occurance of a character in an array (const ACE_WCHAR_T
- /// version).
- extern ACE_Export
- const ACE_WCHAR_T *strnchr (const ACE_WCHAR_T *s, ACE_WCHAR_T c, size_t len);
-
- /// Finds the first occurance of a character in an array (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- char *strnchr (char *s, int c, size_t len);
-
- /// Finds the first occurance of a character in an array (ACE_WCHAR_T version).
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_WCHAR_T *strnchr (ACE_WCHAR_T *s, ACE_WCHAR_T c, size_t len);
-
- /// Compares two arrays (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- int strncmp (const char *s, const char *t, size_t len);
-
- /// Compares two arrays (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- int strncmp (const ACE_WCHAR_T *s, const ACE_WCHAR_T *t, size_t len);
-
- /// Copies an array (char version)
- ACE_NAMESPACE_INLINE_FUNCTION
- char *strncpy (char *s, const char *t, size_t len);
-
- /// Copies an array (ACE_WCHAR_T version)
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_WCHAR_T *strncpy (ACE_WCHAR_T *s, const ACE_WCHAR_T *t, size_t len);
-
- /// Finds the length of a limited-length string (char version).
- /**
- * @param s The character string to find the length of.
- * @param maxlen The maximum number of characters that will be
- * scanned for the terminating nul character.
- *
- * @return The length of @arg s, if the terminating nul character
- * is located, else @arg maxlen.
- */
- ACE_NAMESPACE_INLINE_FUNCTION
- size_t strnlen (const char *s, size_t maxlen);
-
- /// Finds the length of a limited-length string (ACE_WCHAR_T version).
- /**
- * @param s The character string to find the length of.
- * @param maxlen The maximum number of characters that will be
- * scanned for the terminating nul character.
- *
- * @return The length of @arg s, if the terminating nul character
- * is located, else @arg maxlen.
- */
- ACE_NAMESPACE_INLINE_FUNCTION
- size_t strnlen (const ACE_WCHAR_T *s, size_t maxlen);
-
- /// Finds the first occurance of a substring in an array (const char
- /// version).
- extern ACE_Export
- const char *strnstr (const char *s, const char *t, size_t len);
-
- /// Finds the first occurance of a substring in an array (const wchar_t
- /// version).
- extern ACE_Export
- const ACE_WCHAR_T *strnstr (const ACE_WCHAR_T *s,
- const ACE_WCHAR_T *t,
- size_t len);
-
- /// Finds the first occurance of a substring in an array (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- char *strnstr (char *s, const char *t, size_t len);
-
- /// Finds the first occurance of a substring in an array (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_WCHAR_T *strnstr (ACE_WCHAR_T *s, const ACE_WCHAR_T *t, size_t len);
-
- /// Searches for characters in a string (const char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- const char *strpbrk (const char *s1, const char *s2);
-
-#if defined (ACE_HAS_WCHAR)
- /// Searches for characters in a string (const wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- const wchar_t *strpbrk (const wchar_t *s1, const wchar_t *s2);
-#endif /* ACE_HAS_WCHAR */
-
- /// Searches for characters in a string (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- char *strpbrk (char *s1, const char *s2);
-
-#if defined (ACE_HAS_WCHAR)
- /// Searches for characters in a string (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- wchar_t *strpbrk (wchar_t *s1, const wchar_t *s2);
-#endif /* ACE_HAS_WCHAR */
-
- /// Finds the last occurance of a character in a string (const char
- /// version).
- ACE_NAMESPACE_INLINE_FUNCTION
- const char *strrchr (const char *s, int c);
-
-#if defined (ACE_HAS_WCHAR)
- /// Finds the last occurance of a character in a string (const wchar_t
- /// version).
- ACE_NAMESPACE_INLINE_FUNCTION
- const wchar_t *strrchr (const wchar_t *s, wchar_t c);
-#endif /* ACE_HAS_WCHAR */
-
- /// Finds the last occurance of a character in a string (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- char *strrchr (char *s, int c);
-
-#if defined (ACE_HAS_WCHAR)
- /// Finds the last occurance of a character in a string (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- wchar_t *strrchr (wchar_t *s, wchar_t c);
-#endif /* ACE_HAS_WCHAR */
-
-#if defined (ACE_LACKS_STRRCHR)
- /// Emulated strrchr (char version) - Finds the last occurance of a
- /// character in a string.
- extern ACE_Export
- char *strrchr_emulation (char *s, int c);
-
- /// Emulated strrchr (const char version) - Finds the last occurance of a
- /// character in a string.
- extern ACE_Export
- const char *strrchr_emulation (const char *s, int c);
-#endif /* ACE_LACKS_STRRCHR */
-
- /// This is a "safe" c string copy function (char version).
- /**
- * Unlike strncpy() this function will always add a terminating '\0'
- * char if maxlen > 0. So the user doesn't has to provide an extra
- * '\0' if the user wants a '\0' terminated dst. The function
- * doesn't check for a 0 @a dst, because this will give problems
- * anyway. When @a src is 0 an empty string is made. We do not
- * "touch" * @a dst if maxlen is 0. Returns @a dst. Care should be
- * taken when replacing strncpy() calls, because in some cases a
- * strncpy() user is using the "not '\0' terminating" feature from
- * strncpy(). This happens most when the call to strncpy() was
- * optimized by using a maxlen which is 1 smaller than the size
- * because there's always written a '\0' inside this last position.
- * Very seldom it's possible that the '\0' padding feature from
- * strncpy() is needed.
- */
- extern ACE_Export
- char *strsncpy (char *dst,
- const char *src,
- size_t maxlen);
-
- /// This is a "safe" c string copy function (wchar_t version).
- /**
- * Unlike strncpy() this function will always add a terminating '\0'
- * char if maxlen > 0. So the user doesn't has to provide an extra
- * '\0' if the user wants a '\0' terminated dst. The function
- * doesn't check for a 0 @a dst, because this will give problems
- * anyway. When @a src is 0 an empty string is made. We do not
- * "touch" * @a dst if maxlen is 0. Returns @a dst. Care should be
- * taken when replacing strncpy() calls, because in some cases a
- * strncpy() user is using the "not '\0' terminating" feature from
- * strncpy(). This happens most when the call to strncpy() was
- * optimized by using a maxlen which is 1 smaller than the size
- * because there's always written a '\0' inside this last position.
- * Very seldom it's possible that the '\0' padding feature from
- * strncpy() is needed.
- */
- extern ACE_Export
- ACE_WCHAR_T *strsncpy (ACE_WCHAR_T *dst,
- const ACE_WCHAR_T *src,
- size_t maxlen);
-
- /// Searches for the first substring containing only the specified
- /// characters and returns the size of the substring (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- size_t strspn (const char *s1, const char *s2);
-
-#if defined (ACE_HAS_WCHAR)
- /// Searches for the first substring containing only the specified
- /// characters and returns the size of the substring (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- size_t strspn (const wchar_t *s1, const wchar_t *s2);
-#endif /* ACE_HAS_WCHAR */
-
- /// Finds the first occurance of a substring in a string (const char
- /// version).
- ACE_NAMESPACE_INLINE_FUNCTION
- const char *strstr (const char *s, const char *t);
-
-#if defined (ACE_HAS_WCHAR)
- /// Finds the first occurance of a substring in a string (const wchar_t
- /// version).
- ACE_NAMESPACE_INLINE_FUNCTION
- const wchar_t *strstr (const wchar_t *s, const wchar_t *t);
-#endif /* ACE_HAS_WCHAR */
-
- /// Finds the first occurance of a substring in a string (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- char *strstr (char *s, const char *t);
-
-#if defined (ACE_HAS_WCHAR)
- /// Finds the first occurance of a substring in a string (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- wchar_t *strstr (wchar_t *s, const wchar_t *t);
-#endif /* ACE_HAS_WCHAR */
-
- /// Finds the next token in a string (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- char *strtok (char *s, const char *tokens);
-
-#if defined (ACE_HAS_WCHAR) && !defined (ACE_LACKS_WCSTOK)
- /// Finds the next token in a string (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- wchar_t *strtok (wchar_t *s, const wchar_t *tokens);
-#endif /* ACE_HAS_WCHAR && !ACE_LACKS_WCSTOK */
-
- //@}
-
- /// Finds the next token in a string (safe char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- char *strtok_r (char *s, const char *tokens, char **lasts);
-
-#if defined (ACE_HAS_WCHAR)
- /// Finds the next token in a string (wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- wchar_t *strtok_r (ACE_WCHAR_T *s, const ACE_WCHAR_T *tokens, ACE_WCHAR_T **lasts);
-#endif // ACE_HAS_WCHAR
-
-#if !defined (ACE_HAS_REENTRANT_FUNCTIONS) || defined (ACE_LACKS_STRTOK_R)
- /// Emulated strtok_r.
- extern ACE_Export
- char *strtok_r_emulation (char *s, const char *tokens, char **lasts);
-#endif /* !ACE_HAS_REENTRANT_FUNCTIONS */
-
-# if defined (ACE_HAS_WCHAR) && defined(ACE_LACKS_WCSTOK)
- /// Emulated strtok_r (wchar_t version).
- extern ACE_Export
- wchar_t *strtok_r_emulation (ACE_WCHAR_T *s, const ACE_WCHAR_T *tokens, ACE_WCHAR_T **lasts);
-# endif // ACE_HAS_WCHAR && ACE_LACKS_WCSTOK
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_string.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_STRING_H */
-
diff --git a/dep/include/ace/OS_NS_string.inl b/dep/include/ace/OS_NS_string.inl
deleted file mode 100644
index 8b9d15f30ac..00000000000
--- a/dep/include/ace/OS_NS_string.inl
+++ /dev/null
@@ -1,560 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_string.inl 80826 2008-03-04 14:51:23Z wotte $
-
-// OS_NS_wchar.h is only needed to get the emulation methods.
-// Perhaps they should be moved. dhinton
-#include "ace/OS_NS_wchar.h"
-#include "ace/os_include/os_string.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE const void *
-ACE_OS::memchr (const void *s, int c, size_t len)
-{
-#if !defined (ACE_LACKS_MEMCHR)
- return ::memchr (s, c, len);
-#else /* ACE_LACKS_MEMCHR */
- return ACE_OS::memchr_emulation (s, c, len);
-#endif /* !ACE_LACKS_MEMCHR */
-}
-
-ACE_INLINE void *
-ACE_OS::memchr (void *s, int c, size_t len)
-{
- return const_cast<void *> (ACE_OS::memchr (static_cast<const void *> (s),
- c,
- len));
-}
-
-ACE_INLINE int
-ACE_OS::memcmp (const void *t, const void *s, size_t len)
-{
- return ::memcmp (t, s, len);
-}
-
-ACE_INLINE void *
-ACE_OS::memcpy (void *t, const void *s, size_t len)
-{
-#if defined (ACE_HAS_MEMCPY_LOOP_UNROLL)
- return fast_memcpy (t, s, len);
-#else
- return ::memcpy (t, s, len);
-#endif /* ACE_HAS_MEMCPY_LOOP_UNROLL */
-}
-
-ACE_INLINE void *
-ACE_OS::memmove (void *t, const void *s, size_t len)
-{
- return ::memmove (t, s, len);
-}
-
-ACE_INLINE void *
-ACE_OS::memset (void *s, int c, size_t len)
-{
-#if defined (ACE_HAS_SLOW_MEMSET)
- // This section requires a high optimization level (-xO4 with SunCC)
- // in order to actually be inlined.
- char* ptr = static_cast<char*> (s);
- switch (len)
- {
- case 16:
- ptr[15] = c;
- case 15:
- ptr[14] = c;
- case 14:
- ptr[13] = c;
- case 13:
- ptr[12] = c;
- case 12:
- ptr[11] = c;
- case 11:
- ptr[10] = c;
- case 10:
- ptr[9] = c;
- case 9:
- ptr[8] = c;
- case 8:
- ptr[7] = c;
- case 7:
- ptr[6] = c;
- case 6:
- ptr[5] = c;
- case 5:
- ptr[4] = c;
- case 4:
- ptr[3] = c;
- case 3:
- ptr[2] = c;
- case 2:
- ptr[1] = c;
- case 1:
- ptr[0] = c;
- break;
- default:
- for (size_t i = 0; i < len; ++i)
- {
- ptr[i] = c;
- }
- }
-
- return s;
-#else
- return ::memset (s, c, len);
-#endif /* ACE_HAS_SLOW_MEMSET */
-}
-
-ACE_INLINE char *
-ACE_OS::strcat (char *s, const char *t)
-{
- return ::strcat (s, t);
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE wchar_t *
-ACE_OS::strcat (wchar_t *s, const wchar_t *t)
-{
-# if defined (ACE_LACKS_WCSCAT)
- return ACE_OS::wcscat_emulation (s, t);
-# else /* ACE_LACKS_WCSCAT */
- return ::wcscat (s, t);
-# endif /* ACE_LACKS_WCSCAT */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE const char *
-ACE_OS::strchr (const char *s, int c)
-{
- return const_cast <const char *> (::strchr (s, c));
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE const wchar_t *
-ACE_OS::strchr (const wchar_t *s, wchar_t c)
-{
-# if defined (ACE_LACKS_WCSCHR)
- return ACE_OS::wcschr_emulation (s, c);
-# else /* ACE_LACKS_WCSCHR */
- return ::wcschr (s, c);
-# endif /* ACE_LACKS_WCSCHR */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE char *
-ACE_OS::strchr (char *s, int c)
-{
- return ::strchr (s, c);
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE wchar_t *
-ACE_OS::strchr (wchar_t *s, wchar_t c)
-{
- return
- const_cast<wchar_t *> (ACE_OS::strchr (const_cast<const wchar_t *> (s),
- c));
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE int
-ACE_OS::strcmp (const char *s, const char *t)
-{
- return ::strcmp (s, t);
-}
-
-ACE_INLINE int
-ACE_OS::strcmp (const ACE_WCHAR_T *s, const ACE_WCHAR_T *t)
-{
-# if !defined (ACE_HAS_WCHAR) || defined (ACE_LACKS_WCSCMP)
- return ACE_OS::wcscmp_emulation (s, t);
-# else /* !ACE_HAS_WCHAR || ACE_LACKS_WCSCMP */
- return ::wcscmp (s, t);
-# endif /* !ACE_HAS_WCHAR || ACE_LACKS_WCSCMP */
-}
-
-ACE_INLINE char *
-ACE_OS::strcpy (char *s, const char *t)
-{
- return ::strcpy (s, t);
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE wchar_t *
-ACE_OS::strcpy (wchar_t *s, const wchar_t *t)
-{
-# if defined (ACE_LACKS_WCSCPY)
- return ACE_OS::wcscpy_emulation (s, t);
-# else /* ACE_LACKS_WCSCPY */
- return ::wcscpy (s, t);
-# endif /* ACE_LACKS_WCSCPY */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE size_t
-ACE_OS::strcspn (const char *s, const char *reject)
-{
- return ::strcspn (s, reject);
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE size_t
-ACE_OS::strcspn (const wchar_t *s, const wchar_t *reject)
-{
-# if defined (ACE_LACKS_WCSCSPN)
- return ACE_OS::wcscspn_emulation (s, reject);
-# else /* ACE_LACKS_WCSCSPN */
- return ::wcscspn (s, reject);
-# endif /* ACE_LACKS_WCSCSPN */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE char *
-ACE_OS::strdup (const char *s)
-{
-# if (defined (ACE_LACKS_STRDUP) && !defined(ACE_STRDUP_EQUIVALENT)) \
- || defined (ACE_HAS_STRDUP_EMULATION)
- return ACE_OS::strdup_emulation (s);
-# elif defined (ACE_STRDUP_EQUIVALENT)
- return ACE_STRDUP_EQUIVALENT (s);
-# elif defined (ACE_HAS_NONCONST_STRDUP)
- return ::strdup (const_cast<char *> (s));
-#else
- return ::strdup (s);
-# endif /* (ACE_LACKS_STRDUP && !ACE_STRDUP_EQUIVALENT) || ... */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE wchar_t *
-ACE_OS::strdup (const wchar_t *s)
-{
-# if (defined (ACE_LACKS_WCSDUP) && !defined (ACE_WCSDUP_EQUIVALENT)) \
- || defined (ACE_HAS_WCSDUMP_EMULATION)
- return ACE_OS::strdup_emulation (s);
-# elif defined (ACE_WCSDUP_EQUIVALENT)
- return ACE_WCSDUP_EQUIVALENT (s);
-# elif defined (ACE_HAS_NONCONST_WCSDUP)
- return ::wcsdup (const_cast<wchar_t*> (s));
-# else
- return ::wcsdup (s);
-# endif /* (ACE_LACKS_WCSDUP && !ACE_WCSDUP_EQUIVALENT) || ... */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE size_t
-ACE_OS::strlen (const char *s)
-{
- return ::strlen (s);
-}
-
-ACE_INLINE size_t
-ACE_OS::strlen (const ACE_WCHAR_T *s)
-{
-# if !defined (ACE_HAS_WCHAR) || defined (ACE_LACKS_WCSLEN)
- return ACE_OS::wcslen_emulation (s);
-# else /* !ACE_HAS_WCHAR || ACE_LACKS_WCSLEN */
- return ::wcslen (s);
-# endif /* !ACE_HAS_WCHAR || ACE_LACKS_WCSLEN */
-}
-
-ACE_INLINE char *
-ACE_OS::strncat (char *s, const char *t, size_t len)
-{
-#if 0 /* defined (ACE_HAS_TR24731_2005_CRT) */
- strncat_s (s, len + 1, t, _TRUNCATE);
- return s;
-#else
- return ::strncat (s, t, len);
-#endif /* ACE_HAS_TR24731_2005_CRT */
-}
-
-ACE_INLINE ACE_WCHAR_T *
-ACE_OS::strncat (ACE_WCHAR_T *s, const ACE_WCHAR_T *t, size_t len)
-{
-# if !defined (ACE_HAS_WCHAR) || defined (ACE_LACKS_WCSNCAT)
- return ACE_OS::wcsncat_emulation (s, t, len);
-# elif 0 /* defined (ACE_HAS_TR24731_2005_CRT) */
- wcsncat_s (s, len + 1, t, _TRUNCATE);
- return s;
-# else /* !ACE_HAS_WCHAR || ACE_LACKS_WCSNCAT */
- return ::wcsncat (s, t, len);
-# endif /* !ACE_HAS_WCHAR || ACE_LACKS_WCSNCAT */
-}
-
-ACE_INLINE char *
-ACE_OS::strnchr (char *s, int c, size_t len)
-{
- return const_cast<char *> (ACE_OS::strnchr (static_cast<const char *> (s),
- c,
- len));
-}
-
-ACE_INLINE ACE_WCHAR_T *
-ACE_OS::strnchr (ACE_WCHAR_T *s, ACE_WCHAR_T c, size_t len)
-{
- return
- const_cast<ACE_WCHAR_T *> (ACE_OS::strnchr (
- const_cast<const ACE_WCHAR_T *> (s),
- c,
- len));
-}
-
-ACE_INLINE int
-ACE_OS::strncmp (const char *s, const char *t, size_t len)
-{
- return ::strncmp (s, t, len);
-}
-
-ACE_INLINE int
-ACE_OS::strncmp (const ACE_WCHAR_T *s, const ACE_WCHAR_T *t, size_t len)
-{
-# if !defined (ACE_HAS_WCHAR) || defined (ACE_LACKS_WCSNCMP)
- return ACE_OS::wcsncmp_emulation (s, t, len);
-# else /* !ACE_HAS_WCHAR || ACE_LACKS_WCSNCMP */
- return ::wcsncmp (s, t, len);
-# endif /* !ACE_HAS_WCHAR || ACE_LACKS_WCSNCMP */
-}
-
-ACE_INLINE char *
-ACE_OS::strncpy (char *s, const char *t, size_t len)
-{
- return ::strncpy (s, t, len);
-}
-
-ACE_INLINE ACE_WCHAR_T *
-ACE_OS::strncpy (ACE_WCHAR_T *s, const ACE_WCHAR_T *t, size_t len)
-{
-# if !defined (ACE_HAS_WCHAR) || defined (ACE_LACKS_WCSNCPY)
- return ACE_OS::wcsncpy_emulation (s, t, len);
-# else /* !ACE_HAS_WCHAR || ACE_LACKS_WCSNCPY */
- return ::wcsncpy (s, t, len);
-# endif /* !ACE_HAS_WCHAR || ACE_LACKS_WCSNCPY */
-}
-
-ACE_INLINE size_t
-ACE_OS::strnlen (const char *s, size_t maxlen)
-{
-#if defined (ACE_HAS_STRNLEN)
- return ::strnlen (s, maxlen);
-#else /* ACE_HAS_STRNLEN */
- size_t i;
- for (i = 0; i < maxlen; ++i)
- if (s[i] == '\0')
- break;
- return i;
-#endif /* ACE_HAS_STRNLEN */
-}
-
-ACE_INLINE size_t
-ACE_OS::strnlen (const ACE_WCHAR_T *s, size_t maxlen)
-{
-#if defined (ACE_HAS_WCHAR) && defined (ACE_HAS_WCSNLEN)
- return wcsnlen (s, maxlen);
-#else /* ACE_HAS_WCSNLEN */
- size_t i;
- for (i = 0; i < maxlen; ++i)
- if (s[i] == '\0')
- break;
- return i;
-#endif /* ACE_HAS_WCSNLEN */
-}
-
-ACE_INLINE char *
-ACE_OS::strnstr (char *s, const char *t, size_t len)
-{
- return
- const_cast <char *> (ACE_OS::strnstr (const_cast <const char *> (s), t, len));
-}
-
-ACE_INLINE ACE_WCHAR_T *
-ACE_OS::strnstr (ACE_WCHAR_T *s, const ACE_WCHAR_T *t, size_t len)
-{
- return
- const_cast<ACE_WCHAR_T *> (ACE_OS::strnstr (
- static_cast<const ACE_WCHAR_T *> (s),
- t,
- len));
-}
-
-ACE_INLINE const char *
-ACE_OS::strpbrk (const char *s1, const char *s2)
-{
- return const_cast <const char *> (::strpbrk (s1, s2));
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE const wchar_t *
-ACE_OS::strpbrk (const wchar_t *s, const wchar_t *t)
-{
-# if defined (ACE_LACKS_WCSPBRK)
- return ACE_OS::wcspbrk_emulation (s, t);
-# else /* ACE_LACKS_WCSPBRK */
- return ::wcspbrk (s, t);
-# endif /* ACE_LACKS_WCSPBRK */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE char *
-ACE_OS::strpbrk (char *s1, const char *s2)
-{
- return ::strpbrk (s1, s2);
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE wchar_t *
-ACE_OS::strpbrk (wchar_t *s, const wchar_t *t)
-{
- return const_cast<wchar_t *> (ACE_OS::strpbrk (
- const_cast<const wchar_t *> (s), t));
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE const char *
-ACE_OS::strrchr (const char *s, int c)
-{
-#if defined (ACE_LACKS_STRRCHR)
- return ACE_OS::strrchr_emulation (s, c);
-#else /* ! ACE_LACKS_STRRCHR */
- return (const char *) ::strrchr (s, c);
-#endif /* ! ACE_LACKS_STRRCHR */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE const wchar_t *
-ACE_OS::strrchr (const wchar_t *s, wchar_t c)
-{
-#if defined (ACE_LACKS_WCSRCHR)
- return ACE_OS::wcsrchr_emulation (s, c);
-#else /* ! ACE_LACKS_WCSRCHR */
- return const_cast <const wchar_t *> (::wcsrchr (s, c));
-#endif /* ! ACE_LACKS_WCSRCHR */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE char *
-ACE_OS::strrchr (char *s, int c)
-{
-#if defined (ACE_LACKS_STRRCHR)
- return ACE_OS::strrchr_emulation (s, c);
-#else /* ! ACE_LACKS_STRRCHR */
- return ::strrchr (s, c);
-#endif /* ! ACE_LACKS_STRRCHR */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE wchar_t *
-ACE_OS::strrchr (wchar_t *s, wchar_t c)
-{
- return const_cast<wchar_t *> (ACE_OS::strrchr (
- const_cast<const wchar_t *> (s), c));
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE size_t
-ACE_OS::strspn (const char *s, const char *t)
-{
- return ::strspn (s, t);
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE size_t
-ACE_OS::strspn (const wchar_t *s, const wchar_t *t)
-{
-# if defined (ACE_LACKS_WCSSPN)
- return ACE_OS::wcsspn_emulation (s, t);
-# else /* ACE_LACKS_WCSSPN */
- return ::wcsspn (s, t);
-# endif /* ACE_LACKS_WCSSPN */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE const char *
-ACE_OS::strstr (const char *s, const char *t)
-{
- return (const char *) ::strstr (s, t);
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE const wchar_t *
-ACE_OS::strstr (const wchar_t *s, const wchar_t *t)
-{
-# if defined (ACE_LACKS_WCSSTR)
- return ACE_OS::wcsstr_emulation (s, t);
-# elif defined (HPUX)
- return const_cast <const wchar_t *> (::wcswcs (s, t));
-# else /* ACE_LACKS_WCSSTR */
- return const_cast <const wchar_t *> (::wcsstr (s, t));
-# endif /* ACE_LACKS_WCSSTR */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE char *
-ACE_OS::strstr (char *s, const char *t)
-{
- return ::strstr (s, t);
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE wchar_t *
-ACE_OS::strstr (wchar_t *s, const wchar_t *t)
-{
-# if defined (ACE_LACKS_WCSSTR)
- return ACE_OS::wcsstr_emulation (s, t);
-# elif defined (HPUX)
- return ::wcswcs (s, t);
-# else /* ACE_LACKS_WCSSTR */
- return ::wcsstr (s, t);
-# endif /* ACE_LACKS_WCSSTR */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE char *
-ACE_OS::strtok (char *s, const char *tokens)
-{
- return ::strtok (s, tokens);
-}
-
-#if defined (ACE_HAS_WCHAR) && !defined (ACE_LACKS_WCSTOK)
-ACE_INLINE wchar_t *
-ACE_OS::strtok (wchar_t *s, const wchar_t *tokens)
-{
-#if defined (ACE_HAS_3_PARAM_WCSTOK)
- static wchar_t *lasts = 0;
- return ::wcstok (s, tokens, &lasts);
-#else
- return ::wcstok (s, tokens);
-#endif /* ACE_HAS_3_PARAM_WCSTOK */
-}
-#endif /* ACE_HAS_WCHAR && !ACE_LACKS_WCSTOK */
-
-ACE_INLINE char *
-ACE_OS::strtok_r (char *s, const char *tokens, char **lasts)
-{
-#if defined (ACE_HAS_TR24731_2005_CRT)
- return strtok_s (s, tokens, lasts);
-#elif defined (ACE_HAS_REENTRANT_FUNCTIONS) && !defined (ACE_LACKS_STRTOK_R)
- return ::strtok_r (s, tokens, lasts);
-#else
- return ACE_OS::strtok_r_emulation (s, tokens, lasts);
-#endif /* (ACE_HAS_REENTRANT_FUNCTIONS) */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE wchar_t*
-ACE_OS::strtok_r (ACE_WCHAR_T *s, const ACE_WCHAR_T *tokens, ACE_WCHAR_T **lasts)
-{
-#if defined (ACE_HAS_TR24731_2005_CRT)
- return wcstok_s (s, tokens, lasts);
-#elif defined (ACE_LACKS_WCSTOK)
- return ACE_OS::strtok_r_emulation (s, tokens, lasts);
-#else
-# if defined (ACE_HAS_3_PARAM_WCSTOK)
- return ::wcstok (s, tokens, lasts);
-# else /* ACE_HAS_3_PARAM_WCSTOK */
- *lasts = ::wcstok (s, tokens);
- return *lasts;
-# endif /* ACE_HAS_3_PARAM_WCSTOK */
-#endif /* ACE_LACKS_WCSTOK */
-}
-#endif // ACE_HAS_WCHAR
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_strings.h b/dep/include/ace/OS_NS_strings.h
deleted file mode 100644
index 7f1ad48c831..00000000000
--- a/dep/include/ace/OS_NS_strings.h
+++ /dev/null
@@ -1,87 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_strings.h
- *
- * $Id: OS_NS_strings.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_STRINGS_H
-#define ACE_OS_NS_STRINGS_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_strings.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-namespace ACE_OS
-{
-
- /// Compares two strings (case insensitive const char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- int strcasecmp (const char *s, const char *t);
-
-#if defined (ACE_HAS_WCHAR)
- /// Compares two strings (case insensitive const wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- int strcasecmp (const wchar_t *s, const wchar_t *t);
-#endif /* ACE_HAS_WCHAR */
-
- /// Compares two arrays (case insensitive const char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- int strncasecmp (const char *s, const char *t, size_t len);
-
-#if defined (ACE_HAS_WCHAR)
- /// Compares two arrays (case insensitive const wchar_t version).
- ACE_NAMESPACE_INLINE_FUNCTION
- int strncasecmp (const wchar_t *s, const wchar_t *t, size_t len);
-#endif /* ACE_HAS_WCHAR */
-
-#if defined (ACE_LACKS_STRCASECMP)
- /// Emulated strcasecmp - Performs a case insensitive comparison of strings.
- extern ACE_Export
- int strcasecmp_emulation (const char *s, const char *t);
-
- /// Emulated strncasecmp - Performs a case insensitvie comparison of arrays.
- extern ACE_Export
- int strncasecmp_emulation (const char *s, const char *t, size_t len);
-#endif /* ACE_LACKS_STRCASECMP */
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_strings.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_STRINGS_H */
-
diff --git a/dep/include/ace/OS_NS_strings.inl b/dep/include/ace/OS_NS_strings.inl
deleted file mode 100644
index cb6f21e6592..00000000000
--- a/dep/include/ace/OS_NS_strings.inl
+++ /dev/null
@@ -1,59 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_strings.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#if defined (ACE_HAS_WCHAR)
-# include "ace/OS_NS_wchar.h"
-#endif /* ACE_HAS_WCHAR */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_OS::strcasecmp (const char *s, const char *t)
-{
-#if defined (ACE_LACKS_STRCASECMP)
- return ACE_OS::strcasecmp_emulation (s, t);
-#elif defined (ACE_STRCASECMP_EQUIVALENT)
- return ACE_STRCASECMP_EQUIVALENT (s, t);
-#else /* ACE_LACKS_STRCASECMP */
- return ::strcasecmp (s, t);
-#endif /* ACE_LACKS_STRCASECMP */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::strcasecmp (const wchar_t *s, const wchar_t *t)
-{
-# if defined (ACE_LACKS_WCSICMP)
- return ACE_OS::wcsicmp_emulation (s, t);
-# else /* ACE_LACKS_WCSICMP */
- return ::_wcsicmp (s, t);
-# endif /* ACE_LACKS_WCSICMP */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE int
-ACE_OS::strncasecmp (const char *s, const char *t, size_t len)
-{
-#if defined (ACE_LACKS_STRCASECMP)
- return ACE_OS::strncasecmp_emulation (s, t, len);
-#elif defined (ACE_STRNCASECMP_EQUIVALENT)
- return ACE_STRNCASECMP_EQUIVALENT (s, t, len);
-#else /* ACE_LACKS_STRCASECMP */
- return ::strncasecmp (s, t, len);
-#endif /* ACE_LACKS_STRCASECMP */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::strncasecmp (const wchar_t *s, const wchar_t *t, size_t len)
-{
-#if defined (ACE_LACKS_WCSNICMP)
- return ACE_OS::wcsnicmp_emulation (s, t, len);
-#else /* ACE_LACKS_WCSNICMP */
- return ::_wcsnicmp (s, t, len);
-#endif /* ACE_LACKS_WCSNICMP */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_stropts.h b/dep/include/ace/OS_NS_stropts.h
deleted file mode 100644
index edae88c3e25..00000000000
--- a/dep/include/ace/OS_NS_stropts.h
+++ /dev/null
@@ -1,173 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_stropts.h
- *
- * $Id: OS_NS_stropts.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_STROPTS_H
-#define ACE_OS_NS_STROPTS_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-# ifndef ACE_IOCTL_TYPE_ARG2
-# define ACE_IOCTL_TYPE_ARG2 int
-# endif
-
-#include "ace/os_include/os_stropts.h"
-#include "ace/os_include/os_stdio.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
-typedef WSAPROTOCOL_INFO ACE_Protocol_Info;
-
-// Callback function that's used by the QoS-enabled <ACE_OS::ioctl>
-// method.
-typedef LPWSAOVERLAPPED_COMPLETION_ROUTINE ACE_OVERLAPPED_COMPLETION_FUNC;
-typedef GROUP ACE_SOCK_GROUP;
-#else /* (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0) */
-struct ACE_Protocol_Info
-{
- unsigned long dwServiceFlags1;
- int iAddressFamily;
- int iProtocol;
- char szProtocol[255+1];
-};
-
-// Callback function that's used by the QoS-enabled <ACE_OS::ioctl>
-// method.
-typedef void (*ACE_OVERLAPPED_COMPLETION_FUNC) (unsigned long error,
- unsigned long bytes_transferred,
- ACE_OVERLAPPED *overlapped,
- unsigned long flags);
-typedef unsigned long ACE_SOCK_GROUP;
-
-#endif /* (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0) */
-
-// @todo: move this to it's own file... dhinton
-/**
- * @class ACE_Str_Buf
- *
- * @brief Simple wrapper for STREAM pipes strbuf.
- */
-class ACE_Export ACE_Str_Buf : public strbuf
-{
-public:
- // = Initialization method
- /// Constructor.
- ACE_Str_Buf (void *b = 0, int l = 0, int max = 0);
-
- /// Constructor.
- ACE_Str_Buf (strbuf &);
-};
-
-class ACE_QoS;
-
-namespace ACE_OS {
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int getmsg (ACE_HANDLE handle,
- struct strbuf *ctl,
- struct strbuf
- *data, int *flags);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int getpmsg (ACE_HANDLE handle,
- struct strbuf *ctl,
- struct strbuf
- *data,
- int *band,
- int *flags);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int fattach (int handle,
- const char *path);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int fdetach (const char *file);
-
- /// UNIX-style <ioctl>.
- ACE_NAMESPACE_INLINE_FUNCTION
- int ioctl (ACE_HANDLE handle,
- ACE_IOCTL_TYPE_ARG2 cmd,
- void * = 0);
-
- /// QoS-enabled <ioctl>.
- extern ACE_Export
- int ioctl (ACE_HANDLE socket,
- unsigned long io_control_code,
- void *in_buffer_p,
- unsigned long in_buffer,
- void *out_buffer_p,
- unsigned long out_buffer,
- unsigned long *bytes_returned,
- ACE_OVERLAPPED *overlapped,
- ACE_OVERLAPPED_COMPLETION_FUNC func);
-
-#if !(defined (ACE_HAS_WINCE) && (UNDER_CE < 500))
- /// QoS-enabled <ioctl> when the I/O control code is either
- /// SIO_SET_QOS or SIO_GET_QOS.
- extern ACE_Export
- int ioctl (ACE_HANDLE socket,
- unsigned long io_control_code,
- ACE_QoS &ace_qos,
- unsigned long *bytes_returned,
- void *buffer_p = 0,
- unsigned long buffer = 0,
- ACE_OVERLAPPED *overlapped = 0,
- ACE_OVERLAPPED_COMPLETION_FUNC func = 0);
-#endif /* !(defined (ACE_HAS_WINCE) && (UNDER_CE < 500)) */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int isastream (ACE_HANDLE handle);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int putmsg (ACE_HANDLE handle,
- const struct strbuf *ctl,
- const struct strbuf *data,
- int flags);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int putpmsg (ACE_HANDLE handle,
- const struct strbuf *ctl,
- const struct strbuf *data,
- int band,
- int flags);
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_stropts.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_STROPTS_H */
-
diff --git a/dep/include/ace/OS_NS_stropts.inl b/dep/include/ace/OS_NS_stropts.inl
deleted file mode 100644
index 04200747c57..00000000000
--- a/dep/include/ace/OS_NS_stropts.inl
+++ /dev/null
@@ -1,201 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_stropts.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/os_include/os_errno.h"
-#include "ace/OS_NS_unistd.h"
-#include "ace/OS_NS_string.h"
-#include "ace/OS_NS_macros.h"
-#include "ace/OS_Memory.h"
-#include "ace/OS_QoS.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_LACKS_CONST_STRBUF_PTR)
-typedef struct strbuf *ACE_STRBUF_TYPE;
-#else
-typedef const struct strbuf *ACE_STRBUF_TYPE;
-#endif /* ACE_LACKS_CONST_STRBUF_PTR */
-
-ACE_INLINE
-ACE_Str_Buf::ACE_Str_Buf (void *b, int l, int max)
-{
- this->maxlen = max;
- this->len = l;
- this->buf = (char *) b;
-}
-
-ACE_INLINE
-ACE_Str_Buf::ACE_Str_Buf (strbuf &sb)
-{
- this->maxlen = sb.maxlen;
- this->len = sb.len;
- this->buf = sb.buf;
-}
-
-/*****************************************************************************/
-
-ACE_INLINE int
-ACE_OS::getmsg (ACE_HANDLE handle,
- struct strbuf *ctl,
- struct strbuf *data,
- int *flags)
-{
- ACE_OS_TRACE ("ACE_OS::getmsg");
-#if defined (ACE_HAS_STREAM_PIPES)
- ACE_OSCALL_RETURN (::getmsg (handle, ctl, data, flags), int, -1);
-#else
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (ctl);
- ACE_UNUSED_ARG (data);
- ACE_UNUSED_ARG (flags);
-
- // I'm not sure how to implement this correctly.
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_STREAM_PIPES */
-}
-
-ACE_INLINE int
-ACE_OS::getpmsg (ACE_HANDLE handle,
- struct strbuf *ctl,
- struct strbuf *data,
- int *band,
- int *flags)
-{
- ACE_OS_TRACE ("ACE_OS::getpmsg");
-#if defined (ACE_HAS_STREAM_PIPES)
- ACE_OSCALL_RETURN (::getpmsg (handle, ctl, data, band, flags), int, -1);
-#else
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (ctl);
- ACE_UNUSED_ARG (data);
- ACE_UNUSED_ARG (band);
- ACE_UNUSED_ARG (flags);
-
- // I'm not sure how to implement this correctly.
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_STREAM_PIPES */
-}
-
-ACE_INLINE int
-ACE_OS::fattach (int handle, const char *path)
-{
- ACE_OS_TRACE ("ACE_OS::fattach");
-#if defined (ACE_HAS_STREAM_PIPES)
- ACE_OSCALL_RETURN (::fattach (handle, path), int, -1);
-#else
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (path);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_STREAM_PIPES */
-}
-
-ACE_INLINE int
-ACE_OS::fdetach (const char *file)
-{
- ACE_OS_TRACE ("ACE_OS::fdetach");
-#if defined (ACE_HAS_STREAM_PIPES)
- ACE_OSCALL_RETURN (::fdetach (file), int, -1);
-#else
- ACE_UNUSED_ARG (file);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_STREAM_PIPES */
-}
-
-ACE_INLINE int
-ACE_OS::ioctl (ACE_HANDLE handle,
- ACE_IOCTL_TYPE_ARG2 cmd,
- void *val)
-{
- ACE_OS_TRACE ("ACE_OS::ioctl");
-
-#if defined (ACE_WIN32)
- ACE_SOCKET sock = (ACE_SOCKET) handle;
- ACE_SOCKCALL_RETURN (::ioctlsocket (sock, cmd, reinterpret_cast<unsigned long *> (val)), int, -1);
-#elif defined (ACE_HAS_IOCTL_INT_3_PARAM)
- ACE_OSCALL_RETURN (::ioctl (handle, cmd, reinterpret_cast<int> (val)),
- int, -1);
-#else
- ACE_OSCALL_RETURN (::ioctl (handle, cmd, val), int, -1);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE int
-ACE_OS::isastream (ACE_HANDLE handle)
-{
- ACE_OS_TRACE ("ACE_OS::isastream");
-#if defined (ACE_HAS_STREAM_PIPES)
- ACE_OSCALL_RETURN (::isastream (handle), int, -1);
-#else
- ACE_UNUSED_ARG (handle);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_STREAM_PIPES */
-}
-
-ACE_INLINE int
-ACE_OS::putmsg (ACE_HANDLE handle, const struct strbuf *ctl,
- const struct strbuf *data, int flags)
-{
- ACE_OS_TRACE ("ACE_OS::putmsg");
-#if defined (ACE_HAS_STREAM_PIPES)
- ACE_OSCALL_RETURN (::putmsg (handle,
- (ACE_STRBUF_TYPE) ctl,
- (ACE_STRBUF_TYPE) data,
- flags), int, -1);
-#else
- ACE_UNUSED_ARG (flags);
- ssize_t result;
- if (ctl == 0 && data == 0)
- {
- errno = EINVAL;
- return 0;
- }
- // Handle the two easy cases.
- else if (ctl != 0)
- {
- result = ACE_OS::write (handle, ctl->buf, ctl->len);
- return static_cast<int> (result);
- }
- else if (data != 0)
- {
- result = ACE_OS::write (handle, data->buf, data->len);
- return static_cast<int> (result);
- }
- else
- {
- // This is the hard case.
- char *buf;
- ACE_NEW_RETURN (buf, char [ctl->len + data->len], -1);
- ACE_OS::memcpy (buf, ctl->buf, ctl->len);
- ACE_OS::memcpy (buf + ctl->len, data->buf, data->len);
- result = ACE_OS::write (handle, buf, ctl->len + data->len);
- delete [] buf;
- return static_cast<int> (result);
- }
-#endif /* ACE_HAS_STREAM_PIPES */
-}
-
-ACE_INLINE int
-ACE_OS::putpmsg (ACE_HANDLE handle,
- const struct strbuf *ctl,
- const struct strbuf *data,
- int band,
- int flags)
-{
- ACE_OS_TRACE ("ACE_OS::putpmsg");
-#if defined (ACE_HAS_STREAM_PIPES)
- ACE_OSCALL_RETURN (::putpmsg (handle,
- (ACE_STRBUF_TYPE) ctl,
- (ACE_STRBUF_TYPE) data,
- band, flags), int, -1);
-#else
- ACE_UNUSED_ARG (flags);
- ACE_UNUSED_ARG (band);
- return ACE_OS::putmsg (handle, ctl, data, flags);
-#endif /* ACE_HAS_STREAM_PIPES */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_sys_mman.h b/dep/include/ace/OS_NS_sys_mman.h
deleted file mode 100644
index b9015a7fa61..00000000000
--- a/dep/include/ace/OS_NS_sys_mman.h
+++ /dev/null
@@ -1,98 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_sys_mman.h
- *
- * $Id: OS_NS_sys_mman.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_SYS_MMAN_H
-# define ACE_OS_NS_SYS_MMAN_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Global_Macros.h"
-#include "ace/os_include/sys/os_types.h"
-#include "ace/os_include/sys/os_mman.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS
-{
-
- //@{ @name A set of wrappers for memory mapped files.
- ACE_NAMESPACE_INLINE_FUNCTION
- int madvise (caddr_t addr,
- size_t len,
- int map_advice);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void *mmap (void *addr,
- size_t len,
- int prot,
- int flags,
- ACE_HANDLE handle,
- ACE_OFF_T off = 0,
- ACE_HANDLE *file_mapping = 0,
- LPSECURITY_ATTRIBUTES sa = 0,
- const ACE_TCHAR *file_mapping_name = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int mprotect (void *addr,
- size_t len,
- int prot);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int msync (void *addr,
- size_t len,
- int sync);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int munmap (void *addr,
- size_t len);
- //@}
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_HANDLE shm_open (const ACE_TCHAR *filename,
- int mode,
- mode_t perms = 0,
- LPSECURITY_ATTRIBUTES sa = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int shm_unlink (const ACE_TCHAR *path);
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_sys_mman.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_SYS_MMAN_H */
-
diff --git a/dep/include/ace/OS_NS_sys_mman.inl b/dep/include/ace/OS_NS_sys_mman.inl
deleted file mode 100644
index de5935fb9b9..00000000000
--- a/dep/include/ace/OS_NS_sys_mman.inl
+++ /dev/null
@@ -1,297 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_sys_mman.inl 82171 2008-06-25 13:32:01Z jtc $
-
-#include "ace/OS_NS_fcntl.h"
-#include "ace/OS_NS_unistd.h"
-#include "ace/OS_NS_stdio.h"
-#include "ace/OS_NS_macros.h"
-#include "ace/OS_NS_errno.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_HAS_VOIDPTR_MMAP)
-// Needed for some odd OS's (e.g., SGI).
-typedef void *ACE_MMAP_TYPE;
-#else
-typedef char *ACE_MMAP_TYPE;
-#endif /* ACE_HAS_VOIDPTR_MMAP */
-
-ACE_INLINE int
-ACE_OS::madvise (caddr_t addr, size_t len, int map_advice)
-{
- ACE_OS_TRACE ("ACE_OS::madvise");
-#if !defined (ACE_LACKS_MADVISE)
- ACE_OSCALL_RETURN (::madvise (addr, len, map_advice), int, -1);
-#else
- ACE_UNUSED_ARG (addr);
- ACE_UNUSED_ARG (len);
- ACE_UNUSED_ARG (map_advice);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE void *
-ACE_OS::mmap (void *addr,
- size_t len,
- int prot,
- int flags,
- ACE_HANDLE file_handle,
- ACE_OFF_T off,
- ACE_HANDLE *file_mapping,
- LPSECURITY_ATTRIBUTES sa,
- const ACE_TCHAR *file_mapping_name)
-{
- ACE_OS_TRACE ("ACE_OS::mmap");
-#if !defined (ACE_WIN32) || defined (ACE_HAS_PHARLAP)
- ACE_UNUSED_ARG (file_mapping_name);
-#endif /* !defined (ACE_WIN32) || defined (ACE_HAS_PHARLAP) */
-
-#if defined (ACE_WIN32) && !defined (ACE_HAS_PHARLAP)
-
-# if defined(ACE_HAS_WINCE)
- ACE_UNUSED_ARG (addr);
- if (ACE_BIT_ENABLED (flags, MAP_FIXED)) // not supported
- {
- errno = EINVAL;
- return MAP_FAILED;
- }
-# else
- if (!ACE_BIT_ENABLED (flags, MAP_FIXED))
- addr = 0;
- else if (addr == 0) // can not map to address 0
- {
- errno = EINVAL;
- return MAP_FAILED;
- }
-# endif
-
- int nt_flags = 0;
- ACE_HANDLE local_handle = ACE_INVALID_HANDLE;
-
- // Ensure that file_mapping is non-zero.
- if (file_mapping == 0)
- file_mapping = &local_handle;
-
- if (ACE_BIT_ENABLED (flags, MAP_PRIVATE))
- {
-# if !defined(ACE_HAS_WINCE)
- prot = PAGE_WRITECOPY;
-# endif // ACE_HAS_WINCE
- nt_flags = FILE_MAP_COPY;
- }
- else if (ACE_BIT_ENABLED (flags, MAP_SHARED))
- {
- if (ACE_BIT_ENABLED (prot, PAGE_READONLY))
- nt_flags = FILE_MAP_READ;
- if (ACE_BIT_ENABLED (prot, PAGE_READWRITE))
- nt_flags = FILE_MAP_WRITE;
- }
-
- // Only create a new handle if we didn't have a valid one passed in.
- if (*file_mapping == ACE_INVALID_HANDLE)
- {
- SECURITY_ATTRIBUTES sa_buffer;
- SECURITY_DESCRIPTOR sd_buffer;
- const LPSECURITY_ATTRIBUTES attr =
- ACE_OS::default_win32_security_attributes_r (sa,
- &sa_buffer,
- &sd_buffer);
-
- *file_mapping = ACE_TEXT_CreateFileMapping (file_handle,
- attr,
- prot,
- 0,
- 0,
- file_mapping_name);
- }
-
- if (*file_mapping == 0)
- ACE_FAIL_RETURN (MAP_FAILED);
-
-# if defined (ACE_OS_EXTRA_MMAP_FLAGS)
- nt_flags |= ACE_OS_EXTRA_MMAP_FLAGS;
-# endif /* ACE_OS_EXTRA_MMAP_FLAGS */
-
- DWORD low_off = ACE_LOW_PART (off);
- DWORD high_off = ACE_HIGH_PART (off);
-
-# if !defined (ACE_HAS_WINCE)
- void *addr_mapping = ::MapViewOfFileEx (*file_mapping,
- nt_flags,
- high_off,
- low_off,
- len,
- addr);
-# else
- void *addr_mapping = ::MapViewOfFile (*file_mapping,
- nt_flags,
- high_off,
- low_off,
- len);
-# endif /* ! ACE_HAS_WINCE */
-
- // Only close this down if we used the temporary.
- if (file_mapping == &local_handle)
- ::CloseHandle (*file_mapping);
-
- if (addr_mapping == 0)
- ACE_FAIL_RETURN (MAP_FAILED);
- else
- return addr_mapping;
-#elif !defined (ACE_LACKS_MMAP)
- ACE_UNUSED_ARG (sa);
-
-# if defined (ACE_OS_EXTRA_MMAP_FLAGS)
- flags |= ACE_OS_EXTRA_MMAP_FLAGS;
-# endif /* ACE_OS_EXTRA_MMAP_FLAGS */
- ACE_UNUSED_ARG (file_mapping);
-# if defined (ACE_OPENVMS)
- //FUZZ: disable check_for_lack_ACE_OS
- ::fsync(file_handle);
- //FUZZ: enable check_for_lack_ACE_OS
-# endif
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_OSCALL_RETURN ((void *) ::mmap ((ACE_MMAP_TYPE) addr,
- len,
- prot,
- flags,
- file_handle,
- off),
- void *, MAP_FAILED);
- //FUZZ: enable check_for_lack_ACE_OS
-#else
- ACE_UNUSED_ARG (addr);
- ACE_UNUSED_ARG (len);
- ACE_UNUSED_ARG (prot);
- ACE_UNUSED_ARG (flags);
- ACE_UNUSED_ARG (file_handle);
- ACE_UNUSED_ARG (off);
- ACE_UNUSED_ARG (file_mapping);
- ACE_UNUSED_ARG (sa);
- ACE_NOTSUP_RETURN (MAP_FAILED);
-#endif /* ACE_WIN32 && !ACE_HAS_PHARLAP */
-}
-
-// Implements simple read/write control for pages. Affects a page if
-// part of the page is referenced. Currently PROT_READ, PROT_WRITE,
-// and PROT_RDWR has been mapped in OS.h. This needn't have anything
-// to do with a mmap region.
-
-ACE_INLINE int
-ACE_OS::mprotect (void *addr, size_t len, int prot)
-{
- ACE_OS_TRACE ("ACE_OS::mprotect");
-#if defined (ACE_WIN32) && !defined (ACE_HAS_PHARLAP)
- DWORD dummy; // Sigh!
- return ::VirtualProtect(addr, len, prot, &dummy) ? 0 : -1;
-#elif !defined (ACE_LACKS_MPROTECT)
- ACE_OSCALL_RETURN (::mprotect ((ACE_MMAP_TYPE) addr, len, prot), int, -1);
-#else
- ACE_UNUSED_ARG (addr);
- ACE_UNUSED_ARG (len);
- ACE_UNUSED_ARG (prot);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_WIN32 && !ACE_HAS_PHARLAP */
-}
-
-ACE_INLINE int
-ACE_OS::msync (void *addr, size_t len, int sync)
-{
- ACE_OS_TRACE ("ACE_OS::msync");
-#if defined (ACE_WIN32) && !defined (ACE_HAS_PHARLAP)
- ACE_UNUSED_ARG (sync);
-
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::FlushViewOfFile (addr, len), ace_result_), int, -1);
-#elif !defined (ACE_LACKS_MSYNC)
- ACE_OSCALL_RETURN (::msync ((ACE_MMAP_TYPE) addr, len, sync), int, -1);
-#else
- ACE_UNUSED_ARG (addr);
- ACE_UNUSED_ARG (len);
- ACE_UNUSED_ARG (sync);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_WIN32 && !ACE_HAS_PHARLAP */
-}
-
-ACE_INLINE int
-ACE_OS::munmap (void *addr, size_t len)
-{
- ACE_OS_TRACE ("ACE_OS::munmap");
-#if defined (ACE_WIN32)
- ACE_UNUSED_ARG (len);
-
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::UnmapViewOfFile (addr), ace_result_), int, -1);
-#elif !defined (ACE_LACKS_MMAP)
- ACE_OSCALL_RETURN (::munmap ((ACE_MMAP_TYPE) addr, len), int, -1);
-#else
- ACE_UNUSED_ARG (addr);
- ACE_UNUSED_ARG (len);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE ACE_HANDLE
-ACE_OS::shm_open (const ACE_TCHAR *filename,
- int mode,
- mode_t perms,
- LPSECURITY_ATTRIBUTES sa)
-{
- ACE_OS_TRACE ("ACE_OS::shm_open");
-#if defined (ACE_HAS_SHM_OPEN)
- ACE_UNUSED_ARG (sa);
-#if defined (ACE_VXWORKS) && (ACE_VXWORKS <= 0x650)
- // With VxWorks the file should just start with / and no other
- // slashes, so replace all other / by _
- ACE_TCHAR buf [MAXPATHLEN + 1];
- ACE_OS::sprintf (buf,
- ACE_TEXT ("%s"),
- filename);
- for (size_t i = 1; i < MAXPATHLEN + 1; i++)
- {
- if (buf[i] == '/')
- {
- buf[i] = '_';
- }
- }
- filename = buf;
-#endif
- ACE_OSCALL_RETURN (::shm_open (ACE_TEXT_ALWAYS_CHAR(filename), mode, perms), ACE_HANDLE, ACE_INVALID_HANDLE);
-#elif defined (ACE_OPENVMS)
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_OSCALL_RETURN (::open (filename, mode, perms, ACE_TEXT("shr=get,put,upd")), ACE_HANDLE, ACE_INVALID_HANDLE);
- //FUZZ: enable check_for_lack_ACE_OS
-#else /* ! ACE_HAS_SHM_OPEN */
- // Just use ::open.
- return ACE_OS::open (filename, mode, perms, sa);
-#endif /* ACE_HAS_SHM_OPEN */
-}
-
-ACE_INLINE int
-ACE_OS::shm_unlink (const ACE_TCHAR *path)
-{
- ACE_OS_TRACE ("ACE_OS::shm_unlink");
-#if defined (ACE_HAS_SHM_OPEN)
-#if defined (ACE_VXWORKS) && (ACE_VXWORKS <= 0x650)
- // With VxWorks the file should just start with / and no other
- // slashes, so replace all other / by _
- ACE_TCHAR buf [MAXPATHLEN + 1];
- ACE_OS::sprintf (buf,
- ACE_TEXT ("%s"),
- path);
- for (size_t i = 1; i < MAXPATHLEN + 1; i++)
- {
- if (buf[i] == '/')
- {
- buf[i] = '_';
- }
- }
- path = buf;
-#endif
- ACE_OSCALL_RETURN (::shm_unlink (ACE_TEXT_ALWAYS_CHAR(path)), int, -1);
-#else /* ! ACE_HAS_SHM_OPEN */
- // Just use ::unlink.
- return ACE_OS::unlink (path);
-#endif /* ACE_HAS_SHM_OPEN */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_sys_msg.h b/dep/include/ace/OS_NS_sys_msg.h
deleted file mode 100644
index a2599407d8a..00000000000
--- a/dep/include/ace/OS_NS_sys_msg.h
+++ /dev/null
@@ -1,78 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_sys_msg.h
- *
- * $Id: OS_NS_sys_msg.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_SYS_MSG_H
-# define ACE_OS_NS_SYS_MSG_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_msg.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS {
-
- //@{ @name A set of wrappers for System V message queues.
- ACE_NAMESPACE_INLINE_FUNCTION
- int msgctl (int msqid,
- int cmd,
- struct msqid_ds *);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int msgget (key_t key,
- int msgflg);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t msgrcv (int int_id,
- void *buf,
- size_t len,
- long type,
- int flags);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int msgsnd (int int_id,
- const void *buf,
- size_t len,
- int flags);
- //@}
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_sys_msg.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_SYS_MSG_H */
-
diff --git a/dep/include/ace/OS_NS_sys_msg.inl b/dep/include/ace/OS_NS_sys_msg.inl
deleted file mode 100644
index 5fe12c84a4d..00000000000
--- a/dep/include/ace/OS_NS_sys_msg.inl
+++ /dev/null
@@ -1,78 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_sys_msg.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_errno.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_OS::msgctl (int msqid, int cmd, struct msqid_ds *val)
-{
- ACE_OS_TRACE ("ACE_OS::msgctl");
-#if defined (ACE_HAS_SYSV_IPC)
- ACE_OSCALL_RETURN (::msgctl (msqid, cmd, val), int, -1);
-#else
- ACE_UNUSED_ARG (msqid);
- ACE_UNUSED_ARG (cmd);
- ACE_UNUSED_ARG (val);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_SYSV_IPC */
-}
-
-ACE_INLINE int
-ACE_OS::msgget (key_t key, int msgflg)
-{
- ACE_OS_TRACE ("ACE_OS::msgget");
-#if defined (ACE_HAS_SYSV_IPC)
- ACE_OSCALL_RETURN (::msgget (key, msgflg), int, -1);
-#else
- ACE_UNUSED_ARG (key);
- ACE_UNUSED_ARG (msgflg);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_SYSV_IPC */
-}
-
-ACE_INLINE ssize_t
-ACE_OS::msgrcv (int int_id, void *buf, size_t len,
- long type, int flags)
-{
- ACE_OS_TRACE ("ACE_OS::msgrcv");
-#if defined (ACE_HAS_SYSV_IPC)
- ACE_OSCALL_RETURN (::msgrcv (int_id, buf, len, type, flags),
- int, -1);
-#else
- ACE_UNUSED_ARG (int_id);
- ACE_UNUSED_ARG (buf);
- ACE_UNUSED_ARG (len);
- ACE_UNUSED_ARG (type);
- ACE_UNUSED_ARG (flags);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_SYSV_IPC */
-}
-
-ACE_INLINE int
-ACE_OS::msgsnd (int int_id, const void *buf, size_t len, int flags)
-{
- ACE_OS_TRACE ("ACE_OS::msgsnd");
-#if defined (ACE_HAS_SYSV_IPC)
-# if defined (ACE_HAS_NONCONST_MSGSND)
- ACE_OSCALL_RETURN (::msgsnd (int_id,
- const_cast<void *> (buf), len, flags), int, -1);
-# else
- ACE_OSCALL_RETURN (::msgsnd (int_id, buf, len, flags), int, -1);
-# endif /* ACE_HAS_NONCONST_MSGSND */
-#else
- ACE_UNUSED_ARG (int_id);
- ACE_UNUSED_ARG (buf);
- ACE_UNUSED_ARG (len);
- ACE_UNUSED_ARG (flags);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_SYSV_IPC */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_sys_resource.h b/dep/include/ace/OS_NS_sys_resource.h
deleted file mode 100644
index b8467975d5f..00000000000
--- a/dep/include/ace/OS_NS_sys_resource.h
+++ /dev/null
@@ -1,67 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_sys_resource.h
- *
- * $Id: OS_NS_sys_resource.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_SYS_RESOURCE_H
-# define ACE_OS_NS_SYS_RESOURCE_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_resource.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS
-{
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int getrlimit (int resource,
- struct rlimit *rl);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int getrusage (int who,
- struct rusage *rusage);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int setrlimit (int resource,
- const struct rlimit *rl);
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_sys_resource.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_SYS_RESOURCE_H */
-
diff --git a/dep/include/ace/OS_NS_sys_resource.inl b/dep/include/ace/OS_NS_sys_resource.inl
deleted file mode 100644
index f1f49da91ab..00000000000
--- a/dep/include/ace/OS_NS_sys_resource.inl
+++ /dev/null
@@ -1,98 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_sys_resource.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_errno.h"
-#include "ace/OS_NS_macros.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_OS::getrlimit (int resource, struct rlimit *rl)
-{
- ACE_OS_TRACE ("ACE_OS::getrlimit");
-
-#if defined (ACE_LACKS_RLIMIT)
- ACE_UNUSED_ARG (resource);
- ACE_UNUSED_ARG (rl);
-
- ACE_NOTSUP_RETURN (-1);
-#else
-# if defined (ACE_HAS_RLIMIT_RESOURCE_ENUM)
- ACE_OSCALL_RETURN (::getrlimit ((ACE_HAS_RLIMIT_RESOURCE_ENUM) resource, rl), int, -1);
-# else
- ACE_OSCALL_RETURN (::getrlimit (resource, rl), int, -1);
-# endif /* ACE_HAS_RLIMIT_RESOURCE_ENUM */
-#endif /* ACE_LACKS_RLIMIT */
-}
-
-ACE_INLINE int
-ACE_OS::getrusage (int who, struct rusage *ru)
-{
- ACE_OS_TRACE ("ACE_OS::getrusage");
-
-#if defined (ACE_HAS_GETRUSAGE)
-# if defined (ACE_WIN32)
- ACE_UNUSED_ARG (who);
-
-# if defined (ACE_LACKS_GETPROCESSTIMES)
- ACE_UNUSED_ARG (ru);
- ACE_NOTSUP_RETURN (-1);
-# else
- FILETIME dummy_1;
- FILETIME dummy_2;
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::GetProcessTimes (::GetCurrentProcess(),
- &dummy_1, // start
- &dummy_2, // exited
- &ru->ru_stime,
- &ru->ru_utime),
- ace_result_),
- int, -1);
-# endif /* ACE_LACKS_WIN32_GETPROCESSTIMES */
-# else
-# if defined (ACE_HAS_RUSAGE_WHO_ENUM)
- ACE_OSCALL_RETURN (::getrusage ((ACE_HAS_RUSAGE_WHO_ENUM) who, ru), int, -1);
-# else
- ACE_OSCALL_RETURN (::getrusage (who, ru), int, -1);
-# endif /* ACE_HAS_RUSAGE_WHO_ENUM */
-# endif /* ACE_WIN32 */
-#else
- ACE_UNUSED_ARG (who);
- ACE_UNUSED_ARG (ru);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_GETRUSAGE */
-}
-
-ACE_INLINE int
-ACE_OS::setrlimit (int resource, const struct rlimit *rl)
-{
- ACE_OS_TRACE ("ACE_OS::setrlimit");
-
-#if defined (ACE_LACKS_RLIMIT)
- ACE_UNUSED_ARG (resource);
- ACE_UNUSED_ARG (rl);
-
- ACE_NOTSUP_RETURN (-1);
-#else
-# if defined (ACE_HAS_RLIMIT_RESOURCE_ENUM)
-# if defined (ACE_HAS_NONCONST_SETRLIMIT)
- ACE_OSCALL_RETURN (::setrlimit ((ACE_HAS_RLIMIT_RESOURCE_ENUM) resource,
- const_cast<struct rlimit *>(rl)
- ), int, -1);
-# else
- ACE_OSCALL_RETURN (::setrlimit ((ACE_HAS_RLIMIT_RESOURCE_ENUM) resource,
- rl
- ), int, -1);
-# endif /* ACE_HAS_NONCONST_SETRLIMIT */
-# else /* ACE_HAS_RLIMIT_RESOURCE_ENUM */
-# if defined (ACE_HAS_NONCONST_SETRLIMIT)
- ACE_OSCALL_RETURN (::setrlimit (resource, const_cast<struct rlimit *>(rl)
- ), int, -1);
-# else
- ACE_OSCALL_RETURN (::setrlimit (resource, rl), int, -1);
-# endif /* ACE_HAS_NONCONST_SETRLIMIT */
-# endif /* ACE_HAS_RLIMIT_RESOURCE_ENUM */
-#endif /* ACE_LACKS_RLIMIT */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_sys_select.h b/dep/include/ace/OS_NS_sys_select.h
deleted file mode 100644
index 8425f3eb66c..00000000000
--- a/dep/include/ace/OS_NS_sys_select.h
+++ /dev/null
@@ -1,78 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_sys_select.h
- *
- * $Id: OS_NS_sys_select.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_SYS_SELECT_H
-# define ACE_OS_NS_SYS_SELECT_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// The following is needed for Mac OSX 10.2 (Jaguar). Mac OSX 10.3 (Panther)
-// doesn't seem to have this issue.
-
-#if defined (ACE_SYS_SELECT_NEEDS_UNISTD_H)
- #include "ace/OS_NS_unistd.h"
-#endif
-
-#include "ace/os_include/sys/os_select.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-namespace ACE_OS
-{
- // Should be moved to cpp or inl.
- ACE_NAMESPACE_INLINE_FUNCTION
- int select (int width,
- fd_set *rfds,
- fd_set *wfds = 0,
- fd_set *efds = 0,
- const ACE_Time_Value *tv = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int select (int width,
- fd_set *rfds,
- fd_set *wfds,
- fd_set *efds,
- const ACE_Time_Value &tv);
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_sys_select.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_SYS_SELECT_H */
-
diff --git a/dep/include/ace/OS_NS_sys_select.inl b/dep/include/ace/OS_NS_sys_select.inl
deleted file mode 100644
index e58c6166ed5..00000000000
--- a/dep/include/ace/OS_NS_sys_select.inl
+++ /dev/null
@@ -1,80 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_sys_select.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_errno.h"
-#include "ace/OS_NS_macros.h"
-#include "ace/Time_Value.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// It would be really cool to add another version of select that would
-// function like the one we're defending against below!
-ACE_INLINE int
-ACE_OS::select (int width,
- fd_set *rfds, fd_set *wfds, fd_set *efds,
- const ACE_Time_Value *timeout)
-{
- ACE_OS_TRACE ("ACE_OS::select");
-#if defined (ACE_HAS_NONCONST_SELECT_TIMEVAL)
- // We must defend against non-conformity!
- timeval copy;
- timeval *timep = 0;
-
- if (timeout != 0)
- {
- copy = *timeout;
- timep = &copy;
- }
- else
- timep = 0;
-#else
- const timeval *timep = (timeout == 0 ? (const timeval *)0 : *timeout);
-#endif /* ACE_HAS_NONCONST_SELECT_TIMEVAL */
-#if defined (ACE_LACKS_SELECT)
- ACE_UNUSED_ARG (width);
- ACE_UNUSED_ARG (rfds);
- ACE_UNUSED_ARG (wfds);
- ACE_UNUSED_ARG (efds);
- ACE_UNUSED_ARG (timeout);
- ACE_NOTSUP_RETURN (-1);
-#elif defined(ACE_TANDEM_T1248_PTHREADS)
- ACE_SOCKCALL_RETURN (::spt_select (width, rfds, wfds, efds, timep),
- int, -1);
-#else
- ACE_SOCKCALL_RETURN (::select (width, rfds, wfds, efds, timep),
- int, -1);
-#endif
-}
-
-ACE_INLINE int
-ACE_OS::select (int width,
- fd_set *rfds, fd_set *wfds, fd_set *efds,
- const ACE_Time_Value &timeout)
-{
- ACE_OS_TRACE ("ACE_OS::select");
-#if defined (ACE_HAS_NONCONST_SELECT_TIMEVAL)
-# define ___ACE_TIMEOUT &copy
- timeval copy = timeout;
-#else
-# define ___ACE_TIMEOUT timep
- const timeval *timep = timeout;
-#endif /* ACE_HAS_NONCONST_SELECT_TIMEVAL */
-#if defined (ACE_LACKS_SELECT)
- ACE_UNUSED_ARG (width);
- ACE_UNUSED_ARG (rfds);
- ACE_UNUSED_ARG (wfds);
- ACE_UNUSED_ARG (efds);
- ACE_UNUSED_ARG (timeout);
- ACE_NOTSUP_RETURN (-1);
-#elif defined(ACE_TANDEM_T1248_PTHREADS)
- ACE_SOCKCALL_RETURN (::spt_select (width, rfds, wfds, efds, ___ACE_TIMEOUT),
- int, -1);
-#else
- ACE_SOCKCALL_RETURN (::select (width, rfds, wfds, efds, ___ACE_TIMEOUT),
- int, -1);
-#endif
-#undef ___ACE_TIMEOUT
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_sys_sendfile.h b/dep/include/ace/OS_NS_sys_sendfile.h
deleted file mode 100644
index 3948a88b25e..00000000000
--- a/dep/include/ace/OS_NS_sys_sendfile.h
+++ /dev/null
@@ -1,65 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_sys_sendfile.h
- *
- * $Id: OS_NS_sys_sendfile.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Ossama Othman <ossama@dre.vanderbilt.edu>
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_SYS_SENDFILE_H
-#define ACE_OS_NS_SYS_SENDFILE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Basic_Types.h" /* For ssize_t and off_t. */
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS
-{
- /// Finds the length of a string (char version).
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t sendfile (ACE_HANDLE out_fd,
- ACE_HANDLE in_fd,
- off_t * offset,
- size_t count);
-
-#ifndef ACE_HAS_SENDFILE
- extern ACE_Export
- ssize_t sendfile_emulation (ACE_HANDLE out_fd,
- ACE_HANDLE in_fd,
- off_t * offset,
- size_t count);
-#endif /* !ACE_HAS_SENDFILE */
-
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_sys_sendfile.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_OS_NS_SYS_SENDFILE_H */
-
diff --git a/dep/include/ace/OS_NS_sys_sendfile.inl b/dep/include/ace/OS_NS_sys_sendfile.inl
deleted file mode 100644
index 72270e8f396..00000000000
--- a/dep/include/ace/OS_NS_sys_sendfile.inl
+++ /dev/null
@@ -1,24 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_sys_sendfile.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#ifdef ACE_HAS_SENDFILE
-# include <sys/sendfile.h>
-#endif /* ACE_HAS_SENDFILE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ssize_t
-ACE_OS::sendfile (ACE_HANDLE out_fd,
- ACE_HANDLE in_fd,
- off_t * offset,
- size_t count)
-{
-#ifdef ACE_HAS_SENDFILE
- return ::sendfile (out_fd, in_fd, offset, count);
-#else
- return ACE_OS::sendfile_emulation (out_fd, in_fd, offset, count);
-#endif /* ACE_HAS_SENDFILE */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_sys_shm.h b/dep/include/ace/OS_NS_sys_shm.h
deleted file mode 100644
index bd5cbadc80b..00000000000
--- a/dep/include/ace/OS_NS_sys_shm.h
+++ /dev/null
@@ -1,75 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_sys_shm.h
- *
- * $Id: OS_NS_sys_shm.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_SYS_SHM_H
-# define ACE_OS_NS_SYS_SHM_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_shm.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS
-{
-
- //@{ @name A set of wrappers for System V shared memory.
- ACE_NAMESPACE_INLINE_FUNCTION
- void *shmat (int int_id,
- const void *shmaddr,
- int shmflg);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int shmctl (int int_id,
- int cmd,
- struct shmid_ds *buf);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int shmdt (const void *shmaddr);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int shmget (key_t key,
- size_t size,
- int flags);
- ///@}
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_sys_shm.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_SYS_SHM_H */
-
diff --git a/dep/include/ace/OS_NS_sys_shm.inl b/dep/include/ace/OS_NS_sys_shm.inl
deleted file mode 100644
index 013d208438b..00000000000
--- a/dep/include/ace/OS_NS_sys_shm.inl
+++ /dev/null
@@ -1,76 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_sys_shm.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_errno.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE void *
-ACE_OS::shmat (int int_id, const void *shmaddr, int shmflg)
-{
- ACE_OS_TRACE ("ACE_OS::shmat");
-#if defined (ACE_HAS_SYSV_IPC)
-# if defined (ACE_HAS_CHARPTR_SHMAT)
- ACE_OSCALL_RETURN (::shmat (int_id, static_cast <char*> (const_cast <void *>(shmaddr)), shmflg), void *, (void *) -1);
-# else
- ACE_OSCALL_RETURN (::shmat (int_id, shmaddr, shmflg), void *, (void *) -1);
-# endif /* ACE_HAS_CHARPTR_SHMAT */
-#else
- ACE_UNUSED_ARG (int_id);
- ACE_UNUSED_ARG (shmaddr);
- ACE_UNUSED_ARG (shmflg);
-
- ACE_NOTSUP_RETURN ((void *) -1);
-#endif /* ACE_HAS_SYSV_IPC */
-}
-
-ACE_INLINE int
-ACE_OS::shmctl (int int_id, int cmd, struct shmid_ds *buf)
-{
- ACE_OS_TRACE ("ACE_OS::shmctl");
-#if defined (ACE_HAS_SYSV_IPC)
- ACE_OSCALL_RETURN (::shmctl (int_id, cmd, buf), int, -1);
-#else
- ACE_UNUSED_ARG (buf);
- ACE_UNUSED_ARG (cmd);
- ACE_UNUSED_ARG (int_id);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_SYSV_IPC */
-}
-
-ACE_INLINE int
-ACE_OS::shmdt (const void *shmaddr)
-{
- ACE_OS_TRACE ("ACE_OS::shmdt");
-#if defined (ACE_HAS_SYSV_IPC)
-# if defined (ACE_HAS_CHARPTR_SHMDT)
- ACE_OSCALL_RETURN (::shmdt (
- static_cast <char*> (const_cast <void *>(shmaddr))), int, -1);
-# else
- ACE_OSCALL_RETURN (::shmdt (shmaddr), int, -1);
-# endif /* ACE_HAS_CHARPTR_SHMDT */
-#else
- ACE_UNUSED_ARG (shmaddr);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_SYSV_IPC */
-}
-
-ACE_INLINE int
-ACE_OS::shmget (key_t key, size_t size, int flags)
-{
- ACE_OS_TRACE ("ACE_OS::shmget");
-#if defined (ACE_HAS_SYSV_IPC)
- ACE_OSCALL_RETURN (::shmget (key, size, flags), int, -1);
-#else
- ACE_UNUSED_ARG (flags);
- ACE_UNUSED_ARG (size);
- ACE_UNUSED_ARG (key);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_SYSV_IPC */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_sys_socket.h b/dep/include/ace/OS_NS_sys_socket.h
deleted file mode 100644
index a0e644f190e..00000000000
--- a/dep/include/ace/OS_NS_sys_socket.h
+++ /dev/null
@@ -1,302 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_sys_socket.h
- *
- * $Id: OS_NS_sys_socket.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_SYS_SOCKET_H
-# define ACE_OS_NS_SYS_SOCKET_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_socket.h"
-#include "ace/os_include/net/os_if.h"
-#include "ace/OS_NS_stropts.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-/// These are available values for the @a how argument to ACE_OS::shutdown().
-#if defined (SD_RECEIVE)
-#define ACE_SHUTDOWN_READ SD_RECEIVE
-#elif defined (SHUT_RD)
-#define ACE_SHUTDOWN_READ SHUT_RD
-#else
-#define ACE_SHUTDOWN_READ 0
-#endif /* SD_RECEIVE */
-
-#if defined (SD_SEND)
-#define ACE_SHUTDOWN_WRITE SD_SEND
-#elif defined (SHUT_WR)
-#define ACE_SHUTDOWN_WRITE SHUT_WR
-#else
-#define ACE_SHUTDOWN_WRITE 1
-#endif /* SD_SEND */
-
-#if defined (SD_BOTH)
-#define ACE_SHUTDOWN_BOTH SD_BOTH
-#elif defined (SHUT_RDWR)
-#define ACE_SHUTDOWN_BOTH SHUT_RDWR
-#else
-#define ACE_SHUTDOWN_BOTH 2
-#endif /* SD_BOTH */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Accept_QoS_Params;
-class ACE_QoS_Params;
-
-namespace ACE_OS
-{
-
-# if defined (ACE_WIN32)
- /// Keeps track of whether we've already initialized WinSock...
- extern ACE_Export int socket_initialized_;
-# endif /* ACE_WIN32 */
-
- //@{ @name A set of wrappers for sockets.
- /// BSD-style <accept> (no QoS).
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_HANDLE accept (ACE_HANDLE handle,
- struct sockaddr *addr,
- int *addrlen);
-
-#if !(defined (ACE_HAS_WINCE) && (UNDER_CE < 500))
- /**
- * QoS-enabled <accept>, which passes @a qos_params to <accept>. If
- * the OS platform doesn't support QoS-enabled <accept> then the
- * @a qos_params are ignored and the BSD-style <accept> is called.
- */
- extern ACE_Export
- ACE_HANDLE accept (ACE_HANDLE handle,
- struct sockaddr *addr,
- int *addrlen,
- const ACE_Accept_QoS_Params &qos_params);
-#endif /* !(defined (ACE_HAS_WINCE) && (UNDER_CE < 500)) */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int bind (ACE_HANDLE s,
- struct sockaddr *name,
- int namelen);
-
- /// Takes care of windows specific requirement to call closesocket
- ACE_NAMESPACE_INLINE_FUNCTION
- int closesocket (ACE_HANDLE s);
-
- /// BSD-style <connect> (no QoS).
- ACE_NAMESPACE_INLINE_FUNCTION
- int connect (ACE_HANDLE handle,
- struct sockaddr *addr,
- int addrlen);
-
-#if !(defined (ACE_HAS_WINCE) && (UNDER_CE < 500))
- /**
- * QoS-enabled <connect>, which passes @a qos_params to <connect>.
- * If the OS platform doesn't support QoS-enabled <connect> then the
- * @a qos_params are ignored and the BSD-style <connect> is called.
- */
- extern ACE_Export
- int connect (ACE_HANDLE handle,
- const sockaddr *addr,
- int addrlen,
- const ACE_QoS_Params &qos_params);
-#endif /* !(defined (ACE_HAS_WINCE) && (UNDER_CE < 500)) */
-
- /// Retrieve information about available transport protocols
- /// installed on the local machine. Windows specific...
- ACE_NAMESPACE_INLINE_FUNCTION
- int enum_protocols (int *protocols,
- ACE_Protocol_Info *protocol_buffer,
- u_long *buffer_length);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int getpeername (ACE_HANDLE handle,
- struct sockaddr *addr,
- int *addrlen);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int getsockname (ACE_HANDLE handle,
- struct sockaddr *addr,
- int *addrlen);
- ACE_NAMESPACE_INLINE_FUNCTION
- int getsockopt (ACE_HANDLE handle,
- int level,
- int optname,
- char *optval,
- int *optlen);
-
-#if !(defined (ACE_HAS_WINCE) && (UNDER_CE < 500))
- /// Joins a leaf node into a QoS-enabled multi-point session.
- extern ACE_Export
- ACE_HANDLE join_leaf (ACE_HANDLE socket,
- const sockaddr *name,
- int namelen,
- const ACE_QoS_Params &qos_params);
-#endif /* !(defined (ACE_HAS_WINCE) && (UNDER_CE < 500)) */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int listen (ACE_HANDLE handle,
- int backlog);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t recv (ACE_HANDLE handle,
- char *buf,
- size_t len,
- int flags = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t recvfrom (ACE_HANDLE handle,
- char *buf,
- size_t len,
- int flags,
- struct sockaddr *addr,
- int *addrlen);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t recvfrom (ACE_HANDLE handle,
- iovec *buffers,
- int buffer_count,
- size_t &number_of_bytes_recvd,
- int &flags,
- struct sockaddr *addr,
- int *addrlen,
- ACE_OVERLAPPED *overlapped,
- ACE_OVERLAPPED_COMPLETION_FUNC func);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t recvmsg (ACE_HANDLE handle,
- struct msghdr *msg,
- int flags);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t recvv (ACE_HANDLE handle,
- iovec *iov,
- int iovlen);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t send (ACE_HANDLE handle,
- const char *buf,
- size_t len,
- int flags = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t sendmsg (ACE_HANDLE handle,
- const struct msghdr *msg,
- int flags);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t sendto (ACE_HANDLE handle,
- const char *buf,
- size_t len,
- int flags,
- const struct sockaddr *addr,
- int addrlen);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t sendto (ACE_HANDLE handle,
- const iovec *buffers,
- int buffer_count,
- size_t &number_of_bytes_sent,
- int flags,
- const struct sockaddr *addr,
- int addrlen,
- ACE_OVERLAPPED *overlapped,
- ACE_OVERLAPPED_COMPLETION_FUNC func);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t sendv (ACE_HANDLE handle,
- const iovec *iov,
- int iovcnt);
-
- /// Manipulate the options associated with a socket.
- ACE_NAMESPACE_INLINE_FUNCTION
- int setsockopt (ACE_HANDLE handle,
- int level,
- int optname,
- const char *optval,
- int optlen);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int shutdown (ACE_HANDLE handle,
- int how);
-
-#if defined (__linux__) && defined (ACE_HAS_IPV6)
- ACE_NAMESPACE_INLINE_FUNCTION
- unsigned int if_nametoindex (const char *ifname);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- char *if_indextoname (unsigned int ifindex, char *ifname);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- struct if_nameindex *if_nameindex (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void if_freenameindex (struct if_nameindex *ptr);
-#endif /* __linux__ && ACE_HAS_IPV6 */
-
- /// Initialize WinSock before first use (e.g., when a DLL is first
- /// loaded or the first use of a socket() call.
- extern ACE_Export
- int socket_init (int version_high = 1,
- int version_low = 1);
-
- /// Finalize WinSock after last use (e.g., when a DLL is unloaded).
- extern ACE_Export
- int socket_fini (void);
-
- /// Create a BSD-style socket (no QoS).
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_HANDLE socket (int protocol_family,
- int type,
- int proto);
-
- /// Create a QoS-enabled socket. If the OS platform doesn't support
- /// QoS-enabled <socket> then the BSD-style <socket> is called.
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_HANDLE socket (int protocol_family,
- int type,
- int proto,
- ACE_Protocol_Info *protocolinfo,
- ACE_SOCK_GROUP g,
- u_long flags);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int socketpair (int domain,
- int type,
- int protocol,
- ACE_HANDLE sv[2]);
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_sys_socket.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_SYS_SOCKET_H */
-
diff --git a/dep/include/ace/OS_NS_sys_socket.inl b/dep/include/ace/OS_NS_sys_socket.inl
deleted file mode 100644
index db63c418d84..00000000000
--- a/dep/include/ace/OS_NS_sys_socket.inl
+++ /dev/null
@@ -1,1002 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_sys_socket.inl 82342 2008-07-17 19:52:57Z shuston $
-
-#include "ace/OS_NS_errno.h"
-#include "ace/OS_NS_macros.h"
-#include "ace/OS_NS_sys_uio.h"
-#include "ace/OS_NS_stdio.h"
-#include "ace/OS_QoS.h"
-#include "ace/Global_Macros.h"
-#include "ace/os_include/netinet/os_in.h"
-
-#if defined (ACE_GETNAME_RETURNS_RANDOM_SIN_ZERO) \
- && (ACE_GETNAME_RETURNS_RANDOM_SIN_ZERO == 1)
-#include "ace/OS_NS_string.h"
-#endif
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_HAS_VOIDPTR_SOCKOPT)
-typedef void *ACE_SOCKOPT_TYPE1;
-#elif defined (ACE_HAS_CHARPTR_SOCKOPT)
-typedef char *ACE_SOCKOPT_TYPE1;
-#else
-typedef const char *ACE_SOCKOPT_TYPE1;
-#endif /* ACE_HAS_VOIDPTR_SOCKOPT */
-
-ACE_INLINE ACE_HANDLE
-ACE_OS::accept (ACE_HANDLE handle,
- struct sockaddr *addr,
- int *addrlen)
-{
- ACE_OS_TRACE ("ACE_OS::accept");
- // On a non-blocking socket with no connections to accept, this
- // system call will return EWOULDBLOCK or EAGAIN, depending on the
- // platform. UNIX 98 allows either errno, and they may be the same
- // numeric value. So to make life easier for upper ACE layers as
- // well as application programmers, always change EAGAIN to
- // EWOULDBLOCK. Rather than hack the ACE_OSCALL_RETURN macro, it's
- // handled explicitly here. If the ACE_OSCALL macro ever changes,
- // this function needs to be reviewed. On Win32, the regular macros
- // can be used, as this is not an issue.
-
-#if defined (ACE_LACKS_ACCEPT)
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (addr);
- ACE_UNUSED_ARG (addrlen);
- ACE_NOTSUP_RETURN (ACE_INVALID_HANDLE);
-#elif defined (ACE_WIN32)
- ACE_SOCKCALL_RETURN (::accept ((ACE_SOCKET) handle,
- addr,
- (ACE_SOCKET_LEN *) addrlen),
- ACE_HANDLE,
- ACE_INVALID_HANDLE);
-#else
-# if defined (ACE_HAS_BROKEN_ACCEPT_ADDR)
- // Apparently some platforms like VxWorks can't correctly deal with
- // a NULL addr.
-
- sockaddr_in fake_addr;
- int fake_addrlen;
-
- if (addrlen == 0)
- addrlen = &fake_addrlen;
-
- if (addr == 0)
- {
- addr = (sockaddr *) &fake_addr;
- *addrlen = sizeof fake_addr;
- }
-# endif /* ACE_HAS_BROKEN_ACCEPT_ADDR */
- ACE_HANDLE ace_result = ::accept ((ACE_SOCKET) handle,
- addr,
- (ACE_SOCKET_LEN *) addrlen);
-
-# if !(defined (EAGAIN) && defined (EWOULDBLOCK) && EAGAIN == EWOULDBLOCK)
- // Optimize this code out if we can detect that EAGAIN ==
- // EWOULDBLOCK at compile time. If we cannot detect equality at
- // compile-time (e.g. if EAGAIN or EWOULDBLOCK are not preprocessor
- // macros) perform the check at run-time. The goal is to avoid two
- // TSS accesses in the _REENTRANT case when EAGAIN == EWOULDBLOCK.
- if (ace_result == ACE_INVALID_HANDLE
-# if !defined (EAGAIN) || !defined (EWOULDBLOCK)
- && EAGAIN != EWOULDBLOCK
-# endif /* !EAGAIN || !EWOULDBLOCK */
- && errno == EAGAIN)
- {
- errno = EWOULDBLOCK;
- }
-# endif /* EAGAIN != EWOULDBLOCK*/
-
- return ace_result;
-
-#endif /* defined (ACE_WIN32) */
-}
-
-ACE_INLINE int
-ACE_OS::bind (ACE_HANDLE handle, struct sockaddr *addr, int addrlen)
-{
- ACE_OS_TRACE ("ACE_OS::bind");
-#if defined (ACE_LACKS_BIND)
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (addr);
- ACE_UNUSED_ARG (addrlen);
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_VXWORKS) && (ACE_VXWORKS <= 0x640)
- // VxWorks clears the sin_port member after a succesfull bind when
- // sin_addr != INADDR_ANY, so after the bind we do retrieve the
- // original address so that user code can safely check the addr
- // after the bind. See bugzilla 3107 for more details
- int result;
- ACE_SOCKCALL (::bind ((ACE_SOCKET) handle,
- addr,
- (ACE_SOCKET_LEN) addrlen), int, -1, result);
- if (result == -1)
- return -1;
- else
- return ACE_OS::getsockname (handle, addr, &addrlen);
-#else
- ACE_SOCKCALL_RETURN (::bind ((ACE_SOCKET) handle,
- addr,
- (ACE_SOCKET_LEN) addrlen), int, -1);
-#endif
-}
-
-ACE_INLINE int
-ACE_OS::closesocket (ACE_HANDLE handle)
-{
- ACE_OS_TRACE ("ACE_OS::closesocket");
-#if defined (ACE_WIN32)
- // @note Do not shutdown the write end here. Doing so will break
- // applications that duplicate a handle on fork(), for
- // example, and expect to continue writing in the fork()ed
- // process.
-
- ACE_SOCKCALL_RETURN (::closesocket ((SOCKET) handle), int, -1);
-#else
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_OSCALL_RETURN (::close (handle), int, -1);
- //FUZZ: enable check_for_lack_ACE_OS
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE int
-ACE_OS::connect (ACE_HANDLE handle,
- struct sockaddr *addr,
- int addrlen)
-{
- ACE_OS_TRACE ("ACE_OS::connect");
-#if defined (ACE_LACKS_CONNECT)
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (addr);
- ACE_UNUSED_ARG (addrlen);
- ACE_NOTSUP_RETURN (-1);
-#else
- ACE_SOCKCALL_RETURN (::connect ((ACE_SOCKET) handle,
- addr,
- (ACE_SOCKET_LEN) addrlen), int, -1);
-#endif /* ACE_LACKS_CONNECT */
-}
-
-ACE_INLINE int
-ACE_OS::enum_protocols (int *protocols,
- ACE_Protocol_Info *protocol_buffer,
- u_long *buffer_length)
-{
-#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
-
- ACE_SOCKCALL_RETURN (::WSAEnumProtocols (protocols,
- protocol_buffer,
- buffer_length),
- int,
- SOCKET_ERROR);
-
-#else
- ACE_UNUSED_ARG (protocols);
- ACE_UNUSED_ARG (protocol_buffer);
- ACE_UNUSED_ARG (buffer_length);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_WINSOCK2 */
-}
-
-ACE_INLINE int
-ACE_OS::getpeername (ACE_HANDLE handle, struct sockaddr *addr,
- int *addrlen)
-{
- ACE_OS_TRACE ("ACE_OS::getpeername");
-
-#if defined (ACE_LACKS_GETPEERNAME)
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (addr);
- ACE_UNUSED_ARG (addrlen);
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_GETNAME_RETURNS_RANDOM_SIN_ZERO) \
- && (ACE_GETNAME_RETURNS_RANDOM_SIN_ZERO == 1)
- int result;
- ACE_SOCKCALL (::getpeername ((ACE_SOCKET) handle,
- addr,
- (ACE_SOCKET_LEN *) addrlen),
- int,
- -1,
- result);
-
- // Some platforms, like older versions of the Linux kernel, do not
- // initialize the sin_zero field since that field is generally only
- // used for padding/alignment purposes. On those platforms
- // memcmp()-based comparisons of the sockaddr_in structure, such as
- // the one in the ACE_INET_Addr equality operator, may fail due to
- // random bytes in the sin_zero field even though that field is
- // unused. Prevent equality comparison of two different sockaddr_in
- // instances that refer to the same socket from failing by
- // explicitly initializing the sockaddr_in::sin_zero field to a
- // consistent value, e.g. zero.
- if (result != -1 && addr->sa_family == AF_INET)
- {
- ACE_OS::memset (reinterpret_cast<struct sockaddr_in *> (addr)->sin_zero,
- 0,
- sizeof (reinterpret_cast<struct sockaddr_in *> (addr)->sin_zero));
- }
-
- return result;
-#else
- ACE_SOCKCALL_RETURN (::getpeername ((ACE_SOCKET) handle,
- addr,
- (ACE_SOCKET_LEN *) addrlen),
- int,
- -1);
-#endif /* ACE_GETNAME_RETURNS_RANDOM_SIN_ZERO */
-}
-
-ACE_INLINE int
-ACE_OS::getsockname (ACE_HANDLE handle,
- struct sockaddr *addr,
- int *addrlen)
-{
- ACE_OS_TRACE ("ACE_OS::getsockname");
-#if defined (ACE_LACKS_GETSOCKNAME)
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (addr);
- ACE_UNUSED_ARG (addrlen);
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_GETNAME_RETURNS_RANDOM_SIN_ZERO) \
- && (ACE_GETNAME_RETURNS_RANDOM_SIN_ZERO == 1)
- int result;
- ACE_SOCKCALL (::getsockname ((ACE_SOCKET) handle,
- addr,
- (ACE_SOCKET_LEN *) addrlen),
- int, -1, result);
-
- // Some platforms, like older versions of the Linux kernel, do not
- // initialize the sin_zero field since that field is generally only
- // used for padding/alignment purposes. On those platforms
- // memcmp()-based comparisons of the sockaddr_in structure, such as
- // the one in the ACE_INET_Addr equality operator, may fail due to
- // random bytes in the sin_zero field even though that field is
- // unused. Prevent equality comparison of two different sockaddr_in
- // instances that refer to the same socket from failing by
- // explicitly initializing the sockaddr_in::sin_zero field to a
- // consistent value, e.g. zero.
- if (result != -1 && addr->sa_family == AF_INET)
- {
- ACE_OS::memset (reinterpret_cast<struct sockaddr_in *> (addr)->sin_zero,
- 0,
- sizeof (reinterpret_cast<struct sockaddr_in *> (addr)->sin_zero));
- }
-
- return result;
-#else
- ACE_SOCKCALL_RETURN (::getsockname ((ACE_SOCKET) handle,
- addr,
- (ACE_SOCKET_LEN *) addrlen),
- int, -1);
-#endif /* ACE_GETNAME_RETURNS_RANDOM_SIN_ZERO */
-}
-
-ACE_INLINE int
-ACE_OS::getsockopt (ACE_HANDLE handle,
- int level,
- int optname,
- char *optval,
- int *optlen)
-{
- ACE_OS_TRACE ("ACE_OS::getsockopt");
-#if defined (ACE_LACKS_GETSOCKOPT)
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (level);
- ACE_UNUSED_ARG (optname);
- ACE_UNUSED_ARG (optval);
- ACE_UNUSED_ARG (optlen);
- ACE_NOTSUP_RETURN (-1);
-#else
- ACE_SOCKCALL_RETURN (::getsockopt ((ACE_SOCKET) handle,
- level,
- optname,
- optval,
- (ACE_SOCKET_LEN *) optlen),
- int,
- -1);
-#endif /* ACE_LACKS_GETSOCKOPT */
-}
-
-ACE_INLINE int
-ACE_OS::listen (ACE_HANDLE handle, int backlog)
-{
- ACE_OS_TRACE ("ACE_OS::listen");
-#if defined (ACE_LACKS_LISTEN)
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (backlog);
- ACE_NOTSUP_RETURN (-1);
-#else
- ACE_SOCKCALL_RETURN (::listen ((ACE_SOCKET) handle, backlog), int, -1);
-#endif /* ACE_LACKS_LISTEN */
-}
-
-ACE_INLINE ssize_t
-ACE_OS::recv (ACE_HANDLE handle, char *buf, size_t len, int flags)
-{
- ACE_OS_TRACE ("ACE_OS::recv");
-
- // On UNIX, a non-blocking socket with no data to receive, this
- // system call will return EWOULDBLOCK or EAGAIN, depending on the
- // platform. UNIX 98 allows either errno, and they may be the same
- // numeric value. So to make life easier for upper ACE layers as
- // well as application programmers, always change EAGAIN to
- // EWOULDBLOCK. Rather than hack the ACE_OSCALL_RETURN macro, it's
- // handled explicitly here. If the ACE_OSCALL macro ever changes,
- // this function needs to be reviewed. On Win32, the regular macros
- // can be used, as this is not an issue.
-#if defined (ACE_LACKS_RECV)
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (buf);
- ACE_UNUSED_ARG (len);
- ACE_UNUSED_ARG (flags);
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_WIN32)
- ACE_SOCKCALL_RETURN (::recv ((ACE_SOCKET) handle, buf,
- static_cast<int> (len), flags), ssize_t, -1);
-#else
- ssize_t ace_result_;
- ace_result_ = ::recv ((ACE_SOCKET) handle, buf, len, flags);
-
-# if !(defined (EAGAIN) && defined (EWOULDBLOCK) && EAGAIN == EWOULDBLOCK)
- // Optimize this code out if we can detect that EAGAIN ==
- // EWOULDBLOCK at compile time. If we cannot detect equality at
- // compile-time (e.g. if EAGAIN or EWOULDBLOCK are not preprocessor
- // macros) perform the check at run-time. The goal is to avoid two
- // TSS accesses in the _REENTRANT case when EAGAIN == EWOULDBLOCK.
- if (ace_result_ == -1
-# if !defined (EAGAIN) || !defined (EWOULDBLOCK)
- && EAGAIN != EWOULDBLOCK
-# endif /* !EAGAIN || !EWOULDBLOCK */
- && errno == EAGAIN)
- {
- errno = EWOULDBLOCK;
- }
-# endif /* EAGAIN != EWOULDBLOCK*/
-
- return ace_result_;
-#endif /* ACE_LACKS_RECV */
-}
-
-ACE_INLINE ssize_t
-ACE_OS::recvfrom (ACE_HANDLE handle,
- char *buf,
- size_t len,
- int flags,
- struct sockaddr *addr,
- int *addrlen)
-{
- ACE_OS_TRACE ("ACE_OS::recvfrom");
-#if defined (ACE_LACKS_RECVFROM)
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (buf);
- ACE_UNUSED_ARG (len);
- ACE_UNUSED_ARG (flags);
- ACE_UNUSED_ARG (addr);
- ACE_UNUSED_ARG (addrlen);
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_WIN32)
- int const shortened_len = static_cast<int> (len);
- int const result = ::recvfrom ((ACE_SOCKET) handle,
- buf,
- shortened_len,
- flags,
- addr,
- (ACE_SOCKET_LEN *) addrlen);
- if (result == SOCKET_ERROR)
- {
- ACE_OS::set_errno_to_wsa_last_error ();
- if (errno == WSAEMSGSIZE &&
- ACE_BIT_ENABLED (flags, MSG_PEEK))
- return shortened_len;
- else
- return -1;
- }
- else
- {
-# if defined (ACE_HAS_PHARLAP)
- // Pharlap ETS (at least to v13) returns a legit address but doesn't
- // include the sin_zero[8] bytes in the count. Correct for this here.
- if (addrlen != 0 && addr != 0 &&
- *addrlen == 8 && addr->sa_family == AF_INET)
- *addrlen = sizeof(sockaddr_in);
-# endif /* ACE_HAS_PHARLAP */
- return result;
- }
-#else /* non Win32 */
- ACE_SOCKCALL_RETURN (::recvfrom ((ACE_SOCKET) handle,
- buf,
- len,
- flags,
- addr,
- (ACE_SOCKET_LEN *) addrlen),
- ssize_t, -1);
-#endif /* ACE_LACKS_RECVFROM */
-}
-
-ACE_INLINE ssize_t
-ACE_OS::recvfrom (ACE_HANDLE handle,
- iovec *buffers,
- int buffer_count,
- size_t &number_of_bytes_recvd,
- int &flags,
- struct sockaddr *addr,
- int *addrlen,
- ACE_OVERLAPPED *overlapped,
- ACE_OVERLAPPED_COMPLETION_FUNC func)
-{
- ACE_OS_TRACE ("ACE_OS::recvfrom");
-
-#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
- DWORD bytes_recvd;
- DWORD the_flags = flags;
- int result = ::WSARecvFrom ((SOCKET) handle,
- (WSABUF*)buffers,
- buffer_count,
- &bytes_recvd,
- &the_flags,
- addr,
- addrlen,
- overlapped,
- func);
- if (result != 0) {
- ACE_OS::set_errno_to_wsa_last_error ();
- }
- flags = the_flags;
- number_of_bytes_recvd = static_cast<size_t> (bytes_recvd);
- return result;
-#else
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (buffers);
- ACE_UNUSED_ARG (buffer_count);
- ACE_UNUSED_ARG (number_of_bytes_recvd);
- ACE_UNUSED_ARG (flags);
- ACE_UNUSED_ARG (addr);
- ACE_UNUSED_ARG (addrlen);
- ACE_UNUSED_ARG (overlapped);
- ACE_UNUSED_ARG (func);
- ACE_NOTSUP_RETURN (-1);
-#endif /* defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0) */
-}
-
-ACE_INLINE ssize_t
-ACE_OS::recvmsg (ACE_HANDLE handle, struct msghdr *msg, int flags)
-{
- ACE_OS_TRACE ("ACE_OS::recvmsg");
-#if !defined (ACE_LACKS_RECVMSG)
-# if (defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0))
- DWORD bytes_received = 0;
-
- int result = ::WSARecvFrom ((SOCKET) handle,
- (WSABUF *) msg->msg_iov,
- msg->msg_iovlen,
- &bytes_received,
- (DWORD *) &flags,
- msg->msg_name,
- &msg->msg_namelen,
- 0,
- 0);
-
- if (result != 0)
- {
- ACE_OS::set_errno_to_wsa_last_error ();
- return -1;
- }
- else
- return bytes_received;
-# else /* ACE_HAS_WINSOCK2 */
- ACE_SOCKCALL_RETURN (::recvmsg (handle, msg, flags), ssize_t, -1);
-# endif /* ACE_HAS_WINSOCK2 */
-#else
- ACE_UNUSED_ARG (flags);
- ACE_UNUSED_ARG (msg);
- ACE_UNUSED_ARG (handle);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_LACKS_RECVMSG */
-}
-
-ACE_INLINE ssize_t
-ACE_OS::recvv (ACE_HANDLE handle,
- iovec *buffers,
- int n)
-{
-#if defined (ACE_HAS_WINSOCK2)
-
- DWORD bytes_received = 0;
- int result = 1;
-
- // Winsock 2 has WSARecv and can do this directly, but Winsock 1 needs
- // to do the recvs piece-by-piece.
-
-# if (ACE_HAS_WINSOCK2 != 0)
- DWORD flags = 0;
- result = ::WSARecv ((SOCKET) handle,
- (WSABUF *) buffers,
- n,
- &bytes_received,
- &flags,
- 0,
- 0);
-# else
- int i, chunklen;
- char *chunkp = 0;
-
- // Step through the buffers requested by caller; for each one, cycle
- // through reads until it's filled or an error occurs.
- for (i = 0; i < n && result > 0; ++i)
- {
- chunkp = buffers[i].iov_base; // Point to part of chunk being read
- chunklen = buffers[i].iov_len; // Track how much to read to chunk
- while (chunklen > 0 && result > 0)
- {
- result = ::recv ((SOCKET) handle, chunkp, chunklen, 0);
- if (result > 0)
- {
- chunkp += result;
- chunklen -= result;
- bytes_received += result;
- }
- }
- }
-# endif /* ACE_HAS_WINSOCK2 != 0 */
-
- if (result == SOCKET_ERROR)
- {
- ACE_OS::set_errno_to_wsa_last_error ();
- return -1;
- }
- else
- return (ssize_t) bytes_received;
-#else
- return ACE_OS::readv (handle, buffers, n);
-#endif /* ACE_HAS_WINSOCK2 */
-}
-
-ACE_INLINE ssize_t
-ACE_OS::send (ACE_HANDLE handle, const char *buf, size_t len, int flags)
-{
- ACE_OS_TRACE ("ACE_OS::send");
-
- // On UNIX, a non-blocking socket with no data to receive, this
- // system call will return EWOULDBLOCK or EAGAIN, depending on the
- // platform. UNIX 98 allows either errno, and they may be the same
- // numeric value. So to make life easier for upper ACE layers as
- // well as application programmers, always change EAGAIN to
- // EWOULDBLOCK. Rather than hack the ACE_OSCALL_RETURN macro, it's
- // handled explicitly here. If the ACE_OSCALL macro ever changes,
- // this function needs to be reviewed. On Win32, the regular macros
- // can be used, as this is not an issue.
-#if defined (ACE_LACKS_SEND)
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (buf);
- ACE_UNUSED_ARG (len);
- ACE_UNUSED_ARG (flags);
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_WIN32)
- ACE_SOCKCALL_RETURN (::send ((ACE_SOCKET) handle,
- buf,
- static_cast<int> (len),
- flags), ssize_t, -1);
-#else
- ssize_t const ace_result_ = ::send ((ACE_SOCKET) handle, buf, len, flags);
-
-# if !(defined (EAGAIN) && defined (EWOULDBLOCK) && EAGAIN == EWOULDBLOCK)
- // Optimize this code out if we can detect that EAGAIN ==
- // EWOULDBLOCK at compile time. If we cannot detect equality at
- // compile-time (e.g. if EAGAIN or EWOULDBLOCK are not preprocessor
- // macros) perform the check at run-time. The goal is to avoid two
- // TSS accesses in the _REENTRANT case when EAGAIN == EWOULDBLOCK.
- if (ace_result_ == -1
-# if !defined (EAGAIN) || !defined (EWOULDBLOCK)
- && EAGAIN != EWOULDBLOCK
-# endif /* !EAGAIN || !EWOULDBLOCK */
- && errno == EAGAIN)
- {
- errno = EWOULDBLOCK;
- }
-# endif /* EAGAIN != EWOULDBLOCK*/
-
- return ace_result_;
-#endif /* defined (ACE_WIN32) */
-}
-
-ACE_INLINE ssize_t
-ACE_OS::sendmsg (ACE_HANDLE handle,
- const struct msghdr *msg,
- int flags)
-{
- ACE_OS_TRACE ("ACE_OS::sendmsg");
-#if !defined (ACE_LACKS_SENDMSG)
-# if (defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0))
- DWORD bytes_sent = 0;
- int result = ::WSASendTo ((SOCKET) handle,
- (WSABUF *) msg->msg_iov,
- msg->msg_iovlen,
- &bytes_sent,
- flags,
- msg->msg_name,
- msg->msg_namelen,
- 0,
- 0);
-
- if (result != 0)
- {
- ACE_OS::set_errno_to_wsa_last_error ();
- return -1;
- }
- else
- return (ssize_t) bytes_sent;
-# elif defined (ACE_HAS_NONCONST_SENDMSG)
- ACE_SOCKCALL_RETURN (::sendmsg (handle,
- const_cast<struct msghdr *>(msg),
- flags), ssize_t, -1);
-# else
- ACE_SOCKCALL_RETURN (::sendmsg (handle, msg, flags), ssize_t, -1);
-# endif
-#else
- ACE_UNUSED_ARG (flags);
- ACE_UNUSED_ARG (msg);
- ACE_UNUSED_ARG (handle);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_LACKS_SENDMSG */
-}
-
-ACE_INLINE ssize_t
-ACE_OS::sendto (ACE_HANDLE handle,
- const char *buf,
- size_t len,
- int flags,
- const struct sockaddr *addr,
- int addrlen)
-{
- ACE_OS_TRACE ("ACE_OS::sendto");
-#if defined (ACE_LACKS_SENDTO)
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (buf);
- ACE_UNUSED_ARG (len);
- ACE_UNUSED_ARG (flags);
- ACE_UNUSED_ARG (addr);
- ACE_UNUSED_ARG (addrlen);
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_VXWORKS)
- ACE_SOCKCALL_RETURN (::sendto ((ACE_SOCKET) handle,
- const_cast <char *> (buf),
- len,
- flags,
- const_cast<struct sockaddr *> (addr),
- addrlen),
- ssize_t, -1);
-#elif defined (ACE_WIN32)
- ACE_SOCKCALL_RETURN (::sendto ((ACE_SOCKET) handle,
- buf,
- static_cast<int> (len),
- flags,
- const_cast<struct sockaddr *> (addr),
- addrlen),
- ssize_t, -1);
-#else
- ACE_SOCKCALL_RETURN (::sendto ((ACE_SOCKET) handle,
- buf,
- len,
- flags,
- const_cast<struct sockaddr *> (addr),
- addrlen),
- ssize_t, -1);
-#endif /* ACE_LACKS_SENDTO */
-}
-
-ACE_INLINE ssize_t
-ACE_OS::sendto (ACE_HANDLE handle,
- const iovec *buffers,
- int buffer_count,
- size_t &number_of_bytes_sent,
- int flags,
- const struct sockaddr *addr,
- int addrlen,
- ACE_OVERLAPPED *overlapped,
- ACE_OVERLAPPED_COMPLETION_FUNC func)
-{
- ACE_OS_TRACE ("ACE_OS::sendto");
-#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
- DWORD bytes_sent = 0;
- int result = ::WSASendTo ((SOCKET) handle,
- (WSABUF*) buffers,
- buffer_count,
- &bytes_sent,
- flags,
- addr,
- addrlen,
- overlapped,
- func);
- if (result != 0) {
- ACE_OS::set_errno_to_wsa_last_error ();
- }
- number_of_bytes_sent = static_cast<size_t> (bytes_sent);
- return (ssize_t) result;
-#else
- ACE_UNUSED_ARG (overlapped);
- ACE_UNUSED_ARG (func);
-
- number_of_bytes_sent = 0;
-
- ssize_t result = 0;
-
- for (int i = 0; i < buffer_count; ++i)
- {
- result = ACE_OS::sendto (handle,
- reinterpret_cast<char *> (
- buffers[i].iov_base),
- buffers[i].iov_len,
- flags,
- addr,
- addrlen);
- if (result == -1)
- break;
- number_of_bytes_sent += static_cast<size_t> (result);
- }
-
- return result;
-#endif /* defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0) */
-}
-
-ACE_INLINE ssize_t
-ACE_OS::sendv (ACE_HANDLE handle,
- const iovec *buffers,
- int n)
-{
-#if defined (ACE_HAS_WINSOCK2)
- DWORD bytes_sent = 0;
- ssize_t result = 0;
-
- // Winsock 2 has WSASend and can do this directly, but Winsock 1
- // needs to do the sends one-by-one.
-# if (ACE_HAS_WINSOCK2 != 0)
- result = ::WSASend ((SOCKET) handle,
- (WSABUF *) buffers,
- n,
- &bytes_sent,
- 0,
- 0,
- 0);
- if (result == SOCKET_ERROR)
- {
- ACE_OS::set_errno_to_wsa_last_error ();
- return -1;
- }
-# else
- for (int i = 0; i < n; ++i)
- {
- result = ::send ((SOCKET) handle,
- buffers[i].iov_base,
- buffers[i].iov_len,
- 0);
-
- if (result == SOCKET_ERROR)
- {
- // There is a subtle difference in behaviour depending on
- // whether or not any data was sent. If no data was sent,
- // then always return -1. Otherwise return bytes_sent.
- // This gives the caller an opportunity to keep track of
- // bytes that have already been sent.
- if (bytes_sent > 0)
- break;
- else
- {
- ACE_OS::set_errno_to_wsa_last_error ();
- return -1;
- }
- }
- else
- {
- // Gets ignored on error anyway
- bytes_sent += result;
-
- // If the transfer isn't complete just drop out of the loop.
- if (result < (int)buffers[i].iov_len)
- break;
- }
- }
-# endif /* ACE_HAS_WINSOCK2 != 0 */
-
- return (ssize_t) bytes_sent;
-
-#elif defined (ACE_HAS_SOCK_BUF_SIZE_MAX)
-
- // Platform limits the maximum socket message size. Pare down the
- // iovec, if necessary, to obey the limit.
- iovec local_iov[ACE_IOV_MAX];
- long total = 0;
- long new_total = 0;
- for (int i = 0; i < n; i++)
- {
- local_iov[i].iov_base = buffers[i].iov_base;
- local_iov[i].iov_len = buffers[i].iov_len;
-
- new_total = total + buffers[i].iov_len;
- if (new_total >= ACE_HAS_SOCK_BUF_SIZE_MAX_VALUE)
- {
- local_iov[i].iov_len = ACE_HAS_SOCK_BUF_SIZE_MAX_VALUE - total;
- n = i+1;
- break;
- }
- total = new_total;
- }
- return ACE_OS::writev (handle, local_iov, n);
-
-#else
- return ACE_OS::writev (handle, buffers, n);
-#endif /* ACE_HAS_WINSOCK2 */
-}
-
-ACE_INLINE int
-ACE_OS::setsockopt (ACE_HANDLE handle,
- int level,
- int optname,
- const char *optval,
- int optlen)
-{
- ACE_OS_TRACE ("ACE_OS::setsockopt");
-#if defined (ACE_LACKS_SETSOCKOPT)
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (level);
- ACE_UNUSED_ARG (optname);
- ACE_UNUSED_ARG (optval);
- ACE_UNUSED_ARG (optlen);
- ACE_NOTSUP_RETURN (-1);
-#else
-#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0) && defined(SO_REUSEPORT)
- // To work around an inconsistency with Microsofts implementation of
- // sockets, we will check for SO_REUSEADDR, and ignore it. Winsock
- // always behaves as if SO_REUSEADDR=1. Some implementations have
- // the same behaviour as Winsock, but use a new name for
- // it. SO_REUSEPORT. If you want the normal behaviour for
- // SO_REUSEADDR=0, then NT 4 sp4 and later supports
- // SO_EXCLUSIVEADDRUSE. This also requires using an updated Platform
- // SDK so it was decided to ignore the option for now. (Especially
- // since Windows always sets SO_REUSEADDR=1, which we can mimic by doing
- // nothing.)
- if (level == SOL_SOCKET) {
- if (optname == SO_REUSEADDR) {
- return 0; // Not supported by Winsock
- }
- if (optname == SO_REUSEPORT) {
- optname = SO_REUSEADDR;
- }
- }
-#endif /*ACE_HAS_WINSOCK2*/
-
- int result;
- ACE_SOCKCALL (::setsockopt ((ACE_SOCKET) handle,
- level,
- optname,
- (ACE_SOCKOPT_TYPE1) optval,
- optlen),
- int,
- -1,
- result);
-#if defined (WSAEOPNOTSUPP)
- if (result == -1 && errno == WSAEOPNOTSUPP)
-#else
- if (result == -1)
-#endif /* WSAEOPNOTSUPP */
- errno = ENOTSUP;
- return result;
-#endif
-}
-
-ACE_INLINE int
-ACE_OS::shutdown (ACE_HANDLE handle, int how)
-{
- ACE_OS_TRACE ("ACE_OS::shutdown");
-#if defined (ACE_LACKS_SHUTDOWN)
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (how);
- ACE_NOTSUP_RETURN (-1);
-#else
- ACE_SOCKCALL_RETURN (::shutdown ((ACE_SOCKET) handle, how), int, -1);
-#endif /* ACE_LACKS_SHUTDOWN */
-}
-
-ACE_INLINE ACE_HANDLE
-ACE_OS::socket (int domain,
- int type,
- int proto)
-{
- ACE_OS_TRACE ("ACE_OS::socket");
-#if defined (ACE_LACKS_SOCKET)
- ACE_UNUSED_ARG (domain);
- ACE_UNUSED_ARG (type);
- ACE_UNUSED_ARG (proto);
- ACE_NOTSUP_RETURN (ACE_INVALID_HANDLE);
-#else
- ACE_SOCKCALL_RETURN (::socket (domain,
- type,
- proto),
- ACE_HANDLE,
- ACE_INVALID_HANDLE);
-#endif /* ACE_LACKS_SOCKET */
-}
-
-ACE_INLINE ACE_HANDLE
-ACE_OS::socket (int domain,
- int type,
- int proto,
- ACE_Protocol_Info *protocolinfo,
- ACE_SOCK_GROUP g,
- u_long flags)
-{
- ACE_OS_TRACE ("ACE_OS::socket");
-
-#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
- ACE_SOCKCALL_RETURN (::WSASocket (domain,
- type,
- proto,
- protocolinfo,
- g,
- flags),
- ACE_HANDLE,
- ACE_INVALID_HANDLE);
-#else
- ACE_UNUSED_ARG (protocolinfo);
- ACE_UNUSED_ARG (g);
- ACE_UNUSED_ARG (flags);
-
- return ACE_OS::socket (domain,
- type,
- proto);
-#endif /* ACE_HAS_WINSOCK2 */
-}
-
-ACE_INLINE int
-ACE_OS::socketpair (int domain, int type,
- int protocol, ACE_HANDLE sv[2])
-{
- ACE_OS_TRACE ("ACE_OS::socketpair");
-#if defined (ACE_LACKS_SOCKETPAIR)
- ACE_UNUSED_ARG (domain);
- ACE_UNUSED_ARG (type);
- ACE_UNUSED_ARG (protocol);
- ACE_UNUSED_ARG (sv);
-
- ACE_NOTSUP_RETURN (-1);
-#else
- ACE_OSCALL_RETURN (::socketpair (domain, type, protocol, sv),
- int, -1);
-#endif /* ACE_LACKS_SOCKETPAIR */
-}
-
-#if defined (__linux__) && defined (ACE_HAS_IPV6)
-ACE_INLINE unsigned int
-ACE_OS::if_nametoindex (const char *ifname)
-{
- ACE_OS_TRACE ("ACE_OS::if_nametoindex");
- ACE_OSCALL_RETURN (::if_nametoindex (ifname), int, 0);
-}
-
-ACE_INLINE char *
-ACE_OS::if_indextoname (unsigned int ifindex, char *ifname)
-{
- ACE_OS_TRACE ("ACE_OS::if_indextoname");
- ACE_OSCALL_RETURN (::if_indextoname (ifindex, ifname), char *, 0);
-}
-
-ACE_INLINE struct if_nameindex *
-ACE_OS::if_nameindex (void)
-{
- ACE_OS_TRACE ("ACE_OS::if_nameindex");
- ACE_OSCALL_RETURN (::if_nameindex (), struct if_nameindex *, 0);
-}
-
-ACE_INLINE void
-ACE_OS::if_freenameindex (struct if_nameindex *ptr)
-{
- ACE_OS_TRACE ("ACE_OS::if_freenameindex");
- if (ptr != 0)
- ::if_freenameindex (ptr);
-}
-#endif /* __linux__ && ACE_HAS_IPV6 */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_sys_stat.h b/dep/include/ace/OS_NS_sys_stat.h
deleted file mode 100644
index 6aeb8f3095c..00000000000
--- a/dep/include/ace/OS_NS_sys_stat.h
+++ /dev/null
@@ -1,150 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_sys_stat.h
- *
- * $Id: OS_NS_sys_stat.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_SYS_STAT_H
-# define ACE_OS_NS_SYS_STAT_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_stat.h"
-#include "ace/Default_Constants.h" // for ACE_DEFAULT_DIR_PERMS
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-# if defined (_FILE_OFFSET_BITS) && _FILE_OFFSET_BITS == 64 \
- && defined (ACE_WIN32)
-# if defined (__BORLANDC__)
-typedef struct stati64 ACE_stat;
-# define ACE_STAT_FUNC_NAME ::_stati64
-# define ACE_WSTAT_FUNC_NAME ::_wstati64
-# elif !defined (ACE_HAS_WINCE) && defined (_MSC_VER)
-# if _MSC_VER >= 1400
-// For vc8 which has time_t as 64bit
-// 64-bit file offsets, 64-bit time_t
-# if defined (ACE_MSVC_USES_DOUBLE_UNDERSCORE_STAT64)
-typedef struct __stat64 ACE_stat;
-# else
-typedef struct _stat64 ACE_stat;
-# endif
-# define ACE_STAT_FUNC_NAME ::_stat64
-# define ACE_WSTAT_FUNC_NAME ::_wstat64
-# else
-// For vc71 which has time_t as 32bit
-typedef struct _stati64 ACE_stat;
-# define ACE_STAT_FUNC_NAME ::_stati64
-# define ACE_WSTAT_FUNC_NAME ::_wstati64
-# endif /* _MSC_VER >= 1400 */
-# else
-typedef struct stat ACE_stat;
-# define ACE_STAT_FUNC_NAME ::stat
-# define ACE_WSTAT_FUNC_NAME ACE_STAT_FUNC_NAME
-# endif /**/
-# else
-// Default file offset case.
-# if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)
-typedef struct _stat ACE_stat;
-# define ACE_STAT_FUNC_NAME ::_stat
-# define ACE_WSTAT_FUNC_NAME ::_wstat
-# else
-typedef struct stat ACE_stat;
-# define ACE_STAT_FUNC_NAME ::stat
-# define ACE_WSTAT_FUNC_NAME ACE_STAT_FUNC_NAME
-# endif /* ACE_WIN32 */
-# endif /* _FILE_OFFSET_BITS == 64 && ACE_WIN32 */
-
-namespace ACE_OS
-{
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_HANDLE creat (const ACE_TCHAR *filename,
- mode_t mode);
-
- //@{ @name A set of wrappers for low-level file operations.
-
- // non-standard
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_OFF_T filesize (ACE_HANDLE handle);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_OFF_T filesize (const ACE_TCHAR *handle);
- //@}
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int fstat (ACE_HANDLE,
- ACE_stat *);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int lstat (const char *,
- ACE_stat *);
-
-#if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- int lstat (const wchar_t *,
- ACE_stat *);
-#endif /* ACE_HAS_WCHAR */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int mkdir (const char *path,
- mode_t mode = ACE_DEFAULT_DIR_PERMS);
-
-#if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- int mkdir (const wchar_t *path,
- mode_t mode = ACE_DEFAULT_DIR_PERMS);
-#endif /* ACE_HAS_WCHAR */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int mkfifo (const ACE_TCHAR *file,
- mode_t mode = ACE_DEFAULT_FILE_PERMS);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int stat (const char *file, ACE_stat *);
-
-#if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- int stat (const wchar_t *file, ACE_stat *);
-#endif /* ACE_HAS_WCHAR */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- mode_t umask (mode_t cmask);
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_sys_stat.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_SYS_STAT_H */
-
diff --git a/dep/include/ace/OS_NS_sys_stat.inl b/dep/include/ace/OS_NS_sys_stat.inl
deleted file mode 100644
index a5c515df51d..00000000000
--- a/dep/include/ace/OS_NS_sys_stat.inl
+++ /dev/null
@@ -1,292 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_sys_stat.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_unistd.h"
-#include "ace/OS_NS_fcntl.h"
-#include "ace/OS_NS_errno.h"
-#include "ace/OS_NS_macros.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS
-{
-
- ACE_INLINE ACE_HANDLE
- creat (const ACE_TCHAR *filename, mode_t mode)
- {
- ACE_OS_TRACE ("ACE_OS::creat");
-#if defined (ACE_WIN32)
- return ACE_OS::open (filename, O_CREAT|O_TRUNC|O_WRONLY, mode);
-#else
- ACE_OSCALL_RETURN (::creat (ACE_TEXT_ALWAYS_CHAR (filename), mode),
- ACE_HANDLE, ACE_INVALID_HANDLE);
-#endif /* ACE_WIN32 */
- }
-
- ACE_INLINE int
- fstat (ACE_HANDLE handle, ACE_stat *stp)
- {
- ACE_OS_TRACE ("ACE_OS::fstat");
-#if defined (ACE_HAS_X86_STAT_MACROS)
- // Solaris for intel uses an macro for fstat(), this is a wrapper
- // for _fxstat() use of the macro.
- // causes compile and runtime problems.
- ACE_OSCALL_RETURN (::_fxstat (_STAT_VER, handle, stp), int, -1);
-#elif defined (ACE_WIN32)
- BY_HANDLE_FILE_INFORMATION fdata;
-
- if (::GetFileInformationByHandle (handle, &fdata) == FALSE)
- {
- ACE_OS::set_errno_to_last_error ();
- return -1;
- }
- else if (fdata.nFileSizeHigh != 0)
- {
- errno = EINVAL;
- return -1;
- }
- else
- {
- stp->st_size = fdata.nFileSizeLow;
- stp->st_atime = ACE_Time_Value (fdata.ftLastAccessTime).sec ();
- stp->st_mtime = ACE_Time_Value (fdata.ftLastWriteTime).sec ();
- stp->st_ctime = ACE_Time_Value (fdata.ftCreationTime).sec ();
- stp->st_nlink = static_cast<short> (fdata.nNumberOfLinks);
- stp->st_dev = stp->st_rdev = 0; // No equivalent conversion.
- stp->st_mode = S_IXOTH | S_IROTH |
- (fdata.dwFileAttributes & FILE_ATTRIBUTE_READONLY ? 0 : S_IWOTH) |
- (fdata.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY ? S_IFDIR : S_IFREG);
- }
- return 0;
-#else
-# if defined (ACE_OPENVMS)
- //FUZZ: disable check_for_lack_ACE_OS
- ::fsync(handle);
- //FUZZ: enable check_for_lack_ACE_OS
- #endif
- ACE_OSCALL_RETURN (::fstat (handle, stp), int, -1);
-# endif /* !ACE_HAS_X86_STAT_MACROS */
- }
-
- // This function returns the number of bytes in the file referenced by
- // FD.
-
- ACE_INLINE ACE_OFF_T
- filesize (ACE_HANDLE handle)
- {
- ACE_OS_TRACE ("ACE_OS::filesize");
-#if defined (ACE_WIN32)
-# if defined (_FILE_OFFSET_BITS) && _FILE_OFFSET_BITS == 64
- LARGE_INTEGER size;
- return
- (::GetFileSizeEx (handle, &size)
- ? size.QuadPart
- : (ACE_OS::set_errno_to_last_error (), -1));
-# else
- DWORD const size = ::GetFileSize (handle, 0);
- return
- (size != INVALID_FILE_SIZE
- ? static_cast<ACE_OFF_T> (size)
- : (ACE_OS::set_errno_to_last_error (), -1));
-# endif /* _FILE_OFFSET_BITS == 64 */
-#else /* !ACE_WIN32 */
- ACE_stat sb;
- return ACE_OS::fstat (handle, &sb) == -1 ?
- static_cast<ACE_OFF_T> (-1) : sb.st_size;
-#endif
- }
-
- ACE_INLINE ACE_OFF_T
- filesize (const ACE_TCHAR *filename)
- {
- ACE_OS_TRACE ("ACE_OS::filesize");
-
- ACE_HANDLE const h = ACE_OS::open (filename, O_RDONLY);
- if (h != ACE_INVALID_HANDLE)
- {
- ACE_OFF_T size = ACE_OS::filesize (h);
- ACE_OS::close (h);
- return size;
- }
- else
- return -1;
- }
-
- ACE_INLINE int
- lstat (const char *file, ACE_stat *stp)
- {
- ACE_OS_TRACE ("ACE_OS::lstat");
-# if defined (ACE_LACKS_LSTAT)
- return ACE_OS::stat (file, stp);
-# elif defined (ACE_HAS_X86_STAT_MACROS)
- // Solaris for intel uses an macro for lstat(), this macro is a
- // wrapper for _lxstat().
- ACE_OSCALL_RETURN (::_lxstat (_STAT_VER, file, stp), int, -1);
-# else /* !ACE_HAS_X86_STAT_MACROS */
- ACE_OSCALL_RETURN (::lstat (file, stp), int, -1);
-# endif /* ACE_LACKS_LSTAT */
- }
-
-#if defined (ACE_HAS_WCHAR)
- ACE_INLINE int
- lstat (const wchar_t *file, ACE_stat *stp)
- {
- ACE_OS_TRACE ("ACE_OS::lstat");
-# if defined (ACE_LACKS_LSTAT)
- return ACE_OS::stat (file, stp);
-# else
- return ACE_OS::lstat (ACE_Wide_To_Ascii (file).char_rep (), stp);
-# endif /* ACE_LACKS_LSTAT */
- }
-#endif /* ACE_HAS_WCHAR */
-
- ACE_INLINE int
- mkdir (const char *path, mode_t mode)
- {
-#if defined (ACE_HAS_WINCE)
- ACE_UNUSED_ARG (mode);
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::CreateDirectory (ACE_TEXT_CHAR_TO_TCHAR (path), 0),
- ace_result_),
- int, -1);
-#elif defined (ACE_MKDIR_LACKS_MODE)
- ACE_UNUSED_ARG (mode);
- ACE_OSCALL_RETURN (::mkdir (path), int, -1);
-#else
- ACE_OSCALL_RETURN (::mkdir (path, mode), int, -1);
-#endif
- }
-
-#if defined (ACE_HAS_WCHAR)
-
- ACE_INLINE int
- mkdir (const wchar_t *path, mode_t mode)
- {
-#if defined (ACE_HAS_WINCE)
- ACE_UNUSED_ARG (mode);
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (CreateDirectoryW (path, 0),
- ace_result_),
- int, -1);
-#elif defined (ACE_WIN32) && defined (ACE_USES_WCHAR)
- ACE_UNUSED_ARG (mode);
- ACE_OSCALL_RETURN (::_wmkdir (path), int, -1);
-#else
- return ACE_OS::mkdir (ACE_Wide_To_Ascii (path).char_rep (), mode);
-#endif /* ACE_HAS_WINCE */
- }
-
-#endif /* ACE_HAS_WCHAR */
-
- ACE_INLINE int
- mkfifo (const ACE_TCHAR *file, mode_t mode)
- {
- ACE_OS_TRACE ("ACE_OS::mkfifo");
-#if defined (ACE_LACKS_MKFIFO)
- ACE_UNUSED_ARG (file);
- ACE_UNUSED_ARG (mode);
- ACE_NOTSUP_RETURN (-1);
-#else
- ACE_OSCALL_RETURN (::mkfifo (ACE_TEXT_ALWAYS_CHAR (file), mode), int, -1);
-#endif /* ACE_LACKS_MKFIFO */
- }
-
- ACE_INLINE int
- stat (const char *file, ACE_stat *stp)
- {
- ACE_OS_TRACE ("ACE_OS::stat");
-#if defined (ACE_HAS_NONCONST_STAT)
- ACE_OSCALL_RETURN (::stat (const_cast <char *> (file), stp), int, -1);
-#elif defined (ACE_HAS_WINCE)
- ACE_TEXT_WIN32_FIND_DATA fdata;
-
- HANDLE fhandle;
-
- fhandle = ::FindFirstFile (ACE_TEXT_CHAR_TO_TCHAR (file), &fdata);
- if (fhandle == INVALID_HANDLE_VALUE)
- {
- ACE_OS::set_errno_to_last_error ();
- return -1;
- }
- else if (fdata.nFileSizeHigh != 0)
- {
- errno = EINVAL;
- return -1;
- }
- else
- {
- stp->st_mode = static_cast<unsigned short>(fdata.dwFileAttributes);
- stp->st_size = fdata.nFileSizeLow;
- stp->st_atime = ACE_Time_Value (fdata.ftLastAccessTime);
- stp->st_mtime = ACE_Time_Value (fdata.ftLastWriteTime);
- }
- return 0;
-#elif defined (ACE_HAS_X86_STAT_MACROS)
- // Solaris for intel uses an macro for stat(), this macro is a
- // wrapper for _xstat().
- ACE_OSCALL_RETURN (::_xstat (_STAT_VER, file, stp), int, -1);
-#else
- ACE_OSCALL_RETURN (ACE_STAT_FUNC_NAME (file, stp), int, -1);
-#endif /* ACE_HAS_NONCONST_STAT */
- }
-
-#if defined (ACE_HAS_WCHAR)
- ACE_INLINE int
- stat (const wchar_t *file, ACE_stat *stp)
- {
- ACE_OS_TRACE ("ACE_OS::stat");
-#if defined (ACE_HAS_WINCE)
- WIN32_FIND_DATAW fdata;
-
- HANDLE fhandle;
-
- fhandle = ::FindFirstFileW (file, &fdata);
- if (fhandle == INVALID_HANDLE_VALUE)
- {
- ACE_OS::set_errno_to_last_error ();
- return -1;
- }
- else if (fdata.nFileSizeHigh != 0)
- {
- errno = EINVAL;
- return -1;
- }
- else
- {
- stp->st_mode = static_cast<unsigned short>(fdata.dwFileAttributes);
- stp->st_size = fdata.nFileSizeLow;
- stp->st_atime = ACE_Time_Value (fdata.ftLastAccessTime);
- stp->st_mtime = ACE_Time_Value (fdata.ftLastWriteTime);
- }
- return 0;
-#elif defined (__BORLANDC__) \
- || (defined (_MSC_VER) && _MSC_VER >= 1300) \
- || defined (__MINGW32__)
- ACE_OSCALL_RETURN (ACE_WSTAT_FUNC_NAME (file, stp), int, -1);
-#else /* ACE_HAS_WINCE */
- ACE_Wide_To_Ascii nfile (file);
- return ACE_OS::stat (nfile.char_rep (), stp);
-#endif /* ACE_HAS_WINCE */
- }
-#endif /* ACE_HAS_WCHAR */
-
- ACE_INLINE mode_t
- umask (mode_t cmask)
- {
- ACE_OS_TRACE ("ACE_OS::umask");
-# if defined (ACE_LACKS_UMASK)
- ACE_UNUSED_ARG (cmask);
- ACE_NOTSUP_RETURN ((mode_t)-1);
-# elif defined (ACE_HAS_TR24731_2005_CRT)
- mode_t old_mode;
- ACE_SECURECRTCALL (_umask_s (cmask, &old_mode), mode_t, -1, old_mode);
- return old_mode;
-# elif defined (ACE_WIN32) && !defined (__BORLANDC__)
- ACE_OSCALL_RETURN (::_umask (cmask), mode_t, -1);
-# else
- return ::umask (cmask); // This call shouldn't fail...
-# endif /* ACE_LACKS_UMASK */
- }
-
-} // ACE_OS namespace
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_sys_time.h b/dep/include/ace/OS_NS_sys_time.h
deleted file mode 100644
index 1efb8c036fd..00000000000
--- a/dep/include/ace/OS_NS_sys_time.h
+++ /dev/null
@@ -1,70 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_sys_time.h
- *
- * $Id: OS_NS_sys_time.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_SYS_TIME_H
-# define ACE_OS_NS_SYS_TIME_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Time_Value.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS
-{
-#if defined (ACE_WIN32) && defined (_WIN32_WCE)
-// Something is a bit brain-damaged here and I'm not sure what... this code
-// compiled before the OS reorg for ACE 5.4. Since then it hasn't - eVC
-// complains that the operators that return ACE_Time_Value are C-linkage
-// functions that can't return a C++ class. The only way I've found to
-// defeat this is to wrap the whole class in extern "C++".
-// - Steve Huston, 23-Aug-2004
-extern "C++" {
-#endif
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_Time_Value gettimeofday (void);
-
-#if defined (ACE_WIN32) && defined (_WIN32_WCE)
-}
-#endif
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_sys_time.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_SYS_TIME_H */
-
diff --git a/dep/include/ace/OS_NS_sys_time.inl b/dep/include/ace/OS_NS_sys_time.inl
deleted file mode 100644
index 1be2d2f3dec..00000000000
--- a/dep/include/ace/OS_NS_sys_time.inl
+++ /dev/null
@@ -1,96 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_sys_time.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/os_include/sys/os_time.h"
-#include "ace/os_include/os_errno.h"
-
-#if defined (ACE_VXWORKS)
-# include "ace/OS_NS_time.h"
-#endif /* ACE_VXWORKS */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_WIN32) && defined (_WIN32_WCE)
-// Something is a bit brain-damaged here and I'm not sure what... this code
-// compiled before the OS reorg for ACE 5.4. Since then it hasn't - eVC
-// complains that the operators that return ACE_Time_Value are C-linkage
-// functions that can't return a C++ class. The only way I've found to
-// defeat this is to wrap the whole class in extern "C++".
-// - Steve Huston, 23-Aug-2004
-extern "C++" {
-#endif
-
-ACE_INLINE ACE_Time_Value
-ACE_OS::gettimeofday (void)
-{
- // ACE_OS_TRACE ("ACE_OS::gettimeofday");
-
-#if !defined (ACE_HAS_WINCE)&& !defined (ACE_WIN32)
- timeval tv;
- int result = 0;
-#endif // !defined (ACE_HAS_WINCE)&& !defined (ACE_WIN32)
-
-#if (0)
- struct timespec ts;
-
- ACE_OSCALL (ACE_OS::clock_gettime (CLOCK_REALTIME, &ts), int, -1, result);
- tv.tv_sec = ts.tv_sec;
- tv.tv_usec = ts.tv_nsec / 1000L; // timespec has nsec, but timeval has usec
-
-#elif defined (ACE_HAS_WINCE)
- SYSTEMTIME tsys;
- FILETIME tfile;
- ::GetSystemTime (&tsys);
- ::SystemTimeToFileTime (&tsys, &tfile);
- return ACE_Time_Value (tfile);
-#elif defined (ACE_WIN32)
- FILETIME tfile;
- ::GetSystemTimeAsFileTime (&tfile);
- return ACE_Time_Value (tfile);
-#if 0
- // From Todd Montgomery...
- struct _timeb tb;
- ::_ftime (&tb);
- tv.tv_sec = tb.time;
- tv.tv_usec = 1000 * tb.millitm;
-#endif /* 0 */
-#elif defined (ACE_HAS_AIX_HI_RES_TIMER)
- timebasestruct_t tb;
-
- ::read_real_time (&tb, TIMEBASE_SZ);
- ::time_base_to_time (&tb, TIMEBASE_SZ);
-
- tv.tv_sec = tb.tb_high;
- tv.tv_usec = tb.tb_low / 1000L;
-#else
-# if defined (ACE_HAS_TIMEZONE_GETTIMEOFDAY) || \
- defined(ACE_HAS_VOIDPTR_GETTIMEOFDAY) || \
- (defined (ACE_HAS_SVR4_GETTIMEOFDAY) && !defined (SCO))
- ACE_OSCALL (::gettimeofday (&tv, 0), int, -1, result);
-# elif defined (ACE_VXWORKS)
- // Assumes that struct timespec is same size as struct timeval,
- // which assumes that time_t is a long: it currently (VxWorks
- // 5.2/5.3) is.
- struct timespec ts;
-
- ACE_OSCALL (ACE_OS::clock_gettime (CLOCK_REALTIME, &ts), int, -1, result);
- tv.tv_sec = ts.tv_sec;
- tv.tv_usec = ts.tv_nsec / 1000L; // timespec has nsec, but timeval has usec
-# else
- ACE_OSCALL (::gettimeofday (&tv), int, -1, result);
-# endif /* ACE_HAS_SVR4_GETTIMEOFDAY */
-#endif /* 0 */
-#if !defined (ACE_HAS_WINCE)&& !defined (ACE_WIN32)
- if (result == -1)
- return ACE_Time_Value ((time_t)-1);
- else
- return ACE_Time_Value (tv);
-#endif // !defined (ACE_HAS_WINCE)&& !defined (ACE_WIN32)
-}
-
-#if defined (ACE_WIN32) && defined (_WIN32_WCE)
-}
-#endif
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_sys_uio.h b/dep/include/ace/OS_NS_sys_uio.h
deleted file mode 100644
index c0e54d09770..00000000000
--- a/dep/include/ace/OS_NS_sys_uio.h
+++ /dev/null
@@ -1,81 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_sys_uio.h
- *
- * $Id: OS_NS_sys_uio.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_SYS_UIO_H
-# define ACE_OS_NS_SYS_UIO_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_uio.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS
-{
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t readv (ACE_HANDLE handle,
- const iovec *iov,
- int iovlen);
-
-#if defined (ACE_LACKS_READV)
- extern ACE_Export
- ssize_t readv_emulation (ACE_HANDLE handle,
- const iovec *iov,
- int iovcnt);
-#endif /* ACE_LACKS_READV */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t writev (ACE_HANDLE handle,
- const iovec *iov,
- int iovcnt);
-
- // these don't need to be in the header, better to put them in the cpp
- // or inl.
-#if defined (ACE_LACKS_WRITEV)
- extern ACE_Export
- ssize_t writev_emulation (ACE_HANDLE handle,
- const iovec *iov,
- int iovcnt);
-#endif /* ACE_LACKS_WRITEV */
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_sys_uio.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_SYS_UIO_H */
-
diff --git a/dep/include/ace/OS_NS_sys_uio.inl b/dep/include/ace/OS_NS_sys_uio.inl
deleted file mode 100644
index c704e07ea44..00000000000
--- a/dep/include/ace/OS_NS_sys_uio.inl
+++ /dev/null
@@ -1,55 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_sys_uio.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/os_include/os_errno.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ssize_t
-ACE_OS::readv (ACE_HANDLE handle,
- const iovec *iov,
- int iovlen)
-{
- ACE_OS_TRACE ("ACE_OS::readv");
-#if defined (ACE_LACKS_READV)
- ACE_OSCALL_RETURN (ACE_OS::readv_emulation (handle, iov, iovlen),
- ssize_t,
- -1);
-#else /* ACE_LACKS_READV */
-#if defined (ACE_HAS_NONCONST_READV)
- ACE_OSCALL_RETURN (::readv (handle,
- const_cast<iovec *>(iov),
- iovlen), ssize_t, -1);
-#else
- ACE_OSCALL_RETURN (::readv (handle,
- iov,
- iovlen), ssize_t, -1);
-#endif /* ACE_HAS_NONCONST_READV */
-#endif /* ACE_LACKS_READV */
-}
-
-ACE_INLINE ssize_t
-ACE_OS::writev (ACE_HANDLE handle,
- const iovec *iov,
- int iovcnt)
-{
- ACE_OS_TRACE ("ACE_OS::writev");
-#if defined (ACE_LACKS_WRITEV)
- ACE_OSCALL_RETURN (ACE_OS::writev_emulation (handle,
- iov,
- iovcnt), ssize_t, -1);
-#else /* ACE_LACKS_WRITEV */
-#if defined (ACE_HAS_NONCONST_WRITEV)
- ACE_OSCALL_RETURN (::writev (handle,
- const_cast<iovec *>(iov),
- iovcnt), ssize_t, -1);
-#else
- ACE_OSCALL_RETURN (::writev (handle,
- iov,
- iovcnt), ssize_t, -1);
-#endif /* ACE_HAS_NONCONST_WRITEV */
-#endif /* ACE_LACKS_WRITEV */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_sys_utsname.h b/dep/include/ace/OS_NS_sys_utsname.h
deleted file mode 100644
index fe3cda91b21..00000000000
--- a/dep/include/ace/OS_NS_sys_utsname.h
+++ /dev/null
@@ -1,72 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_sys_utsname.h
- *
- * $Id: OS_NS_sys_utsname.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_SYS_UTSNAME_H
-# define ACE_OS_NS_SYS_UTSNAME_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-#if defined (ACE_LACKS_UTSNAME_T)
-# if !defined (SYS_NMLN)
-# define SYS_NMLN 257
-# endif /* SYS_NMLN */
-# if !defined (_SYS_NMLN)
-# define _SYS_NMLN SYS_NMLN
-# endif /* _SYS_NMLN */
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-struct ACE_utsname
-{
- char sysname[_SYS_NMLN];
- char nodename[_SYS_NMLN];
- char release[_SYS_NMLN];
- char version[_SYS_NMLN];
- char machine[_SYS_NMLN];
-};
-ACE_END_VERSIONED_NAMESPACE_DECL
-# else
-# include "ace/os_include/sys/os_utsname.h"
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-typedef struct utsname ACE_utsname;
-ACE_END_VERSIONED_NAMESPACE_DECL
-# endif /* ACE_LACKS_UTSNAME_T */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS {
-
- extern ACE_Export
- int uname (ACE_utsname *name);
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_SYS_UTSNAME_H */
-
diff --git a/dep/include/ace/OS_NS_sys_wait.h b/dep/include/ace/OS_NS_sys_wait.h
deleted file mode 100644
index 801b9b08bb6..00000000000
--- a/dep/include/ace/OS_NS_sys_wait.h
+++ /dev/null
@@ -1,88 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_sys_wait.h
- *
- * $Id: OS_NS_sys_wait.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_SYS_WAIT_H
-# define ACE_OS_NS_SYS_WAIT_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_wait.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS
-{
-
- /// Calls OS @c ::wait function, so it's only portable to UNIX/POSIX
- /// platforms.
- ACE_NAMESPACE_INLINE_FUNCTION
- pid_t wait (int * = 0);
-
- /**
- * Calls @c ::WaitForSingleObject on Win32 and ACE::waitpid ()
- * otherwise. Returns the passed in @a pid_t on success and -1 on
- * failure.
- * On Win32, @a pid is ignored if the @a handle is not equal to 0.
- * Passing the process @a handle is prefer on Win32 because using
- * @a pid to wait on the project doesn't always work correctly
- * if the waited process has already terminated.
- */
- ACE_NAMESPACE_INLINE_FUNCTION
- pid_t wait (pid_t pid,
- ACE_exitcode *status,
- int wait_options = 0,
- ACE_HANDLE handle = 0);
-
- /**
- * Calls @c ::waitpid on UNIX/POSIX platforms Does not work on Vxworks 5.5.x.
- * On Win32, @a pid is ignored if the @a handle is not equal to 0.
- * Passing the process @a handle is prefer on Win32 because using
- * @a pid to wait on the project doesn't always work correctly
- * if the waited process has already terminated.
- */
- ACE_NAMESPACE_INLINE_FUNCTION
- pid_t waitpid (pid_t pid,
- ACE_exitcode *status = 0,
- int wait_options = 0,
- ACE_HANDLE handle = 0);
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_sys_wait.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_SYS_WAIT_H */
-
diff --git a/dep/include/ace/OS_NS_sys_wait.inl b/dep/include/ace/OS_NS_sys_wait.inl
deleted file mode 100644
index f24c09267d5..00000000000
--- a/dep/include/ace/OS_NS_sys_wait.inl
+++ /dev/null
@@ -1,105 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_sys_wait.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_errno.h"
-#include "ace/Global_Macros.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE pid_t
-ACE_OS::wait (int *status)
-{
- ACE_OS_TRACE ("ACE_OS::wait");
-#if defined (ACE_LACKS_WAIT)
- ACE_UNUSED_ARG (status);
- ACE_NOTSUP_RETURN (0);
-#else
- ACE_OSCALL_RETURN (::wait (status), pid_t, -1);
-#endif /* ACE_LACKS_WAIT */
-}
-
-ACE_INLINE pid_t
-ACE_OS::waitpid (pid_t pid,
- ACE_exitcode *status,
- int wait_options,
- ACE_HANDLE handle)
-{
- ACE_OS_TRACE ("ACE_OS::waitpid");
-#if defined (ACE_LACKS_WAITPID)
- ACE_UNUSED_ARG (pid);
- ACE_UNUSED_ARG (status);
- ACE_UNUSED_ARG (wait_options);
- ACE_UNUSED_ARG (handle);
-
- ACE_NOTSUP_RETURN (0);
-#elif defined (ACE_WIN32)
- int blocking_period = ACE_BIT_ENABLED (wait_options, WNOHANG)
- ? 0 /* don't hang */
- : INFINITE;
-
- ACE_HANDLE phandle = handle;
-
- if (phandle == 0)
- {
- phandle = ::OpenProcess (SYNCHRONIZE,
- FALSE,
- pid);
-
- if (phandle == 0)
- {
- ACE_OS::set_errno_to_last_error ();
- return -1;
- }
- }
-
- pid_t result = pid;
-
- // Don't try to get the process exit status if wait failed so we can
- // keep the original error code intact.
- switch (::WaitForSingleObject (phandle,
- blocking_period))
- {
- case WAIT_OBJECT_0:
- if (status != 0)
- // The error status of <GetExitCodeProcess> is nonetheless
- // not tested because we don't know how to return the value.
- ::GetExitCodeProcess (phandle,
- status);
- break;
- case WAIT_TIMEOUT:
- errno = ETIME;
- result = 0;
- break;
- default:
- ACE_OS::set_errno_to_last_error ();
- result = -1;
- }
- if (handle == 0)
- ::CloseHandle (phandle);
- return result;
-#elif defined(ACE_TANDEM_T1248_PTHREADS)
- ACE_UNUSED_ARG (handle);
- ACE_OSCALL_RETURN (::spt_waitpid (pid, status, wait_options),
- pid_t, -1);
-#else
- ACE_UNUSED_ARG (handle);
- ACE_OSCALL_RETURN (::waitpid (pid, status, wait_options),
- pid_t, -1);
-#endif /* ACE_LACKS_WAITPID */
-}
-
-ACE_INLINE pid_t
-ACE_OS::wait (pid_t pid,
- ACE_exitcode *status,
- int wait_options,
- ACE_HANDLE handle)
-{
- ACE_OS_TRACE ("ACE_OS::wait");
- return ACE_OS::waitpid (pid,
- status,
- wait_options,
- handle);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_time.h b/dep/include/ace/OS_NS_time.h
deleted file mode 100644
index 7fc53fda787..00000000000
--- a/dep/include/ace/OS_NS_time.h
+++ /dev/null
@@ -1,287 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_time.h
- *
- * $Id: OS_NS_time.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_TIME_H
-# define ACE_OS_NS_TIME_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/OS_NS_errno.h"
-#include "ace/Basic_Types.h"
-#include "ace/os_include/os_time.h"
-#include /**/ "ace/ACE_export.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-# if defined (ACE_HAS_BROKEN_R_ROUTINES)
-# undef ctime_r
-# undef asctime_r
-# endif /* ACE_HAS_BROKEN_R_ROUTINES */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Type-safe, and unsigned.
-static const ACE_UINT32 ACE_U_ONE_SECOND_IN_MSECS = 1000U;
-static const ACE_UINT32 ACE_U_ONE_SECOND_IN_USECS = 1000000U;
-static const ACE_UINT32 ACE_U_ONE_SECOND_IN_NSECS = 1000000000U;
-
-#if defined (ACE_LACKS_STRUCT_TM)
-struct tm {
- int tm_sec;
- int tm_min;
- int tm_hour;
- int tm_mday; // Day of the month
- int tm_mon;
- int tm_year;
- int tm_wday; // Day of the week
- int tm_yday; // Day in the year
- int tm_isdst; // >0 if dst in effet; 0 if not; <0 if unknown
-};
-#endif /* ACE_LACKS_STRUCT_TM */
-
-/// Helper for the ACE_OS::timezone() function
-/**
- * We put all the timezone stuff that used to be in ACE_OS::timezone()
- * here because on some platforms "timezone" is a macro. Because of this,
- * the name ACE_OS::timezone will cause errors. So in order to use the
- * macro as it is defined but also keep the name ACE_OS::timezone, we
- * use timezone first here in this inline function, and then undefine
- * timezone.
- */
-inline long ace_timezone()
-{
-#if defined (ACE_WIN32)
- TIME_ZONE_INFORMATION tz;
- GetTimeZoneInformation (&tz);
- return tz.Bias * 60;
-#elif defined (ACE_HAS_TIMEZONE)
- // The XPG/POSIX specification requires that tzset() be called to
- // set the global variable <timezone>.
- ::tzset();
- return timezone;
-#elif defined (ACE_HAS_TIMEZONE_GETTIMEOFDAY)
- // The XPG/POSIX specification does not require gettimeofday to
- // set the timezone struct (it leaves the behavior of passing a
- // non-null struct undefined).
- long result = 0;
- struct timeval time;
- struct timezone zone;
- ACE_UNUSED_ARG (result);
- ACE_OSCALL (::gettimeofday (&time, &zone), int, -1, result);
- return zone.tz_minuteswest * 60;
-#else
- ACE_NOTSUP_RETURN (0);
-#endif
-}
-
-#if !defined (ACE_LACKS_DIFFTIME)
-/// Helper for the ACE_OS::difftime() function
-/**
- * We moved the difftime code that used to be in ACE_OS::difftime()
- * here because on some platforms "difftime" is a macro. Because of this,
- * the name ACE_OS::difftime will cause errors. So in order to use the
- * macro as it is defined but also keep the name ACE_OS::difftime, we
- * use difftime first here in this inline function, and then undefine
- * it.
- */
-inline double ace_difftime(time_t t1, time_t t0)
-{
- return difftime (t1, t0);
-}
-#endif /* !ACE_LACKS_DIFFTIME */
-
-# if defined (ACE_WIN32)
-# if !defined (ACE_LACKS_LONGLONG_T)
-// 64-bit quad-word definitions.
-typedef unsigned __int64 ACE_QWORD;
-typedef unsigned __int64 ACE_hrtime_t;
-inline ACE_QWORD ACE_MAKE_QWORD (DWORD lo, DWORD hi) { return ACE_QWORD (lo) | (ACE_QWORD (hi) << 32); }
-inline DWORD ACE_LOW_DWORD (ACE_QWORD q) { return (DWORD) q; }
-inline DWORD ACE_HIGH_DWORD (ACE_QWORD q) { return (DWORD) (q >> 32); }
-# else
-// Can't find ANY place that ACE_QWORD is used, but hrtime_t is.
-typedef ACE_UINT64 ACE_hrtime_t;
-# endif // ACE_LACKS_LONGLONG_T
-# elif defined (_TNS_R_TARGET)
-typedef long long ACE_hrtime_t;
-# else /* !ACE_WIN32 */
-# if defined (ACE_HAS_HI_RES_TIMER) && !defined (ACE_LACKS_LONGLONG_T)
- /* hrtime_t is defined on systems (Suns) with ACE_HAS_HI_RES_TIMER */
- typedef hrtime_t ACE_hrtime_t;
-# else /* ! ACE_HAS_HI_RES_TIMER || ACE_LACKS_LONGLONG_T */
- typedef ACE_UINT64 ACE_hrtime_t;
-# endif /* ! ACE_HAS_HI_RES_TIMER || ACE_LACKS_LONGLONG_T */
-# endif /* ACE_WIN32 */
-
-# if defined (ACE_LACKS_UNSIGNEDLONGLONG_T)
-# define ACE_HRTIME_CONVERSION(VAL) ACE_U64_TO_U32(VAL)
-# define ACE_HRTIME_TO_U64(VAL) ACE_U_LongLong(VAL)
-# else
-# define ACE_HRTIME_CONVERSION(VAL) (VAL)
-# define ACE_HRTIME_TO_U64(VAL) (VAL)
-# endif
-
-namespace ACE_OS
-{
- enum ACE_HRTimer_Op
- {
- ACE_HRTIMER_START = 0x0, // Only use these if you can stand
- ACE_HRTIMER_INCR = 0x1, // for interrupts to be disabled during
- ACE_HRTIMER_STOP = 0x2, // the timed interval!!!!
- ACE_HRTIMER_GETTIME = 0xFFFF
- };
-
- //@{ @name A set of wrappers for operations on time.
-
- ACE_NAMESPACE_INLINE_FUNCTION
- char *asctime (const struct tm *tm);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- char *asctime_r (const struct tm *tm,
- char *buf, int buflen);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int clock_gettime (clockid_t,
- struct timespec *);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int clock_settime (clockid_t,
- const struct timespec *);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_TCHAR *ctime (const time_t *t);
-
-#if defined (ACE_HAS_WINCE) && !defined (_DEBUG)
- extern ACE_EXPORT_MACRO
-#else
- ACE_NAMESPACE_INLINE_FUNCTION
-#endif
- ACE_TCHAR *ctime_r (const time_t *clock, ACE_TCHAR *buf, int buflen);
-
-# if defined (difftime)
-# undef difftime
-# endif /* difftime */
-
-#if !defined (ACE_LACKS_DIFFTIME)
- ACE_NAMESPACE_INLINE_FUNCTION
-#else
- extern ACE_Export
-#endif /* ! ACE_LACKS_DIFFTIME */
- double difftime (time_t t1,
- time_t t0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_hrtime_t gethrtime (const ACE_HRTimer_Op = ACE_HRTIMER_GETTIME);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- struct tm *gmtime (const time_t *clock);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- struct tm *gmtime_r (const time_t *clock,
- struct tm *res);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- struct tm *localtime (const time_t *clock);
-
- extern ACE_Export
- struct tm *localtime_r (const time_t *clock,
- struct tm *res);
-
- // Get the current time.
- extern ACE_Export
- time_t mktime (struct tm *timeptr);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int nanosleep (const struct timespec *requested,
- struct timespec *remaining = 0);
-
-# if defined (ACE_HAS_POWERPC_TIMER) && defined (ghs)
- extern ACE_Export
- void readPPCTimeBase (u_long &most,
- u_long &least);
-# endif /* ACE_HAS_POWERPC_TIMER && ghs */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- size_t strftime (char *s,
- size_t maxsize,
- const char *format,
- const struct tm *timeptr);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- char *strptime (const char *buf,
- const char *format,
- struct tm *tm);
-
-# if defined (ACE_LACKS_STRPTIME) && !defined (ACE_REFUSE_STRPTIME_EMULATION)
- extern ACE_Export
- char *strptime_emulation (const char *buf,
- const char *format,
- struct tm *tm);
-
- extern ACE_Export
- int strptime_getnum (const char *buf, int *num, int *bi,
- int *fi, int min, int max);
-# endif /* ACE_LACKS_STRPTIME && !ACE_REFUSE_STRPTIME_EMULATION */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- time_t time (time_t *tloc = 0);
-
-# if defined (timezone)
-# undef timezone
-# endif /* timezone */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- long timezone (void);
-
- // wrapper for time zone information.
- ACE_NAMESPACE_INLINE_FUNCTION
- void tzset (void);
-
- //@}
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if (defined (ACE_HAS_VERSIONED_NAMESPACE) \
- && ACE_HAS_VERSIONED_NAMESPACE == 1) \
- && defined (ghs) \
- && defined (ACE_HAS_PENTIUM) \
- && !defined (ACE_WIN32)
-#define ACE_GETHRTIME_NAME ACE_PREPROC_CONCATENATE(ACE_,ACE_PREPROC_CONCATENATE(ACE_VERSIONED_NAMESPACE_NAME, _gethrtime))
-#else
-# define ACE_GETHRTIME_NAME ACE_gethrtime
-#endif /* ACE_HAS_VERSIONED_NAMESPACE == 1 */
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_time.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_TIME_H */
-
diff --git a/dep/include/ace/OS_NS_time.inl b/dep/include/ace/OS_NS_time.inl
deleted file mode 100644
index 9a77531a108..00000000000
--- a/dep/include/ace/OS_NS_time.inl
+++ /dev/null
@@ -1,505 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_time.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_string.h"
-#include "ace/OS_NS_errno.h"
-#include "ace/Time_Value.h"
-#include "ace/OS_NS_unistd.h"
-#include "ace/OS_NS_sys_time.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE char *
-ACE_OS::asctime (const struct tm *t)
-{
- ACE_OS_TRACE ("ACE_OS::asctime");
-#if defined (ACE_LACKS_ASCTIME)
- ACE_UNUSED_ARG (t);
- ACE_NOTSUP_RETURN (0);
-#else
- ACE_OSCALL_RETURN (ACE_STD_NAMESPACE::asctime (t), char *, 0);
-#endif /* ACE_LACKS_ASCTIME */
-}
-
-ACE_INLINE char *
-ACE_OS::asctime_r (const struct tm *t, char *buf, int buflen)
-{
- ACE_OS_TRACE ("ACE_OS::asctime_r");
-#if defined (ACE_HAS_REENTRANT_FUNCTIONS)
-# if defined (ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R)
- char *result;
-# if defined (DIGITAL_UNIX)
- ACE_OSCALL (::_Pasctime_r (t, buf), char *, 0, result);
-# else
- ACE_OSCALL (::asctime_r (t, buf), char *, 0, result);
-# endif /* DIGITAL_UNIX */
- ACE_OS::strsncpy (buf, result, buflen);
- return buf;
-# else
-# if defined (ACE_HAS_SIZET_PTR_ASCTIME_R_AND_CTIME_R)
- ACE_OSCALL_RETURN (::asctime_r (t, buf, reinterpret_cast<size_t*>(&buflen)), char *, 0);
-# else
- ACE_OSCALL_RETURN (::asctime_r (t, buf, buflen), char *, 0);
-# endif /* ACE_HAS_SIZET_PTR_ASCTIME_R_AND_CTIME_R */
-# endif /* ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R */
-#elif defined (ACE_LACKS_ASCTIME_R)
- ACE_UNUSED_ARG (t);
- ACE_UNUSED_ARG (buf);
- ACE_UNUSED_ARG (buflen);
- ACE_NOTSUP_RETURN (0);
-#elif defined (ACE_HAS_TR24731_2005_CRT)
- char *result = buf;
- ACE_SECURECRTCALL (asctime_s (buf, static_cast<size_t> (buflen), t), \
- char*, 0, result);
- return result;
-#else
- char *result = 0;
- ACE_OSCALL (ACE_STD_NAMESPACE::asctime (t), char *, 0, result);
- ACE_OS::strsncpy (buf, result, buflen);
- return buf;
-#endif /* ACE_HAS_REENTRANT_FUNCTIONS */
-}
-
-ACE_INLINE int
-ACE_OS::clock_gettime (clockid_t clockid, struct timespec *ts)
-{
- ACE_OS_TRACE ("ACE_OS::clock_gettime");
-#if defined (ACE_HAS_CLOCK_GETTIME)
- ACE_OSCALL_RETURN (::clock_gettime (clockid, ts), int, -1);
-#else
- ACE_UNUSED_ARG (clockid);
- ACE_UNUSED_ARG (ts);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_CLOCK_GETTIME */
-}
-
-ACE_INLINE int
-ACE_OS::clock_settime (clockid_t clockid, const struct timespec *ts)
-{
-#if defined (ACE_HAS_CLOCK_SETTIME)
-# if defined (ACE_HAS_NONCONST_CLOCK_SETTIME)
- ACE_OSCALL_RETURN (::clock_settime (clockid, const_cast<struct timespec *>(ts)), int, -1);
-# else
- ACE_OSCALL_RETURN (::clock_settime (clockid, ts), int, -1);
-# endif /* ACE_HAS_NONCONST_CLOCK_SETTIME */
-#else
- ACE_UNUSED_ARG (clockid);
- ACE_UNUSED_ARG (ts);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_CLOCK_SETTIME */
-}
-
-// Magic number declaration and definition for ctime and ctime_r ()
-static const int ctime_buf_size = 26;
-
-ACE_INLINE ACE_TCHAR *
-ACE_OS::ctime (const time_t *t)
-{
- ACE_OS_TRACE ("ACE_OS::ctime");
-#if defined (ACE_HAS_BROKEN_CTIME)
- ACE_OSCALL_RETURN (::asctime (::localtime (t)), char *, 0);
-#elif defined (ACE_HAS_WINCE)
- static ACE_TCHAR buf [ctime_buf_size];
- return ACE_OS::ctime_r (t,
- buf,
- ctime_buf_size);
-#elif defined (ACE_WIN32) && defined (ACE_USES_WCHAR)
- ACE_OSCALL_RETURN (::_wctime (t), wchar_t *, 0);
-#else
-# if defined (ACE_USES_WCHAR) /* Not Win32, else it would do the above */
- char *narrow_time;
- ACE_OSCALL (::ctime (t), char *, 0, narrow_time);
- if (narrow_time == 0)
- return 0;
- // ACE_Ascii_To_Wide::convert allocates (via new []) a wchar_t[]. If
- // we've done this before, free the previous one. Yes, this leaves a
- // small memory leak (26 characters) but there's no way around this
- // that I know of. (Steve Huston, 12-Feb-2003).
- static wchar_t *wide_time = 0;
- if (wide_time != 0)
- delete [] wide_time;
- wide_time = ACE_Ascii_To_Wide::convert (narrow_time);
- return wide_time;
-# else
- ACE_OSCALL_RETURN (::ctime (t), char *, 0);
-# endif /* ACE_USES_WCHAR */
-# endif /* ACE_HAS_BROKEN_CTIME */
-}
-
-#if !defined (ACE_HAS_WINCE) /* CE version in OS.cpp */
-ACE_INLINE ACE_TCHAR *
-ACE_OS::ctime_r (const time_t *t, ACE_TCHAR *buf, int buflen)
-{
- ACE_OS_TRACE ("ACE_OS::ctime_r");
-
-#if defined (ACE_HAS_REENTRANT_FUNCTIONS)
-
- char *bufp = 0;
-# if defined (ACE_USES_WCHAR)
- char narrow_buf[ctime_buf_size];
- bufp = narrow_buf;
-# else
- bufp = buf;
-# endif /* ACE_USES_WCHAR */
-
- if (buflen < ctime_buf_size)
- {
- errno = ERANGE;
- return 0;
- }
-# if defined (ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R)
-# if defined (DIGITAL_UNIX)
- ACE_OSCALL (::_Pctime_r (t, bufp), ACE_TCHAR *, 0, bufp);
-# else /* DIGITAL_UNIX */
- ACE_OSCALL (::ctime_r (t, bufp), char *, 0, bufp);
-# endif /* DIGITAL_UNIX */
-# else /* ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R */
-
-# if defined (ACE_HAS_SIZET_PTR_ASCTIME_R_AND_CTIME_R)
- bufp = ::ctime_r (t, bufp, reinterpret_cast<size_t*>(&buflen));
-# else /* ACE_CTIME_R_RETURNS_INT */
- bufp = ::ctime_r (t, bufp, buflen);
-# endif /* ACE_CTIME_R_RETURNS_INT */
-
-# endif /* ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R */
-
- if (bufp == 0)
- return 0;
-
-# if defined (ACE_USES_WCHAR)
- ACE_Ascii_To_Wide wide_buf (bufp);
- ACE_OS_String::strcpy (buf, wide_buf.wchar_rep ());
- return buf;
-# else
- return bufp;
-# endif /* ACE_USES_WCHAR */
-
-#elif defined (ACE_HAS_TR24731_2005_CRT)
- if (buflen < ctime_buf_size)
- {
- errno = ERANGE;
- return 0;
- }
- ACE_TCHAR *result = buf;
-# if defined (ACE_USES_WCHAR)
- ACE_SECURECRTCALL (_wctime_s (buf, buflen, t), wchar_t *, 0, result);
-# else
- ACE_SECURECRTCALL (ctime_s (buf, buflen, t), char *, 0, result);
-# endif
- return result;
-
-#else /* ACE_HAS_REENTRANT_FUNCTIONS */
- if (buflen < ctime_buf_size)
- {
- errno = ERANGE;
- return 0;
- }
-
- ACE_TCHAR *result;
-# if defined (ACE_USES_WCHAR)
- ACE_OSCALL (::_wctime (t), wchar_t *, 0, result);
-# else /* ACE_USES_WCHAR */
- ACE_OSCALL (::ctime (t), char *, 0, result);
-# endif /* ACE_USES_WCHAR */
- if (result != 0)
- ACE_OS::strsncpy (buf, result, buflen);
- return buf;
-#endif /* ACE_HAS_REENTRANT_FUNCTIONS */
-}
-#endif /* !ACE_HAS_WINCE */
-
-#if !defined (ACE_LACKS_DIFFTIME)
-ACE_INLINE double
-ACE_OS::difftime (time_t t1, time_t t0)
-{
- return ::ace_difftime (t1, t0);
-}
-#endif /* ! ACE_LACKS_DIFFTIME */
-
-#if defined (ghs) && defined (ACE_HAS_PENTIUM) && !defined (ACE_WIN32)
- extern "C" ACE_hrtime_t ACE_GETHRTIME_NAME ();
-#endif /* ghs && ACE_HAS_PENTIUM */
-
-ACE_INLINE ACE_hrtime_t
-ACE_OS::gethrtime (const ACE_HRTimer_Op op)
-{
- ACE_OS_TRACE ("ACE_OS::gethrtime");
-#if defined (ACE_HAS_HI_RES_TIMER)
- ACE_UNUSED_ARG (op);
- return ::gethrtime ();
-#elif defined (ACE_HAS_AIX_HI_RES_TIMER)
- ACE_UNUSED_ARG (op);
- timebasestruct_t tb;
-
- ::read_real_time(&tb, TIMEBASE_SZ);
- ::time_base_to_time(&tb, TIMEBASE_SZ);
-
- return ACE_hrtime_t(tb.tb_high) * ACE_ONE_SECOND_IN_NSECS + tb.tb_low;
-#elif defined (ACE_WIN32)
- ACE_UNUSED_ARG(op);
- LARGE_INTEGER freq;
-
- ::QueryPerformanceCounter (&freq);
-
-# if defined (ACE_LACKS_LONGLONG_T)
- ACE_UINT64 uint64_freq (freq.u.LowPart,
- static_cast<unsigned int> (freq.u.HighPart));
- return uint64_freq;
-# else
- return freq.QuadPart;
-# endif //ACE_LACKS_LONGLONG_T
-#elif defined (ghs) && defined (ACE_HAS_PENTIUM)
- ACE_UNUSED_ARG (op);
- // Use .obj/gethrtime.o, which was compiled with g++.
- return ACE_GETHRTIME_NAME ();
-#elif (defined (__GNUG__) || defined (__INTEL_COMPILER)) && !defined(ACE_VXWORKS) && defined (ACE_HAS_PENTIUM)
- ACE_UNUSED_ARG (op);
-# if defined (ACE_LACKS_LONGLONG_T)
- double now;
-# else /* ! ACE_LACKS_LONGLONG_T */
- ACE_hrtime_t now;
-# endif /* ! ACE_LACKS_LONGLONG_T */
-
-#if defined (__amd64__) || defined (__x86_64__)
- // Read the high res tick counter into 32 bit int variables "eax" and
- // "edx", and then combine them into 64 bit int "now"
- ACE_UINT32 eax, edx;
- asm volatile ("rdtsc" : "=a" (eax), "=d" (edx) : : "memory");
- now = (((ACE_UINT64) eax) | (((ACE_UINT64) edx) << 32));
-#else
- // Read the high-res tick counter directly into memory variable "now".
- // The A constraint signifies a 64-bit int.
- asm volatile ("rdtsc" : "=A" (now) : : "memory");
-#endif
-
-# if defined (ACE_LACKS_LONGLONG_T)
- ACE_UINT32 least, most;
- ACE_OS::memcpy (&least, &now, sizeof (ACE_UINT32));
- ACE_OS::memcpy (&most, (u_char *) &now + sizeof (ACE_UINT32),
- sizeof (ACE_UINT32));
-
- ACE_hrtime_t ret (least, most);
- return ret;
-# else /* ! ACE_LACKS_LONGLONG_T */
- return now;
-# endif /* ! ACE_LACKS_LONGLONG_T */
-#elif defined (linux) && defined (ACE_HAS_ALPHA_TIMER)
- // NOTE: alphas only have a 32 bit tick (cycle) counter. The rpcc
- // instruction actually reads 64 bits, but the high 32 bits are
- // implementation-specific. Linux and Digital Unix, for example,
- // use them for virtual tick counts, i.e., taking into account only
- // the time that the process was running. This information is from
- // David Mosberger's article, see comment below.
- ACE_UINT32 now;
-
- // The following statement is based on code published by:
- // Mosberger, David, "How to Make Your Applications Fly, Part 1",
- // Linux Journal Issue 42, October 1997, page 50. It reads the
- // high-res tick counter directly into the memory variable.
- asm volatile ("rpcc %0" : "=r" (now) : : "memory");
-
- return now;
-#elif defined (ACE_HAS_POWERPC_TIMER) && (defined (ghs) || defined (__GNUG__))
- // PowerPC w/ GreenHills or g++.
-
- ACE_UNUSED_ARG (op);
- u_long most;
- u_long least;
-
-#if defined (ghs)
- ACE_OS::readPPCTimeBase (most, least);
-#else
- u_long scratch;
-
- do {
- asm volatile ("mftbu %0\n"
- "mftb %1\n"
- "mftbu %2"
- : "=r" (most), "=r" (least), "=r" (scratch));
- } while (most != scratch);
-#endif
-
-#if defined (ACE_LACKS_LONGLONG_T)
- return ACE_U_LongLong (least, most);
-#else /* ! ACE_LACKS_LONGLONG_T */
- return 0x100000000llu * most + least;
-#endif /* ! ACE_LACKS_LONGLONG_T */
-
-#elif defined (ACE_HAS_CLOCK_GETTIME)
- // e.g., VxWorks (besides POWERPC && GreenHills) . . .
- ACE_UNUSED_ARG (op);
- struct timespec ts;
-
- ACE_OS::clock_gettime (
-#if defined (ACE_HAS_CLOCK_GETTIME_MONOTONIC)
- CLOCK_MONOTONIC,
-#endif /* !ACE_HAS_CLOCK_GETTIME_MONOTONIC */
- CLOCK_REALTIME,
- &ts);
-
- // Carefully create the return value to avoid arithmetic overflow
- // if ACE_hrtime_t is ACE_U_LongLong.
- return static_cast<ACE_hrtime_t> (ts.tv_sec) *
- ACE_U_ONE_SECOND_IN_NSECS + static_cast<ACE_hrtime_t> (ts.tv_nsec);
-#else
- ACE_UNUSED_ARG (op);
- ACE_Time_Value const now = ACE_OS::gettimeofday ();
-
- // Carefully create the return value to avoid arithmetic overflow
- // if ACE_hrtime_t is ACE_U_LongLong.
- return (static_cast<ACE_hrtime_t> (now.sec ()) * (ACE_UINT32) 1000000 +
- static_cast<ACE_hrtime_t> (now.usec ())) * (ACE_UINT32) 1000;
-#endif /* ACE_HAS_HI_RES_TIMER */
-}
-
-ACE_INLINE struct tm *
-ACE_OS::gmtime (const time_t *t)
-{
- ACE_OS_TRACE ("ACE_OS::gmtime");
-#if defined (ACE_LACKS_GMTIME)
- ACE_UNUSED_ARG (t);
- ACE_NOTSUP_RETURN (0);
-#else
- ACE_OSCALL_RETURN (::gmtime (t), struct tm *, 0);
-#endif /* ACE_LACKS_GMTIME */
-}
-
-ACE_INLINE struct tm *
-ACE_OS::gmtime_r (const time_t *t, struct tm *res)
-{
- ACE_OS_TRACE ("ACE_OS::gmtime_r");
-#if defined (ACE_HAS_REENTRANT_FUNCTIONS)
-# if defined (DIGITAL_UNIX)
- ACE_OSCALL_RETURN (::_Pgmtime_r (t, res), struct tm *, 0);
-# else
- ACE_OSCALL_RETURN (::gmtime_r (t, res), struct tm *, 0);
-# endif /* DIGITAL_UNIX */
-#elif defined (ACE_HAS_TR24731_2005_CRT)
- struct tm *tm_p = res;
- ACE_SECURECRTCALL (gmtime_s (res, t), struct tm *, 0, tm_p);
- return tm_p;
-#elif defined (ACE_LACKS_GMTIME_R)
- ACE_UNUSED_ARG (t);
- ACE_UNUSED_ARG (res);
- ACE_NOTSUP_RETURN (0);
-#else
- struct tm *result;
- ACE_OSCALL (::gmtime (t), struct tm *, 0, result) ;
- if (result != 0)
- *res = *result;
- return res;
-#endif /* ACE_HAS_REENTRANT_FUNCTIONS */
-}
-
-ACE_INLINE struct tm *
-ACE_OS::localtime (const time_t *t)
-{
- ACE_OS_TRACE ("ACE_OS::localtime");
-#if defined (ACE_LACKS_LOCALTIME)
- ACE_UNUSED_ARG (t);
- ACE_NOTSUP_RETURN (0);
-#else
- ACE_OSCALL_RETURN (::localtime (t), struct tm *, 0);
-#endif /* ACE_LACKS_LOCALTIME */
-}
-
-ACE_INLINE int
-ACE_OS::nanosleep (const struct timespec *requested,
- struct timespec *remaining)
-{
- ACE_OS_TRACE ("ACE_OS::nanosleep");
-#if defined (ACE_HAS_CLOCK_GETTIME)
- // ::nanosleep () is POSIX 1003.1b. So is ::clock_gettime (). So,
- // if ACE_HAS_CLOCK_GETTIME is defined, then ::nanosleep () should
- // be available on the platform. On Solaris 2.x, both functions
- // require linking with -lposix4.
- return ::nanosleep ((ACE_TIMESPEC_PTR) requested, remaining);
-#else
- ACE_UNUSED_ARG (remaining);
-
- // Convert into seconds and microseconds.
- ACE_Time_Value tv (requested->tv_sec,
- requested->tv_nsec / 1000);
- return ACE_OS::sleep (tv);
-#endif /* ACE_HAS_CLOCK_GETTIME */
-}
-
-ACE_INLINE size_t
-ACE_OS::strftime (char *s, size_t maxsize, const char *format,
- const struct tm *timeptr)
-{
-#if defined (ACE_LACKS_STRFTIME)
- ACE_UNUSED_ARG (s);
- ACE_UNUSED_ARG (maxsize);
- ACE_UNUSED_ARG (format);
- ACE_UNUSED_ARG (timeptr);
- ACE_NOTSUP_RETURN (0);
-#else
- return ACE_STD_NAMESPACE::strftime (s, maxsize, format, timeptr);
-#endif /* ACE_LACKS_STRFTIME */
-}
-
-ACE_INLINE char *
-ACE_OS::strptime (const char *buf, const char *format, struct tm *tm)
-{
-#if defined (ACE_LACKS_STRPTIME)
-# if defined (ACE_REFUSE_STRPTIME_EMULATION)
- ACE_UNUSED_ARG (buf);
- ACE_UNUSED_ARG (format);
- ACE_UNUSED_ARG (tm);
- ACE_NOTSUP_RETURN (0);
-# else
- return ACE_OS::strptime_emulation (buf, format, tm);
-# endif /* ACE_REFUSE_STRPTIME_EMULATION */
-#else
- return ::strptime (buf, format, tm);
-#endif /* ACE_LACKS_STRPTIME */
-}
-
-ACE_INLINE time_t
-ACE_OS::time (time_t *tloc)
-{
- ACE_OS_TRACE ("ACE_OS::time");
-#if !defined (ACE_HAS_WINCE)
- ACE_OSCALL_RETURN (::time (tloc), time_t, (time_t) -1);
-#else
- time_t retv = ACE_OS::gettimeofday ().sec ();
- if (tloc)
- *tloc = retv;
- return retv;
-#endif /* ACE_HAS_WINCE */
-}
-
-// Linux won't compile unless we explicitly use a namespace here.
-#if defined (__GNUG__)
-namespace ACE_OS {
- ACE_INLINE long
- timezone (void)
- {
- return ::ace_timezone ();
- }
-} /* namespace ACE_OS */
-#else
-ACE_INLINE long
-ACE_OS::timezone (void)
-{
- return ::ace_timezone ();
-}
-#endif /* linux */
-
-ACE_INLINE void
-ACE_OS::tzset (void)
-{
-#if !defined (ACE_HAS_WINCE) && !defined (ACE_VXWORKS) && !defined(ACE_HAS_RTEMS) && !defined (ACE_HAS_DINKUM_STL)
-# if defined (ACE_WIN32)
- ::_tzset (); // For Win32.
-# else
- ::tzset (); // For UNIX platforms.
-# endif /* ACE_WIN32 */
-# else
- errno = ENOTSUP;
-# endif /* ACE_HAS_WINCE && !VXWORKS && !ACE_HAS_RTEMS && !ACE_HAS_DINKUM_STL */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_unistd.h b/dep/include/ace/OS_NS_unistd.h
deleted file mode 100644
index b9b7604b797..00000000000
--- a/dep/include/ace/OS_NS_unistd.h
+++ /dev/null
@@ -1,382 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_unistd.h
- *
- * $Id: OS_NS_unistd.h 81156 2008-03-30 20:56:47Z iliyan $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_UNISTD_H
-# define ACE_OS_NS_UNISTD_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include /**/ "ace/ACE_export.h"
-#include "ace/Time_Value.h"
-#include "ace/Basic_Types.h"
-#include "ace/os_include/os_unistd.h"
-#include "ace/os_include/os_stdio.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-// This should go in os_unistd.h, but since we don't yet implement any code
-// at that level, we put it here. It used to be in OS.i.
-#if defined (ACE_NEEDS_FTRUNCATE)
-extern "C" ACE_Export int ftruncate (ACE_HANDLE handle, long len);
-#endif /* ACE_NEEDS_FTRUNCATE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS
-{
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int access (const char *path, int amode);
-
-#if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- int access (const wchar_t *path, int amode);
-#endif /* ACE_HAS_WCHAR */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- unsigned int alarm (u_int secs);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- long allocation_granularity (void);
-
- // used by ARGV::argv_to_string() and ACE_OS::fork_exec()
- extern ACE_Export
- int argv_to_string (int argc,
- ACE_TCHAR **argv,
- ACE_TCHAR *&buf,
- bool substitute_env_args = true,
- bool quote_args = false);
-
- extern ACE_Export
- int argv_to_string (ACE_TCHAR **argv,
- ACE_TCHAR *&buf,
- bool substitute_env_args = true,
- bool quote_args = false);
-
-#if !defined (ACE_LACKS_CHDIR)
- ACE_NAMESPACE_INLINE_FUNCTION
- int chdir (const char *path);
-
-#if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- int chdir (const wchar_t *path);
-#endif /* ACE_HAS_WCHAR */
-#endif /* ACE_LACKS_CHDIR */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int rmdir (const char *path);
-
-#if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- int rmdir (const wchar_t *path);
-#endif /* ACE_HAS_WCHAR */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int close (ACE_HANDLE handle);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_HANDLE dup (ACE_HANDLE handle);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int dup2 (ACE_HANDLE oldfd,
- ACE_HANDLE newfd);
-
- extern ACE_Export
- int execl (const char *path,
- const char *arg0, ...);
-
- extern ACE_Export
- int execle (const char *path,
- const char *arg0, ...);
-
- extern ACE_Export
- int execlp (const char *file,
- const char *arg0, ...);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int execv (const char *path,
- char *const argv[]);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int execve (const char *path,
- char *const argv[],
- char *const envp[]);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int execvp (const char *file,
- char *const argv[]);
-
- //@{
- /// Forks and exec's a process in a manner that works on Solaris and
- /// NT. argv[0] must be the full path name to the executable.
- ACE_NAMESPACE_INLINE_FUNCTION
- pid_t fork (void);
-
- // not in susv3
- extern ACE_Export
- pid_t fork (const ACE_TCHAR *program_name);
-
- extern ACE_Export
- pid_t fork_exec (ACE_TCHAR *argv[]);
-
- //@}
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int fsync (ACE_HANDLE handle);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int ftruncate (ACE_HANDLE handle, ACE_OFF_T offset);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- char *getcwd (char *, size_t);
-
-#if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- wchar_t *getcwd (wchar_t *, size_t);
-#endif /* ACE_HAS_WCHAR */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- gid_t getgid (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- gid_t getegid (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int getopt (int argc,
- char *const *argv,
- const char *optstring);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- long getpagesize (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- pid_t getpgid (pid_t pid);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- pid_t getpid (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- pid_t getppid (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- uid_t getuid (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- uid_t geteuid (void);
-
- // should call gethostname()
- ACE_NAMESPACE_INLINE_FUNCTION
- int hostname (char *name,
- size_t maxnamelen);
-
-#if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- int hostname (wchar_t *name,
- size_t maxnamelen);
-#endif /* ACE_HAS_WCHAR */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int isatty (int handle);
-
-#if defined (ACE_WIN32)
- ACE_NAMESPACE_INLINE_FUNCTION
- int isatty (ACE_HANDLE handle);
-#endif /* ACE_WIN32 */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_OFF_T lseek (ACE_HANDLE handle,
- ACE_OFF_T offset,
- int whence);
-
-#if defined (ACE_HAS_LLSEEK) || defined (ACE_HAS_LSEEK64)
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_LOFF_T llseek (ACE_HANDLE handle,
- ACE_LOFF_T offset,
- int whence);
-#endif /* ACE_HAS_LLSEEK */
-
- /// Get the number of CPUs configured in the machine.
- extern ACE_Export
- long num_processors (void);
-
- /// Get the number of CPUs currently online.
- extern ACE_Export
- long num_processors_online (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int pipe (ACE_HANDLE handles[]);
-
- extern ACE_Export
- ssize_t pread (ACE_HANDLE handle,
- void *buf,
- size_t nbyte,
- ACE_OFF_T offset);
-
- extern ACE_Export
- ssize_t pwrite (ACE_HANDLE handle,
- const void *buf,
- size_t nbyte,
- ACE_OFF_T offset);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t read (ACE_HANDLE handle,
- void *buf,
- size_t len);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t read (ACE_HANDLE handle,
- void *buf,
- size_t len,
- ACE_OVERLAPPED *);
-
- /**
- * Receive @a len bytes into @a buf from <handle> (uses the
- * <ACE_OS::read> call, which uses the <read> system call on UNIX
- * and the <ReadFile> call on Win32). If errors occur, -1 is
- * returned. If EOF occurs, 0 is returned. Whatever data has been
- * read will be returned to the caller through<bytes_transferred>.
- *
- */
- extern ACE_Export
- ssize_t read_n (ACE_HANDLE handle,
- void *buf,
- size_t len,
- size_t *bytes_transferred = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t readlink (const char *path,
- char *buf,
- size_t bufsiz);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void *sbrk (intptr_t brk);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int setgid (gid_t);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int setegid (gid_t);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int setpgid (pid_t pid, pid_t pgid);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int setregid (gid_t rgid, gid_t egid);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int setreuid (uid_t ruid, uid_t euid);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- pid_t setsid (void);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int setuid (uid_t);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int seteuid (uid_t);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sleep (u_int seconds);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int sleep (const ACE_Time_Value &tv);
-
- // used by ARGV::string_to_argv
- extern ACE_Export
- int string_to_argv (ACE_TCHAR *buf,
- int &argc,
- ACE_TCHAR **&argv,
- bool substitute_env_args = true);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void swab (const void *src, void *dest, ssize_t n);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- long sysconf (int);
-
- // not in susv3
- ACE_NAMESPACE_INLINE_FUNCTION
- long sysinfo (int cmd,
- char *buf,
- long count);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int truncate (const ACE_TCHAR *filename, ACE_OFF_T length);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- useconds_t ualarm (useconds_t usecs,
- useconds_t interval = 0);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- useconds_t ualarm (const ACE_Time_Value &tv,
- const ACE_Time_Value &tv_interval = ACE_Time_Value::zero);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int unlink (const char *path);
-
-#if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- int unlink (const wchar_t *path);
-#endif /* ACE_HAS_WCHAR */
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t write (ACE_HANDLE handle,
- const void *buf,
- size_t nbyte);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ssize_t write (ACE_HANDLE handle,
- const void *buf,
- size_t nbyte,
- ACE_OVERLAPPED *);
-
- /**
- * Send @a len bytes from @a buf to @a handle (uses the <ACE_OS::write>
- * calls, which is uses the <write> system call on UNIX and the
- * <WriteFile> call on Win32). If errors occur, -1 is returned. If
- * EOF occurs, 0 is returned. Whatever data has been transmitted
- * will be returned to the caller through <bytes_transferred>.
- */
- extern ACE_Export
- ssize_t write_n (ACE_HANDLE handle,
- const void *buf,
- size_t len,
- size_t *bytes_transferred = 0);
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_unistd.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_UNISTD_H */
-
diff --git a/dep/include/ace/OS_NS_unistd.inl b/dep/include/ace/OS_NS_unistd.inl
deleted file mode 100644
index be2ec3cff25..00000000000
--- a/dep/include/ace/OS_NS_unistd.inl
+++ /dev/null
@@ -1,1192 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_unistd.inl 81696 2008-05-14 18:15:31Z johnnyw $
-
-#include "ace/OS_NS_sys_utsname.h"
-#include "ace/OS_NS_string.h"
-#include "ace/OS_NS_errno.h"
-#include "ace/OS_NS_macros.h"
-#include "ace/OS_NS_fcntl.h"
-#include "ace/Default_Constants.h"
-#include "ace/OS_Memory.h"
-#include "ace/Truncate.h"
-
-#if defined (ACE_HAS_CLOCK_GETTIME)
-# include "ace/os_include/os_time.h"
-#endif /* ACE_HAS_CLOCK_GETTIME */
-
-#if defined (ACE_LACKS_ACCESS)
-# include "ace/OS_NS_stdio.h"
-#endif /* ACE_LACKS_ACCESS */
-
-#if defined (ACE_VXWORKS) || defined (ACE_HAS_WINCE)
-# include "ace/os_include/os_unistd.h"
-# if defined (ACE_VXWORKS) && (((ACE_VXWORKS >= 0x620) && (ACE_VXWORKS <= 0x660)) || defined (ACE_HAS_VXWORKS551_MEDUSA))
-# if defined (__RTP__)
-# include "ace/os_include/os_strings.h"
-# else
-# include "ace/os_include/os_string.h"
-# endif
-# endif
-#endif /* VXWORKS || ACE_HAS_WINCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_OS::access (const char *path, int amode)
-{
- ACE_OS_TRACE ("ACE_OS::access");
-#if defined (ACE_LACKS_ACCESS)
-# if defined (ACE_HAS_WINCE) || defined (ACE_VXWORKS)
- // @@ WINCE: There should be a Win32 API that can do this.
- // Hard coded read access here.
- ACE_UNUSED_ARG (amode);
- FILE* handle = ACE_OS::fopen (ACE_TEXT_CHAR_TO_TCHAR(path),
- ACE_TEXT ("r"));
- if (handle != 0)
- {
- ACE_OS::fclose (handle);
- return 0;
- }
- return (-1);
-# else
- ACE_UNUSED_ARG (path);
- ACE_UNUSED_ARG (amode);
- ACE_NOTSUP_RETURN (-1);
-# endif // ACE_HAS_WINCE
-#elif defined(ACE_WIN32)
- // Windows doesn't support checking X_OK(6)
- ACE_OSCALL_RETURN (::access (path, amode & 6), int, -1);
-#else
- ACE_OSCALL_RETURN (::access (path, amode), int, -1);
-#endif /* ACE_LACKS_ACCESS */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::access (const wchar_t *path, int amode)
-{
-#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)
- ACE_OSCALL_RETURN (::_waccess (path, amode), int, -1);
-#else /* ACE_WIN32 && !ACE_HAS_WINCE */
- return ACE_OS::access (ACE_Wide_To_Ascii (path).char_rep (), amode);
-#endif /* ACE_WIN32 && !ACE_HAS_WINCE */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE u_int
-ACE_OS::alarm (u_int secs)
-{
- ACE_OS_TRACE ("ACE_OS::alarm");
-#if defined (ACE_LACKS_ALARM)
- ACE_UNUSED_ARG (secs);
- ACE_NOTSUP_RETURN (0);
-#else
- return ::alarm (secs);
-#endif /* ACE_LACKS_ALARM */
-}
-
-ACE_INLINE long
-ACE_OS::getpagesize (void)
-{
- ACE_OS_TRACE ("ACE_OS::getpagesize");
-#if defined (ACE_WIN32) && !defined (ACE_HAS_PHARLAP)
- SYSTEM_INFO sys_info;
- ::GetSystemInfo (&sys_info);
- return (long) sys_info.dwPageSize;
-#elif defined (_SC_PAGESIZE) && !defined (ACE_HAS_NOTSUP_SC_PAGESIZE)
- return ::sysconf (_SC_PAGESIZE);
-#elif defined (ACE_HAS_GETPAGESIZE)
- return ::getpagesize ();
-#else
- // Use the default set in config.h
- return ACE_PAGE_SIZE;
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE long
-ACE_OS::allocation_granularity (void)
-{
-#if defined (ACE_WIN32)
- SYSTEM_INFO sys_info;
- ::GetSystemInfo (&sys_info);
- return sys_info.dwAllocationGranularity;
-#else
- return ACE_OS::getpagesize ();
-#endif /* ACE_WIN32 */
-}
-
-#if !defined (ACE_LACKS_CHDIR)
-ACE_INLINE int
-ACE_OS::chdir (const char *path)
-{
- ACE_OS_TRACE ("ACE_OS::chdir");
-#if defined (ACE_HAS_NONCONST_CHDIR)
- ACE_OSCALL_RETURN (::chdir (const_cast<char *> (path)), int, -1);
-#elif defined (ACE_HAS_WINCE)
- ACE_UNUSED_ARG (path);
- ACE_NOTSUP_RETURN (-1);
-#else
- ACE_OSCALL_RETURN (::chdir (path), int, -1);
-#endif /* ACE_HAS_NONCONST_CHDIR */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::chdir (const wchar_t *path)
-{
-#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)
- ACE_OSCALL_RETURN (::_wchdir (path), int, -1);
-#else /* ACE_WIN32 */
- return ACE_OS::chdir (ACE_Wide_To_Ascii (path).char_rep ());
-#endif /* ACE_WIN32 */
-}
-#endif /* ACE_HAS_WCHAR */
-#endif /* ACE_LACKS_CHDIR */
-
-ACE_INLINE int
-ACE_OS::rmdir (const char *path)
-{
-#if defined (ACE_HAS_WINCE)
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::RemoveDirectory (ACE_TEXT_CHAR_TO_TCHAR (path)),
- ace_result_),
- int, -1);
-#else
- ACE_OSCALL_RETURN (::rmdir (path), int, -1);
-#endif /* ACE_WIN32 */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::rmdir (const wchar_t *path)
-{
-#if defined (ACE_HAS_WINCE)
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::RemoveDirectoryW (path),
- ace_result_),
- int, -1);
-#elif defined (ACE_WIN32)
- ACE_OSCALL_RETURN (::_wrmdir (path), int, -1);
-#else
- ACE_Wide_To_Ascii n_path (path);
- return ACE_OS::rmdir (n_path.char_rep ());
-#endif /* ACE_HAS_WINCE */
-}
-#endif /* ACE_HAS_WCHAR */
-
-// @todo: which 4 and why??? dhinton
-// NOTE: The following four function definitions must appear before
-// ACE_OS::sema_init ().
-
-ACE_INLINE int
-ACE_OS::close (ACE_HANDLE handle)
-{
- ACE_OS_TRACE ("ACE_OS::close");
-#if defined (ACE_WIN32)
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::CloseHandle (handle), ace_result_), int, -1);
-#else
- ACE_OSCALL_RETURN (::close (handle), int, -1);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE ACE_HANDLE
-ACE_OS::dup (ACE_HANDLE handle)
-{
- ACE_OS_TRACE ("ACE_OS::dup");
-#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)
- ACE_HANDLE new_fd;
- if (::DuplicateHandle(::GetCurrentProcess (),
- handle,
- ::GetCurrentProcess(),
- &new_fd,
- 0,
- TRUE,
- DUPLICATE_SAME_ACCESS))
- return new_fd;
- else
- ACE_FAIL_RETURN (ACE_INVALID_HANDLE);
- /* NOTREACHED */
-#elif defined (ACE_LACKS_DUP)
- ACE_UNUSED_ARG (handle);
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_HAS_WINCE)
- ACE_UNUSED_ARG (handle);
- ACE_NOTSUP_RETURN (0);
-#else
- ACE_OSCALL_RETURN (::dup (handle), ACE_HANDLE, ACE_INVALID_HANDLE);
-#endif /* ACE_WIN32 && !ACE_HAS_WINCE */
-}
-
-ACE_INLINE int
-ACE_OS::dup2 (ACE_HANDLE oldhandle, ACE_HANDLE newhandle)
-{
- ACE_OS_TRACE ("ACE_OS::dup2");
-#if defined (ACE_LACKS_DUP2)
- // msvcrt has _dup2 ?!
- ACE_UNUSED_ARG (oldhandle);
- ACE_UNUSED_ARG (newhandle);
- ACE_NOTSUP_RETURN (-1);
-#else
- ACE_OSCALL_RETURN (::dup2 (oldhandle, newhandle), int, -1);
-#endif /* ACE_LACKS_DUP2 */
-}
-
-ACE_INLINE int
-ACE_OS::execv (const char *path,
- char *const argv[])
-{
- ACE_OS_TRACE ("ACE_OS::execv");
-#if defined (ACE_LACKS_EXEC)
- ACE_UNUSED_ARG (path);
- ACE_UNUSED_ARG (argv);
-
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_WIN32)
-# if defined (__BORLANDC__) /* VSB */
- return ::execv (path, argv);
-# elif defined (__MINGW32__)
- return ::_execv (path, (char *const *) argv);
-# else
- // Why this odd-looking code? If execv() returns at all, it's an error.
- // Windows defines this as returning an intptr_t rather than a simple int,
- // and the conversion triggers compile warnings. So just return -1 if
- // the call returns.
- ::_execv (path, (const char *const *) argv);
- return -1;
-# endif /* __BORLANDC__ */
-#else
- ACE_OSCALL_RETURN (::execv (path, argv), int, -1);
-#endif /* ACE_LACKS_EXEC */
-}
-
-ACE_INLINE int
-ACE_OS::execve (const char *path,
- char *const argv[],
- char *const envp[])
-{
- ACE_OS_TRACE ("ACE_OS::execve");
-#if defined (ACE_LACKS_EXEC)
- ACE_UNUSED_ARG (path);
- ACE_UNUSED_ARG (argv);
- ACE_UNUSED_ARG (envp);
-
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_WIN32)
-# if defined (__BORLANDC__) /* VSB */
- return ::execve (path, argv, envp);
-# elif defined (__MINGW32__)
- return ::_execve (path, (char *const *) argv, (char *const *) envp);
-# else
- // Why this odd-looking code? If execv() returns at all, it's an error.
- // Windows defines this as returning an intptr_t rather than a simple int,
- // and the conversion triggers compile warnings. So just return -1 if
- // the call returns.
- ::_execve (path, (const char *const *) argv, (const char *const *) envp);
- return -1;
-# endif /* __BORLANDC__ */
-#else
- ACE_OSCALL_RETURN (::execve (path, argv, envp), int, -1);
-#endif /* ACE_LACKS_EXEC */
-}
-
-ACE_INLINE int
-ACE_OS::execvp (const char *file,
- char *const argv[])
-{
- ACE_OS_TRACE ("ACE_OS::execvp");
-#if defined (ACE_LACKS_EXEC)
- ACE_UNUSED_ARG (file);
- ACE_UNUSED_ARG (argv);
-
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_WIN32)
-# if defined (__BORLANDC__) /* VSB */
- return ::execvp (file, argv);
-# elif defined (__MINGW32__)
- return ::_execvp (file, (char *const *) argv);
-# else
- // Why this odd-looking code? If execv() returns at all, it's an error.
- // Windows defines this as returning an intptr_t rather than a simple int,
- // and the conversion triggers compile warnings. So just return -1 if
- // the call returns.
- ::_execvp (file, (const char *const *) argv);
- return -1;
-# endif /* __BORLANDC__ */
-#else
- ACE_OSCALL_RETURN (::execvp (file, argv), int, -1);
-#endif /* ACE_LACKS_EXEC */
-}
-
-ACE_INLINE pid_t
-ACE_OS::fork (void)
-{
- ACE_OS_TRACE ("ACE_OS::fork");
-#if defined (ACE_LACKS_FORK)
- ACE_NOTSUP_RETURN (pid_t (-1));
-#else
- ACE_OSCALL_RETURN (::fork (), pid_t, -1);
-#endif /* ACE_LACKS_FORK */
-}
-
-ACE_INLINE int
-ACE_OS::fsync (ACE_HANDLE handle)
-{
- ACE_OS_TRACE ("ACE_OS::fsync");
-# if defined (ACE_LACKS_FSYNC)
- ACE_UNUSED_ARG (handle);
- ACE_NOTSUP_RETURN (-1);
-# elif defined (ACE_WIN32)
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::FlushFileBuffers (handle), ace_result_), int, -1);
-# else
- ACE_OSCALL_RETURN (::fsync (handle), int, -1);
-# endif /* ACE_LACKS_FSYNC */
-}
-
-ACE_INLINE int
-ACE_OS::ftruncate (ACE_HANDLE handle, ACE_OFF_T offset)
-{
- ACE_OS_TRACE ("ACE_OS::ftruncate");
-#if defined (ACE_WIN32)
-# if !defined (ACE_LACKS_WIN32_SETFILEPOINTEREX)
- LARGE_INTEGER loff;
- loff.QuadPart = offset;
- if (::SetFilePointerEx (handle, loff, 0, FILE_BEGIN))
-# else
- if (::SetFilePointer (handle,
- offset,
- 0,
- FILE_BEGIN) != INVALID_SET_FILE_POINTER)
-# endif
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::SetEndOfFile (handle), ace_result_), int, -1);
- else
- ACE_FAIL_RETURN (-1);
-#else
- ACE_OSCALL_RETURN (::ftruncate (handle, offset), int, -1);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE char *
-ACE_OS::getcwd (char *buf, size_t size)
-{
- ACE_OS_TRACE ("ACE_OS::getcwd");
-#if defined (ACE_LACKS_GETCWD)
- ACE_UNUSED_ARG (buf);
- ACE_UNUSED_ARG (size);
- ACE_NOTSUP_RETURN (0);
-#elif defined (ACE_WIN32)
- return ::getcwd (buf, static_cast<int> (size));
-#else
- ACE_OSCALL_RETURN (::getcwd (buf, size), char *, 0);
-#endif /* ACE_LACKS_GETCWD */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE wchar_t *
-ACE_OS::getcwd (wchar_t *buf, size_t size)
-{
-# if defined (ACE_HAS_WINCE)
- ACE_UNUSED_ARG (buf);
- ACE_UNUSED_ARG (size);
- ACE_NOTSUP_RETURN (0);
-# elif defined (ACE_WIN32)
- return ::_wgetcwd (buf, static_cast<int> (size));
-# else
- char *narrow_buf = new char[size];
- char *result = 0;
- result = ACE_OS::getcwd (narrow_buf, size);
- ACE_Ascii_To_Wide wide_buf (result);
- delete [] narrow_buf;
- if (result != 0)
- ACE_OS::strsncpy (buf, wide_buf.wchar_rep (), size);
- return result == 0 ? 0 : buf;
-# endif /* ACE_WIN32 */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE gid_t
-ACE_OS::getgid (void)
-{
- ACE_OS_TRACE ("ACE_OS::getgid");
-#if defined (ACE_LACKS_GETGID)
- ACE_NOTSUP_RETURN (static_cast<gid_t> (-1));
-# else
- ACE_OSCALL_RETURN (::getgid (), gid_t, static_cast<gid_t> (-1));
-# endif /* ACE_LACKS_GETGID */
-}
-
-ACE_INLINE gid_t
-ACE_OS::getegid (void)
-{
- ACE_OS_TRACE ("ACE_OS::getegid");
-#if defined (ACE_LACKS_GETEGID)
- ACE_NOTSUP_RETURN (static_cast<gid_t> (-1));
-# else
- ACE_OSCALL_RETURN (::getegid (), gid_t, static_cast<gid_t> (-1));
-# endif /* ACE_LACKS_GETEGID */
-}
-
-ACE_INLINE int
-ACE_OS::getopt (int argc, char *const *argv, const char *optstring)
-{
- ACE_OS_TRACE ("ACE_OS::getopt");
-#if defined (ACE_LACKS_GETOPT)
- ACE_UNUSED_ARG (argc);
- ACE_UNUSED_ARG (argv);
- ACE_UNUSED_ARG (optstring);
- ACE_NOTSUP_RETURN (-1);
-# else
- ACE_OSCALL_RETURN (::getopt (argc, argv, optstring), int, -1);
-# endif /* ACE_LACKS_GETOPT */
-}
-
-ACE_INLINE pid_t
-ACE_OS::getpgid (pid_t pid)
-{
- ACE_OS_TRACE ("ACE_OS::getpgid");
-#if defined (ACE_LACKS_GETPGID)
- ACE_UNUSED_ARG (pid);
- ACE_NOTSUP_RETURN (-1);
-#elif defined (linux) && __GLIBC__ > 1 && __GLIBC_MINOR__ >= 0
- // getpgid() is from SVR4, which appears to be the reason why GLIBC
- // doesn't enable its prototype by default.
- // Rather than create our own extern prototype, just use the one
- // that is visible (ugh).
- ACE_OSCALL_RETURN (::__getpgid (pid), pid_t, -1);
-#else
- ACE_OSCALL_RETURN (::getpgid (pid), pid_t, -1);
-#endif /* ACE_LACKS_GETPGID */
-}
-
-ACE_INLINE pid_t
-ACE_OS::getpid (void)
-{
- // ACE_OS_TRACE ("ACE_OS::getpid");
-#if defined (ACE_LACKS_GETPID)
- ACE_NOTSUP_RETURN (-1);
-#elif defined (ACE_WIN32)
- return ::GetCurrentProcessId ();
-#else
- ACE_OSCALL_RETURN (::getpid (), int, -1);
-#endif /* ACE_LACKS_GETPID */
-}
-
-ACE_INLINE pid_t
-ACE_OS::getppid (void)
-{
- ACE_OS_TRACE ("ACE_OS::getppid");
-#if defined (ACE_LACKS_GETPPID)
- ACE_NOTSUP_RETURN (-1);
-#else
- ACE_OSCALL_RETURN (::getppid (), pid_t, -1);
-#endif /* ACE_LACKS_GETPPID */
-}
-
-ACE_INLINE uid_t
-ACE_OS::getuid (void)
-{
- ACE_OS_TRACE ("ACE_OS::getuid");
-#if defined (ACE_LACKS_GETUID)
- ACE_NOTSUP_RETURN (static_cast<uid_t> (-1));
-# else
- ACE_OSCALL_RETURN (::getuid (), uid_t, static_cast<uid_t> (-1));
-# endif /* ACE_LACKS_GETUID*/
-}
-
-ACE_INLINE uid_t
-ACE_OS::geteuid (void)
-{
- ACE_OS_TRACE ("ACE_OS::geteuid");
-#if defined (ACE_LACKS_GETEUID)
- ACE_NOTSUP_RETURN (static_cast<uid_t> (-1));
-# else
- ACE_OSCALL_RETURN (::geteuid (), uid_t, (uid_t) -1);
-# endif /* ACE_LACKS_GETEUID */
-}
-
-ACE_INLINE int
-ACE_OS::hostname (char name[], size_t maxnamelen)
-{
- ACE_OS_TRACE ("ACE_OS::hostname");
-#if defined (ACE_HAS_PHARLAP)
- // PharLap only can do net stuff with the RT version.
-# if defined (ACE_HAS_PHARLAP_RT)
- // @@This is not at all reliable... requires ethernet and BOOTP to be used.
- // A more reliable way is to go thru the devices w/ EtsTCPGetDeviceCfg until
- // a legit IP address is found, then get its name w/ gethostbyaddr.
- ACE_SOCKCALL_RETURN (gethostname (name, maxnamelen), int, SOCKET_ERROR);
-# else
- ACE_UNUSED_ARG (name);
- ACE_UNUSED_ARG (maxnamelen);
- ACE_NOTSUP_RETURN (-1);
-# endif /* ACE_HAS_PHARLAP_RT */
-#elif defined (ACE_VXWORKS) || defined (ACE_HAS_WINCE)
- ACE_OSCALL_RETURN (::gethostname (name, maxnamelen), int, -1);
-#elif defined (ACE_WIN32)
- if (::gethostname (name, ACE_Utils::truncate_cast<int> (maxnamelen)) == 0)
- {
- return 0;
- }
- else
- {
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::GetComputerNameA (name,
- LPDWORD (&maxnamelen)),
- ace_result_), int, -1);
- }
-#else /* ACE_HAS_PHARLAP */
- ACE_utsname host_info;
-
- if (ACE_OS::uname (&host_info) == -1)
- return -1;
- else
- {
- ACE_OS::strsncpy (name, host_info.nodename, maxnamelen);
- return 0;
- }
-#endif /* ACE_HAS_PHARLAP */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::hostname (wchar_t name[], size_t maxnamelen)
-{
-#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (GetComputerNameW (name,
- LPDWORD (&maxnamelen)),
- ace_result_), int, -1);
-#else /* ACE_WIN32 && !ACE_HAS_WINCE */
- // Emulate using the char version
- char *char_name = 0;
- int result = 0;
-
- ACE_NEW_RETURN (char_name, char[maxnamelen], -1);
-
- result = ACE_OS::hostname(char_name, maxnamelen);
- ACE_OS::strcpy (name, ACE_Ascii_To_Wide (char_name).wchar_rep ());
-
- delete [] char_name;
- return result;
-#endif /* ACE_WIN32 && !ACE_HAS_WINCE */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE int
-ACE_OS::isatty (int handle)
-{
- ACE_OS_TRACE ("ACE_OS::isatty");
-#if defined (ACE_LACKS_ISATTY)
- ACE_UNUSED_ARG (handle);
- return 0;
-# elif defined (ACE_WIN32)
- return ::_isatty (handle);
-# else
- ACE_OSCALL_RETURN (::isatty (handle), int, -1);
-# endif /* ACE_LACKS_ISATTY */
-}
-
-#if defined (ACE_WIN32)
-ACE_INLINE int
-ACE_OS::isatty (ACE_HANDLE handle)
-{
-#if defined (ACE_LACKS_ISATTY)
- ACE_UNUSED_ARG (handle);
- return 0;
-#else
- int fd = ::_open_osfhandle (intptr_t (handle), 0);
- int status = ::_isatty (fd);
- ::_close (fd);
- return status;
-#endif /* ACE_LACKS_ISATTY */
-}
-
-#endif /* ACE_WIN32 */
-
-ACE_INLINE ACE_OFF_T
-ACE_OS::lseek (ACE_HANDLE handle, ACE_OFF_T offset, int whence)
-{
- ACE_OS_TRACE ("ACE_OS::lseek");
-#if defined (ACE_WIN32)
-# if SEEK_SET != FILE_BEGIN || SEEK_CUR != FILE_CURRENT || SEEK_END != FILE_END
- //#error Windows NT is evil AND rude!
- switch (whence)
- {
- case SEEK_SET:
- whence = FILE_BEGIN;
- break;
- case SEEK_CUR:
- whence = FILE_CURRENT;
- break;
- case SEEK_END:
- whence = FILE_END;
- break;
- default:
- errno = EINVAL;
- return static_cast<ACE_OFF_T> (-1); // rather safe than sorry
- }
-# endif /* SEEK_SET != FILE_BEGIN || SEEK_CUR != FILE_CURRENT || SEEK_END != FILE_END */
- LONG low_offset = ACE_LOW_PART(offset);
- LONG high_offset = ACE_HIGH_PART(offset);
- DWORD const result =
- ::SetFilePointer (handle, low_offset, &high_offset, whence);
- if (result == INVALID_SET_FILE_POINTER && GetLastError() != NO_ERROR)
- ACE_FAIL_RETURN (static_cast<ACE_OFF_T> (-1));
- else
- return result;
-#else
- ACE_OSCALL_RETURN (::lseek (handle, offset, whence), ACE_OFF_T, -1);
-#endif /* ACE_WIN32 */
-}
-
-#if defined (ACE_HAS_LLSEEK) || defined (ACE_HAS_LSEEK64)
-ACE_INLINE ACE_LOFF_T
-ACE_OS::llseek (ACE_HANDLE handle, ACE_LOFF_T offset, int whence)
-{
- ACE_OS_TRACE ("ACE_OS::llseek");
-
-#if ACE_SIZEOF_LONG == 8
- /* The native lseek is 64 bit. Use it. */
- return ACE_OS::lseek (handle, offset, whence);
-#elif defined (ACE_HAS_LLSEEK) && defined (ACE_HAS_LSEEK64)
-# error Either ACE_HAS_LSEEK64 and ACE_HAS_LLSEEK should be defined, not both!
-#elif defined (ACE_HAS_LSEEK64)
- ACE_OSCALL_RETURN (::lseek64 (handle, offset, whence), ACE_LOFF_T, -1);
-#elif defined (ACE_HAS_LLSEEK)
-# if defined (ACE_WIN32)
-# ifndef ACE_LACKS_WIN32_SETFILEPOINTEREX
- LARGE_INTEGER distance, new_file_pointer;
-
- distance.QuadPart = offset;
-
- return
- (::SetFilePointerEx (handle, distance, &new_file_pointer, whence)
- ? new_file_pointer.QuadPart
- : static_cast<ACE_LOFF_T> (-1));
-# else
- LARGE_INTEGER l_offset;
- l_offset.QuadPart = offset;
- LONG low_offset = l_offset.LowPart;
- LONG high_offset = l_offset.HighPart;
-
- l_offset.LowPart = ::SetFilePointer (handle,
- low_offset,
- &high_offset,
- whence);
- if (l_offset.LowPart == INVALID_SET_FILE_POINTER &&
- GetLastError () != NO_ERROR)
- return static_cast<ACE_LOFF_T> (-1);
- l_offset.HighPart = high_offset;
- return l_offset.QuadPart;
-# endif /* ACE_LACKS_WIN32_SETFILEPOINTEREX */
-# else
- ACE_OSCALL_RETURN (::llseek (handle, offset, whence), ACE_LOFF_T, -1);
-# endif /* WIN32 */
-#endif
-}
-#endif /* ACE_HAS_LLSEEK || ACE_HAS_LSEEK64 */
-
-ACE_INLINE ssize_t
-ACE_OS::read (ACE_HANDLE handle, void *buf, size_t len)
-{
- ACE_OS_TRACE ("ACE_OS::read");
-#if defined (ACE_WIN32)
- DWORD ok_len;
- if (::ReadFile (handle, buf, static_cast<DWORD> (len), &ok_len, 0))
- return (ssize_t) ok_len;
- else
- ACE_FAIL_RETURN (-1);
-#else
-
- ssize_t result;
-
-# if defined (ACE_HAS_CHARPTR_SOCKOPT)
- ACE_OSCALL (::read (handle, static_cast <char *> (buf), len), ssize_t, -1, result);
-# else
- ACE_OSCALL (::read (handle, buf, len), ssize_t, -1, result);
-# endif /* ACE_HAS_CHARPTR_SOCKOPT */
-
-# if !(defined (EAGAIN) && defined (EWOULDBLOCK) && EAGAIN == EWOULDBLOCK)
- // Optimize this code out if we can detect that EAGAIN ==
- // EWOULDBLOCK at compile time. If we cannot detect equality at
- // compile-time (e.g. if EAGAIN or EWOULDBLOCK are not preprocessor
- // macros) perform the check at run-time. The goal is to avoid two
- // TSS accesses in the _REENTRANT case when EAGAIN == EWOULDBLOCK.
- if (result == -1
-# if !defined (EAGAIN) || !defined (EWOULDBLOCK)
- && EAGAIN != EWOULDBLOCK
-# endif /* !EAGAIN || !EWOULDBLOCK */
- && errno == EAGAIN)
- {
- errno = EWOULDBLOCK;
- }
-# endif /* EAGAIN != EWOULDBLOCK*/
-
- return result;
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE ssize_t
-ACE_OS::read (ACE_HANDLE handle, void *buf, size_t len,
- ACE_OVERLAPPED *overlapped)
-{
- ACE_OS_TRACE ("ACE_OS::read");
- overlapped = overlapped;
-#if defined (ACE_WIN32)
- DWORD ok_len;
- DWORD short_len = static_cast<DWORD> (len);
- if (::ReadFile (handle, buf, short_len, &ok_len, overlapped))
- return (ssize_t) ok_len;
- else
- ACE_FAIL_RETURN (-1);
-#else
- return ACE_OS::read (handle, buf, len);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE ssize_t
-ACE_OS::readlink (const char *path, char *buf, size_t bufsiz)
-{
- ACE_OS_TRACE ("ACE_OS::readlink");
-# if defined (ACE_LACKS_READLINK)
- ACE_UNUSED_ARG (path);
- ACE_UNUSED_ARG (buf);
- ACE_UNUSED_ARG (bufsiz);
- ACE_NOTSUP_RETURN (-1);
-# else
-# if !defined(ACE_HAS_NONCONST_READLINK)
- ACE_OSCALL_RETURN (::readlink (path, buf, bufsiz), ssize_t, -1);
-# else
- ACE_OSCALL_RETURN (
- ::readlink (const_cast <char *>(path), buf, bufsiz), ssize_t, -1);
-# endif
-# endif /* ACE_LACKS_READLINK */
-}
-
-ACE_INLINE int
-ACE_OS::pipe (ACE_HANDLE fds[])
-{
- ACE_OS_TRACE ("ACE_OS::pipe");
-# if defined (ACE_LACKS_PIPE)
- ACE_UNUSED_ARG (fds);
- ACE_NOTSUP_RETURN (-1);
-# elif defined (ACE_WIN32)
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL
- (::CreatePipe (&fds[0], &fds[1], 0, 0),
- ace_result_), int, -1);
-# else
- ACE_OSCALL_RETURN (::pipe (fds), int, -1);
-# endif /* ACE_LACKS_PIPE */
-}
-
-ACE_INLINE void *
-ACE_OS::sbrk (intptr_t brk)
-{
-#if defined (ACE_LACKS_SBRK)
- ACE_UNUSED_ARG (brk);
- ACE_NOTSUP_RETURN (0);
-#else
- ACE_OSCALL_RETURN (::sbrk (brk), void *, 0);
-#endif /* ACE_LACKS_SBRK */
-}
-
-ACE_INLINE int
-ACE_OS::setgid (gid_t gid)
-{
- ACE_OS_TRACE ("ACE_OS::setgid");
-#if defined (ACE_LACKS_SETGID)
- ACE_UNUSED_ARG (gid);
- ACE_NOTSUP_RETURN (-1);
-# else
- ACE_OSCALL_RETURN (::setgid (gid), int, -1);
-# endif /* ACE_LACKS_SETGID */
-}
-
-ACE_INLINE int
-ACE_OS::setegid (gid_t gid)
-{
- ACE_OS_TRACE ("ACE_OS::setegid");
-#if defined (ACE_LACKS_SETEGID)
- ACE_UNUSED_ARG (gid);
- ACE_NOTSUP_RETURN (-1);
-# else
- ACE_OSCALL_RETURN (::setegid (gid), int, -1);
-# endif /* ACE_LACKS_SETEGID */
-}
-
-ACE_INLINE int
-ACE_OS::setpgid (pid_t pid, pid_t pgid)
-{
- ACE_OS_TRACE ("ACE_OS::setpgid");
-#if defined (ACE_LACKS_SETPGID)
- ACE_UNUSED_ARG (pid);
- ACE_UNUSED_ARG (pgid);
- ACE_NOTSUP_RETURN (-1);
-#else
- ACE_OSCALL_RETURN (::setpgid (pid, pgid), int, -1);
-#endif /* ACE_LACKS_SETPGID */
-}
-
-ACE_INLINE int
-ACE_OS::setregid (gid_t rgid, gid_t egid)
-{
- ACE_OS_TRACE ("ACE_OS::setregid");
-#if defined (ACE_LACKS_SETREGID)
- ACE_UNUSED_ARG (rgid);
- ACE_UNUSED_ARG (egid);
- ACE_NOTSUP_RETURN (-1);
-#else
- ACE_OSCALL_RETURN (::setregid (rgid, egid), int, -1);
-#endif /* ACE_LACKS_SETREGID */
-}
-
-ACE_INLINE int
-ACE_OS::setreuid (uid_t ruid, uid_t euid)
-{
- ACE_OS_TRACE ("ACE_OS::setreuid");
-#if defined (ACE_LACKS_SETREUID)
- ACE_UNUSED_ARG (ruid);
- ACE_UNUSED_ARG (euid);
- ACE_NOTSUP_RETURN (-1);
-#else
- ACE_OSCALL_RETURN (::setreuid (ruid, euid), int, -1);
-#endif /* ACE_LACKS_SETREUID */
-}
-
-ACE_INLINE pid_t
-ACE_OS::setsid (void)
-{
- ACE_OS_TRACE ("ACE_OS::setsid");
-#if defined (ACE_LACKS_SETSID)
- ACE_NOTSUP_RETURN (-1);
-#else
- ACE_OSCALL_RETURN (::setsid (), int, -1);
-# endif /* ACE_LACKS_SETSID */
-}
-
-ACE_INLINE int
-ACE_OS::setuid (uid_t uid)
-{
- ACE_OS_TRACE ("ACE_OS::setuid");
-#if defined (ACE_LACKS_SETUID)
- ACE_UNUSED_ARG (uid);
- ACE_NOTSUP_RETURN (-1);
-# else
- ACE_OSCALL_RETURN (::setuid (uid), int, -1);
-# endif /* ACE_LACKS_SETUID */
-}
-
-ACE_INLINE int
-ACE_OS::seteuid (uid_t uid)
-{
- ACE_OS_TRACE ("ACE_OS::seteuid");
-#if defined (ACE_LACKS_SETEUID)
- ACE_UNUSED_ARG (uid);
- ACE_NOTSUP_RETURN (-1);
-# else
- ACE_OSCALL_RETURN (::seteuid (uid), int, -1);
-# endif /* ACE_LACKS_SETEUID */
-}
-
-ACE_INLINE int
-ACE_OS::sleep (u_int seconds)
-{
- ACE_OS_TRACE ("ACE_OS::sleep");
-#if defined (ACE_WIN32)
- ::Sleep (seconds * ACE_ONE_SECOND_IN_MSECS);
- return 0;
-#elif defined (ACE_HAS_CLOCK_GETTIME)
- struct timespec rqtp;
- // Initializer doesn't work with Green Hills 1.8.7
- rqtp.tv_sec = seconds;
- rqtp.tv_nsec = 0L;
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_OSCALL_RETURN (::nanosleep (&rqtp, 0), int, -1);
- //FUZZ: enable check_for_lack_ACE_OS
-#else
- ACE_OSCALL_RETURN (::sleep (seconds), int, -1);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE int
-ACE_OS::sleep (const ACE_Time_Value &tv)
-{
- ACE_OS_TRACE ("ACE_OS::sleep");
-#if defined (ACE_WIN32)
- ::Sleep (tv.msec ());
- return 0;
-#elif defined (ACE_HAS_CLOCK_GETTIME)
- timespec_t rqtp = tv;
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_OSCALL_RETURN (::nanosleep (&rqtp, 0), int, -1);
- //FUZZ: enable check_for_lack_ACE_OS
-#else
-# if defined (ACE_HAS_NONCONST_SELECT_TIMEVAL)
- // Copy the timeval, because this platform doesn't declare the timeval
- // as a pointer to const.
- timeval tv_copy = tv;
-# if defined(ACE_TANDEM_T1248_PTHREADS)
- ACE_OSCALL_RETURN (::spt_select (0, 0, 0, 0, &tv_copy), int, -1);
-# else
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_OSCALL_RETURN (::select (0, 0, 0, 0, &tv_copy), int, -1);
- //FUZZ: enable check_for_lack_ACE_OS
-# endif
-# else /* ! ACE_HAS_NONCONST_SELECT_TIMEVAL */
- const timeval *tvp = tv;
- //FUZZ: disable check_for_lack_ACE_OS
- ACE_OSCALL_RETURN (::select (0, 0, 0, 0, tvp), int, -1);
- //FUZZ: enable check_for_lack_ACE_OS
-# endif /* ACE_HAS_NONCONST_SELECT_TIMEVAL */
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE void
-ACE_OS::swab (const void *src,
- void *dest,
- ssize_t length)
-{
-#if defined (ACE_LACKS_SWAB)
- // ------------------------------------------------------------
- // The following copyright notice applies to the swab()
- // implementation within this "ACE_LACKS_SWAB" block of code.
- // ------------------------------------------------------------
- /*
- Copyright (c) 1994-2006 Red Hat, Inc. All rights reserved.
-
- This copyrighted material is made available to anyone wishing to
- use, modify, copy, or redistribute it subject to the terms and
- conditions of the BSD License. This program is distributed in
- the hope that it will be useful, but WITHOUT ANY WARRANTY
- expressed or implied, including the implied warranties of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. A copy of
- this license is available at
- http://www.opensource.org/licenses. Any Red Hat trademarks that
- are incorporated in the source code or documentation are not
- subject to the BSD License and may only be used or replicated with
- the express permission of Red Hat, Inc.
- */
-
- const char *from = static_cast<const char*> (src);
- char *to = static_cast<char *> (dest);
- ssize_t ptr = 0;
- for (ptr = 1; ptr < length; ptr += 2)
- {
- char p = from[ptr];
- char q = from[ptr-1];
- to[ptr-1] = p;
- to[ptr ] = q;
- }
- if (ptr == length) /* I.e., if length is odd, */
- to[ptr-1] = 0; /* then pad with a NUL. */
-#elif defined (ACE_HAS_NONCONST_SWAB)
- const char *tmp = static_cast<const char*> (src);
- char *from = const_cast<char *> (tmp);
- char *to = static_cast<char *> (dest);
- ::swab (from, to, length);
-#elif defined (ACE_HAS_CONST_CHAR_SWAB)
- const char *from = static_cast<const char*> (src);
- char *to = static_cast<char *> (dest);
- ::swab (from, to, length);
-#else
- ::swab (src, dest, length);
-#endif /* ACE_LACKS_SWAB */
-
-}
-
-ACE_INLINE long
-ACE_OS::sysconf (int name)
-{
- ACE_OS_TRACE ("ACE_OS::sysconf");
-#if defined (ACE_LACKS_SYSCONF)
- ACE_UNUSED_ARG (name);
- ACE_NOTSUP_RETURN (-1);
-#else
- ACE_OSCALL_RETURN (::sysconf (name), long, -1);
-#endif /* ACE_LACKS_SYSCONF */
-}
-
-ACE_INLINE long
-ACE_OS::sysinfo (int cmd, char *buf, long count)
-{
- ACE_OS_TRACE ("ACE_OS::sysinfo");
-#if defined (ACE_HAS_SYSINFO)
- ACE_OSCALL_RETURN (::sysinfo (cmd, buf, count), long, -1);
-#else
- ACE_UNUSED_ARG (cmd);
- ACE_UNUSED_ARG (buf);
- ACE_UNUSED_ARG (count);
-
- ACE_NOTSUP_RETURN (0);
-#endif /* ACE_HAS_SYSINFO */
-}
-
-ACE_INLINE int
-ACE_OS::truncate (const ACE_TCHAR *filename,
- ACE_OFF_T offset)
-{
- ACE_OS_TRACE ("ACE_OS::truncate");
-#if defined (ACE_WIN32)
- ACE_HANDLE handle = ACE_OS::open (filename,
- O_WRONLY,
- ACE_DEFAULT_FILE_PERMS);
-
-# if !defined (ACE_LACKS_WIN32_SETFILEPOINTEREX)
- LARGE_INTEGER loffset;
- loffset.QuadPart = offset;
-#else
- LONG low_offset = ACE_LOW_PART(offset);
- LONG high_offset = ACE_HIGH_PART(offset);
-#endif
-
- if (handle == ACE_INVALID_HANDLE)
- ACE_FAIL_RETURN (-1);
-
-# if !defined (ACE_LACKS_WIN32_SETFILEPOINTEREX)
- else if (::SetFilePointerEx (handle,
- loffset,
- 0,
- FILE_BEGIN))
-# else
- else if (::SetFilePointer (handle,
- low_offset,
- &high_offset,
- FILE_BEGIN) != INVALID_SET_FILE_POINTER
- || GetLastError () == NO_ERROR)
-# endif /* ACE_LACKS_WIN32_SETFILEPOINTEREX */
- {
- BOOL result = ::SetEndOfFile (handle);
- ::CloseHandle (handle);
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (result, ace_result_), int, -1);
- }
- else
- {
- ::CloseHandle (handle);
- ACE_FAIL_RETURN (-1);
- }
- /* NOTREACHED */
-#elif !defined (ACE_LACKS_TRUNCATE)
- ACE_OSCALL_RETURN
- (::truncate (ACE_TEXT_ALWAYS_CHAR (filename), offset), int, -1);
-#else
- ACE_UNUSED_ARG (filename);
- ACE_UNUSED_ARG (offset);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE useconds_t
-ACE_OS::ualarm (useconds_t usecs, useconds_t interval)
-{
- ACE_OS_TRACE ("ACE_OS::ualarm");
-
-#if defined (ACE_HAS_UALARM)
- return ::ualarm (usecs, interval);
-#elif !defined (ACE_LACKS_UNIX_SIGNALS)
- ACE_UNUSED_ARG (interval);
- return ::alarm (usecs * ACE_ONE_SECOND_IN_USECS);
-#else
- ACE_UNUSED_ARG (usecs);
- ACE_UNUSED_ARG (interval);
- ACE_NOTSUP_RETURN (0);
-#endif /* ACE_HAS_UALARM */
-}
-
-ACE_INLINE useconds_t
-ACE_OS::ualarm (const ACE_Time_Value &tv,
- const ACE_Time_Value &tv_interval)
-{
- ACE_OS_TRACE ("ACE_OS::ualarm");
-
-#if defined (ACE_HAS_UALARM)
- useconds_t usecs = (tv.sec () * ACE_ONE_SECOND_IN_USECS) + tv.usec ();
- useconds_t interval =
- (tv_interval.sec () * ACE_ONE_SECOND_IN_USECS) + tv_interval.usec ();
- return ::ualarm (usecs, interval);
-#elif !defined (ACE_LACKS_UNIX_SIGNALS)
- ACE_UNUSED_ARG (tv_interval);
- return ::alarm (tv.sec ());
-#else
- ACE_UNUSED_ARG (tv_interval);
- ACE_UNUSED_ARG (tv);
- ACE_NOTSUP_RETURN (0);
-#endif /* ACE_HAS_UALARM */
-}
-
-ACE_INLINE int
-ACE_OS::unlink (const char *path)
-{
- ACE_OS_TRACE ("ACE_OS::unlink");
-# if defined (ACE_HAS_NONCONST_UNLINK)
- ACE_OSCALL_RETURN (::unlink (const_cast<char *> (path)), int, -1);
-# elif defined (ACE_HAS_WINCE)
- // @@ The problem is, DeleteFile is not actually equals to unlink. ;(
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::DeleteFile (ACE_TEXT_CHAR_TO_TCHAR (path)), ace_result_),
- int, -1);
-# elif defined (ACE_LACKS_UNLINK)
- ACE_UNUSED_ARG (path);
- ACE_NOTSUP_RETURN (-1);
-# else
- ACE_OSCALL_RETURN (::unlink (path), int, -1);
-# endif /* ACE_HAS_NONCONST_UNLINK */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE int
-ACE_OS::unlink (const wchar_t *path)
-{
- ACE_OS_TRACE ("ACE_OS::unlink");
-# if defined (ACE_HAS_WINCE)
- // @@ The problem is, DeleteFile is not actually equals to unlink. ;(
- ACE_WIN32CALL_RETURN (ACE_ADAPT_RETVAL (::DeleteFileW (path), ace_result_),
- int, -1);
-# elif defined (ACE_WIN32)
- ACE_OSCALL_RETURN (::_wunlink (path), int, -1);
-# else
- ACE_Wide_To_Ascii npath (path);
- return ACE_OS::unlink (npath.char_rep ());
-# endif /* ACE_HAS_WINCE */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE ssize_t
-ACE_OS::write (ACE_HANDLE handle, const void *buf, size_t nbyte)
-{
- ACE_OS_TRACE ("ACE_OS::write");
-#if defined (ACE_WIN32)
- DWORD bytes_written; // This is set to 0 byte WriteFile.
-
- // Strictly correctly, we should loop writing all the data if more
- // than a DWORD length can hold.
- DWORD short_nbyte = static_cast<DWORD> (nbyte);
- if (::WriteFile (handle, buf, short_nbyte, &bytes_written, 0))
- return (ssize_t) bytes_written;
- else
- ACE_FAIL_RETURN (-1);
-#else
-# if defined (ACE_HAS_CHARPTR_SOCKOPT)
- ACE_OSCALL_RETURN (::write (handle, static_cast <char *> (const_cast <void *> (buf)), nbyte), ssize_t, -1);
-# else
- ACE_OSCALL_RETURN (::write (handle, buf, nbyte), ssize_t, -1);
-# endif /* ACE_HAS_CHARPTR_SOCKOPT */
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE ssize_t
-ACE_OS::write (ACE_HANDLE handle,
- const void *buf,
- size_t nbyte,
- ACE_OVERLAPPED *overlapped)
-{
- ACE_OS_TRACE ("ACE_OS::write");
- overlapped = overlapped;
-#if defined (ACE_WIN32)
- DWORD bytes_written; // This is set to 0 byte WriteFile.
-
- DWORD short_nbyte = static_cast<DWORD> (nbyte);
- if (::WriteFile (handle, buf, short_nbyte, &bytes_written, overlapped))
- return (ssize_t) bytes_written;
- else
- ACE_FAIL_RETURN (-1);
-#else
- return ACE_OS::write (handle, buf, nbyte);
-#endif /* ACE_WIN32 */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_NS_wchar.h b/dep/include/ace/OS_NS_wchar.h
deleted file mode 100644
index e1201d3884f..00000000000
--- a/dep/include/ace/OS_NS_wchar.h
+++ /dev/null
@@ -1,200 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_NS_wchar.h
- *
- * $Id: OS_NS_wchar.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_NS_WCHAR_H
-# define ACE_OS_NS_WCHAR_H
-
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_wchar.h"
-#include "ace/Basic_Types.h"
-#include /**/ "ace/ACE_export.h"
-#include "ace/ace_wchar.h" // include for the time being, but this code needs to be moved. dhinton
-
-#include "ace/os_include/os_errno.h"
-
-#if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-#endif
-#define ACE_EXPORT_MACRO ACE_Export
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS
-{
-
- typedef ACE_WCHAR_T WChar;
-
-#if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- wint_t fgetwc (FILE* fp);
-#endif /* ACE_HAS_WCHAR */
-
-#if defined (ACE_HAS_WCHAR) && defined (ACE_LACKS_WCSCAT)
- /// Emulated wcscat - Appends a string.
- extern ACE_Export
- wchar_t *wcscat_emulation (wchar_t *destination,
- const wchar_t *source);
-#endif /* ACE_HAS_WCHAR && ACE_LACKS_WCSCAT */
-
-#if defined (ACE_HAS_WCHAR) && defined (ACE_LACKS_WCSCHR)
- /// Emulated wcschr - Finds a character in a string.
- extern ACE_Export
- wchar_t *wcschr_emulation (const wchar_t *string, wchar_t c);
-#endif /* ACE_HAS_WCHAR && ACE_LACKS_WCSCHR */
-
-#if !defined (ACE_HAS_WCHAR) || defined (ACE_LACKS_WCSCMP)
- /// Emulated wcscmp - Compares strings.
- extern ACE_Export
- int wcscmp_emulation (const ACE_WCHAR_T *string1, const ACE_WCHAR_T *string2);
-#endif /* !ACE_HAS_WCHAR || ACE_LACKS_WCSCMP */
-
-#if defined (ACE_HAS_WCHAR) && defined (ACE_LACKS_WCSCPY)
- /// Emulated wcscpy - Copies a string.
- extern ACE_Export
- wchar_t *wcscpy_emulation (wchar_t *destination,
- const wchar_t *source);
-#endif /* ACE_HAS_WCHAR && ACE_LACKS_WCSCPY */
-
-#if defined (ACE_HAS_WCHAR) && defined (ACE_LACKS_WCSCSPN)
- /// Emulated wcscspn.
- extern ACE_Export
- size_t wcscspn_emulation (const wchar_t *string,
- const wchar_t *reject);
-#endif /* ACE_HAS_WCHAR && ACE_LACKS_WCSCSPN */
-
-#if defined (ACE_HAS_WCHAR) && defined (ACE_LACKS_WCSICMP)
- /// Emulated wcsicmp - Performs a case insensitive comparison of strings.
- extern ACE_Export
- int wcsicmp_emulation (const wchar_t *string1,
- const wchar_t *string2);
-#endif /* ACE_HAS_WCHAR && ACE_LACKS_WCSICMP */
-
-#if !defined (ACE_HAS_WCHAR) || defined (ACE_LACKS_WCSLEN)
- /// Emulated wcslen - Returns the length of a string.
- extern ACE_Export
- size_t wcslen_emulation (const ACE_WCHAR_T *string);
-#endif /* !ACE_HAS_WCHAR || ACE_LACKS_WCSLEN */
-
-#if !defined (ACE_HAS_WCHAR) || defined (ACE_LACKS_WCSNCAT)
- /// Emulated wcscat - Appends a string.
- extern ACE_Export
- ACE_WCHAR_T *wcsncat_emulation (ACE_WCHAR_T *destination,
- const ACE_WCHAR_T *source,
- size_t count);
-#endif /* !ACE_HAS_WCHAR || ACE_LACKS_WCSCAT */
-
-#if !defined (ACE_HAS_WCHAR) || defined (ACE_LACKS_WCSNCMP)
- /// Emulated wcsncmp - Compares two arrays.
- extern ACE_Export
- int wcsncmp_emulation (const ACE_WCHAR_T *string1,
- const ACE_WCHAR_T *string2,
- size_t len);
-#endif /* !ACE_HAS_WCHAR || ACE_LACKS_WCSNCMP */
-
-#if !defined (ACE_HAS_WCHAR) || defined (ACE_LACKS_WCSNCPY)
- /// Emulated wcsncpy - Copies an array.
- extern ACE_Export
- ACE_WCHAR_T *wcsncpy_emulation (ACE_WCHAR_T *destination,
- const ACE_WCHAR_T *source,
- size_t len);
-#endif /* !ACE_HAS_WCHAR || ACE_LACKS_WCSNCPY */
-
-#if defined (ACE_HAS_WCHAR) && defined (ACE_LACKS_WCSNICMP)
- /// Emulated wcsnicmp - Performs a case insensitive comparison of two
- /// arrays
- extern ACE_Export
- int wcsnicmp_emulation (const wchar_t *string1,
- const wchar_t *string2,
- size_t len);
-#endif /* ACE_HAS_WCHAR && ACE_LACKS_WCSNICMP */
-
-#if defined (ACE_HAS_WCHAR) && defined (ACE_LACKS_WCSPBRK)
- /// Emulated wcspbrk - Searches for characters in a string.
- extern ACE_Export
- wchar_t *wcspbrk_emulation (const wchar_t *string,
- const wchar_t *charset);
-#endif /* ACE_HAS_WCHAR && ACE_LACKS_WCSPBRK */
-
-#if defined (ACE_HAS_WCHAR) && defined (ACE_LACKS_WCSRCHR)
- /// Emulated wcsrchr (wchar_t version) - Finds the last occurance of a
- /// character in a string.
- extern ACE_Export
- wchar_t *wcsrchr_emulation (wchar_t *string, wint_t c);
-
- /// Emulated wcsrchr (const wchar_t version) - Finds the last occurance of a
- /// character in a string.
- extern ACE_Export
- const wchar_t *wcsrchr_emulation (const wchar_t *string, wint_t c);
-#endif /* ACE_HAS_WCHAR && ACE_LACKS_WCSRCHR */
-
-#if defined (ACE_HAS_WCHAR) && defined (ACE_LACKS_WCSSPN)
- /// Emulated wcsspn.
- extern ACE_Export
- size_t wcsspn_emulation (const wchar_t *string,
- const wchar_t *charset);
-#endif /* ACE_HAS_WCHAR && ACE_LACKS_WCSSPN */
-
-#if defined (ACE_HAS_WCHAR) && defined (ACE_LACKS_WCSSTR)
- /// Emulated wcsstr - Performs a case insensitive comparison of two strings.
- extern ACE_Export
- wchar_t *wcsstr_emulation (const wchar_t *string,
- const wchar_t *charset);
-#endif /* ACE_HAS_WCHAR && ACE_LACKS_WCSSTR */
-
- // these are named wrong. should be wcslen, etc... dhinton
- ACE_NAMESPACE_INLINE_FUNCTION
- u_int wslen (const WChar *);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- WChar *wscpy (WChar *,
- const WChar *);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int wscmp (const WChar *,
- const WChar *);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int wsncmp (const WChar *,
- const WChar *,
- size_t len);
-
-#if defined (ACE_HAS_WCHAR)
- ACE_NAMESPACE_INLINE_FUNCTION
- wint_t ungetwc (wint_t c, FILE* fp);
-#endif /* ACE_HAS_WCHAR */
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_NS_wchar.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-# include /**/ "ace/post.h"
-#endif /* ACE_OS_NS_STDIO_H */
-
diff --git a/dep/include/ace/OS_NS_wchar.inl b/dep/include/ace/OS_NS_wchar.inl
deleted file mode 100644
index a11a0fb23e0..00000000000
--- a/dep/include/ace/OS_NS_wchar.inl
+++ /dev/null
@@ -1,87 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_NS_wchar.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE wint_t
-ACE_OS::fgetwc (FILE* fp)
-{
-# if defined (ACE_LACKS_FGETWC)
- ACE_UNUSED_ARG (fp);
- ACE_NOTSUP_RETURN (0);
-# else
- ACE_OSCALL_RETURN (ACE_STD_NAMESPACE::fgetwc (fp), wint_t, WEOF);
-# endif /* ACE_LACKS_FGETWC */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE u_int
-ACE_OS::wslen (const WChar *s)
-{
- u_int len = 0;
-
- while (*s++ != 0)
- len++;
-
- return len;
-}
-
-ACE_INLINE ACE_OS::WChar *
-ACE_OS::wscpy (WChar *dest, const WChar *src)
-{
- WChar *original_dest = dest;
-
- while ((*dest++ = *src++) != 0)
- continue;
-
- return original_dest;
-}
-
-ACE_INLINE int
-ACE_OS::wscmp (const WChar *s, const WChar *t)
-{
- const WChar *scan1 = s;
- const WChar *scan2 = t;
-
- while (*scan1 != 0 && *scan1 == *scan2)
- {
- ++scan1;
- ++scan2;
- }
-
- return *scan1 - *scan2;
-}
-
-ACE_INLINE int
-ACE_OS::wsncmp (const WChar *s, const WChar *t, size_t len)
-{
- const WChar *scan1 = s;
- const WChar *scan2 = t;
-
- while (len != 0 && *scan1 != 0 && *scan1 == *scan2)
- {
- ++scan1;
- ++scan2;
- --len;
- }
-
- return len == 0 ? 0 : *scan1 - *scan2;
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE wint_t
-ACE_OS::ungetwc (wint_t c, FILE* fp)
-{
-# if defined (ACE_LACKS_FGETWC)
- ACE_UNUSED_ARG (c);
- ACE_UNUSED_ARG (fp);
- ACE_NOTSUP_RETURN (0);
-# else
- ACE_OSCALL_RETURN (ACE_STD_NAMESPACE::ungetwc (c, fp), wint_t, WEOF);
-# endif /* ACE_LACKS_FGETWC */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_QoS.h b/dep/include/ace/OS_QoS.h
deleted file mode 100644
index c1dddf3e01c..00000000000
--- a/dep/include/ace/OS_QoS.h
+++ /dev/null
@@ -1,449 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_QoS.h
- *
- * $Id: OS_QoS.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @brief Contains OS specific data structures for QoS networking.
- *
- * @author Craig Rodrigues <crodrigu@bbn.com>
- */
-//=============================================================================
-
-#ifndef ACE_OS_QOS_H
-#define ACE_OS_QOS_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_uio.h"
-#include "ace/OS_NS_stropts.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0) && defined (ACE_HAS_WINSOCK2_GQOS)
-typedef SERVICETYPE ACE_SERVICE_TYPE;
-#else
-typedef unsigned long ACE_SERVICE_TYPE;
-#endif /* ACE_HAS_WINSOCK2 && ACE_HAS_WINSOCK2 != 0 */
-
-#if defined (WSA_FLAG_OVERLAPPED)
-# define ACE_OVERLAPPED_SOCKET_FLAG WSA_FLAG_OVERLAPPED
-#else
-# define ACE_OVERLAPPED_SOCKET_FLAG 0
-#endif
-
-#if defined (XP1_QOS_SUPPORTED)
-# define ACE_XP1_QOS_SUPPORTED XP1_QOS_SUPPORTED
-#else
-# define ACE_XP1_QOS_SUPPORTED 0x00002000
-#endif
-
-#if defined (XP1_SUPPORT_MULTIPOINT)
-# define ACE_XP1_SUPPORT_MULTIPOINT XP1_SUPPORT_MULTIPOINT
-#else
-# define ACE_XP1_SUPPORT_MULTIPOINT 0x00000400
-#endif
-
-#if defined (WSABASEERR)
-# define ACE_BASEERR WSABASEERR
-#else
-# define ACE_BASEERR 10000
-#endif
-
-#if defined (WSAENOBUFS)
-# define ACE_ENOBUFS WSAENOBUFS
-#else
-# define ACE_ENOBUFS (ACE_BASEERR+55)
-#endif
-
-#if defined (FROM_PROTOCOL_INFO)
-# define ACE_FROM_PROTOCOL_INFO FROM_PROTOCOL_INFO
-#else
-# define ACE_FROM_PROTOCOL_INFO (-1)
-#endif
-
-#if defined (WSA_FLAG_MULTIPOINT_C_ROOT)
-# define ACE_FLAG_MULTIPOINT_C_ROOT WSA_FLAG_MULTIPOINT_C_ROOT
-#else
-# define ACE_FLAG_MULTIPOINT_C_ROOT 0x02
-#endif
-
-#if defined (WSA_FLAG_MULTIPOINT_C_LEAF)
-# define ACE_FLAG_MULTIPOINT_C_LEAF WSA_FLAG_MULTIPOINT_C_LEAF
-#else
-# define ACE_FLAG_MULTIPOINT_C_LEAF 0x04
-#endif
-
-#if defined (WSA_FLAG_MULTIPOINT_D_ROOT)
-# define ACE_FLAG_MULTIPOINT_D_ROOT WSA_FLAG_MULTIPOINT_D_ROOT
-#else
-# define ACE_FLAG_MULTIPOINT_D_ROOT 0x08
-#endif
-
-#if defined (WSA_FLAG_MULTIPOINT_D_LEAF)
-# define ACE_FLAG_MULTIPOINT_D_LEAF WSA_FLAG_MULTIPOINT_D_LEAF
-#else
-# define ACE_FLAG_MULTIPOINT_D_LEAF 0x10
-#endif
-
-#if defined (QOS_NOT_SPECIFIED)
-# define ACE_QOS_NOT_SPECIFIED QOS_NOT_SPECIFIED
-#else
-# define ACE_QOS_NOT_SPECIFIED 0xFFFFFFFF
-#endif
-
-#if defined (SERVICETYPE_NOTRAFFIC)
-# define ACE_SERVICETYPE_NOTRAFFIC SERVICETYPE_NOTRAFFIC
-#else
-# define ACE_SERVICETYPE_NOTRAFFIC 0x00000000 /* No data in this */
- /* direction. */
-#endif
-
-#if defined (SERVICETYPE_CONTROLLEDLOAD)
-# define ACE_SERVICETYPE_CONTROLLEDLOAD SERVICETYPE_CONTROLLEDLOAD
-#else
-# define ACE_SERVICETYPE_CONTROLLEDLOAD 0x00000001 /* Controlled Load. */
-#endif
-
-#if defined (SERVICETYPE_GUARANTEED)
-# define ACE_SERVICETYPE_GUARANTEED SERVICETYPE_GUARANTEED
-#else
-# define ACE_SERVICETYPE_GUARANTEED 0x00000003 /* Guaranteed. */
-#endif
-
-#if defined (JL_SENDER_ONLY)
-# define ACE_JL_SENDER_ONLY JL_SENDER_ONLY
-#else
-# define ACE_JL_SENDER_ONLY 0x01
-#endif
-
-#if defined (JL_BOTH)
-# define ACE_JL_BOTH JL_BOTH
-#else
-# define ACE_JL_BOTH 0x04
-#endif
-
-#if defined (SIO_GET_QOS)
-# define ACE_SIO_GET_QOS SIO_GET_QOS
-#else
-# define ACE_SIO_GET_QOS (0x40000000 | 0x08000000 | 7)
-#endif
-
-#if defined (SIO_MULTIPOINT_LOOPBACK)
-# define ACE_SIO_MULTIPOINT_LOOPBACK SIO_MULTIPOINT_LOOPBACK
-#else
-# define ACE_SIO_MULTIPOINT_LOOPBACK (0x08000000 | 9)
-#endif
-
-#if defined (SIO_MULTICAST_SCOPE)
-# define ACE_SIO_MULTICAST_SCOPE SIO_MULTICAST_SCOPE
-#else
-# define ACE_SIO_MULTICAST_SCOPE (0x08000000 | 10)
-#endif
-
-#if defined (SIO_SET_QOS)
-# define ACE_SIO_SET_QOS SIO_SET_QOS
-#else
-# define ACE_SIO_SET_QOS (0x08000000 | 11)
-#endif
-
-/**
- * @class ACE_Flow_Spec
- *
- * @brief Wrapper class that defines the flow spec QoS information,
- * which is used by IntServ (RSVP) and DiffServ.
- */
-class ACE_Export ACE_Flow_Spec
-#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
- : public FLOWSPEC
-#endif /* ACE_HAS_WINSOCK2 */
-{
-public:
- /// Default constructor.
- ACE_Flow_Spec (void);
-
- /// Constructor that initializes all the fields.
- ACE_Flow_Spec (unsigned long token_rate,
- unsigned long token_bucket_size,
- unsigned long peak_bandwidth,
- unsigned long latency,
- unsigned long delay_variation,
- ACE_SERVICE_TYPE service_type,
- unsigned long max_sdu_size,
- unsigned long minimum_policed_size,
- int ttl,
- int priority);
-
- /// Get the token rate in bytes/sec.
- unsigned long token_rate (void) const;
-
- /// Set the token rate in bytes/sec.
- void token_rate (unsigned long tr);
-
- /// Get the token bucket size in bytes.
- unsigned long token_bucket_size (void) const;
-
- /// Set the token bucket size in bytes.
- void token_bucket_size (unsigned long tbs);
-
- /// Get the PeakBandwidth in bytes/sec.
- unsigned long peak_bandwidth (void) const;
-
- /// Set the PeakBandwidth in bytes/sec.
- void peak_bandwidth (unsigned long pb);
-
- /// Get the latency in microseconds.
- unsigned long latency (void) const;
-
- /// Set the latency in microseconds.
- void latency (unsigned long l);
-
- /// Get the delay variation in microseconds.
- unsigned long delay_variation (void) const;
-
- /// Set the delay variation in microseconds.
- void delay_variation (unsigned long dv);
-
- /// Get the service type.
- ACE_SERVICE_TYPE service_type (void) const;
-
- /// Set the service type.
- void service_type (ACE_SERVICE_TYPE st);
-
- /// Get the maximum SDU size in bytes.
- unsigned long max_sdu_size (void) const;
-
- /// Set the maximum SDU size in bytes.
- void max_sdu_size (unsigned long mss);
-
- /// Get the minimum policed size in bytes.
- unsigned long minimum_policed_size (void) const;
-
- /// Set the minimum policed size in bytes.
- void minimum_policed_size (unsigned long mps);
-
- /// Get the time-to-live.
- int ttl (void) const;
-
- /// Set the time-to-live.
- void ttl (int t);
-
- /// Get the priority.
- int priority (void) const;
-
- /// Set the priority.
- void priority (int p);
-
-#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0) && \
- defined (ACE_HAS_WINSOCK2_GQOS)
-#else
-private:
- unsigned long token_rate_;
- unsigned long token_bucket_size_;
- unsigned long peak_bandwidth_;
- unsigned long latency_;
- unsigned long delay_variation_;
- ACE_SERVICE_TYPE service_type_;
- unsigned long max_sdu_size_;
- unsigned long minimum_policed_size_;
- int ttl_;
- int priority_;
-#endif /* defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0) && \
- defined (ACE_HAS_WINSOCK2_GQOS) */
-};
-
-/**
- * @class ACE_QoS
- *
- * @brief Wrapper class that holds the sender and receiver flow spec
- * information, which is used by IntServ (RSVP) and DiffServ.
- */
-class ACE_Export ACE_QoS
-#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
- : public QOS
-#endif /* ACE_HAS_WINSOCK2 */
-{
-public:
- /// Constructor
- ACE_QoS (void);
-
- /// Get the flow spec for data sending.
- ACE_Flow_Spec *sending_flowspec (void) const;
-
- /// Set the flow spec for data sending.
- void sending_flowspec (ACE_Flow_Spec *fs);
-
- /// Get the flow spec for data receiving.
- ACE_Flow_Spec *receiving_flowspec (void) const;
-
- /// Set the flow spec for data receiving.
- void receiving_flowspec (ACE_Flow_Spec *fs);
-
- /// Get the provider specific information.
- iovec provider_specific (void) const;
-
- /// Set the provider specific information.
- void provider_specific (const iovec &ps);
-
-#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
-#else
-private:
-
- ACE_Flow_Spec *sending_flowspec_;
- ACE_Flow_Spec *receiving_flowspec_;
-#endif
-
-};
-
-/**
- * @class ACE_QoS_Params
- *
- * @brief Wrapper class that simplifies the information passed to the QoS
- * enabled <ACE_OS::connect> and <ACE_OS::join_leaf> methods.
- */
-class ACE_Export ACE_QoS_Params
-{
-public:
- /**
- * Initialize the data members. The <caller_data> is a pointer to
- * the user data that is to be transferred to the peer during
- * connection establishment. The <callee_data> is a pointer to the
- * user data that is to be transferred back from the peer during
- * connection establishment. The_<socket_qos> is a pointer to the
- * flow specifications for the socket, one for each direction. The
- * <group_socket_qos> is a pointer to the flow speicfications for
- * the socket group, if applicable. The_@a flags indicate if we're a
- * sender, receiver, or both.
- */
- ACE_QoS_Params (iovec *caller_data = 0,
- iovec *callee_data = 0,
- ACE_QoS *socket_qos = 0,
- ACE_QoS *group_socket_qos = 0,
- unsigned long flags = 0);
-
- /// Get caller data.
- iovec *caller_data (void) const;
-
- /// Set caller data.
- void caller_data (iovec *);
-
- /// Get callee data.
- iovec *callee_data (void) const;
-
- /// Set callee data.
- void callee_data (iovec *);
-
- /// Get socket qos.
- ACE_QoS *socket_qos (void) const;
-
- /// Set socket qos.
- void socket_qos (ACE_QoS *);
-
- /// Get group socket qos.
- ACE_QoS *group_socket_qos (void) const;
-
- /// Set group socket qos.
- void group_socket_qos (ACE_QoS *);
-
- /// Get flags.
- unsigned long flags (void) const;
-
- /// Set flags.
- void flags (unsigned long);
-
-private:
- /// A pointer to the user data that is to be transferred to the peer
- /// during connection establishment.
- iovec *caller_data_;
-
- /// A pointer to the user data that is to be transferred back from
- /// the peer during connection establishment.
- iovec *callee_data_;
-
- /// A pointer to the flow speicfications for the socket, one for each
- /// direction.
- ACE_QoS *socket_qos_;
-
- /// A pointer to the flow speicfications for the socket group, if
- /// applicable.
- ACE_QoS *group_socket_qos_;
-
- /// Flags that indicate if we're a sender, receiver, or both.
- unsigned long flags_;
-};
-
-// Callback function that's used by the QoS-enabled <ACE_OS::accept>
-// method.
-typedef int (*ACE_QOS_CONDITION_FUNC) (iovec *caller_id,
- iovec *caller_data,
- ACE_QoS *socket_qos,
- ACE_QoS *group_socket_qos,
- iovec *callee_id,
- iovec *callee_data,
- ACE_SOCK_GROUP *g,
- unsigned long callbackdata);
-
-/**
- * @class ACE_Accept_QoS_Params
- *
- * @brief Wrapper class that simplifies the information passed to the QoS
- * enabled <ACE_OS::accept> method.
- */
-class ACE_Export ACE_Accept_QoS_Params
-{
-public:
- /**
- * Initialize the data members. The <qos_condition_callback> is the
- * address of an optional, application-supplied condition function
- * that will make an accept/reject decision based on the caller
- * information pass in as parameters, and optionally create or join
- * a socket group by assinging an appropriate value to the result
- * parameter <g> of this function. The <callback_data> data is
- * passed back to the application as a condition function parameter,
- * i.e., it is an Asynchronous Completion Token (ACT).
- */
- ACE_Accept_QoS_Params (ACE_QOS_CONDITION_FUNC qos_condition_callback = 0,
- unsigned long callback_data = 0);
-
- /// Get QoS condition callback.
- ACE_QOS_CONDITION_FUNC qos_condition_callback (void) const;
-
- /// Set QoS condition callback.
- void qos_condition_callback (ACE_QOS_CONDITION_FUNC qcc);
-
- /// Get callback data.
- unsigned long callback_data (void) const;
-
- /// Set callback data.
- void callback_data (unsigned long cd);
-
-private:
- /**
- * This is the address of an optional, application-supplied
- * condition function that will make an accept/reject decision based
- * on the caller information pass in as parameters, and optionally
- * create or join a socket group by assinging an appropriate value
- * to the result parameter <g> of this function.
- */
- ACE_QOS_CONDITION_FUNC qos_condition_callback_;
-
- /**
- * This data is passed back to the application as a condition
- * function parameter, i.e., it is an Asynchronous Completion Token
- * (ACT).
- */
- unsigned long callback_data_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_QOS_H */
-
diff --git a/dep/include/ace/OS_String.h b/dep/include/ace/OS_String.h
deleted file mode 100644
index 10ea346fc9c..00000000000
--- a/dep/include/ace/OS_String.h
+++ /dev/null
@@ -1,33 +0,0 @@
-// -*- C++ -*-
-//=============================================================================
-/**
- * @file OS_String.h
- *
- * $Id: OS_String.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @brief Contains definition of class ACE_OS_String.
- *
- * @author Doug Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller <stophph@diku.dk>
- * @author and a cast of thousands...
- */
-//=============================================================================
-
-#ifndef ACE_OS_STRING_H
-#define ACE_OS_STRING_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/OS_NS_string.h"
-#include "ace/OS_NS_strings.h"
-#include "ace/OS_NS_wchar.h"
-#include "ace/OS_NS_ctype.h"
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_STRING_H */
-
diff --git a/dep/include/ace/OS_TLI.h b/dep/include/ace/OS_TLI.h
deleted file mode 100644
index bccc3cd18ae..00000000000
--- a/dep/include/ace/OS_TLI.h
+++ /dev/null
@@ -1,285 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_TLI.h
- *
- * $Id: OS_TLI.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_OS_TLI_H
-# define ACE_OS_TLI_H
-# include /**/ "ace/pre.h"
-
-# include "ace/config-all.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-# include "ace/OS_Errno.h"
-# include "ace/ACE_export.h"
-
-# if defined (ACE_EXPORT_MACRO)
-# undef ACE_EXPORT_MACRO
-# endif
-# define ACE_EXPORT_MACRO ACE_Export
-
-# if !(defined(ACE_HAS_TLI) || defined(ACE_HAS_XTI))
-// Dummies to help compilation.
-struct t_call { };
-struct t_bind { };
-struct t_info { };
-struct t_optmgmt { };
-struct t_discon { };
-struct t_unitdata { };
-struct t_uderr { };
-struct netbuf { };
-
-# else /* !(ACE_HAS_TLI || ACE_HAS_XTI) */
-
-# if defined (ACE_HAS_CONFLICTING_XTI_MACROS)
- // Make sure tcp.h gets included before sys/xti.h.
-# include "ace/os_include/netinet/os_tcp.h"
-# undef TCP_NODELAY
-# undef TCP_MAXSEG
-# endif /* ACE_HAS_CONFLICTING_XTI_MACROS */
-
-# if defined (ACE_HAS_XTI)
-# if defined (ACE_HAS_SYS_XTI_H) /* Nonstandard header placement */
-# define class ace_xti_class
-# include /**/ <sys/xti.h>
-# undef class
-# elif defined (ACE_HAS_FORE_ATM_XTI)
-# include /**/ <fore_xti/xti_user_types.h>
-# include /**/ <fore_xti/xti.h>
-# include /**/ <fore_xti/xti_atm.h>
-# include /**/ <fore_xti/netatm/atm.h>
-# include /**/ <fore_xti/ans.h>
-# else
-# include /**/ <xti.h>
-# endif /* ACE_HAS_SYS_XTI_H */
-
- // The XTI API for obtaining local/peer addresses is t_getprotaddr().
- // The ACE API was developed in TLI days and so uses t_getname().
- // t_getname() has a type argument that specifies which address is
- // desired, local or peer, while t_getprotaddr() gets both at once.
- // t_getname() has values defined for the type, so these aren't defined
- // for XTI systems. So, define them here for ACE API users to use.
- // These values were taken from sys/tiuser.h on Solaris.
-# if !defined (LOCALNAME)
-# define LOCALNAME 0
-# endif
-# if !defined (REMOTENAME)
-# define REMOTENAME 1
-# endif
-
-# else /* !ACE_HAS_XTI, so this is a TLI system */
-# if !defined (ACE_HAS_TLI_PROTOTYPES)
-
-// Define ACE_TLI headers for systems that don't prototype them....
-extern "C"
-{
- int t_accept(int fildes, int resfd, struct t_call *call);
- char *t_alloc(int fildes, int struct_type, int fields);
- int t_bind(int fildes, struct t_bind *req, struct t_bind *ret);
- int t_close(int fildes);
- int t_connect(int fildes, struct t_call *sndcall,
- struct t_call *rcvcall);
- void t_error(const char *errmsg);
- int t_free(char *ptr, int struct_type);
- int t_getinfo(int fildes, struct t_info *info);
- int t_getname (int fildes, struct netbuf *namep, int type);
- int t_getstate(int fildes);
- int t_listen(int fildes, struct t_call *call);
- int t_look(int fildes);
- int t_open(char *path, int oflag, struct t_info *info);
- int t_optmgmt(int fildes, struct t_optmgmt *req,
- struct t_optmgmt *ret);
- int t_rcv(int fildes, char *buf, unsigned int nbytes, int *flags);
- int t_rcvconnect(int fildes, struct t_call *call);
- int t_rcvdis(int fildes, struct t_discon *discon);
- int t_rcvrel(int fildes);
- int t_rcvudata(int fildes, struct t_unitdata *unitdata, int *flags);
- int t_rcvuderr(int fildes, struct t_uderr *uderr);
- int t_snd(int fildes, const char *buf, unsigned int nbytes, int flags);
- int t_snddis(int fildes, struct t_call *call);
- int t_sndrel(int fildes);
- int t_sndudata(int fildes, struct t_unitdata *unitdata);
- int t_sync(int fildes);
- int t_unbind(int fildes);
-}
-# endif /* !ACE_HAS_TLI_PROTOTYPES */
-
-# if defined (ACE_HAS_TIUSER_H_BROKEN_EXTERN_C)
-extern "C" {
-# endif /* ACE_HAS_TIUSER_H_BROKEN_EXTERN_C */
-# if defined (ACE_HAS_TIUSER_H)
-# include /**/ <tiuser.h>
-# else
- /* What to do here??? Is there a tli.h? */
-# endif /* ACE_HAS_TIUSER_H */
-# if defined (ACE_HAS_TIUSER_H_BROKEN_EXTERN_C)
-}
-# endif /* ACE_HAS_TIUSER_H_BROKEN_EXTERN_C */
-
-# if defined (ACE_HAS_SVR4_TLI)
- // t_getname is a TLI extension added by some platforms before XTI
- // was widely available. However, it's not often in the system's
- // header files. Sun OS, for example, is like this.
- extern "C" int t_getname (int, struct netbuf *, int);
-# endif /* ACE_HAS_SVR4_TLI */
-# endif /* !ACE_HAS_XTI */
-
-# endif /* ACE_HAS_XTI || ACE_HAS_TLI */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// This hack is needed to get around an odd and hard-to-reproduce problem
-// with HP aC++. If struct sigaction is defined extern "C" and the sigaction
-// function in namespace ACE_OS, the compiler sometimes gets confused.
-// If we help it with this typedef, it's fine. User code should not use
-// the ACE typedef - it will be removed without warning as soon as we can
-// either drop support for the broken compilers or figure out how to reproduce
-// it so it can be reported to HP and fixed.
-// There's a similar hack in OS_TLI.h for struct t_optmgmt.
-// Also see ChangeLog entries:
-// Mon Jan 23 16:35:40 UTC 2006 Steve Huston <shuston@riverace.com>
-// Mon Jan 23 22:08:56 UTC 2006 Steve Huston <shuston@riverace.com>
-#if defined (__HP_aCC) && (__HP_aCC <= 37300)
-typedef extern "C" struct t_optmgmt ACE_TOPTMGMT;
-typedef extern "C" struct t_bind ACE_TBIND;
-#else
-typedef struct t_optmgmt ACE_TOPTMGMT;
-typedef struct t_bind ACE_TBIND;
-#endif
-
-/**
- * @namespace ACE_OS
- *
- * @brief This class is a wrapper for the XTI/TLI operations
- *
- */
-namespace ACE_OS
-{
- // = A set of wrappers for XTI/TLI.
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_accept (ACE_HANDLE fildes,
- ACE_HANDLE resfd,
- struct t_call
- *call);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- char *t_alloc (ACE_HANDLE fildes,
- int struct_type,
- int
- fields);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_bind (ACE_HANDLE fildes,
- ACE_TBIND *req,
- ACE_TBIND *ret);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_close (ACE_HANDLE fildes);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_connect (ACE_HANDLE fildes,
- struct t_call *sndcall,
- struct t_call *rcvcall);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- void t_error (const char *errmsg);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_free (char *ptr,
- int struct_type);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_getinfo (ACE_HANDLE fildes,
- struct t_info *info);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_getname (ACE_HANDLE fildes,
- struct netbuf *namep,
- int type);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_getstate (ACE_HANDLE fildes);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_listen (ACE_HANDLE fildes,
- struct t_call *call);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_look (ACE_HANDLE fildes);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- ACE_HANDLE t_open (char *path,
- int oflag,
- struct t_info *info);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_optmgmt (ACE_HANDLE handle,
- ACE_TOPTMGMT *req,
- ACE_TOPTMGMT *ret);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_rcv (ACE_HANDLE fildes,
- char *buf,
- unsigned int nbytes,
- int *flags);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_rcvdis (ACE_HANDLE fildes,
- struct t_discon *discon);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_rcvrel (ACE_HANDLE fildes);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_rcvudata (ACE_HANDLE fildes,
- struct t_unitdata *unitdata,
- int *flags);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_rcvuderr (ACE_HANDLE fildes,
- struct t_uderr *uderr);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_snd (ACE_HANDLE fildes,
- const char *buf,
- unsigned int nbytes,
- int flags);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_snddis (ACE_HANDLE fildes,
- struct t_call *call);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_sndrel (ACE_HANDLE fildes);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_sync (ACE_HANDLE fildes);
-
- ACE_NAMESPACE_INLINE_FUNCTION
- int t_unbind (ACE_HANDLE fildes);
-
-} /* namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/OS_TLI.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_TLI_H */
-
diff --git a/dep/include/ace/OS_TLI.inl b/dep/include/ace/OS_TLI.inl
deleted file mode 100644
index bbca38b2cd8..00000000000
--- a/dep/include/ace/OS_TLI.inl
+++ /dev/null
@@ -1,390 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: OS_TLI.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_errno.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_OS {
-
-ACE_INLINE int
-t_accept (ACE_HANDLE handle, ACE_HANDLE reshandle, struct t_call *call)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_accept (handle, reshandle, call), int, -1);
-#else
- ACE_UNUSED_ARG (call);
- ACE_UNUSED_ARG (reshandle);
- ACE_UNUSED_ARG (handle);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE char *
-t_alloc (ACE_HANDLE handle, int struct_type, int fields)
-{
-#if defined (ACE_HAS_TLI)
-# if (defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) >= 500)
- // XPG5 changes t_alloc() return from char* to void*, so ACE_OSCALL_RETURN
- // doesn't compile correctly.
- char *result;
- ACE_OSCALL (::t_alloc (handle, struct_type, fields), char *, 0, result);
- return result;
-# else
- ACE_OSCALL_RETURN (::t_alloc (handle, struct_type, fields),
- char *, 0);
-# endif /* XPG4 vs XPG5 */
-#else
- ACE_UNUSED_ARG (fields);
- ACE_UNUSED_ARG (struct_type);
- ACE_UNUSED_ARG (handle);
-
- ACE_NOTSUP_RETURN (0);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_bind (ACE_HANDLE handle, ACE_TBIND *req, ACE_TBIND *ret)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_bind (handle, req, ret), int, -1);
-#else
- ACE_UNUSED_ARG (ret);
- ACE_UNUSED_ARG (req);
- ACE_UNUSED_ARG (handle);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_close (ACE_HANDLE handle)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_close (handle), int, -1);
-#else
- ACE_UNUSED_ARG (handle);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_connect(ACE_HANDLE fildes,
- struct t_call *sndcall,
- struct t_call *rcvcall)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_connect (fildes, sndcall, rcvcall), int, -1);
-#else
- ACE_UNUSED_ARG (fildes);
- ACE_UNUSED_ARG (sndcall);
- ACE_UNUSED_ARG (rcvcall);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE void
-t_error (const char *errmsg)
-{
-#if defined (ACE_HAS_TLI)
-#if defined (ACE_HAS_BROKEN_T_ERROR)
- ::t_error (const_cast<char *> (errmsg));
-#else
- ::t_error (errmsg);
-#endif /* ACE_HAS_BROKEN_T_ERROR */
-#else
- ACE_UNUSED_ARG (errmsg);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_free (char *ptr, int struct_type)
-{
-#if defined (ACE_HAS_TLI)
- if (ptr == 0)
- return 0;
- ACE_OSCALL_RETURN (::t_free (ptr, struct_type), int, -1);
-#else
- ACE_UNUSED_ARG (struct_type);
- ACE_UNUSED_ARG (ptr);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_getinfo (ACE_HANDLE handle, struct t_info *info)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_getinfo (handle, info), int, -1);
-#else
- ACE_UNUSED_ARG (info);
- ACE_UNUSED_ARG (handle);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_getname (ACE_HANDLE handle, struct netbuf *namep, int type)
-{
-#if defined (ACE_HAS_XTI)
- ACE_TBIND bound, peer;
- // Depending on which address the caller wants, fill caller's values
- // into one of the t_bind netbufs. The other is set up to ignore that
- // address.
- switch (type)
- {
- case LOCALNAME:
- bound.addr.buf = namep->buf;
- bound.addr.maxlen = namep->maxlen;
- bound.addr.len = 0;
- peer.addr.buf = 0;
- peer.addr.maxlen = 0;
- peer.addr.len = 0;
- break;
- case REMOTENAME:
- bound.addr.buf = 0;
- bound.addr.maxlen = 0;
- bound.addr.len = 0;
- peer.addr.buf = namep->buf;
- peer.addr.maxlen = namep->maxlen;
- peer.addr.len = 0;
- break;
- default:
- ACE_OS::last_error (EINVAL);
- return -1;
- }
- if (t_getprotaddr (handle, &bound, &peer) == -1)
- return -1;
- // Call succeeded; put the caller's desired address length in his netbuf.
- if (type == LOCALNAME)
- namep->len = bound.addr.len;
- else
- namep->len = peer.addr.len;
- return 0;
-
-#elif defined (ACE_HAS_SVR4_TLI)
- ACE_OSCALL_RETURN (::t_getname (handle, namep, type), int, -1);
-#else
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (namep);
- ACE_UNUSED_ARG (type);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_SVR4_TLI */
-}
-
-ACE_INLINE int
-t_getstate (ACE_HANDLE handle)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_getstate (handle), int, -1);
-#else
- ACE_UNUSED_ARG (handle);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_listen (ACE_HANDLE handle, struct t_call *call)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_listen (handle, call), int, -1);
-#else
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (call);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_look (ACE_HANDLE handle)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_look (handle), int, -1);
-#else
- ACE_UNUSED_ARG (handle);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE ACE_HANDLE
-t_open (char *path, int oflag, struct t_info *info)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_open (path, oflag, info), ACE_HANDLE, ACE_INVALID_HANDLE);
-#else
- ACE_UNUSED_ARG (path);
- ACE_UNUSED_ARG (oflag);
- ACE_UNUSED_ARG (info);
-
- ACE_NOTSUP_RETURN (ACE_INVALID_HANDLE);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_optmgmt (ACE_HANDLE handle, ACE_TOPTMGMT *req, ACE_TOPTMGMT *ret)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_optmgmt (handle, req, ret), int, -1);
-#else
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (req);
- ACE_UNUSED_ARG (ret);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_rcv (ACE_HANDLE handle,
- char *buf,
- unsigned int nbytes,
- int *flags)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_rcv (handle, buf, nbytes, flags),
- int, -1);
-#else
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (buf);
- ACE_UNUSED_ARG (nbytes);
- ACE_UNUSED_ARG (flags);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_rcvdis (ACE_HANDLE handle, struct t_discon *discon)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_rcvdis (handle, discon), int, -1);
-#else
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (discon);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_rcvrel (ACE_HANDLE handle)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_rcvrel (handle), int, -1);
-#else
- ACE_UNUSED_ARG (handle);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_rcvudata (ACE_HANDLE handle,
- struct t_unitdata *unitdata,
- int *flags)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_rcvudata (handle, unitdata, flags),
- int, -1);
-#else
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (unitdata);
- ACE_UNUSED_ARG (flags);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_rcvuderr (ACE_HANDLE handle, struct t_uderr *uderr)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_rcvuderr (handle, uderr), int, -1);
-#else
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (uderr);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_snd (ACE_HANDLE handle,
- const char *buf,
- unsigned int nbytes,
- int flags)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_snd (handle, (char *) buf, nbytes, flags), int, -1);
-#else
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (buf);
- ACE_UNUSED_ARG (nbytes);
- ACE_UNUSED_ARG (flags);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_snddis (ACE_HANDLE handle, struct t_call *call)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_snddis (handle, call), int, -1);
-#else
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (call);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_sndrel (ACE_HANDLE handle)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_sndrel (handle), int, -1);
-#else
- ACE_UNUSED_ARG (handle);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_sync (ACE_HANDLE handle)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_sync (handle), int, -1);
-#else
- ACE_UNUSED_ARG (handle);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-ACE_INLINE int
-t_unbind (ACE_HANDLE handle)
-{
-#if defined (ACE_HAS_TLI)
- ACE_OSCALL_RETURN (::t_unbind (handle), int, -1);
-#else
- ACE_UNUSED_ARG (handle);
-
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_TLI */
-}
-
-} /* end namespace ACE_OS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/OS_Thread_Adapter.h b/dep/include/ace/OS_Thread_Adapter.h
deleted file mode 100644
index d51bc772168..00000000000
--- a/dep/include/ace/OS_Thread_Adapter.h
+++ /dev/null
@@ -1,73 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_Thread_Adapter.h
- *
- * $Id: OS_Thread_Adapter.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Carlos O'Ryan <coryan@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_OS_THREAD_ADAPTER_H
-#define ACE_OS_THREAD_ADAPTER_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Base_Thread_Adapter.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include /**/ "ace/ACE_export.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_OS_Thread_Adapter
- *
- * @brief Converts a C++ function into a function that can be
- * called from a thread creation routine
- * (e.g., pthread_create() or _beginthreadex()) that expects an
- * extern "C" entry point. This class also makes it possible to
- * transparently provide hooks to register a thread with an
- * ACE_Thread_Manager.
- *
- * This class is used in ACE_OS::thr_create(). In general, the
- * thread that creates an object of this class is different from
- * the thread that calls invoke() on this object. Therefore,
- * the invoke() method is responsible for deleting itself.
- */
-class ACE_Export ACE_OS_Thread_Adapter : public ACE_Base_Thread_Adapter
-{
-public:
- /// Constructor.
- ACE_OS_Thread_Adapter (ACE_THR_FUNC user_func,
- void *arg,
- ACE_THR_C_FUNC entry_point = (ACE_THR_C_FUNC) ACE_THREAD_ADAPTER_NAME
-# if defined (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS)
- , ACE_SEH_EXCEPT_HANDLER selector = 0
- , ACE_SEH_EXCEPT_HANDLER handler = 0
-# endif /* ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS */
- );
-
- /**
- * Execute the @a user_func_ with the @a arg. This function deletes
- * @c this, thereby rendering the object useless after the call
- * returns.
- */
- virtual ACE_THR_FUNC_RETURN invoke (void);
-
-protected:
-
- /// Ensure that this object is allocated on the heap.
- ~ACE_OS_Thread_Adapter (void);
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_THREAD_ADAPTER_H */
-
diff --git a/dep/include/ace/OS_main.h b/dep/include/ace/OS_main.h
deleted file mode 100644
index 502aa5da67e..00000000000
--- a/dep/include/ace/OS_main.h
+++ /dev/null
@@ -1,306 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file OS_main.h
- *
- * $Id: OS_main.h 81843 2008-06-05 15:47:55Z schmidt $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#include /**/ "ace/ACE_export.h"
-
-#ifndef ACE_OS_MAIN_H
-# define ACE_OS_MAIN_H
-
-# include /**/ "ace/pre.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-# if defined (ACE_HAS_RTEMS)
-extern char* rtems_progname;
-# endif /* ACE_HAS_RTEMS */
-
-#if defined (ACE_VXWORKS) && (ACE_VXWORKS <= 0x640) && defined (__RTP__)
-# include <resolvLib.h>
-#endif
-
-# if !defined (ACE_MAIN)
-# define ACE_MAIN main
-# endif /* ! ACE_MAIN */
-
-# if !defined (ACE_WMAIN)
-# define ACE_WMAIN wmain
-# endif /* ! ACE_WMAIN */
-
-# if defined (ACE_WIN32) && defined (ACE_USES_WCHAR)
-# define ACE_TMAIN wmain
-# else
-# if defined (ACE_USES_WCHAR) /* Not Win32, but uses wchar */
- // Replace main() with a version that converts the char** argv to
- // ACE_TCHAR and calls the ACE_TMAIN entrypoint.
-# include "ace/Argv_Type_Converter.h"
-# define ACE_TMAIN \
- ace_main_i (int, ACE_TCHAR *[]); /* forward declaration */ \
- int main (int argc, char *argv[]) { \
- ACE_Argv_Type_Converter wide_argv (argc, argv); \
- return ace_main_i (argc, wide_argv.get_TCHAR_argv ()); \
- } \
- int ace_main_i
-# else
-# define ACE_TMAIN main
-# endif /* ACE_USES_WCHAR */
-# endif
-
-# if defined (ACE_DOESNT_INSTANTIATE_NONSTATIC_OBJECT_MANAGER)
-# if !defined (ACE_HAS_NONSTATIC_OBJECT_MANAGER)
-# define ACE_HAS_NONSTATIC_OBJECT_MANAGER
-# endif /* ACE_HAS_NONSTATIC_OBJECT_MANAGER */
-# endif /* ACE_DOESNT_INSTANTIATE_NONSTATIC_OBJECT_MANAGER */
-
-# if defined (ACE_HAS_NONSTATIC_OBJECT_MANAGER) \
- && !defined (ACE_DOESNT_INSTANTIATE_NONSTATIC_OBJECT_MANAGER)
-
-// Rename "main ()" on platforms that don't allow it to be called "main ()".
-
-# if defined (ACE_VXWORKS) && !defined (__RTP__)
-
-typedef int (*ace_main_proc_ptr)(int, char *[]);
-
-extern ace_main_proc_ptr vx_ace_main_i_ptr;
-
-// Declare ACE_MAIN as extern C so that it can be retrieved
-// using symFindByName
-extern "C"
-{
- int ACE_MAIN (int, char* []);
-}
-
-# define main \
-ACE_MAIN (int, char *[]); /* forward decl to gobble up the 'int' if there is one */ \
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL \
-int ace_os_main_i (int, char *[]); \
-ACE_END_VERSIONED_NAMESPACE_DECL \
-int ace_main_i(int, char *[]); \
-int \
-ACE_MAIN (int argc, char *argv[]) /* user's entry point, e.g., main */ \
-{ \
- vx_ace_main_i_ptr = ace_main_i; \
- return ace_os_main_i (argc, argv); /* what the user calls "main" */ \
-} \
-int \
-ace_main_i
-
-# elif defined (ACE_HAS_RTEMS)
-
-# define main \
-ACE_MAIN (int, char *[]); /* forward decl to gobble up the 'int' if there is one */ \
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL \
-int ace_os_main_i (int, char *[]); \
-ACE_END_VERSIONED_NAMESPACE_DECL \
-int \
-ACE_MAIN (int argc, char *argv[]) /* user's entry point, e.g., main */ \
-{ \
- if ((argc > 0) && argv && argv[0]) \
- rtems_progname = argv[0]; \
- else \
- rtems_progname = "RTEMS"; \
- return ace_os_main_i (argc, argv); /* what the user calls "main" */ \
-} \
-int \
-ace_main_i
-
-# elif defined (ACE_VXWORKS) && (ACE_VXWORKS <= 0x640) && defined (__RTP__)
-
-# define main \
-ACE_MAIN (int, char *[]); /* forward decl to gobble up the 'int' if there is one */ \
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL \
-int ace_os_main_i (int, char *[]); \
-ACE_END_VERSIONED_NAMESPACE_DECL \
-int \
-ACE_MAIN (int argc, char *argv[]) /* user's entry point, e.g., main */ \
-{ \
- resolvInit(); \
- return ace_os_main_i (argc, argv); /* what the user calls "main" */ \
-} \
-int \
-ace_main_i
-
-# elif !defined (ACE_WIN32)
-
-# define main \
-ACE_MAIN (int, char *[]); /* forward decl to gobble up the 'int' if there is one */ \
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL \
-int ace_os_main_i (int, char *[]); \
-ACE_END_VERSIONED_NAMESPACE_DECL \
-int \
-ACE_MAIN (int argc, char *argv[]) /* user's entry point, e.g., main */ \
-{ \
- return ace_os_main_i (argc, argv); /* what the user calls "main" */ \
-} \
-int \
-ace_main_i
-
-# elif !defined (ACE_HAS_WINCE)
-
-# if defined (ACE_WIN32) && defined (ACE_USES_WCHAR)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Export ACE_Main_Base
-{
-public:
- int run (int, ACE_TCHAR *[]);
- virtual int run_i (int, ACE_TCHAR *[]) = 0;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# define wmain \
-ace_wmain_i (int, ACE_TCHAR *[]); \
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL \
-ACE_Export int ace_os_wmain_i (ACE_Main_Base&, int, ACE_TCHAR *[]); \
-class ACE_Main : public ACE_Main_Base {int run_i (int, ACE_TCHAR *[]);}; \
-ACE_END_VERSIONED_NAMESPACE_DECL \
-inline int ACE_Main::run_i (int argc, ACE_TCHAR *argv[]) \
-{ \
- return ace_wmain_i (argc, argv); \
-} \
-int \
-ACE_WMAIN (int argc, ACE_TCHAR *argv[]) /* user's entry point, e.g., wmain */ \
-{ \
- ACE_Main m; \
- return ace_os_wmain_i (m, argc, argv); /* what the user calls "main" */ \
-} \
-int \
-ace_wmain_i
-
-# else /* ! (ACE_WIN32 && ACE_USES_WCHAR) */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Export ACE_Main_Base
-{
-public:
- ACE_Main_Base ();
- virtual ~ACE_Main_Base ();
- int run (int, char *[]);
- virtual int run_i (int, char *[]) = 0;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-/*
-** LabVIEW RT cannot directly use an executable. Need to build the program
-** as a DLL and call it from something else. The ACE test framework knows this
-** trick and uses a LabVIEW RT target-resident control program to load a
-** DLL, look up it's main() entrypoint, and call it.
-*/
-# if defined (ACE_BUILD_LABVIEW_EXE_AS_DLL)
-extern "C" __declspec (dllexport) int main (int, char *[]);
-# endif /* ACE_BUILD_LABVIEW_EXE_AS_DLL) */
-
-# define main \
-ace_main_i (int, char *[]); \
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL \
-ACE_Export int ace_os_main_i (ACE_Main_Base&, int, char *[]); \
-class ACE_Main : public ACE_Main_Base {int run_i (int, char *[]);}; \
-inline int ACE_Main::run_i (int argc, char *argv[]) \
-{ \
- return ace_main_i (argc, argv); \
-} \
-ACE_END_VERSIONED_NAMESPACE_DECL \
-int \
-ACE_MAIN (int argc, char *argv[]) /* user's entry point, e.g., wmain */ \
-{ \
- ACE_Main m; \
- return m.run (argc, argv); /*ace_os_main_i (m, argc, argv); what the user calls "main" */ \
-} \
-int \
-ace_main_i
-
-# endif /* ACE_WIN32 && ACE_USES_WCHAR */
-
-# else /* ACE_HAS_WINCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Export ACE_Main_Base
-{
-public:
- int run (HINSTANCE, HINSTANCE, LPWSTR, int);
- virtual int run_i (int, ACE_TCHAR *[]) = 0;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_TMAIN) // Use WinMain on CE; others give warning/error.
-# undef ACE_TMAIN
-# endif // ACE_TMAIN
-
-// Support for ACE_TMAIN, which is a recommended way. It would be nice if
-// CE had CommandLineToArgvW()... but it's only on NT3.5 and up.
-
-# define ACE_TMAIN \
-ace_tmain_i (int, ACE_TCHAR *[]); \
-class ACE_Main : public ACE_Main_Base {int run_i (int argc, ACE_TCHAR *argv[]);}; \
-inline int ACE_Main::run_i (int argc, ACE_TCHAR *argv[]) \
-{ \
- return ace_tmain_i (argc, argv); \
-} \
-int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nCmdShow) \
-{ \
- ACE_Main m; \
- return m.run (hInstance, hPrevInstance, lpCmdLine, nCmdShow); \
-} \
-int ace_tmain_i
-
-// Support for wchar_t but still can't fit to CE because of the command
-// line parameters.
-# define wmain \
-ace_wmain_i (int, ACE_TCHAR *[]); \
-ACE_Export int ace_os_winwmain_i (ACE_Main_Base&, hInstance, hPrevInstance, lpCmdLine, nCmdShow); /* forward declaration */ \
-class ACE_Main : public ACE_Main_Base {int run_i (int argc, ACE_TCHAR *argv[]);}; \
-inline int ACE_Main::run_i (int argc, ACE_TCHAR *argv[]) \
-{ \
- return ace_wmain_i (argc, argv); \
-} \
-int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nCmdShow) \
-{ \
- return ace_os_winwmain_i (hInstance, hPrevInstance, lpCmdLine, nCmdShow); \
-} \
-int ace_wmain_i
-
-// Supporting legacy 'main' is A LOT easier for users than changing existing
-// code on WinCE. Unfortunately, evc 3 can't grok a #include within the macro
-// expansion, so it needs to go out here.
-# include "ace/Argv_Type_Converter.h"
-# define main \
-ace_main_i (int, ACE_TCHAR *[]); \
-ACE_Export int ace_os_winmain_i (ACE_Main_Base&, hInstance, hPrevInstance, lpCmdLine, nCmdShow); /* forward declaration */ \
-class ACE_Main : public ACE_Main_Base {int run_i (int argc, ACE_TCHAR *argv[]);}; \
-inline int ACE_Main::run_i (int argc, ACE_TCHAR *argv[]) \
-{ \
- return ace_main_i (argc, argv); \
-} \
-int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nCmdShow) \
-{ \
- return ace_os_winmain_i (hInstance, hPrevInstance, lpCmdLine, nCmdShow); \
-} \
-int ace_main_i
-
-# endif /* ACE_PSOSIM */
-# endif /* ACE_HAS_NONSTATIC_OBJECT_MANAGER && !ACE_HAS_WINCE && !ACE_DOESNT_INSTANTIATE_NONSTATIC_OBJECT_MANAGER */
-
-# include /**/ "ace/post.h"
-
-#endif /* ACE_OS_MAIN_H */
-
diff --git a/dep/include/ace/Obchunk.h b/dep/include/ace/Obchunk.h
deleted file mode 100644
index 053b144979e..00000000000
--- a/dep/include/ace/Obchunk.h
+++ /dev/null
@@ -1,77 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Obchunk.h
- *
- * $Id: Obchunk.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_OBCHUNK_H
-#define ACE_OBCHUNK_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Malloc.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Obchunk
- *
- * @brief Defines the state that represents a "chunk" of memory.
- * Evenything in this class is public because it is designed
- * as an internal structure of Obstack_T and users are
- * not supposed to use this class directly.
- * @sa ACE_Obstack_T
- */
-class ACE_Export ACE_Obchunk
-{
-public:
- /// Constructor.
- ACE_Obchunk (size_t size);
-
- /// Dtor.
- ~ACE_Obchunk (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /// Pointer to the end of the chunk.
- char *end_;
-
- /// Pointer to the head of the current building block.
- char *block_;
-
- /// Pointer to the current location in the chunk.
- char *cur_;
-
- /// Next chunk in the chain.
- ACE_Obchunk *next_;
-
- /**
- * Pointer to the beginning contents of this chunk. This field is
- * actually overlayed by the memory allocated by
- * <ACE_Obstack::new_chunk>. Therefore, it *must* come last.
- */
- char contents_[4];
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Obchunk.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OBCHUNK_H */
-
diff --git a/dep/include/ace/Obchunk.inl b/dep/include/ace/Obchunk.inl
deleted file mode 100644
index b2c71684904..00000000000
--- a/dep/include/ace/Obchunk.inl
+++ /dev/null
@@ -1,12 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Obchunk.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Obchunk::~ACE_Obchunk (void)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Object_Manager.h b/dep/include/ace/Object_Manager.h
deleted file mode 100644
index 69952d4d018..00000000000
--- a/dep/include/ace/Object_Manager.h
+++ /dev/null
@@ -1,466 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Object_Manager.h
- *
- * $Id: Object_Manager.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author David L. Levine <levine@cs.wustl.edu>
- * @author Matthias Kerkhoff
- * @author Per Andersson
- */
-//=============================================================================
-
-#ifndef ACE_OBJECT_MANAGER_H
-#define ACE_OBJECT_MANAGER_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-#include "ace/Object_Manager_Base.h"
-#include "ace/Global_Macros.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declarations.
-class ACE_Object_Manager_Preallocations;
-class ACE_Sig_Adapter;
-class ACE_Sig_Set;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
- class ACE_Mutex;
- class ACE_Null_Mutex;
- class ACE_Thread_Mutex;
- class ACE_Recursive_Thread_Mutex;
- class ACE_RW_Thread_Mutex;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# include "ace/Recursive_Thread_Mutex.h"
-#endif /* ACE_MT_SAFE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// only used by ACE_OS_Object_Manager::ctor
-# if defined (ACE_WIN32)
-// Default WIN32 structured exception handler.
-int ACE_SEH_Default_Exception_Selector (void *);
-int ACE_SEH_Default_Exception_Handler (void *);
-# endif /* ACE_WIN32 */
-
-class ACE_Cleanup_Info_Node;
-template <class T> class ACE_Cleanup_Adapter;
-
-// Configuration parameters.
-#if !defined (ACE_MAX_MANAGED_OBJECTS)
-# define ACE_MAX_MANAGED_OBJECTS 128
-#endif /* ! ACE_MAX_MANAGED_OBJECTS */
-
-#if !defined (ACE_APPLICATION_PREALLOCATED_OBJECT_DECLARATIONS)
-# define ACE_APPLICATION_PREALLOCATED_OBJECT_DECLARATIONS
-#endif /* ! ACE_APPLICATION_PREALLOCATED_OBJECT_DECLARATIONS */
-
-#if !defined (ACE_APPLICATION_PREALLOCATED_ARRAY_DECLARATIONS)
-# define ACE_APPLICATION_PREALLOCATED_ARRAY_DECLARATIONS
-#endif /* ! ACE_APPLICATION_PREALLOCATED_ARRAY_DECLARATIONS */
-
-/**
- * @class ACE_Object_Manager
- *
- * @brief Manager for ACE library services and singleton cleanup.
- *
- * The ACE_Object_Manager manages cleanup of objects, typically
- * singletons, at program termination. In addition to managing
- * the cleanup of the ACE library, it provides an interface for
- * application to register objects to be cleaned up.
- * This class also shuts down ACE library services, so that they
- * can reclaim their storage, at program termination. It works
- * by creating a static instance whose destructor gets called
- * along with those of all other static objects. Hooks are
- * provided for application code to register objects and arrays
- * for cleanup, e.g., destruction. The order of such cleanup
- * calls is in the reverse order of registration, i.e., that
- * last object/array to register gets cleaned up first.
- * The ACE_Object_Manager API includes ACE_Managed_Object. That
- * class is contained in a separate file because it is a
- * template class, and some compilers require that template and
- * non-template class definitions appear in separate files.
- * Please see ace/Managed_Object.h for a description of that
- * part of the API. In summary, ACE_Managed_Object provides two
- * adapters, the ACE_Cleanup_Adapter and ACE_Managed_Object
- * template classes for adapting objects of any type to be
- * easily managed by the ACE_Object_Manager. There are several
- * mechanisms for adapting objects and arrays for cleanup at
- * program termination, in roughly increasing order of ease-of-use:
- * 1) Derive the object's class from ACE_Cleanup.
- * 2) Allow the ACE_Object_Manager to both dynamically allocate
- * and deallocate the object.
- * 3) Provide an <ACE_CLEANUP_FUNC> cleanup hook for the object or
- * array.
- * 4) Allow the ACE_Object_Manager to both preallocate the object
- * or array, either statically in global data or dynamically on
- * the heap, when its singleton instance is construction.
- *
- * There are also several mechanisms for registering objects and
- * arrays for cleanup. In decreasing order of flexibility and
- * complexity (with the exception of the last mechanism):
- *
- * 1) ACE_Object_Manager::at_exit (void *object,
- * ACE_CLEANUP_FUNC cleanup_hook,
- * void *param);
- * can be used to register any object or array for any
- * cleanup activity at program termination.
- * 2) ACE_Object_Manager::at_exit (ACE_Cleanup *object,
- * void *param = 0);
- * can be used to register an ACE_Cleanup object
- * for any cleanup activity at program termination.
- * The final mechanism is not general purpose, but can only
- * be used to allocate objects and arrays at program startup:
- * 3) ACE_Managed_Object::get_preallocated_object
- * (ACE_Object_Manager::Preallocated_Object id);
- * and
- * ACE_Managed_Object::get_preallocated_array
- * (ACE_Object_Manager::Preallocated_Array id);
- * can only be used to allocate objects at program startup,
- * either in global data or on the heap (selected at compile
- * time). These are intended to replace static locks, etc.
- * Instead of creating a static ACE_Object_Manager instance, one
- * can alternatively be created on the stack of the main program
- * thread. It is created just after entry to ::main (int, char
- * *[]), and before any existing code in that function is
- * executed. To enable this alternative, add #define
- * ACE_HAS_NONSTATIC_OBJECT_MANAGER before including the platform
- * specific config-* file in ace/config.h prior to
- * building the ACE library and your applications. This #define
- * is enabled in some config files that are supplied with ACE.
- *
- * To ensure a static object manager is used, #undef
- * ACE_HAS_NONSTATIC_OBJECT_MANAGER *after* including the platform
- * specific config-* file.
- * Note that the ACE_Object_Manager _must_ be created before
- * any threads are spawned by the program.
- * If ACE_HAS_NONSTATIC_OBJECT_MANAGER is not #defined, the ACE
- * library creates a static, singleton ACE_Object_Manager instance.
- * The instance is placed in global program data, and constructed
- * via a static object constructor. If ACE_HAS_NONSTATIC_OBJECT_MANAGER
- * is #defined, the ACE_Object_Manager instance is created on the stack
- * of the main program thread, as noted above.
- *
- * With ACE_HAS_NONSTATIC_OBJECT_MANAGER enabled, the ACE
- * library has no static objects that require destruction.
- * However, there are two drawbacks to using it:
- * 1) main (int, char *[]) must be declared with arguments, even
- * if they're not used. All of ACE is converted to this, so
- * just applications have to be concerned with it.
- * 2) If there any static objects that depend on those that are
- * cleaned up by the Object_Manager, they'll get cleaned up too
- * late. The ACE tests do not violate this requirement.
- * However, applications may have trouble with it.
- * NOTE on the use of <::exit> -- <::exit> does not destroy
- * automatic objects. Therefore, if
- * ACE_HAS_NONSTATIC_OBJECT_MANAGER is enabled, the
- * ACE_Object_Manager instance will *not* be destroyed if
- * <::exit> is called! However, <ACE_OS::exit> will properly
- * destroy the ACE_Object_Manager. It is highly recommended
- * that <ACE_OS::exit> be used instead of <::exit>.
- *
- * However, <::exit> and <ACE_OS::exit> are tricky to use
- * properly, especially in multithread programs. It is much
- * safer to throw an exception (or simulate that effect) that
- * will be caught by <main> instead of calling exit. Then,
- * <main> can perform any necessary application-specific cleanup
- * and return the status value. In addition, it's usually best
- * to avoid calling <::exit> and <ACE_OS::exit> from threads
- * other than the main thread. Thanks to Jeff Greif
- * <jmg@trivida.com> for pointing out that <::exit> doesn't
- * destroy automatic objects, and for developing the
- * recommendations in this paragraph.
- *
- * Instead of creating a static ACE_Object_Manager, or letting
- * ACE create it on the stack of <main> for you, another
- * alternative is to #define
- * ACE_DOESNT_INSTANTIATE_NONSTATIC_OBJECT_MANAGER. With that
- * #define, the application must create the ACE_Object_Manager.
- * The recommended way is to call <ACE::init> at the start of
- * the program, and call <ACE::fini> at the end. Alternatively,
- * the application could explicity construct an
- * ACE_Object_Manager.
- */
-class ACE_Export ACE_Object_Manager : public ACE_Object_Manager_Base
-{
-
-public:
- /**
- * Explicitly initialize (construct the singleton instance of) the
- * ACE_Object_Manager. Returns 0 on success, -1 on failure, and 1
- * if it had already been called.
- */
- virtual int init (void);
-
- /**
- * Explicitly destroy the singleton instance of the
- * ACE_Object_Manager. Returns 0 on success, -1 on failure, and 1
- * if it had already been called.
- */
- virtual int fini (void);
-
- /**
- * Returns 1 before the ACE_Object_Manager has been constructed.
- * This flag can be used to determine if the program is constructing
- * static objects. If no static object spawns any threads, the
- * program will be single-threaded when this flag returns 1. (Note
- * that the program still might construct some static objects when
- * this flag returns 0, if ACE_HAS_NONSTATIC_OBJECT_MANAGER is not
- * defined.)
- */
- static int starting_up (void);
-
- /**
- * Returns 1 after the ACE_Object_Manager has been destroyed. This
- * flag can be used to determine if the program is in the midst of
- * destroying static objects. (Note that the program might destroy
- * some static objects before this flag can return 1, if
- * ACE_HAS_NONSTATIC_OBJECT_MANAGER is not defined.)
- */
- static int shutting_down (void);
-
- /**
- * Register an ACE_Cleanup object for cleanup at process
- * termination. The object is deleted via the
- * <ace_cleanup_destroyer>. If you need more flexiblity, see the
- * <other at_exit> method below. For OS's that do not have
- * processes, cleanup takes place at the end of <main>. Returns 0
- * on success. On failure, returns -1 and sets errno to: EAGAIN if
- * shutting down, ENOMEM if insufficient virtual memory, or EEXIST
- * if the object (or array) had already been registered.
- */
- static int at_exit (ACE_Cleanup *object, void *param = 0);
-
-#if defined (ACE_HAS_TSS_EMULATION)
- static int init_tss (void);
- int init_tss_i (void);
-#endif
-
- /**
- * Register an object (or array) for cleanup at process termination.
- * "cleanup_hook" points to a (global, or static member) function
- * that is called for the object or array when it to be destroyed.
- * It may perform any necessary cleanup specific for that object or
- * its class. "param" is passed as the second parameter to the
- * "cleanup_hook" function; the first parameter is the object (or
- * array) to be destroyed. "cleanup_hook", for example, may delete
- * the object (or array). For OS's that do not have processes, this
- * function is the same as <at_thread_exit>. Returns 0 on success.
- * On failure, returns -1 and sets errno to: EAGAIN if shutting
- * down, ENOMEM if insufficient virtual memory, or EEXIST if the
- * object (or array) had already been registered.
- */
- static int at_exit (void *object,
- ACE_CLEANUP_FUNC cleanup_hook,
- void *param);
-
-#if 0 /* not implemented yet */
- /// Similar to <at_exit>, except that the cleanup_hook is called
- /// when the current thread exits instead of when the program terminates.
- static int at_thread_exit (void *object,
- ACE_CLEANUP_FUNC cleanup_hook,
- void *param);
-#endif /* 0 */
-
- /// Unique identifiers for preallocated objects. Please see
- /// ace/Managed_Object.h for information on accessing preallocated
- /// objects.
- enum Preallocated_Object
- {
- ACE_FILECACHE_LOCK,
-#if defined (ACE_HAS_THREADS)
- ACE_STATIC_OBJECT_LOCK,
-#endif /* ACE_HAS_THREADS */
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
- ACE_MT_CORBA_HANDLER_LOCK,
- ACE_DUMP_LOCK,
- ACE_SIG_HANDLER_LOCK,
- ACE_SINGLETON_NULL_LOCK,
- ACE_SINGLETON_RECURSIVE_THREAD_LOCK,
- ACE_THREAD_EXIT_LOCK,
-#if !defined (ACE_LACKS_ACE_TOKEN)
- ACE_TOKEN_MANAGER_CREATION_LOCK,
- ACE_TOKEN_INVARIANTS_CREATION_LOCK,
-#endif /* ! ACE_LACKS_ACE_TOKEN */
- ACE_PROACTOR_EVENT_LOOP_LOCK,
-#endif /* ACE_MT_SAFE */
-
- // Hook for preallocated objects provided by application.
- ACE_APPLICATION_PREALLOCATED_OBJECT_DECLARATIONS
-
- ACE_PREALLOCATED_OBJECTS // This enum value must be last!
- };
-
- /// Unique identifiers for preallocated arrays. Please see
- /// ace/Managed_Object.h for information on accessing preallocated
- /// arrays.
- enum Preallocated_Array
- {
- /// There currently are no preallocated arrays in the ACE
- /// library. If the application doesn't have any, make sure
- /// the the preallocated_array size is at least one by declaring
- /// this dummy . . .
- ACE_EMPTY_PREALLOCATED_ARRAY,
-
- /// Hook for preallocated arrays provided by application.
- ACE_APPLICATION_PREALLOCATED_ARRAY_DECLARATIONS
-
- ACE_PREALLOCATED_ARRAYS // This enum value must be last!
- };
-
- /**
- * @deprecated Accesses a default signal set used, for example,
- * in ACE_Sig_Guard methods.
- * Deprecated: use ACE_Object_Manager::default_mask () instead.
- */
- static ACE_Sig_Set &default_mask (void);
-
-private:
- /// For at_exit support.
- ACE_OS_Exit_Info exit_info_;
-
-#if !defined (ACE_LACKS_ACE_SVCCONF)
- /// Preallocated objects collection.
- ACE_Object_Manager_Preallocations *preallocations_;
-
- /// ACE_Service_Config signal handler.
- ACE_Sig_Adapter *ace_service_config_sig_handler_;
-#endif /* ! ACE_LACKS_ACE_SVCCONF */
-
- /// Register an object or array for deletion at program termination.
- /// See description of static version above for return values.
- int at_exit_i (void *object, ACE_CLEANUP_FUNC cleanup_hook, void *param);
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
-public:
- // = The <get_singleton_lock> accessors are for internal
- // use by ACE_Singleton _only_.
-
- /**
- * Accesses an ACE_Null_Mutex to be used for construction of
- * ACE_Singletons. Returns 0, and the lock in the argument, on
- * success; returns -1 on failure.
- */
- static int get_singleton_lock (ACE_Null_Mutex *&);
-
- /**
- * Accesses a non-recursive ACE_Thread_Mutex to be used for
- * construction of ACE_Singletons. Returns 0, and the lock in the
- * argument, on success; returns -1 on failure.
- */
- static int get_singleton_lock (ACE_Thread_Mutex *&);
-
- /**
- * Accesses a non-recursive ACE_Mutex to be used for construction
- * of ACE_Singletons. Returns 0, and the lock in the argument, on
- * success; returns -1 on failure.
- */
- static int get_singleton_lock (ACE_Mutex *&);
-
- /**
- * Accesses a recursive ACE_Recursive_Thread_Mutex to be used for
- * construction of ACE_Singletons. Returns 0, and the lock in the
- * argument, on success; returns -1 on failure.
- */
- static int get_singleton_lock (ACE_Recursive_Thread_Mutex *&);
-
- /**
- * Accesses a readers/writer ACE_RW_Thread_Mutex to be used for
- * construction of ACE_Singletons. Returns 0, and the lock in the
- * argument, on success; returns -1 on failure.
- */
- static int get_singleton_lock (ACE_RW_Thread_Mutex *&);
-#endif /* ACE_MT_SAFE */
-
-public:
- // For internal use only by ACE_Managed_Objects.
-
- /**
- * Accessor to singleton instance. Because static member functions
- * are provided in the interface, this should not be public. However,
- * it is public so that ACE_Managed_Object<TYPE> can access it.
- */
- static ACE_Object_Manager *instance (void);
-
- /// Table of preallocated objects.
- static void *preallocated_object[ACE_PREALLOCATED_OBJECTS];
-
- /// Table of preallocated arrays.
- static void *preallocated_array[ACE_PREALLOCATED_ARRAYS];
-
-public:
- // Application code should not use these explicitly, so they're
- // hidden here. They're public so that the ACE_Object_Manager can
- // be constructed/destructed in <main> with
- // ACE_HAS_NONSTATIC_OBJECT_MANAGER.
- ACE_Object_Manager (void);
- ~ACE_Object_Manager (void);
-
-private:
- /// Singleton pointer.
- static ACE_Object_Manager *instance_;
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
- /// Lock that is used to guard internal structures.
- ACE_Recursive_Thread_Mutex *internal_lock_;
-
- /// Null lock for guarding singleton creation.
- ACE_Cleanup_Adapter<ACE_Null_Mutex> *singleton_null_lock_;
-
- /// Lock for guarding singleton creation, when Object_Manager
- /// hasn't been started up, or has already been shut down.
- ACE_Cleanup_Adapter<ACE_Recursive_Thread_Mutex> *singleton_recursive_lock_;
-#endif /* ACE_MT_SAFE */
-
-#if defined (ACE_HAS_TSS_EMULATION)
- // Main thread's thread-specific storage array.
- void *ts_storage_[ACE_TSS_Emulation::ACE_TSS_THREAD_KEYS_MAX];
- bool ts_storage_initialized_;
-#endif /* ACE_HAS_TSS_EMULATION */
-
-#if !defined (ACE_HAS_NONSTATIC_OBJECT_MANAGER)
- friend class ACE_Object_Manager_Manager;
-#endif /* ACE_HAS_NONSTATIC_OBJECT_MANAGER */
-
- // Disallow copying by not implementing the following . . .
- ACE_Object_Manager (const ACE_Object_Manager &);
- ACE_Object_Manager &operator= (const ACE_Object_Manager &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include "ace/Static_Object_Lock.h"
-
-#if defined (__ACE_INLINE__)
-#include "ace/Object_Manager.inl"
-#endif /* __ACE_INLINE__ */
-
-#include "ace/Managed_Object.h"
-
-#if !defined (ACE_LACKS_ACE_SVCCONF)
-// We can't use the ACE_SVC_FACTORY_DECLARE macro here because this
-// needs to be in the ACE_Export context rather than the
-// ACE_Svc_Export context.
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-class ACE_Service_Object;
-ACE_END_VERSIONED_NAMESPACE_DECL
-ACE_FACTORY_DECLARE (ACE, ACE_Service_Manager)
-#endif /* ! ACE_LACKS_ACE_SVCCONF */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OBJECT_MANAGER_H */
-
diff --git a/dep/include/ace/Object_Manager.inl b/dep/include/ace/Object_Manager.inl
deleted file mode 100644
index bcc27af91bf..00000000000
--- a/dep/include/ace/Object_Manager.inl
+++ /dev/null
@@ -1,40 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Object_Manager.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-int
-ACE_Object_Manager::at_exit (ACE_Cleanup *object,
- void *param)
-{
- return ACE_Object_Manager::instance ()->at_exit_i (
- object,
- (ACE_CLEANUP_FUNC) ACE_CLEANUP_DESTROYER_NAME,
- param);
-}
-
-ACE_INLINE
-int
-ACE_Object_Manager::at_exit (void *object,
- ACE_CLEANUP_FUNC cleanup_hook,
- void *param)
-{
- return ACE_Object_Manager::instance ()->at_exit_i (
- object,
- cleanup_hook,
- param);
-}
-
-ACE_INLINE
-ACE_Sig_Set &
-ACE_Object_Manager::default_mask (void)
-{
- // A safe cast, but this static method shouldn't be used anyways.
- // Use ACE_Object_Manager::default_mask () instead.
- return
- *reinterpret_cast<ACE_Sig_Set *> (ACE_OS_Object_Manager::default_mask ());
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Object_Manager_Base.h b/dep/include/ace/Object_Manager_Base.h
deleted file mode 100644
index 60ca037f885..00000000000
--- a/dep/include/ace/Object_Manager_Base.h
+++ /dev/null
@@ -1,248 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Object_Manager_Base.h
- *
- * $Id: Object_Manager_Base.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * Originally in OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OBJECT_MANAGER_BASE_H
-#define ACE_OBJECT_MANAGER_BASE_H
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include /**/ "ace/ACE_export.h"
-#include "ace/Cleanup.h"
-#include "ace/os_include/sys/os_types.h"
-#include "ace/os_include/os_signal.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Object_Manager;
-class ACE_OS_Object_Manager_Manager;
-class ACE_TSS_Cleanup;
-class ACE_TSS_Emulation;
-class ACE_Log_Msg;
-class ACE_Thread_Hook;
-
-/**
- * @class ACE_Object_Manager_Base
- *
- * @brief Base class for ACE_Object_Manager(s).
- *
- * Encapsulates the most useful ACE_Object_Manager data structures.
- */
-class ACE_Export ACE_Object_Manager_Base
-{
-protected:
- /// Default constructor.
- ACE_Object_Manager_Base (void);
-
- /// Destructor.
- virtual ~ACE_Object_Manager_Base (void);
-
-public:
- /**
- * Explicitly initialize. Returns 0 on success, -1 on failure due
- * to dynamic allocation failure (in which case errno is set to
- * ENOMEM), or 1 if it had already been called.
- */
- virtual int init (void) = 0;
-
- /**
- * Explicitly destroy. Returns 0 on success, -1 on failure because
- * the number of fini () calls hasn't reached the number of init ()
- * calls, or 1 if it had already been called.
- */
- virtual int fini (void) = 0;
-
- enum Object_Manager_State
- {
- OBJ_MAN_UNINITIALIZED = 0,
- OBJ_MAN_INITIALIZING,
- OBJ_MAN_INITIALIZED,
- OBJ_MAN_SHUTTING_DOWN,
- OBJ_MAN_SHUT_DOWN
- };
-
-protected:
- /**
- * Returns 1 before ACE_Object_Manager_Base has been constructed.
- * This flag can be used to determine if the program is constructing
- * static objects. If no static object spawns any threads, the
- * program will be single-threaded when this flag returns 1. (Note
- * that the program still might construct some static objects when
- * this flag returns 0, if ACE_HAS_NONSTATIC_OBJECT_MANAGER is not
- * defined.)
- */
- int starting_up_i (void);
-
- /**
- * Returns 1 after ACE_Object_Manager_Base has been destroyed. This
- * flag can be used to determine if the program is in the midst of
- * destroying static objects. (Note that the program might destroy
- * some static objects before this flag can return 1, if
- * ACE_HAS_NONSTATIC_OBJECT_MANAGER is not defined.)
- */
- int shutting_down_i (void);
-
- /// State of the Object_Manager;
- Object_Manager_State object_manager_state_;
-
- /**
- * Flag indicating whether the ACE_Object_Manager was dynamically
- * allocated by ACE. (If is was dynamically allocated by the
- * application, then the application is responsible for destroying
- * it.)
- */
- bool dynamically_allocated_;
-
- /// Link to next Object_Manager, for chaining.
- ACE_Object_Manager_Base *next_;
-private:
- // Disallow copying by not implementing the following . . .
- ACE_Object_Manager_Base (const ACE_Object_Manager_Base &);
- ACE_Object_Manager_Base &operator= (const ACE_Object_Manager_Base &);
-};
-
-extern "C"
-void
-ACE_OS_Object_Manager_Internal_Exit_Hook (void);
-
-// @@ This forward declaration should go away.
-class ACE_Log_Msg;
-
-class ACE_Export ACE_OS_Object_Manager : public ACE_Object_Manager_Base
-{
-public:
- /// Explicitly initialize.
- virtual int init (void);
-
- /// Explicitly destroy.
- virtual int fini (void);
-
- /**
- * Returns 1 before the ACE_OS_Object_Manager has been
- * constructed. See <ACE_Object_Manager::starting_up> for more
- * information.
- */
- static int starting_up (void);
-
- /// Returns 1 after the ACE_OS_Object_Manager has been destroyed.
- /// See <ACE_Object_Manager::shutting_down> for more information.
- static int shutting_down (void);
-
- /// Unique identifiers for preallocated objects.
- enum Preallocated_Object
- {
-# if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
- ACE_OS_MONITOR_LOCK,
- ACE_TSS_CLEANUP_LOCK,
- ACE_LOG_MSG_INSTANCE_LOCK,
-# if defined (ACE_HAS_TSS_EMULATION)
- ACE_TSS_KEY_LOCK,
-# if defined (ACE_HAS_THREAD_SPECIFIC_STORAGE)
- ACE_TSS_BASE_LOCK,
-# endif /* ACE_HAS_THREAD_SPECIFIC_STORAGE */
-# endif /* ACE_HAS_TSS_EMULATION */
-# else
- // Without ACE_MT_SAFE, There are no preallocated objects. Make
- // sure that the preallocated_array size is at least one by
- // declaring this dummy . . .
- ACE_OS_EMPTY_PREALLOCATED_OBJECT,
-# endif /* ACE_MT_SAFE */
-
- /// This enum value must be last!
- ACE_OS_PREALLOCATED_OBJECTS
- };
-
- /// Accesses a default signal set used, for example, in
- /// ACE_Sig_Guard methods.
- static sigset_t *default_mask (void);
-
- /// Returns the current thread hook for the process.
- static ACE_Thread_Hook *thread_hook (void);
-
- /// Returns the existing thread hook and assign a <new_thread_hook>.
- static ACE_Thread_Hook *thread_hook (ACE_Thread_Hook *new_thread_hook);
-
-#if defined (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS)
- /// Get/Set TSS exception action.
- static ACE_SEH_EXCEPT_HANDLER seh_except_selector (void);
- static ACE_SEH_EXCEPT_HANDLER seh_except_selector (ACE_SEH_EXCEPT_HANDLER);
-
- static ACE_SEH_EXCEPT_HANDLER seh_except_handler (void);
- static ACE_SEH_EXCEPT_HANDLER seh_except_handler (ACE_SEH_EXCEPT_HANDLER);
-#endif /* ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS */
-
-public:
- // = Applications shouldn't use these so they're hidden here.
-
- // They're public so that the ACE_Object_Manager can be
- // constructed/destructed in <main> with
- // <ACE_HAS_NONSTATIC_OBJECT_MANAGER>.
- /// Constructor.
- ACE_OS_Object_Manager (void);
-
- /// Destructor.
- ~ACE_OS_Object_Manager (void);
-
- /// Accessor to singleton instance.
- static ACE_OS_Object_Manager *instance (void);
-
- /// For <ACE_OS::atexit> support.
- int at_exit (ACE_EXIT_HOOK func);
-
-//private:
- /// Singleton instance pointer.
- static ACE_OS_Object_Manager *instance_;
-
- /// Table of preallocated objects.
- static void *preallocated_object[ACE_OS_PREALLOCATED_OBJECTS];
-
- /// Default signal set used, for example, in ACE_Sig_Guard.
- sigset_t *default_mask_;
-
- /// Thread hook that's used by this process.
- ACE_Thread_Hook *thread_hook_;
-
- /// For at_exit support.
- ACE_OS_Exit_Info exit_info_;
-
-#if defined (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS)
- /// These handlers determine how a thread handles win32 structured
- /// exception.
- ACE_SEH_EXCEPT_HANDLER seh_except_selector_;
- ACE_SEH_EXCEPT_HANDLER seh_except_handler_;
-#endif /* ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS */
-
- /// For use by init () and fini (), to consolidate error reporting.
- static void print_error_message (unsigned int line_number, const ACE_TCHAR *message);
-
- /// This class is for internal use by ACE_OS, etc., only.
- friend class ACE_Object_Manager;
- friend class ACE_OS_Object_Manager_Manager;
- friend class ACE_TSS_Cleanup;
- friend class ACE_TSS_Emulation;
- friend class ACE_Log_Msg;
- friend void ACE_OS_Object_Manager_Internal_Exit_Hook ();
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OBJECT_MANAGER_BASE_H */
-
diff --git a/dep/include/ace/Obstack.h b/dep/include/ace/Obstack.h
deleted file mode 100644
index 24ccd6bdfbf..00000000000
--- a/dep/include/ace/Obstack.h
+++ /dev/null
@@ -1,32 +0,0 @@
-// -*- C++ -*-
-//=============================================================================
-/**
- * @file Obstack.h
- *
- * $Id: Obstack.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_OBSTACK_H
-#define ACE_OBSTACK_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Obstack_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_SINGLETON_DECLARATION (ACE_Obstack_T <char>;)
-
-typedef ACE_Obstack_T<char> ACE_Obstack;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OBSTACK_H */
-
diff --git a/dep/include/ace/Obstack_T.h b/dep/include/ace/Obstack_T.h
deleted file mode 100644
index 130d818199b..00000000000
--- a/dep/include/ace/Obstack_T.h
+++ /dev/null
@@ -1,135 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Obstack_T.h
- *
- * $Id: Obstack_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt <schmidt@cs.wustl.edu>
- * @author Nanbor Wang <nanbor@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_OBSTACK_T_H
-#define ACE_OBSTACK_T_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Obchunk.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Allocator;
-
-/**
- * @class ACE_Obstack_T
- *
- * @brief Define a simple "mark and release" memory allocation utility.
- *
- * The implementation is similar to the GNU obstack utility,
- * which is used extensively in the GCC compiler.
- */
-template <class CHAR>
-class ACE_Obstack_T
-{
-public:
- // = Initialization and termination methods.
- ACE_Obstack_T (size_t size = (4096 * sizeof (CHAR)) - sizeof (ACE_Obchunk),
- ACE_Allocator *allocator_strategy = 0);
- ~ACE_Obstack_T (void);
-
- /// Request Obstack to prepare a block at least @a len long for building
- /// a new string. Return -1 if fail, 0 if success.
- int request (size_t len);
-
- /// Inserting a new CHAR \a c into the current building
- /// block without freezing (null terminating) the block.
- /// This function will create new chunk by checking the
- /// boundary of current Obchunk. Return
- /// the location \a c gets inserted to, or 0 if error.
- CHAR *grow (CHAR c);
-
- /// Inserting a new CHAR \a c into the current building
- /// block without freezing (null terminating) the block and without
- /// checking for out-of-bound error.
- void grow_fast (CHAR c);
-
- /// Freeze the current building block by null terminating it.
- /// Return the starting address of the current building block, 0
- /// if error occurs.
- CHAR *freeze (void);
-
- /// Copy the data into the current Obchunk and freeze the current
- /// block. Return the starting address of the current building
- /// block, 0 if error occurs. @a len specify the string length,
- /// not the actually data size.
- CHAR *copy (const CHAR *data,
- size_t len);
-
- /// Return the maximum @a length or @a size of a string that can be put
- /// into this Obstack. @a size = @a length * sizeof (CHAR).
- ///
- /// @deprecated No need to use this function as you can put objects of
- /// arbitrary lengths into the obstack now.
- size_t length (void) const;
- size_t size (void) const;
-
- /// "Unwind" the stack. If @a obj is a null pointer, everything allocated
- /// in the stack is released. Otherwise, @a obj must be an address of an
- /// object allocated in the stack. In this case, @a obj is released along
- /// with everthing allocated in the Obstack since @a obj.
- void unwind (void* obj);
-
- /// "Release" the entire stack of Obchunks, putting it back on the free
- /// list.
- void release (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- class ACE_Obchunk *new_chunk (void);
-
- /// Search through the list of Obchunks and release them. Helper funtion
- /// used by unwind.
- void unwind_i (void* obj);
-
- /// Pointer to the allocator used by this Obstack.
- ACE_Allocator *allocator_strategy_;
-
- /// Current size of the Obstack;
- size_t size_;
-
- // Don't change the order of the following two fields.
- /// Head of the Obchunk chain.
- class ACE_Obchunk *head_;
-
- /// Pointer to the current Obchunk.
- class ACE_Obchunk *curr_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Obstack_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Obstack_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Obstack_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OBSTACK_T_H */
-
diff --git a/dep/include/ace/Obstack_T.inl b/dep/include/ace/Obstack_T.inl
deleted file mode 100644
index b3e8669a3ce..00000000000
--- a/dep/include/ace/Obstack_T.inl
+++ /dev/null
@@ -1,19 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Obstack_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class CHAR> ACE_INLINE size_t
-ACE_Obstack_T<CHAR>::length () const
-{
- return this->size_ / sizeof (CHAR);
-}
-
-template <class CHAR> ACE_INLINE size_t
-ACE_Obstack_T<CHAR>::size () const
-{
- return this->size_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/PI_Malloc.h b/dep/include/ace/PI_Malloc.h
deleted file mode 100644
index a1167fb6fad..00000000000
--- a/dep/include/ace/PI_Malloc.h
+++ /dev/null
@@ -1,214 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file PI_Malloc.h
- *
- * $Id: PI_Malloc.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Priyanka Gontla <pgontla@ece.uci.edu>
- * @author Based on code that existed in other ACE files.
- */
-//==========================================================================
-
-#ifndef ACE_PI_MALLOC_H
-#define ACE_PI_MALLOC_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if (ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1)
-
-#include "ace/Malloc.h"
-#include "ace/Based_Pointer_T.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// prepare for position independent malloc
-/**
- * @class ACE_PI_Control_Block
- *
- * @brief This information is stored in memory allocated by the Memory_Pool.
- *
- * This class implements the control block structure that can be
- * used in a "position indepent" fashion, i.e., you don't need to
- * "map" the underlying memory pool to the same address in
- * processes sharing the memory. The tradoff of this flexibility
- * is more expensive malloc/free operations.
- */
-class ACE_Export ACE_PI_Control_Block
-{
-public:
- class ACE_Malloc_Header;
- class ACE_Name_Node;
-
- typedef ACE_Based_Pointer<ACE_Malloc_Header> MALLOC_HEADER_PTR;
- typedef ACE_Based_Pointer<ACE_Name_Node> NAME_NODE_PTR;
- typedef ACE_Based_Pointer_Basic<char> CHAR_PTR;
-
- /**
- * @class ACE_Malloc_Header
- *
- * @brief This is the control block header. It's used by ACE_Malloc
- * to keep track of each chunk of data when it's in the free
- * list or in use.
- */
- class ACE_Export ACE_Malloc_Header
- {
- public:
- ACE_Malloc_Header (void);
-
- /// Points to next block if on free list.
- MALLOC_HEADER_PTR next_block_;
-
- /// Initialize a malloc header pointer.
- static void init_ptr (MALLOC_HEADER_PTR *ptr,
- ACE_Malloc_Header *init,
- void *base_addr);
-
- /// Size of this header control block.
- size_t size_;
-
-# if !defined (ACE_PI_MALLOC_PADDING_SIZE)
-# define ACE_PI_MALLOC_PADDING_SIZE ACE_MALLOC_ROUNDUP (ACE_MALLOC_HEADER_SIZE + sizeof (MALLOC_HEADER_PTR) + sizeof (size_t), ACE_MALLOC_ALIGN) - (sizeof (MALLOC_HEADER_PTR) + sizeof (size_t))
-# endif /* !ACE_PI_MALLOC_PADDING_SIZE */
- char padding_[(ACE_PI_MALLOC_PADDING_SIZE) ? ACE_PI_MALLOC_PADDING_SIZE : ACE_MALLOC_ALIGN];
-
- /// Dump the state of the object.
- void dump (void) const;
-
- private:
-
- // Disallow copy construction and assignment.
- ACE_Malloc_Header (ACE_Malloc_Header const &);
- void operator= (ACE_Malloc_Header const &);
-
- };
-
- /**
- * @class ACE_Name_Node
- *
- * @brief This class supports "named memory regions" within ACE_Malloc.
- *
- * Internally, the named memory regions are stored as a
- * doubly-linked list within the Memory_Pool. This makes
- * it easy to iterate over the items in the list in both FIFO
- * and LIFO order.
- */
- class ACE_Export ACE_Name_Node
- {
- public:
- // = Initialization methods.
- /// Constructor.
- ACE_Name_Node (const char *name,
- char *name_ptr,
- char *pointer,
- ACE_Name_Node *head);
-
- /// Copy constructor.
- ACE_Name_Node (const ACE_Name_Node &);
-
- /// Constructor.
- ACE_Name_Node (void);
-
- /// Constructor.
- ~ACE_Name_Node (void);
-
- /// Initialize a name node pointer.
- static void init_ptr (NAME_NODE_PTR *ptr,
- ACE_Name_Node *init,
- void *base_addr);
-
- /// Return a pointer to the name of this node.
- const char *name (void) const;
-
- /// Assign a name;
- void name (const char *);
-
- /// Name of the Node.
- CHAR_PTR name_;
-
- /// Pointer to the contents.
- CHAR_PTR pointer_;
-
- /// Pointer to the next node in the doubly-linked list.
- NAME_NODE_PTR next_;
-
- /// Pointer to the previous node in the doubly-linked list.
- NAME_NODE_PTR prev_;
-
- /// Dump the state of the object.
- void dump (void) const;
-
- private:
-
- // Disallow assignment.
- void operator= (const ACE_Name_Node &);
- };
-
- /// Print out a bunch of size info for debugging.
- static void print_alignment_info (void);
-
- /// Reference counter.
- int ref_counter_;
-
- /// Head of the linked list of Name Nodes.
- NAME_NODE_PTR name_head_;
-
- /// Current head of the freelist.
- MALLOC_HEADER_PTR freep_;
-
- /// Name of lock thats ensures mutual exclusion.
- char lock_name_[MAXNAMELEN];
-
-#if defined (ACE_HAS_MALLOC_STATS)
- /// Keep statistics about ACE_Malloc state and performance.
- ACE_Malloc_Stats malloc_stats_;
-#define ACE_PI_CONTROL_BLOCK_SIZE ((int)(sizeof (NAME_NODE_PTR) \
- + sizeof (MALLOC_HEADER_PTR) \
- + sizeof (int) \
- + MAXNAMELEN \
- + sizeof (ACE_Malloc_Stats)))
-#else
-#define ACE_PI_CONTROL_BLOCK_SIZE ((int)(sizeof (NAME_NODE_PTR) \
- + sizeof (MALLOC_HEADER_PTR) \
- + sizeof (int) \
- + MAXNAMELEN))
-#endif /* ACE_HAS_MALLOC_STATS */
-
-# if !defined (ACE_PI_CONTROL_BLOCK_ALIGN_BYTES)
-# define ACE_PI_CONTROL_BLOCK_ALIGN_BYTES \
- ACE_MALLOC_ROUNDUP (ACE_PI_CONTROL_BLOCK_SIZE, ACE_MALLOC_ALIGN) - ACE_PI_CONTROL_BLOCK_SIZE
-# endif /* !ACE_PI_CONTROL_BLOCK_ALIGN_LONGS */
- /// Force alignment.
- char align_[(ACE_PI_CONTROL_BLOCK_ALIGN_BYTES) ? ACE_PI_CONTROL_BLOCK_ALIGN_BYTES : ACE_MALLOC_ALIGN];
-
- /// Dummy node used to anchor the freelist. This needs to come last...
- ACE_Malloc_Header base_;
-
- /// Dump the state of the object.
- void dump (void) const;
-
-private:
-
- // Disallow assignment.
- void operator= (const ACE_Control_Block &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/PI_Malloc.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1 */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_PI_MALLOC_H */
-
diff --git a/dep/include/ace/PI_Malloc.inl b/dep/include/ace/PI_Malloc.inl
deleted file mode 100644
index 0828ebb8358..00000000000
--- a/dep/include/ace/PI_Malloc.inl
+++ /dev/null
@@ -1,33 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: PI_Malloc.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#if (ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_PI_Control_Block::ACE_Name_Node::~ACE_Name_Node (void)
-{
-}
-
-ACE_INLINE void
-ACE_PI_Control_Block::ACE_Malloc_Header::init_ptr
- (MALLOC_HEADER_PTR *ptr, ACE_Malloc_Header *init, void *base_addr)
-{
- new ((void *) ptr) MALLOC_HEADER_PTR (base_addr, 0);
- *ptr = init;
-}
-
-ACE_INLINE void
-ACE_PI_Control_Block::ACE_Name_Node::init_ptr
- (NAME_NODE_PTR *ptr, ACE_Name_Node *init, void *base_addr)
-{
- new ((void *) ptr) NAME_NODE_PTR (base_addr, 0);
- *ptr = init;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_POSITION_INDEPENDENT_POINTERS == 1 */
-
diff --git a/dep/include/ace/POSIX_Asynch_IO.h b/dep/include/ace/POSIX_Asynch_IO.h
deleted file mode 100644
index 713d08f0e95..00000000000
--- a/dep/include/ace/POSIX_Asynch_IO.h
+++ /dev/null
@@ -1,1296 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file POSIX_Asynch_IO.h
- *
- * $Id: POSIX_Asynch_IO.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * The implementation classes for POSIX implementation of Asynch
- * Operations are defined here in this file.
- *
- * @author Irfan Pyarali <irfan@cs.wustl.edu>
- * @author Tim Harrison <harrison@cs.wustl.edu>
- * @author Alexander Babu Arulanthu <alex@cs.wustl.edu>
- * @author Roger Tragin <r.tragin@computer.org>
- * @author Alexander Libman <alibman@baltimore.com>
- */
-//=============================================================================
-
-#ifndef ACE_POSIX_ASYNCH_IO_H
-#define ACE_POSIX_ASYNCH_IO_H
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_AIO_CALLS)
-
-#include "ace/os_include/os_aio.h"
-
-#include "ace/Asynch_IO_Impl.h"
-#include "ace/Unbounded_Queue.h"
-#include "ace/Map_Manager.h"
-#include "ace/Event_Handler.h"
-#if defined(INTEGRITY)
-#include "ace/ACE.h"
-#endif
-
-#include "ace/Null_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declarations
-class ACE_POSIX_Proactor;
-class ACE_Proactor_Impl;
-class ACE_Handle_Set;
-
-/**
- * @class ACE_POSIX_Asynch_Result
- *
- * This class provides concrete implementation for ACE_Asynch_Result
- * for POSIX4 platforms. This class extends @c aiocb and makes it more
- * useful.
- */
-class ACE_Export ACE_POSIX_Asynch_Result : public virtual ACE_Asynch_Result_Impl,
- public aiocb
-{
-public:
- /// Number of bytes transferred by the operation.
- size_t bytes_transferred (void) const;
-
- /// ACT associated with the operation.
- const void *act (void) const;
-
- /// Did the operation succeed?
- int success (void) const;
-
- /**
- * This is the ACT associated with the handle on which the
- * Asynch_Operation takes place.
- *
- * @note This is not implemented for POSIX4 platforms.
- */
- const void *completion_key (void) const;
-
- /// Error value if the operation fails.
- u_long error (void) const;
-
- /// This returns ACE_INVALID_HANDLE on POSIX4 platforms.
- ACE_HANDLE event (void) const;
-
- /**
- * This really make sense only when doing file I/O.
- *
- * @@ On POSIX4-Unix, offset_high should be supported using
- * aiocb64.
- *
- */
- u_long offset (void) const;
- u_long offset_high (void) const;
-
- /// Priority of the operation.
- int priority (void) const;
-
- /**
- * POSIX4 realtime signal number to be used for the
- * operation. <signal_number> ranges from SIGRTMIN to SIGRTMAX. By
- * default, SIGRTMIN is used to issue <aio_> calls.
- */
- int signal_number (void) const;
-
- /// Post @c this to the Proactor.
- int post_completion (ACE_Proactor_Impl *proactor);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Result (void);
-
- /// Simulate error value to use in the post_completion ()
- void set_error (u_long errcode);
-
- /// Simulate value to use in the post_completion ()
- void set_bytes_transferred (size_t nbytes);
-
-protected:
- /// Constructor. <Event> is not used on POSIX.
- ACE_POSIX_Asynch_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- const void* act,
- ACE_HANDLE event,
- u_long offset,
- u_long offset_high,
- int priority,
- int signal_number);
-
- /// Handler that will be called back.
- ACE_Handler::Proxy_Ptr handler_proxy_;
-
- /**
- * ACT for this operation.
- * We could use <aiocb::aio_sigevent.sigev_value.sival_ptr> for
- * this. But it doesnot provide the constness, so this may be
- * better.
- */
- const void *act_;
-
- /// Bytes transferred by this operation.
- size_t bytes_transferred_;
-
- /// Success indicator.
- int success_;
-
- /// ACT associated with handle.
- const void *completion_key_;
-
- /// Error if operation failed.
- u_long error_;
-};
-
-/**
- * @class ACE_POSIX_Asynch_Operation
- *
- * @brief This class implements ACE_Asynch_Operation for all
- * implementations of Proactor (AIOCB, SIG, SUN)
- * Specific future implementations can derive from this class.
- */
-class ACE_Export ACE_POSIX_Asynch_Operation : public virtual ACE_Asynch_Operation_Impl
-{
-public:
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call. If (@a handle == ACE_INVALID_HANDLE),
- * @c ACE_Handler::handle will be called on the handler to get the
- * correct handle. No need for the Proactor since the sub classes
- * will know the correct implementation Proactor class, since this
- * Operation class itself was created by the correct implementation
- * Proactor class.
- */
- int open (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- const void *completion_key,
- ACE_Proactor *proactor = 0);
-
- /// Check the documentation for ACE_Asynch_Operation::cancel.
- int cancel (void);
-
- // = Access methods.
-
- /// Return the underlying proactor.
- ACE_Proactor* proactor (void) const;
-
- /// Return the underlying Proactor implementation.
- ACE_POSIX_Proactor * posix_proactor (void) const;
-
-protected:
- /// Contructor.
- ACE_POSIX_Asynch_Operation (ACE_POSIX_Proactor *posix_proactor);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Operation (void);
-
- // This call is for the POSIX implementation. This method is used by
- // ACE_Asynch_Operation to store some information with the
- // Proactor after an <aio_> call is issued, so that the Proactor can
- // retreve this information to do <aio_return> and <aio_error>.
- // Passing a '0' ptr returns the status, indicating whether there
- // are slots available or no. Passing a valid ptr stores the ptr
- // with the Proactor.
-
- /**
- * It is easy to get this specific implementation proactor here,
- * since it is the one that creates the correct POSIX_Asynch_*
- * objects. We can use this to get to the implementation proactor
- * directly.
- */
- ACE_POSIX_Proactor *posix_proactor_;
-
- /// Proactor that this Asynch IO will be registered with.
- ACE_Proactor *proactor_;
-
- /// Handler that will receive the callback.
- ACE_Handler::Proxy_Ptr handler_proxy_;
-
- /// I/O handle used for reading.
- ACE_HANDLE handle_;
-};
-
-/**
- * @class ACE_POSIX_Asynch_Read_Stream_Result
- *
- * @brief This class provides concrete implementation for
- * <ACE_Asynch_Read_Stream::Result> class for POSIX platforms.
- */
-class ACE_Export ACE_POSIX_Asynch_Read_Stream_Result : public virtual ACE_Asynch_Read_Stream_Result_Impl,
- public ACE_POSIX_Asynch_Result
-{
-
- /// Factory classes will have special permissions.
- friend class ACE_POSIX_Asynch_Read_Stream;
-
- /// The Proactor constructs the Result class for faking results.
- friend class ACE_POSIX_Proactor;
-
-public:
- /// The number of bytes which were requested at the start of the
- /// asynchronous read.
- size_t bytes_to_read (void) const;
-
- /// Message block which contains the read data.
- ACE_Message_Block &message_block (void) const;
-
- /// I/O handle used for reading.
- ACE_HANDLE handle (void) const;
-
-protected:
- ACE_POSIX_Asynch_Read_Stream_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number);
- // Constructor is protected since creation is limited to
- // ACE_Asynch_Read_Stream factory.
-
- /// Get the data copied to this class, before calling application
- /// handler.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Read_Stream_Result (void);
-
- // aiocb::aio_nbytes
- // Bytes requested when the asynchronous read was initiated.
-
- /// Message block for reading the data into.
- ACE_Message_Block &message_block_;
-
- // aiocb::aio_filedes
- // I/O handle used for reading.
-};
-
-/**
- * @class ACE_POSIX_Asynch_Read_Stream
- *
- * This class implements <ACE_Asynch_Read_Stream> for all POSIX
- * based implementation of Proactor.
- *
- */
-class ACE_Export ACE_POSIX_Asynch_Read_Stream : public virtual ACE_Asynch_Read_Stream_Impl,
- public ACE_POSIX_Asynch_Operation
-{
-public:
- /// Constructor.
- ACE_POSIX_Asynch_Read_Stream (ACE_POSIX_Proactor *posix_proactor);
-
- /// This starts off an asynchronous read. Upto @a bytes_to_read will
- /// be read and stored in the @a message_block.
- int read (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void *act,
- int priority,
- int signal_number = 0);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Read_Stream (void);
-};
-
-/**
- * @class ACE_POSIX_Asynch_Write_Stream_Result
- *
- * @brief This class provides concrete implementation for
- * <ACE_Asynch_Write_Stream::Result> on POSIX platforms.
- *
- *
- * This class has all the information necessary for the
- * @c handler to uniquiely identify the completion of the
- * asynchronous write.
- */
-class ACE_Export ACE_POSIX_Asynch_Write_Stream_Result : public virtual ACE_Asynch_Write_Stream_Result_Impl,
- public ACE_POSIX_Asynch_Result
-{
- /// Factory classes will have special privilages.
- friend class ACE_POSIX_Asynch_Write_Stream;
-
- /// The Proactor constructs the Result class for faking results.
- friend class ACE_POSIX_Proactor;
-
-public:
- /// The number of bytes which were requested at the start of the
- /// asynchronous write.
- size_t bytes_to_write (void) const;
-
- /// Message block that contains the data to be written.
- ACE_Message_Block &message_block (void) const;
-
- /// I/O handle used for writing.
- ACE_HANDLE handle (void) const;
-
-protected:
- /// Constructor is protected since creation is limited to
- /// ACE_Asynch_Write_Stream factory.
- ACE_POSIX_Asynch_Write_Stream_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number);
-
- /// ACE_Proactor will call this method when the write completes.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Write_Stream_Result (void);
-
-protected:
- // aiocb::aio_nbytes
- // The number of bytes which were requested at the start of the
- // asynchronous write.
-
- /// Message block that contains the data to be written.
- ACE_Message_Block &message_block_;
-
- // aiocb::aio_filedes
- // I/O handle used for writing.
-};
-
-/**
- * @class ACE_POSIX_Asynch_Write_Stream
- *
- * @brief This class implements <ACE_Asynch_Write_Stream> for
- * all POSIX implementations of ACE_Proactor.
- */
-class ACE_Export ACE_POSIX_Asynch_Write_Stream : public virtual ACE_Asynch_Write_Stream_Impl,
- public ACE_POSIX_Asynch_Operation
-{
-public:
- /// Constructor.
- ACE_POSIX_Asynch_Write_Stream (ACE_POSIX_Proactor *posix_proactor);
-
- /// This starts off an asynchronous write. Upto @a bytes_to_write
- /// will be written from the @a message_block.
- int write (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void *act,
- int priority,
- int signal_number = 0);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Write_Stream (void);
-};
-
-/**
- * @class ACE_POSIX_Asynch_Read_File_Result
- *
- * @brief This class provides concrete implementation for
- * <ACE_Asynch_Read_File::Result> class for POSIX platforms.
- */
-class ACE_Export ACE_POSIX_Asynch_Read_File_Result : public virtual ACE_Asynch_Read_File_Result_Impl,
- public ACE_POSIX_Asynch_Read_Stream_Result
-{
- /// Factory classes will have special permissions.
- friend class ACE_POSIX_Asynch_Read_File;
-
- /// The Proactor constructs the Result class for faking results.
- friend class ACE_POSIX_Proactor;
-
-public:
-
-protected:
- /// Constructor is protected since creation is limited to
- /// ACE_Asynch_Read_File factory.
- ACE_POSIX_Asynch_Read_File_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void* act,
- u_long offset,
- u_long offset_high,
- ACE_HANDLE event,
- int priority,
- int signal_number);
-
- /// ACE_Proactor will call this method when the read completes.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Read_File_Result (void);
-};
-
-/**
- * @class ACE_POSIX_Asynch_Read_File
- *
- * @brief This class is a factory for starting off asynchronous reads
- * on a file. This class implements <ACE_Asynch_Read_File> for
- * all POSIX implementations of Proactor.
- *
- * Once <open> is called, multiple asynchronous <read>s can
- * started using this class. A <ACE_Asynch_Read_File::Result>
- * will be passed back to the @c handler when the asynchronous
- * reads completes through the <ACE_Handler::handle_read_file>
- * callback.
- *
- * This class differs slightly from <ACE_Asynch_Read_Stream> as it
- * allows the user to specify an offset for the read.
- */
-class ACE_Export ACE_POSIX_Asynch_Read_File : public virtual ACE_Asynch_Read_File_Impl,
- public ACE_POSIX_Asynch_Read_Stream
-{
-
-public:
- /// Constructor.
- ACE_POSIX_Asynch_Read_File (ACE_POSIX_Proactor *posix_proactor);
-
- /**
- * This starts off an asynchronous read. Upto @a bytes_to_read will
- * be read and stored in the @a message_block. The read will start
- * at @a offset from the beginning of the file.
- */
- int read (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- u_long offset,
- u_long offset_high,
- const void *act,
- int priority,
- int signal_number = 0);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Read_File (void);
-
-private:
- /**
- * This belongs to ACE_POSIX_Asynch_Read_Stream. We have
- * defined this here to avoid compiler warnings and forward the
- * method to <ACE_POSIX_Asynch_Read_Stream::read>.
- */
- int read (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void *act,
- int priority,
- int signal_number = 0);
-};
-
-/**
- * @class ACE_POSIX_Asynch_Write_File_Result
- *
- * @brief This class provides implementation for
- * <ACE_Asynch_Write_File_Result> for POSIX platforms.
- *
- * This class has all the information necessary for the
- * @c handler to uniquiely identify the completion of the
- * asynchronous write.
- *
- * This class differs slightly from
- * <ACE_Asynch_Write_Stream::Result> as it calls back
- * <ACE_Handler::handle_write_file> on the @c handler instead of
- * <ACE_Handler::handle_write_stream>. No additional state is
- * required by this class as <ACE_Asynch_Result> can store the
- * @a offset.
- */
-class ACE_Export ACE_POSIX_Asynch_Write_File_Result : public virtual ACE_Asynch_Write_File_Result_Impl,
- public ACE_POSIX_Asynch_Write_Stream_Result
-{
- /// Factory classes will have special permissions.
- friend class ACE_POSIX_Asynch_Write_File;
-
- /// The Proactor constructs the Result class for faking results.
- friend class ACE_POSIX_Proactor;
-
-protected:
- /// Constructor is protected since creation is limited to
- /// ACE_Asynch_Write_File factory.
- ACE_POSIX_Asynch_Write_File_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void* act,
- u_long offset,
- u_long offset_high,
- ACE_HANDLE event,
- int priority,
- int signal_number);
-
- /// ACE_Proactor will call this method when the write completes.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Write_File_Result (void);
-};
-
-/**
- * @class ACE_POSIX_Asynch_Write_File
- *
- * This class provides concrete implementation for
- * <ACE_Asynch_Write_File> for POSIX platforms where the
- * completion strategy for Proactor is based on AIOCB (AIO
- * Control Blocks).
- *
- */
-class ACE_Export ACE_POSIX_Asynch_Write_File : public virtual ACE_Asynch_Write_File_Impl,
- public ACE_POSIX_Asynch_Write_Stream
-{
-public:
- /// Constructor.
- ACE_POSIX_Asynch_Write_File (ACE_POSIX_Proactor *posix_proactor);
-
- /**
- * This starts off an asynchronous write. Upto @a bytes_to_write
- * will be written and stored in the @a message_block. The write will
- * start at @a offset from the beginning of the file.
- */
- int write (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- u_long offset,
- u_long offset_high,
- const void *act,
- int priority,
- int signal_number = 0);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Write_File (void);
-
-private:
- /**
- * This <write> belongs to ACE_POSIX_Asynch_Write_Stream. We
- * have put this here to avoid compiler warnings. We forward this
- * method call to the <ACE_POSIX_Asynch_Write_Stream::write>
- * one.
- */
- int write (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void *act,
- int priority,
- int signal_number = 0);
-};
-
-/**
- * @class ACE_POSIX_Asynch_Accept_Result
- *
- * @brief This is that class which will be passed back to the
- * handler when the asynchronous accept completes.
- *
- *
- * This class has all the information necessary for the
- * handler to uniquiely identify the completion of the
- * asynchronous accept.
- */
-class ACE_Export ACE_POSIX_Asynch_Accept_Result : public virtual ACE_Asynch_Accept_Result_Impl,
- public ACE_POSIX_Asynch_Result
-{
- /// Factory classes will have special permissions.
- friend class ACE_POSIX_Asynch_Accept;
-
- /// The Proactor constructs the Result class for faking results.
- friend class ACE_POSIX_Proactor;
-
-public:
- /// The number of bytes which were requested at the start of the
- /// asynchronous accept.
- size_t bytes_to_read (void) const;
-
- /// Message block which contains the read data.
- ACE_Message_Block &message_block (void) const;
-
- /// I/O handle used for accepting new connections.
- ACE_HANDLE listen_handle (void) const;
-
- /// I/O handle for the new connection.
- ACE_HANDLE accept_handle (void) const;
-
-protected:
- /// Constructor is protected since creation is limited to
- /// ACE_Asynch_Accept factory.
- ACE_POSIX_Asynch_Accept_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE listen_handle,
- ACE_HANDLE accept_handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number);
-
- /// ACE_Proactor will call this method when the accept completes.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Accept_Result (void);
-
- // aiocb::aio_nbytes
- // Bytes requested when the asynchronous read was initiated.
- // Actually, on POSIX implementation, we dont read any intial data.
-
- /// Message block for reading the data into.
- ACE_Message_Block &message_block_;
-
- /// I/O handle used for accepting new connections.
- ACE_HANDLE listen_handle_;
-
- // aiocb::aio_filedes
- // I/O handle for the new connection.
-};
-
-/**
- * @class ACE_POSIX_Asynch_Accept
- *
- * @brief For the POSIX implementation this class is common for all Proactors
- * (AIOCB/SIG/SUN)
- */
-class ACE_Export ACE_POSIX_Asynch_Accept :
- public virtual ACE_Asynch_Accept_Impl,
- public ACE_POSIX_Asynch_Operation,
- public ACE_Event_Handler
-{
-public:
-
- /// Constructor.
- ACE_POSIX_Asynch_Accept (ACE_POSIX_Proactor * posix_proactor);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Accept (void);
-
- /**
- * This <open> belongs to ACE_POSIX_Asynch_Operation. We forward
- * this call to that method. We have put this here to avoid the
- * compiler warnings.
- */
- int open (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- const void *completion_key,
- ACE_Proactor *proactor = 0);
-
- /**
- * This starts off an asynchronous accept. The asynchronous accept
- * call also allows any initial data to be returned to the
- * @c handler. Upto @a bytes_to_read will be read and stored in the
- * @a message_block. The <accept_handle> will be used for the
- * <accept> call. If (<accept_handle> == INVALID_HANDLE), a new
- * handle will be created.
- *
- * @a message_block must be specified. This is because the address of
- * the new connection is placed at the end of this buffer.
- */
- int accept (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- ACE_HANDLE accept_handle,
- const void *act,
- int priority,
- int signal_number = 0,
- int addr_family = AF_INET);
-
- /**
- * Cancel all pending pseudo-asynchronus requests
- * Behavior as usual AIO request
- */
- int cancel (void);
-
- /**
- * Close performs cancellation of all pending requests
- * and closure the listen handle
- */
- int close ();
-
- /// virtual from ACE_Event_Handler
- ACE_HANDLE get_handle (void) const;
-
- /// virtual from ACE_Event_Handler
- void set_handle (ACE_HANDLE handle);
-
- /// virtual from ACE_Event_Handler
- /// Called when accept event comes up on <listen_handle>
- int handle_input (ACE_HANDLE handle);
-
- /// virtual from ACE_Event_Handler
- int handle_close (ACE_HANDLE handle, ACE_Reactor_Mask close_mask);
-
-private:
- /// flg_notify points whether or not we should send notification about
- /// canceled accepts
- /// Parameter flg_notify can be
- /// 0 - don't send notifications about canceled accepts
- /// 1 - notify user about canceled accepts
- /// according POSIX standards we should receive notifications
- /// on canceled AIO requests
- int cancel_uncompleted (int flg_notify);
-
- /// true - Accept is registered in ACE_Asynch_Pseudo_Task
- /// false - Accept is deregisted in ACE_Asynch_Pseudo_Task
- bool flg_open_ ;
-
- /// Queue of Result pointers that correspond to all the pending
- /// accept operations.
- ACE_Unbounded_Queue<ACE_POSIX_Asynch_Accept_Result*> result_queue_;
-
- /// The lock to protect the result queue which is shared. The queue
- /// is updated by main thread in the register function call and
- /// through the auxillary thread in the deregister fun. So let us
- /// mutex it.
- ACE_SYNCH_MUTEX lock_;
-};
-
-/**
- * @class ACE_POSIX_Asynch_Connect_Result
- *
- * @brief This is that class which will be passed back to the
- * completion handler when the asynchronous connect completes.
- *
- * This class has all the information necessary for a
- * completion handler to uniquely identify the completion of the
- * asynchronous connect.
- */
-class ACE_Export ACE_POSIX_Asynch_Connect_Result : public virtual ACE_Asynch_Connect_Result_Impl,
- public ACE_POSIX_Asynch_Result
-{
- /// Factory classes will have special permissions.
- friend class ACE_POSIX_Asynch_Connect;
-
- /// The Proactor constructs the Result class for faking results.
- friend class ACE_POSIX_Proactor;
-
-public:
-
- /// I/O handle for the connection.
- ACE_HANDLE connect_handle (void) const;
-
-protected:
- /// Constructor is protected since creation is limited to
- /// ACE_Asynch_Connect factory.
- ACE_POSIX_Asynch_Connect_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE connect_handle,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number);
-
- /// ACE_Proactor will call this method when the accept completes.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Connect_Result (void);
-
- // aiocb::aio_filedes
- // I/O handle for the new connection.
- void connect_handle (ACE_HANDLE handle);
-};
-
-/**
- * @class ACE_POSIX_Asynch_Connect
- *
- */
-class ACE_Export ACE_POSIX_Asynch_Connect :
- public virtual ACE_Asynch_Connect_Impl,
- public ACE_POSIX_Asynch_Operation,
- public ACE_Event_Handler
-{
-public:
-
- /// Constructor.
- ACE_POSIX_Asynch_Connect (ACE_POSIX_Proactor * posix_proactor);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Connect (void);
-
- /**
- * This belongs to ACE_POSIX_Asynch_Operation. We forward
- * this call to that method. We have put this here to avoid the
- * compiler warnings.
- */
- int open (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- const void *completion_key,
- ACE_Proactor *proactor = 0);
-
- /**
- * This starts off an asynchronous connect.
- *
- * @arg connect_handle will be used for the connect call. If
- * ACE_INVALID_HANDLE is specified, a new
- * handle will be created.
- */
- int connect (ACE_HANDLE connect_handle,
- const ACE_Addr &remote_sap,
- const ACE_Addr &local_sap,
- int reuse_addr,
- const void *act,
- int priority,
- int signal_number = 0);
-
- /**
- * Cancel all pending pseudo-asynchronus requests
- * Behavior as usual AIO request
- */
- int cancel (void);
-
- /**
- * Close performs cancellation of all pending requests.
- */
- int close (void);
-
- /// virtual from ACE_Event_Handler
- ACE_HANDLE get_handle (void) const;
-
- /// virtual from ACE_Event_Handler
- void set_handle (ACE_HANDLE handle);
-
- /// virtual from ACE_Event_Handler
- /// The default action on handle_input() and handle_exception is to
- /// return -1. Since that's what we want to do, just reuse them.
- /// handle_output(), however, is where successful connects are reported.
- int handle_output (ACE_HANDLE handle);
-
- /// virtual from ACE_Event_Handler
- int handle_close (ACE_HANDLE handle, ACE_Reactor_Mask close_mask) ;
-
-private:
- int connect_i (ACE_POSIX_Asynch_Connect_Result *result,
- const ACE_Addr & remote_sap,
- const ACE_Addr & local_sap,
- int reuse_addr);
-
- int post_result (ACE_POSIX_Asynch_Connect_Result *result, bool flg_post);
-
- /// Cancel uncompleted connect operations.
- /**
- * @arg flg_notify Indicates whether or not we should send notification
- * about canceled accepts. If this is false, don't send
- * notifications about canceled connects. If true, notify
- * user about canceled connects according POSIX
- * standards we should receive notifications on canceled
- * AIO requests.
- */
- int cancel_uncompleted (bool flg_notify, ACE_Handle_Set &set);
-
- bool flg_open_ ;
- /// true - Connect is registered in ACE_Asynch_Pseudo_Task
- /// false - Aceept is deregisted in ACE_Asynch_Pseudo_Task
-
- typedef ACE_Map_Manager<ACE_HANDLE, ACE_POSIX_Asynch_Connect_Result *, ACE_SYNCH_NULL_MUTEX>
- MAP_MANAGER;
-
- /// @deprecated (Two) Deprecated typedefs. Use the map traits instead.
- typedef MAP_MANAGER::ITERATOR MAP_ITERATOR;
- typedef MAP_MANAGER::ENTRY MAP_ENTRY;
-
- /// Map of Result pointers that correspond to all the pending connects.
- MAP_MANAGER result_map_;
-
- /// The lock to protect the result map which is shared. The queue
- /// is updated by main thread in the register function call and
- /// through the auxillary thread in the asynch pseudo task.
- ACE_SYNCH_MUTEX lock_;
-};
-
-/**
- * @class ACE_POSIX_Asynch_Transmit_File_Result
- *
- * @brief This is that class which will be passed back to the
- * <handler> when the asynchronous transmit file completes.
- *
- * This class has all the information necessary for the
- * <handler> to uniquiely identify the completion of the
- * asynchronous transmit file.
- */
-class ACE_Export ACE_POSIX_Asynch_Transmit_File_Result : public virtual ACE_Asynch_Transmit_File_Result_Impl,
- public ACE_POSIX_Asynch_Result
-{
- /// Factory classes will have special permissions.
- friend class ACE_POSIX_Asynch_Transmit_File;
-
- /// Handlers do all the job.
- friend class ACE_POSIX_Asynch_Transmit_Handler;
-
- /// The Proactor constructs the Result class for faking results.
- friend class ACE_POSIX_Proactor;
-
-public:
- /// Socket used for transmitting the file.
- ACE_HANDLE socket (void) const;
-
- /// File from which the data is read.
- ACE_HANDLE file (void) const;
-
- /// Header and trailer data associated with this transmit file.
- ACE_Asynch_Transmit_File::Header_And_Trailer *header_and_trailer (void) const;
-
- /// The number of bytes which were requested at the start of the
- /// asynchronous transmit file.
- size_t bytes_to_write (void) const;
-
- /// Number of bytes per send requested at the start of the transmit
- /// file.
- size_t bytes_per_send (void) const;
-
- /// Flags which were passed into transmit file.
- u_long flags (void) const;
-
-protected:
- ACE_POSIX_Asynch_Transmit_File_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE socket,
- ACE_HANDLE file,
- ACE_Asynch_Transmit_File::Header_And_Trailer *header_and_trailer,
- size_t bytes_to_write,
- u_long offset,
- u_long offset_high,
- size_t bytes_per_send,
- u_long flags,
- const void *act,
- ACE_HANDLE event,
- int priority,
- int signal_number);
- // Constructor is protected since creation is limited to
- // ACE_Asynch_Transmit_File factory.
-
- /// ACE_Proactor will call this method when the write completes.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Transmit_File_Result (void);
-
- /// Network I/O handle.
- ACE_HANDLE socket_;
-
- // aiocb::aio_filedes
- // File I/O handle.
-
- /// Header and trailer data associated with this transmit file.
- ACE_Asynch_Transmit_File::Header_And_Trailer *header_and_trailer_;
-
- // aiocb::aio_nbytes
- // The number of bytes which were requested at the start of the
- // asynchronous transmit file.
-
- /// Number of bytes per send requested at the start of the transmit
- /// file.
- size_t bytes_per_send_;
-
- /// Flags which were passed into transmit file.
- u_long flags_;
-};
-
-/**
- * @class ACE_POSIX_Asynch_Transmit_File
- *
- * @brief Implementation for transmit_file will make use of
- * POSIX_Asynch_Transmit_Handler.
- */
-class ACE_Export ACE_POSIX_Asynch_Transmit_File : public virtual ACE_Asynch_Transmit_File_Impl,
- public ACE_POSIX_Asynch_Operation
-{
-public:
- /// Constructor.
- ACE_POSIX_Asynch_Transmit_File (ACE_POSIX_Proactor *posix_proactor);
-
- /**
- * This starts off an asynchronous transmit file. The <file> is a
- * handle to an open file. <header_and_trailer> is a pointer to a
- * data structure that contains pointers to data to send before and
- * after the file data is sent. Set this parameter to 0 if you only
- * want to transmit the file data. Upto @a bytes_to_write will be
- * written to the <socket>. If you want to send the entire file,
- * let @a bytes_to_write = 0. @a bytes_per_send is the size of each
- * block of data sent per send operation. Please read the POSIX
- * documentation on what the flags should be.
- */
- int transmit_file (ACE_HANDLE file,
- ACE_Asynch_Transmit_File::Header_And_Trailer *header_and_trailer,
- size_t bytes_to_write,
- u_long offset,
- u_long offset_high,
- size_t bytes_per_send,
- u_long flags,
- const void *act,
- int priority,
- int signal_number = 0);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Transmit_File (void);
-};
-
-/**
- * @class ACE_POSIX_Asynch_Read_Dgram
- *
- * @brief This class is a factory for starting off asynchronous reads
- * on a UDP socket.
- *
- * Once <open> is called, multiple asynchronous <read>s can be
- * started using this class. An ACE_Asynch_Read_Dgram::Result
- * will be passed back to the <handler> when the asynchronous
- * reads completes through the <ACE_Handler::handle_read_stream>
- * callback.
- *
- */
-class ACE_Export ACE_POSIX_Asynch_Read_Dgram : public virtual ACE_Asynch_Read_Dgram_Impl,
- public ACE_POSIX_Asynch_Operation
-{
-public:
- /// Constructor.
- ACE_POSIX_Asynch_Read_Dgram (ACE_POSIX_Proactor *posix_proactor);
- virtual ~ACE_POSIX_Asynch_Read_Dgram (void);
-
- /** This method queues an asynchronous read. Up to
- * @a message_block->total_size() bytes will be read and stored in the
- * @a message_block beginning at its write pointer. The @a message_block
- * write pointer will be updated to reflect any added bytes if the read
- * operation is successful completed.
- * Priority of the operation is specified by @a priority. On POSIX4-Unix,
- * this is supported. Works like <nice> in Unix. Negative values are not
- * allowed. 0 means priority of the operation same as the process
- * priority. 1 means priority of the operation is one less than
- * process. @a signal_number argument is a no-op on non-POSIX4 systems.
- *
- * @note Unlike the Windows version of this facility, no indication of
- * immediate success can be returned, and @a number_of_bytes_read is
- * never used.
- *
- * @arg flags Not used.
- * @arg protocol_family Not used.
- * @retval 0 The IO will complete asynchronously.
- * @retval -1 There was an error; see @c errno to get the error code.
- *
- */
- virtual ssize_t recv (ACE_Message_Block *message_block,
- size_t &number_of_bytes_recvd,
- int flags,
- int protocol_family,
- const void *act,
- int priority,
- int signal_number);
-
-protected:
- /// Do-nothing constructor.
- ACE_POSIX_Asynch_Read_Dgram (void);
-};
-
-/**
- * @class ACE_POSIX__Asynch_Write_Dgram_Result
- *
- * @brief This is class provides concrete implementation for
- * ACE_Asynch_Write_Dgram::Result class.
- */
-class ACE_Export ACE_POSIX_Asynch_Write_Dgram_Result : public virtual ACE_Asynch_Write_Dgram_Result_Impl,
- public ACE_POSIX_Asynch_Result
-{
- /// Factory classes will have special permissions.
- friend class ACE_POSIX_Asynch_Write_Dgram;
-
- /// Proactor class has special permission.
- friend class ACE_POSIX_Proactor;
-
-public:
- /// The number of bytes which were requested at the start of the
- /// asynchronous write.
- size_t bytes_to_write (void) const;
-
- /// Message block which contains the sent data
- ACE_Message_Block *message_block (void) const;
-
- /// The flags using in the write
- int flags (void) const;
-
- /// I/O handle used for writing.
- ACE_HANDLE handle (void) const;
-
-protected:
- /// Constructor is protected since creation is limited to
- /// ACE_Asynch_Write_Stream factory.
- ACE_POSIX_Asynch_Write_Dgram_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block *message_block,
- size_t bytes_to_write,
- int flags,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number);
-
- /// ACE_Proactor will call this method when the write completes.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Write_Dgram_Result (void);
-
- /// The number of bytes which were requested at the start of the
- /// asynchronous write.
- size_t bytes_to_write_;
-
- /// Message block used for the send.
- ACE_Message_Block *message_block_;
-
- /// The flags using in the write
- int flags_;
-
- /// I/O handle used for writing.
- ACE_HANDLE handle_;
-
- };
-
-/**
- * @class ACE_POSIX_Asynch_Write_Dgram
- *
- * @brief This class is a factory for starting off asynchronous writes
- * on a UDP socket. The UDP socket must be "connected", as there is
- * no facility for specifying the destination address on each send
- * operation.
- *
- * Once @c open() is called, multiple asynchronous writes can
- * started using this class. A ACE_Asynch_Write_Stream::Result
- * will be passed back to the associated completion handler when the
- * asynchronous write completes through the
- * ACE_Handler::handle_write_stream() callback.
- */
-class ACE_Export ACE_POSIX_Asynch_Write_Dgram : public virtual ACE_Asynch_Write_Dgram_Impl,
- public ACE_POSIX_Asynch_Operation
-{
-public:
- /// Constructor.
- ACE_POSIX_Asynch_Write_Dgram (ACE_POSIX_Proactor *posix_proactor);
-
- /// Destructor
- virtual ~ACE_POSIX_Asynch_Write_Dgram (void);
-
- /** This method queues an asynchronous send. Up to
- * @a message_block->total_length bytes will be sent, beginning at the
- * read pointer. The @a message_block read pointer will be updated to
- * reflect the sent bytes if the send operation is successful completed.
- *
- * Priority of the operation is specified by @a priority. On POSIX,
- * this is supported. Works like @c nice in Unix. Negative values are not
- * allowed. 0 means priority of the operation same as the process
- * priority. 1 means priority of the operation is one less than
- * process, etc.
- * @a signal_number is a no-op on non-POSIX4 systems.
- *
- * @note Unlike the Windows version of this facility, no indication of
- * immediate success can be returned, and @a number_of_bytes_sent is
- * never used.
- *
- * @arg flags Not used.
- * @arg addr Not used.
- * @retval 0 The IO will complete asynchronously.
- * @retval -1 There was an error; see @c errno to get the error code.
- */
- virtual ssize_t send (ACE_Message_Block *message_block,
- size_t &number_of_bytes_sent,
- int flags,
- const ACE_Addr &addr,
- const void *act,
- int priority,
- int signal_number);
-
-protected:
- /// Do-nothing constructor.
- ACE_POSIX_Asynch_Write_Dgram (void);
-};
-
-/*****************************************************/
-
-/**
- * @class ACE_POSIX_Asynch_Read_Dgram_Result
- *
- * @brief This is class provides concrete implementation for
- * ACE_Asynch_Read_Dgram::Result class.
- */
-class ACE_Export ACE_POSIX_Asynch_Read_Dgram_Result : public virtual ACE_Asynch_Read_Dgram_Result_Impl,
- public virtual ACE_POSIX_Asynch_Result
-{
-
- /// Factory classes will have special permissions.
- friend class ACE_POSIX_Asynch_Read_Dgram;
-
- /// Proactor class has special permission.
- friend class ACE_POSIX_Proactor;
-
-public:
- /// The number of bytes which were requested at the start of the
- /// asynchronous read.
- size_t bytes_to_read (void) const;
-
- /// Message block which contains the read data
- ACE_Message_Block *message_block (void) const;
-
- /// The address of where the packet came from
- int remote_address (ACE_Addr& addr) const;
-
- sockaddr *saddr (void) const;
-
- /// The flags used in the read
- int flags (void) const;
-
- /// I/O handle used for reading.
- ACE_HANDLE handle (void) const;
-
-protected:
- /// Constructor is protected since creation is limited to
- /// ACE_Asynch_Read_Dgram factory.
- ACE_POSIX_Asynch_Read_Dgram_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block *message_block,
- size_t bytes_to_read,
- int flags,
- int protocol_family,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0);
-
- /// Proactor will call this method when the read completes.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Read_Dgram_Result (void);
-
- /// Bytes requested when the asynchronous read was initiated.
- size_t bytes_to_read_;
-
- /// Message block for reading the data into.
- ACE_Message_Block *message_block_;
-
- /// The address of where the packet came from
- ACE_Addr *remote_address_;
-
- int addr_len_;
-
- /// The flags used in the read
- int flags_;
-
- /// I/O handle used for reading.
- ACE_HANDLE handle_;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_AIO_CALLS */
-#endif /* ACE_POSIX_ASYNCH_IO_H */
-
diff --git a/dep/include/ace/POSIX_CB_Proactor.h b/dep/include/ace/POSIX_CB_Proactor.h
deleted file mode 100644
index 8969d57acfe..00000000000
--- a/dep/include/ace/POSIX_CB_Proactor.h
+++ /dev/null
@@ -1,97 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file POSIX_CB_Proactor.h
- *
- * $Id: POSIX_CB_Proactor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Alexander Libman <alibman@ihug.com.au>
- */
-//=============================================================================
-
-#ifndef ACE_POSIX_CB_PROACTOR_H
-#define ACE_POSIX_CB_PROACTOR_H
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_AIO_CALLS)
-
-#include "ace/Synch_Traits.h"
-#include "ace/Thread_Semaphore.h"
-#include "ace/Null_Semaphore.h"
-
-#include "ace/POSIX_Proactor.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_POSIX_CB_Proactor
- *
- * @brief Implementation of Callback-based Proactor
- * };
- */
-class ACE_Export ACE_POSIX_CB_Proactor : public ACE_POSIX_AIOCB_Proactor
-{
-
-public:
- virtual Proactor_Type get_impl_type (void);
-
- /// Destructor.
- virtual ~ACE_POSIX_CB_Proactor (void);
-
- /// Constructor defines max number asynchronous operations that can
- /// be started at the same time.
- ACE_POSIX_CB_Proactor (size_t max_aio_operations = ACE_AIO_DEFAULT_SIZE);
-
- // This only public so the "extern C" completion function can see it
- // when needed.
- static void aio_completion_func (sigval cb_data);
-
-protected:
-
- /**
- * Dispatch a single set of events. If @a wait_time elapses before
- * any events occur, return 0. Return 1 on success i.e., when a
- * completion is dispatched, non-zero (-1) on errors and errno is
- * set accordingly.
- */
- virtual int handle_events (ACE_Time_Value &wait_time);
-
- /**
- * Block indefinitely until at least one event is dispatched.
- * Dispatch a single set of events. If @a wait_time elapses before
- * any events occur, return 0. Return 1 on success i.e., when a
- * completion is dispatched, non-zero (-1) on errors and errno is
- * set accordingly.
- */
- virtual int handle_events (void);
-
- /// Find free slot to store result and aiocb pointer
- virtual ssize_t allocate_aio_slot (ACE_POSIX_Asynch_Result *result);
-
- /// Notify queue of "post_completed" ACE_POSIX_Asynch_Results
- /// called from post_completion method
- virtual int notify_completion (int sig_num);
-
- /**
- * Dispatch a single set of events. If @a milli_seconds elapses
- * before any events occur, return 0. Return 1 if a completion is
- * dispatched. Return -1 on errors.
- */
- int handle_events_i (u_long milli_seconds);
-
- /// Semaphore variable to notify
- /// used to wait the first AIO start
- ACE_SYNCH_SEMAPHORE sema_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_AIO_CALLS */
-#endif /* ACE_POSIX_CB_PROACTOR_H*/
-
diff --git a/dep/include/ace/POSIX_Proactor.h b/dep/include/ace/POSIX_Proactor.h
deleted file mode 100644
index da2c48eae6f..00000000000
--- a/dep/include/ace/POSIX_Proactor.h
+++ /dev/null
@@ -1,656 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file POSIX_Proactor.h
- *
- * $Id: POSIX_Proactor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Irfan Pyarali <irfan@cs.wustl.edu>
- * @author Tim Harrison <harrison@cs.wustl.edu>
- * @author Alexander Babu Arulanthu <alex@cs.wustl.edu>
- * @author Roger Tragin <r.tragin@computer.org>
- * @author Alexander Libman <alibman@baltimore.com>
- */
-//=============================================================================
-
-#ifndef ACE_POSIX_PROACTOR_H
-#define ACE_POSIX_PROACTOR_H
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_AIO_CALLS)
-// POSIX implementation of Proactor depends on the <aio_> family of
-// system calls.
-
-#include "ace/Proactor_Impl.h"
-#include "ace/Free_List.h"
-#include "ace/Pipe.h"
-#include "ace/POSIX_Asynch_IO.h"
-#include "ace/Asynch_Pseudo_Task.h"
-
-#define ACE_AIO_MAX_SIZE 2048
-#define ACE_AIO_DEFAULT_SIZE 1024
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_POSIX_Proactor
- *
- * @brief POSIX implementation of the Proactor.
- *
- * There are two different strategies by which Proactor can get
- * to know the completion of <aio> operations. One is based on
- * Asynchronous I/O Control Blocks (AIOCB) where a list of
- * AIOCBs are stored and completion status of the corresponding
- * operations are queried on them. The other one is based on
- * POSIX Real Time signals. This class abstracts out the common
- * code needed for both the strategies. ACE_POSIX_AIOCB_Proactor and
- * ACE_POSIX_SIG_Proactor specialize this class for each strategy.
- */
-class ACE_Export ACE_POSIX_Proactor : public ACE_Proactor_Impl
-{
-public:
- enum Proactor_Type
- {
- /// Base class type
- PROACTOR_POSIX = 0,
-
- /// Aio_suspend() based
- PROACTOR_AIOCB = 1,
-
- /// Signals notifications
- PROACTOR_SIG = 2,
-
- /// SUN specific aiowait()
- PROACTOR_SUN = 3,
-
- /// Callback notifications
- PROACTOR_CB = 4
- };
-
- enum SystemType // open for future extention
- {
- ACE_OS_UNDEFINED= 0x0000,
- ACE_OS_WIN = 0x0100, // for future
- ACE_OS_WIN_NT = ACE_OS_WIN | 0x0001,
- ACE_OS_WIN_2000 = ACE_OS_WIN | 0x0002,
- ACE_OS_SUN = 0x0200, // Sun Solaris family
- ACE_OS_SUN_55 = ACE_OS_SUN | 0x0001,
- ACE_OS_SUN_56 = ACE_OS_SUN | 0x0002,
- ACE_OS_SUN_57 = ACE_OS_SUN | 0x0004,
- ACE_OS_SUN_58 = ACE_OS_SUN | 0x0008,
- ACE_OS_HPUX = 0x0400, // HPUX family
- ACE_OS_HPUX_11 = ACE_OS_HPUX | 0x0001,
- ACE_OS_LINUX = 0x0800, // Linux family
- ACE_OS_FREEBSD = 0x1000, // FreeBSD family
- ACE_OS_IRIX = 0x2000, // SGI IRIX family
- ACE_OS_OPENBSD = 0x4000 // OpenBSD familty
- };
-
- enum Opcode {
- ACE_OPCODE_READ = 1,
- ACE_OPCODE_WRITE = 2
- };
-
- virtual Proactor_Type get_impl_type (void);
-
- /// Virtual destructor.
- virtual ~ACE_POSIX_Proactor (void);
-
- /// Close down the Proactor.
- virtual int close (void);
-
- /**
- * Dispatch a single set of events. If @a wait_time elapses before
- * any events occur, return 0. Return 1 on success i.e., when a
- * completion is dispatched, non-zero (-1) on errors and errno is
- * set accordingly.
- */
- virtual int handle_events (ACE_Time_Value &wait_time) = 0;
-
- /**
- * Block indefinitely until at least one event is dispatched.
- * Dispatch a single set of events.Return 1 on success i.e., when a
- * completion is dispatched, non-zero (-1) on errors and errno is
- * set accordingly.
- */
- virtual int handle_events (void) = 0;
-
- /**
- * Post a result to the completion port of the Proactor. If errors
- * occur, the result will be deleted by this method. If successful,
- * the result will be deleted by the Proactor when the result is
- * removed from the completion port. Therefore, the result should
- * have been dynamically allocated and should be orphaned by the
- * user once this method is called.
- */
- virtual int post_completion (ACE_POSIX_Asynch_Result *result) = 0;
-
- virtual int start_aio (ACE_POSIX_Asynch_Result *result, Opcode op) = 0;
-
- virtual int cancel_aio (ACE_HANDLE h) = 0;
-
- /// Task to process pseudo-asynchronous operations
- ACE_Asynch_Pseudo_Task &get_asynch_pseudo_task ();
-
- /// This function is a no-op function for Unix systems. Returns 0.
- virtual int register_handle (ACE_HANDLE handle,
- const void *completion_key);
-
- /// @@ This is a no-op on POSIX platforms. Returns 0.
- int wake_up_dispatch_threads (void);
-
- /// @@ This is a no-op on POSIX platforms. Returns 0.
- int close_dispatch_threads (int wait);
-
- /// @@ This is a no-op on POSIX platforms. Returns 0.
- size_t number_of_threads (void) const;
- void number_of_threads (size_t threads);
-
- /// This is a no-op in POSIX. Returns ACE_INVALID_HANDLE.
- virtual ACE_HANDLE get_handle (void) const;
-
- // Methods used to create Asynch IO factory and result objects. We
- // create the right objects here in these methods.
-
- virtual ACE_Asynch_Read_Stream_Impl *create_asynch_read_stream (void);
- virtual ACE_Asynch_Read_Stream_Result_Impl *
- create_asynch_read_stream_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void *act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- virtual ACE_Asynch_Write_Stream_Impl *create_asynch_write_stream (void);
- virtual ACE_Asynch_Write_Stream_Result_Impl *
- create_asynch_write_stream_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void *act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- virtual ACE_Asynch_Read_File_Impl *create_asynch_read_file (void);
- virtual ACE_Asynch_Read_File_Result_Impl *
- create_asynch_read_file_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void *act,
- u_long offset,
- u_long offset_high,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- virtual ACE_Asynch_Write_File_Impl *create_asynch_write_file (void);
- virtual ACE_Asynch_Write_File_Result_Impl *
- create_asynch_write_file_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void *act,
- u_long offset,
- u_long offset_high,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- virtual ACE_Asynch_Read_Dgram_Impl *create_asynch_read_dgram (void);
- virtual ACE_Asynch_Read_Dgram_Result_Impl *
- create_asynch_read_dgram_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block *message_block,
- size_t bytes_to_read,
- int flags,
- int protocol_family,
- const void* act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- virtual ACE_Asynch_Write_Dgram_Impl *create_asynch_write_dgram (void);
- virtual ACE_Asynch_Write_Dgram_Result_Impl *
- create_asynch_write_dgram_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block *message_block,
- size_t bytes_to_write,
- int flags,
- const void* act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- virtual ACE_Asynch_Accept_Impl *create_asynch_accept (void);
- virtual ACE_Asynch_Accept_Result_Impl *
- create_asynch_accept_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE listen_handle,
- ACE_HANDLE accept_handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void *act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- virtual ACE_Asynch_Connect_Impl *create_asynch_connect (void);
- virtual ACE_Asynch_Connect_Result_Impl *
- create_asynch_connect_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE connect_handle,
- const void *act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- virtual ACE_Asynch_Transmit_File_Impl *create_asynch_transmit_file (void);
- virtual ACE_Asynch_Transmit_File_Result_Impl *
- create_asynch_transmit_file_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE socket,
- ACE_HANDLE file,
- ACE_Asynch_Transmit_File::Header_And_Trailer *header_and_trailer,
- size_t bytes_to_write,
- u_long offset,
- u_long offset_high,
- size_t bytes_per_send,
- u_long flags,
- const void *act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- /// Create a timer result object which can be used with the Timer
- /// mechanism of the Proactor.
- virtual ACE_Asynch_Result_Impl *
- create_asynch_timer (const ACE_Handler::Proxy_Ptr &handler_proxy,
- const void *act,
- const ACE_Time_Value &tv,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
-protected:
- /// Constructor.
- ACE_POSIX_Proactor (void);
-
- /**
- * Protect against structured exceptions caused by user code when
- * dispatching handles. The <completion_key> is not very useful
- * compared to <AST> that can be associated each asynchronous
- * operation. <completion_key> is implemented right now for the
- * POSIX Proators.
- */
- void application_specific_code (ACE_POSIX_Asynch_Result *asynch_result,
- size_t bytes_transferred,
- const void *completion_key,
- u_long error);
-
- /**
- * Post <how_many> completions to the completion port so that all
- * threads can wake up. This is used in conjunction with the
- * <run_event_loop>.
- */
- virtual int post_wakeup_completions (int how_many);
-
-protected:
- /// Handler to handle the wakeups. This works in conjunction with the
- /// <ACE_Proactor::run_event_loop>.
- ACE_Handler wakeup_handler_;
- int os_id_;
-
-private:
- /// Task to process pseudo-asynchronous accept/connect
- ACE_Asynch_Pseudo_Task pseudo_task_;
-
-};
-
-// Forward declarations.
-class ACE_AIOCB_Notify_Pipe_Manager;
-
-/**
- * @class ACE_POSIX_AIOCB_Proactor
- *
- * @brief This Proactor makes use of Asynchronous I/O Control Blocks
- * (AIOCB) to notify/get the completion status of the <aio_>
- * operations issued.
- */
-class ACE_Export ACE_POSIX_AIOCB_Proactor : public ACE_POSIX_Proactor
-{
-
- /// Handler needs to call application specific code.
- friend class ACE_AIOCB_Notify_Pipe_Manager;
-
- /// This class does the registering of Asynch Operations with the
- /// Proactor which is necessary in the AIOCB strategy.
- friend class ACE_POSIX_Asynch_Operation;
- friend class ACE_POSIX_Asynch_Accept;
- friend class ACE_POSIX_Asynch_Connect;
-
-public:
- /// Constructor defines max number asynchronous operations
- /// which can be started at the same time
- ACE_POSIX_AIOCB_Proactor (size_t nmaxop = ACE_AIO_DEFAULT_SIZE);
-
- virtual Proactor_Type get_impl_type (void);
-
- /// Destructor.
- virtual ~ACE_POSIX_AIOCB_Proactor (void);
-
- /// Close down the Proactor.
- virtual int close (void);
-
- /**
- * Dispatch a single set of events. If @a wait_time elapses before
- * any events occur, return 0. Return 1 on success i.e., when a
- * completion is dispatched, non-zero (-1) on errors and errno is
- * set accordingly.
- */
- virtual int handle_events (ACE_Time_Value &wait_time);
-
- /**
- * Block indefinitely until at least one event is dispatched.
- * Dispatch a single set of events. If @a wait_time elapses before
- * any events occur, return 0. Return 1 on success i.e., when a
- * completion is dispatched, non-zero (-1) on errors and errno is
- * set accordingly.
- */
- virtual int handle_events (void);
-
- /// Post a result to the completion port of the Proactor.
- virtual int post_completion (ACE_POSIX_Asynch_Result *result);
-
- virtual int start_aio (ACE_POSIX_Asynch_Result *result,
- ACE_POSIX_Proactor::Opcode op);
-
- /**
- * This method should be called from
- * ACE_POSIX_Asynch_Operation::cancel()
- * instead of usual ::aio_cancel.
- * For all deferred AIO requests with handle "h"
- * it removes its from the lists and notifies user.
- * For all running AIO requests with handle "h"
- * it calls ::aio_cancel. According to the POSIX standards
- * we will receive ECANCELED for all ::aio_canceled AIO requests
- * later on return from ::aio_suspend
- */
- virtual int cancel_aio (ACE_HANDLE h);
-
-protected:
-
- /// Special constructor for ACE_SUN_Proactor
- /// and ACE_POSIX_SIG_Proactor
- ACE_POSIX_AIOCB_Proactor (size_t nmaxop,
- ACE_POSIX_Proactor::Proactor_Type ptype);
-
- /// Check AIO for completion, error and result status
- /// Return: 1 - AIO completed , 0 - not completed yet
- virtual int get_result_status (ACE_POSIX_Asynch_Result *asynch_result,
- int &error_status,
- size_t &transfer_count);
-
- /// Create aiocb list
- int create_result_aiocb_list (void);
-
- /// Call this method from derived class when virtual table is
- /// built.
- int delete_result_aiocb_list (void);
-
- /// Call these methods from derived class when virtual table is
- /// built.
- void create_notify_manager (void);
- void delete_notify_manager (void);
-
- /// Define the maximum number of asynchronous I/O requests
- /// for the current OS
- void check_max_aio_num (void) ;
-
- /// To identify requests from Notify_Pipe_Manager
- void set_notify_handle (ACE_HANDLE h);
-
- /**
- * Dispatch a single set of events. If <milli_seconds> elapses
- * before any events occur, return 0. Return 1 if a completion
- * dispatched. Return -1 on errors.
- */
- int handle_events_i (u_long milli_seconds);
-
- /// Start deferred AIO if necessary
- int start_deferred_aio (void);
-
- /// Cancel running or deferred AIO
- virtual int cancel_aiocb (ACE_POSIX_Asynch_Result * result);
-
- /// Extract the results of aio.
- ACE_POSIX_Asynch_Result *find_completed_aio (int &error_status,
- size_t &transfer_count,
- size_t &index,
- size_t &count);
-
- /// Find free slot to store result and aiocb pointer
- virtual ssize_t allocate_aio_slot (ACE_POSIX_Asynch_Result *result);
-
- /// Initiate an aio operation.
- virtual int start_aio_i (ACE_POSIX_Asynch_Result *result);
-
- /// Notify queue of "post_completed" ACE_POSIX_Asynch_Results
- /// called from post_completion method
- virtual int notify_completion (int sig_num);
-
- /// Put "post_completed" result into the internal queue
- int putq_result (ACE_POSIX_Asynch_Result *result);
-
- /// Get "post_completed" result from the internal queue
- ACE_POSIX_Asynch_Result * getq_result (void);
-
- /// Clear the internal results queue
- int clear_result_queue (void);
-
- /// Process the internal results queue
- int process_result_queue (void);
-
- /// This class takes care of doing <accept> when we use
- /// AIO_CONTROL_BLOCKS strategy.
- ACE_AIOCB_Notify_Pipe_Manager *aiocb_notify_pipe_manager_;
-
- /// Use a dynamically allocated array to keep track of all the aio's
- /// issued currently.
- aiocb **aiocb_list_;
- ACE_POSIX_Asynch_Result **result_list_;
-
- /// To maintain the maximum size of the array (list).
- size_t aiocb_list_max_size_;
-
- /// To maintain the current size of the array (list).
- size_t aiocb_list_cur_size_;
-
- /// Mutex to protect work with lists.
- ACE_SYNCH_MUTEX mutex_;
-
- /// The purpose of this member is only to identify asynchronous request
- /// from NotifyManager. We will reserve for it always slot 0
- /// in the list of aiocb's to be sure that don't lose notifications.
- ACE_HANDLE notify_pipe_read_handle_ ;
-
- /// Number of ACE_POSIX_Asynch_Result's waiting for start
- /// i.e. deferred AIOs
- size_t num_deferred_aiocb_ ;
-
- /// Number active,i.e. running requests
- size_t num_started_aio_ ;
-
- /// Queue which keeps "post_completed" ACE_POSIX_Asynch_Result's
- ACE_Unbounded_Queue<ACE_POSIX_Asynch_Result *> result_queue_;
-};
-
-#if defined(ACE_HAS_POSIX_REALTIME_SIGNALS)
-/**
- * @class ACE_POSIX_SIG_Proactor
- *
- * @brief This Proactor implementation does completion event detection using
- * POSIX Real Time signals. @c sigtimedwait() or @c sigwaitinfo() is
- * used to wait for completions.
- * The real-time signals that are going to be used with this
- * Proactor should be given apriori in the constructor, so that
- * those signals can be masked from asynchronous delivery.
- */
-class ACE_Export ACE_POSIX_SIG_Proactor : public ACE_POSIX_AIOCB_Proactor
-{
-
- /**
- * This class does the registering of Asynch Operations with the
- * Proactor which is necessary in the SIG strategy, because we need
- * to store the signal number.
- */
- friend class ACE_POSIX_SIG_Asynch_Operation;
-
-public:
- /**
- * This constructor masks only the <ACE_SIGRTMIN>
- * real-time signal. Only this signal should be used to issue
- * asynchronous operations using this Proctor.
- */
- ACE_POSIX_SIG_Proactor (size_t nmaxop = ACE_AIO_DEFAULT_SIZE);
-
- virtual Proactor_Type get_impl_type (void);
-
- /**
- * This constructor should be used to tell the Proactor to mask and
- * wait for the real-time signals specified in this set. Only these
- * signals should be used by the asynchronous operations when they
- * use this Proactor.
- */
- ACE_POSIX_SIG_Proactor (const sigset_t mask_set,
- size_t nmaxop = ACE_AIO_DEFAULT_SIZE);
-
- /// Destructor.
- virtual ~ACE_POSIX_SIG_Proactor (void);
-
- /**
- * Dispatch a single set of events. If @a wait_time elapses before
- * any events occur, return 0. Return 1 on success i.e., when a
- * completion is dispatched, non-zero (-1) on errors and errno is
- * set accordingly.
- */
- virtual int handle_events (ACE_Time_Value &wait_time);
-
- /**
- * Block indefinitely until at least one event is dispatched.
- * Dispatch a single set of events. If <wait_time> elapses before
- * any events occur, return 0. Return 1 on success i.e., when a
- * completion is dispatched, non-zero (-1) on errors and errno is
- * set accordingly.
- */
- virtual int handle_events (void);
-
- /// Post a result to the completion port of the Proactor.
- /// now it is implemented in base ACE_POSIX_AIOCB_Proactor class
- ///virtual int post_completion (ACE_POSIX_Asynch_Result *result);
-
- /**
- * If @a signal_number is -1, check with the Proactor and use one of
- * the signals that is present in the mask set (i.e., the signals for
- * which the Proactor will be waiting) of the Proactor. If there are
- * more than one signal, the higher numbered signal will be chosen.
- */
- virtual ACE_Asynch_Result_Impl *create_asynch_timer
- (const ACE_Handler::Proxy_Ptr &handler_proxy,
- const void *act,
- const ACE_Time_Value &tv,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
-protected:
- /// To setup the handler for a real-time signbal.
- int setup_signal_handler (int signal_number) const;
-
- /// Insures that RT_completion_signals_ are blocked in the calling thread.
- int block_signals (void) const;
-
- /**
- * Dispatch a single set of events. @a timeout is a pointer to a
- * relative time representing the maximum amount of time to wait for
- * an event to occur. If 0, wait indefinitely.
- *
- * @retval 0 A timeout occurred before any event was detected.
- * @retval 1 A completion was dispatched.
- * @retval -1 An error occurred; errno contains an error code.
- */
- virtual int handle_events_i (const ACE_Time_Value *timeout);
-
- /// Find free slot to store result and aiocb pointer
- virtual ssize_t allocate_aio_slot (ACE_POSIX_Asynch_Result *result);
-
- /// Notify queue of "post_completed" ACE_POSIX_Asynch_Results
- /// called from post_completion method
- virtual int notify_completion (int sig_num);
-
- /**
- * These signals are used for completion notification by the
- * Proactor. The signals specified while issuing asynchronous
- * operations are stored here in this set. These signals are masked
- * for a thread when it calls handle_events().
- */
- sigset_t RT_completion_signals_;
-};
-
-#endif /* ACE_HAS_POSIX_REALTIME_SIGNALS */
-
-/**
- * @class ACE_POSIX_Asynch_Timer
- *
- * @brief This class is posted to the completion port when a timer
- * expires. When the @c complete() method of this object is
- * called, the handler's @c handle_timeout() method will be
- * called.
- */
-class ACE_Export ACE_POSIX_Asynch_Timer : public ACE_POSIX_Asynch_Result
-{
-
- /// The factory method for this class is with the POSIX_Proactor
- /// class.
- friend class ACE_POSIX_Proactor;
-#if defined(ACE_HAS_POSIX_REALTIME_SIGNALS)
- friend class ACE_POSIX_SIG_Proactor;
-#endif
-
-protected:
- /// Constructor.
- ACE_POSIX_Asynch_Timer (const ACE_Handler::Proxy_Ptr &handler_proxy,
- const void *act,
- const ACE_Time_Value &tv,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- /// Destructor.
- virtual ~ACE_POSIX_Asynch_Timer (void) {}
-
- /// This method calls the handler's handle_timeout method.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error = 0);
-
- /// Time value requested by caller
- ACE_Time_Value time_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/POSIX_Proactor.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_AIO_CALLS && ACE_HAS_POSIX_REALTIME_SIGNALS */
-#endif /* ACE_POSIX_PROACTOR_H */
-
diff --git a/dep/include/ace/POSIX_Proactor.inl b/dep/include/ace/POSIX_Proactor.inl
deleted file mode 100644
index da52de69a97..00000000000
--- a/dep/include/ace/POSIX_Proactor.inl
+++ /dev/null
@@ -1,13 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: POSIX_Proactor.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Asynch_Pseudo_Task& ACE_POSIX_Proactor::get_asynch_pseudo_task (void)
-{
- return this->pseudo_task_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Pagefile_Memory_Pool.h b/dep/include/ace/Pagefile_Memory_Pool.h
deleted file mode 100644
index 888ca897fac..00000000000
--- a/dep/include/ace/Pagefile_Memory_Pool.h
+++ /dev/null
@@ -1,202 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Pagefile_Memory_Pool.h
- *
- * $Id: Pagefile_Memory_Pool.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Dougls C. Schmidt <schmidt@cs.wustl.edu>
- * @author Prashant Jain <pjain@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_PAGEFILE_MEMORY_POOL_H
-#define ACE_PAGEFILE_MEMORY_POOL_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_WIN32) && !defined (ACE_HAS_PHARLAP)
-
-#include "ace/ACE.h"
-#include "ace/os_include/sys/os_mman.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Pagefile_Memory_Pool_Options
- *
- * @brief Helper class for Pagefile Memory Pool constructor options.
- *
- * This should be a nested class, but that breaks too many
- * compilers.
- */
-class ACE_Export ACE_Pagefile_Memory_Pool_Options
-{
-public:
- /// Initialization method.
- ACE_Pagefile_Memory_Pool_Options (
- void *base_addr = ACE_DEFAULT_PAGEFILE_POOL_BASE,
- size_t max_size = ACE_DEFAULT_PAGEFILE_POOL_SIZE);
-
- /// Base address of the memory-mapped backing store.
- void *base_addr_;
-
- /// Maximum size the pool may grow.
- size_t max_size_;
-};
-
-/**
- * @class ACE_Pagefile_Memory_Pool
- *
- * @brief Make a memory pool that is based on "anonymous" memory
- * regions allocated from the Win32 page file.
- */
-class ACE_Export ACE_Pagefile_Memory_Pool
-{
-public:
- typedef ACE_Pagefile_Memory_Pool_Options OPTIONS;
-
- /// Initialize the pool.
- ACE_Pagefile_Memory_Pool (const ACE_TCHAR *backing_store_name = 0,
- const OPTIONS *options = 0);
-
- /// Ask system for initial chunk of shared memory.
- void *init_acquire (size_t nbytes,
- size_t &rounded_bytes,
- int &first_time);
-
- /// Acquire at least @a nbytes from the memory pool. <rounded_bytes>
- /// is the actual number of bytes allocated.
- void *acquire (size_t nbytes,
- size_t &rounded_bytes);
-
- /// Instruct the memory pool to release all of its resources.
- int release (int destroy = 1);
-
- /**
- * Win32 Structural exception selector. The return value decides
- * how to handle memory pool related structural exceptions. Returns
- * 1, 0, or , -1.
- */
- virtual int seh_selector (void *);
-
- /**
- * Try to extend the virtual address space so that @a addr is now
- * covered by the address mapping. The method succeeds and returns
- * 0 if the backing store has adequate memory to cover this address.
- * Otherwise, it returns -1. This method is typically called by an
- * exception handler for a Win32 structured exception when another
- * process has grown the backing store (and its mapping) and our
- * process now incurs a fault because our mapping isn't in range
- * (yet).
- */
- int remap (void *addr);
-
- /// Round up to system page size.
- size_t round_to_page_size (size_t nbytes);
-
- /// Round up to the chunk size required by the operation system
- size_t round_to_chunk_size (size_t nbytes);
-
- // = Don't need this methods here ...
- int sync (ssize_t = -1, int = MS_SYNC);
- int sync (void *, size_t, int = MS_SYNC);
- int protect (ssize_t = -1, int = PROT_RDWR);
- int protect (void *, size_t, int = PROT_RDWR);
-
- /// Return the base address of this memory pool, 0 if base_addr
- /// never changes.
- virtual void *base_addr (void) const;
-
- void dump (void) const {}
-
-protected:
-
- /**
- * Map portions or the entire pool into the local virtual address
- * space. To do this, we compute the new @c file_offset of the
- * backing store and commit the memory.
- */
- int map (int &firstTime, size_t appendBytes = 0);
-
- /// Release the mapping.
- int unmap (void);
-
-private:
-
- /**
- * @class Control_Block
- *
- * @brief Attributes that are meaningful in local storage only.
- */
- class Control_Block
- {
- public:
- /// Required base address
- void *req_base_;
-
- /// Base address returned from system call
- void *mapped_base_;
-
- /**
- * @class Shared_Control_Block
- *
- * @brief Pool statistics
- */
- class Shared_Control_Block
- {
- public:
- /// Maximum size the pool may grow
- size_t max_size_;
-
- /// Size of mapped shared memory segment
- size_t mapped_size_;
-
- /// Offset to mapped but not yet acquired address space
- ptrdiff_t free_offset_;
-
- /// Size of mapped but not yet acquired address space
- size_t free_size_;
- };
-
- Shared_Control_Block sh_;
- };
-
- // Base of mapped region. If this has the value of 0 then the OS is
- // free to select any address to map the file, otherwise this value
- // is what the OS must try to use to mmap the file.
-
- /// Description of what our process mapped.
- Control_Block local_cb_;
-
- /// Shared memory pool statistics.
- Control_Block *shared_cb_;
-
- /// File mapping handle.
- ACE_HANDLE object_handle_;
-
- /// System page size.
- size_t page_size_;
-
- /// Name of the backing store where the shared memory pool is kept.
- ACE_TCHAR backing_store_name_[MAXPATHLEN];
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_WIN32 && !ACE_HAS_PHARLAP */
-
-#if defined (__ACE_INLINE__)
-#include "ace/Pagefile_Memory_Pool.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_MEMORY_POOL_H */
-
diff --git a/dep/include/ace/Pagefile_Memory_Pool.inl b/dep/include/ace/Pagefile_Memory_Pool.inl
deleted file mode 100644
index fc499ec1708..00000000000
--- a/dep/include/ace/Pagefile_Memory_Pool.inl
+++ /dev/null
@@ -1,54 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Pagefile_Memory_Pool.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#if defined (ACE_WIN32) && !defined (ACE_HAS_PHARLAP)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE size_t
-ACE_Pagefile_Memory_Pool::round_to_chunk_size (size_t nbytes)
-{
- return (nbytes + ACE_DEFAULT_PAGEFILE_POOL_CHUNK - 1)
- & (~(ACE_DEFAULT_PAGEFILE_POOL_CHUNK - 1));
-}
-
-ACE_INLINE size_t
-ACE_Pagefile_Memory_Pool::round_to_page_size (size_t nbytes)
-{
- return ACE::round_to_pagesize (nbytes);
-}
-
-ACE_INLINE int
-ACE_Pagefile_Memory_Pool::sync (ssize_t, int)
-{
- return 0;
-}
-
-ACE_INLINE int
-ACE_Pagefile_Memory_Pool::sync (void *, size_t, int)
-{
- return 0;
-}
-
-ACE_INLINE int
-ACE_Pagefile_Memory_Pool::protect (ssize_t, int)
-{
- return 0;
-}
-
-ACE_INLINE int
-ACE_Pagefile_Memory_Pool::protect (void *, size_t, int)
-{
- return 0;
-}
-
-ACE_INLINE void *
-ACE_Pagefile_Memory_Pool::base_addr (void) const
-{
- return 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_WIN32 &7 !ACE_HAS_PHARLAP */
diff --git a/dep/include/ace/Pair.h b/dep/include/ace/Pair.h
deleted file mode 100644
index a92767790d9..00000000000
--- a/dep/include/ace/Pair.h
+++ /dev/null
@@ -1,32 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Pair.h
- *
- * $Id: Pair.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * ACE_Pair<> convenience header.
- *
- * @author Irfan Pyarali
- */
-//=============================================================================
-
-#ifndef ACE_PAIR_H
-#define ACE_PAIR_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// Include the templates here.
-#include "ace/Pair_T.h"
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_PAIR_H */
-
diff --git a/dep/include/ace/Pair_T.h b/dep/include/ace/Pair_T.h
deleted file mode 100644
index 313446d3678..00000000000
--- a/dep/include/ace/Pair_T.h
+++ /dev/null
@@ -1,129 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Pair_T.h
- *
- * $Id: Pair_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Irfan Pyarali <irfan@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_PAIR_T_H
-#define ACE_PAIR_T_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Pair
- *
- * @brief Defines a pair.
- *
- * Similar to the STL pair.
- */
-template <class T1, class T2>
-class ACE_Pair
-{
-public:
-
- // = Traits.
- typedef T1 first_type;
- typedef T2 second_type;
-
- // = Initialization and termination methods.
- /// Constructor.
- ACE_Pair (const T1 &t1,
- const T2 &t2);
-
- /// Default constructor.
- ACE_Pair (void);
-
- /// Get first.
- T1 &first (void);
- const T1 &first (void) const;
-
- /// Set first.
- void first (const T1 &t1);
-
- /// Get second.
- T2 &second (void);
- const T2 &second (void) const;
-
- /// Set second.
- void second (const T2 &t2);
-
- // Compare pairs.
- bool operator== (const ACE_Pair<T1, T2> &rhs) const;
-
-protected:
- /// First.
- T1 first_;
-
- /// Second.
- T2 second_;
-};
-
-/**
- * @class ACE_Reference_Pair
- *
- * @brief Defines a pair that only hold references.
- *
- * Similar to the STL pair (but restricted to holding references
- * and not copies).
- */
-template <class T1, class T2>
-class ACE_Reference_Pair
-{
-public:
-
- // = Traits.
- typedef T1 first_type;
- typedef T2 second_type;
-
- // = Initialization and termination methods.
- /// Constructor.
- ACE_Reference_Pair (T1 &t1,
- T2 &t2);
-
- /// Access first.
- T1 &first (void) const;
-
- /// Access second.
- T2 &second (void) const;
-
- // Compare pairs.
- bool operator== (const ACE_Reference_Pair<T1, T2> &rhs) const;
-
-protected:
- /// First.
- T1 &first_;
-
- /// Second.
- T2 &second_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Pair_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Pair_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Pair_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_PAIR_T_H */
-
diff --git a/dep/include/ace/Pair_T.inl b/dep/include/ace/Pair_T.inl
deleted file mode 100644
index 99c5bcd1917..00000000000
--- a/dep/include/ace/Pair_T.inl
+++ /dev/null
@@ -1,90 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Pair_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class T1, class T2> ACE_INLINE
-ACE_Pair<T1, T2>::ACE_Pair (const T1 &t1,
- const T2 &t2)
- : first_ (t1),
- second_ (t2)
-{
-}
-
-template <class T1, class T2> ACE_INLINE
-ACE_Pair<T1, T2>::ACE_Pair (void)
-{
-}
-
-template <class T1, class T2> ACE_INLINE T1 &
-ACE_Pair<T1, T2>::first (void)
-{
- return this->first_;
-}
-
-template <class T1, class T2> ACE_INLINE const T1 &
-ACE_Pair<T1, T2>::first (void) const
-{
- return this->first_;
-}
-
-template <class T1, class T2> ACE_INLINE void
-ACE_Pair<T1, T2>::first (const T1 &t1)
-{
- this->first_ = t1;
-}
-
-template <class T1, class T2> ACE_INLINE T2 &
-ACE_Pair<T1, T2>::second (void)
-{
- return this->second_;
-}
-
-template <class T1, class T2> ACE_INLINE const T2 &
-ACE_Pair<T1, T2>::second (void) const
-{
- return this->second_;
-}
-
-template <class T1, class T2> ACE_INLINE void
-ACE_Pair<T1, T2>::second (const T2 &t2)
-{
- this->second_ = t2;
-}
-
-template <class T1, class T2> ACE_INLINE bool
-ACE_Pair<T1, T2>::operator== (const ACE_Pair<T1, T2> &rhs) const
-{
- return (this->first_ == rhs.first_ &&
- this->second_ == rhs.second_);
-}
-
-template <class T1, class T2> ACE_INLINE
-ACE_Reference_Pair<T1, T2>::ACE_Reference_Pair (T1 &t1,
- T2 &t2)
- : first_ (t1),
- second_ (t2)
-{
-}
-
-template <class T1, class T2> ACE_INLINE T1 &
-ACE_Reference_Pair<T1, T2>::first (void) const
-{
- return this->first_;
-}
-
-template <class T1, class T2> ACE_INLINE T2 &
-ACE_Reference_Pair<T1, T2>::second (void) const
-{
- return this->second_;
-}
-
-template <class T1, class T2> ACE_INLINE bool
-ACE_Reference_Pair<T1, T2>::operator== (const ACE_Reference_Pair<T1, T2> &rhs) const
-{
- return (this->first_ == rhs.first_ &&
- this->second_ == rhs.second_);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Parse_Node.h b/dep/include/ace/Parse_Node.h
deleted file mode 100644
index eeb743e26c3..00000000000
--- a/dep/include/ace/Parse_Node.h
+++ /dev/null
@@ -1,522 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Parse_Node.h
- *
- * $Id: Parse_Node.h 81239 2008-04-04 22:28:48Z iliyan $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_PARSE_NODE_H
-#define ACE_PARSE_NODE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if (ACE_USES_CLASSIC_SVC_CONF == 1)
-
-#include "ace/DLL.h"
-#include "ace/SString.h"
-#include "ace/Svc_Conf.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/// Forward declarations.
-class ACE_Service_Config;
-class ACE_Service_Type;
-
-/**
- * @class ACE_Parse_Node
- *
- * @brief Provide the base of the object hierarchy that defines the parse
- * tree of Service Nodes.
- *
- * @note This class is only meant for INTERNAL use by ACE.
- *
- * @internal
- */
-class ACE_Parse_Node
-{
-public:
- ACE_Parse_Node (void);
- explicit ACE_Parse_Node (const ACE_TCHAR *name);
- virtual ~ACE_Parse_Node (void);
-
- ACE_Parse_Node *link (void) const;
- void link (ACE_Parse_Node *);
-
- /// Will update the yyereno member and/or the corresponding configuration
- virtual void apply (ACE_Service_Gestalt *cfg, int &yyerrno) = 0;
-
- const ACE_TCHAR *name (void) const;
- void print (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- const ACE_TCHAR *name_;
- ACE_Parse_Node *next_;
-
-private:
- ACE_UNIMPLEMENTED_FUNC (ACE_Parse_Node (const ACE_Parse_Node&))
- ACE_UNIMPLEMENTED_FUNC (ACE_Parse_Node& operator= (const ACE_Parse_Node&))
-};
-
-/**
- * @class ACE_Suspend_Node
- *
- * @brief Suspend a Service Node.
- *
- * @note This class is only meant for INTERNAL use by ACE.
- *
- * @internal
- */
-class ACE_Suspend_Node : public ACE_Parse_Node
-{
-public:
- ACE_Suspend_Node (const ACE_TCHAR *name);
- ~ACE_Suspend_Node (void);
-
- virtual void apply (ACE_Service_Gestalt *cfg, int &yyerrno);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- ACE_UNIMPLEMENTED_FUNC (ACE_Suspend_Node (const ACE_Suspend_Node&))
- ACE_UNIMPLEMENTED_FUNC (ACE_Suspend_Node& operator= (const ACE_Suspend_Node&))
-};
-
-/**
- * @class ACE_Resume_Node
- *
- * @brief Resume a Service Node.
- *
- * @note This class is only meant for INTERNAL use by ACE.
- *
- * @internal
- */
-class ACE_Resume_Node : public ACE_Parse_Node
-{
-public:
- ACE_Resume_Node (const ACE_TCHAR *name);
- ~ACE_Resume_Node (void);
-
- virtual void apply (ACE_Service_Gestalt *cfg, int &yyerrno);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- ACE_UNIMPLEMENTED_FUNC (ACE_Resume_Node (const ACE_Resume_Node&))
- ACE_UNIMPLEMENTED_FUNC (ACE_Resume_Node& operator= (const ACE_Resume_Node&))
-};
-
-/**
- * @class ACE_Remove_Node
- *
- * @brief Remove a Service Node.
- *
- * @note This class is only meant for INTERNAL use by ACE.
- *
- * @internal
- */
-class ACE_Remove_Node : public ACE_Parse_Node
-{
-public:
- ACE_Remove_Node (const ACE_TCHAR *name);
- ~ACE_Remove_Node (void);
-
- virtual void apply (ACE_Service_Gestalt *cfg, int &yyerrno);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- ACE_UNIMPLEMENTED_FUNC (ACE_Remove_Node (const ACE_Remove_Node&))
- ACE_UNIMPLEMENTED_FUNC (ACE_Remove_Node& operator= (const ACE_Remove_Node&))
-};
-
-/**
- * @class ACE_Static_Node
- *
- * @brief Handle a statically linked node.
- *
- * @note This class is only meant for INTERNAL use by ACE.
- *
- * @internal
- */
-class ACE_Static_Node : public ACE_Parse_Node
-{
-public:
- ACE_Static_Node (const ACE_TCHAR *name, ACE_TCHAR *params = 0);
- virtual ~ACE_Static_Node (void);
-
- virtual void apply (ACE_Service_Gestalt *cfg, int &yyerrno);
- virtual const ACE_Service_Type *record (const ACE_Service_Gestalt *g) const;
-
- ACE_TCHAR *parameters (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// "Command-line" parameters.
- ACE_TCHAR *parameters_;
-
-private:
- ACE_UNIMPLEMENTED_FUNC (ACE_Static_Node (const ACE_Static_Node&))
- ACE_UNIMPLEMENTED_FUNC (ACE_Static_Node& operator= (const ACE_Static_Node&))
-};
-
-class ACE_Service_Type_Factory;
-
-/**
- * @class ACE_Dynamic_Node
- *
- * @brief Handle a dynamically linked node.
- *
- * @note This class is only meant for INTERNAL use by ACE.
- *
- * @internal
- */
-class ACE_Dynamic_Node : public ACE_Static_Node
-{
-public:
- ACE_Dynamic_Node (ACE_Service_Type_Factory const *, ACE_TCHAR *params);
-
- virtual ~ACE_Dynamic_Node (void);
-
- // virtual const ACE_Service_Type *record (void) const;
- virtual void apply (ACE_Service_Gestalt *cfg, int &yyerrno);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Pointer to a descriptor that describes this node.
- ACE_Auto_Ptr<const ACE_Service_Type_Factory> factory_;
-
-private:
- ACE_UNIMPLEMENTED_FUNC (ACE_Dynamic_Node (const ACE_Dynamic_Node&))
- ACE_UNIMPLEMENTED_FUNC (ACE_Dynamic_Node& operator= (const ACE_Dynamic_Node&))
-};
-
-/**
- * @class ACE_Stream_Node
- *
- * @brief Handle a Stream.
- *
- * @note This class is only meant for INTERNAL use by ACE.
- *
- * @internal
- */
-class ACE_Stream_Node : public ACE_Parse_Node
-{
-public:
- ACE_Stream_Node (const ACE_Static_Node *, const ACE_Parse_Node *);
- virtual ~ACE_Stream_Node (void);
-
- virtual void apply (ACE_Service_Gestalt *cfg, int &yyerrno);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Linked list of modules that are part of the stream.
- const ACE_Static_Node *node_;
- const ACE_Parse_Node *mods_;
-
-private:
- ACE_UNIMPLEMENTED_FUNC (ACE_Stream_Node (const ACE_Stream_Node&))
- ACE_UNIMPLEMENTED_FUNC (ACE_Stream_Node& operator= (const ACE_Stream_Node&))
-};
-
-/**
- * @class ACE_Dummy_Node
- *
- * @brief I forget why this is here... ;-)
- * @brief Used in a special case of static STREAM definintion
- *
- * @note This class is only meant for INTERNAL use by ACE.
- */
-class ACE_Dummy_Node : public ACE_Parse_Node
-{
-public:
- ACE_Dummy_Node (const ACE_Static_Node *, const ACE_Parse_Node *);
- ~ACE_Dummy_Node (void);
-
- virtual void apply (ACE_Service_Gestalt *cfg, int &yyerrno);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Linked list of modules that we're dealing with.
- const ACE_Static_Node *node_;
- const ACE_Parse_Node *mods_;
-
-private:
- ACE_UNIMPLEMENTED_FUNC (ACE_Dummy_Node (const ACE_Dummy_Node&))
- ACE_UNIMPLEMENTED_FUNC (ACE_Dummy_Node& operator= (const ACE_Dummy_Node&))
-};
-
-/**
- * @class ACE_Location_Node
- *
- * @brief Keep track of where a shared library is located.
- *
- * @note This class is only meant for INTERNAL use by ACE.
- *
- * @internal
- */
-class ACE_Location_Node
-{
-public:
- ACE_Location_Node (void);
- const ACE_DLL &dll (void);
- const ACE_TCHAR *pathname (void) const;
- void pathname (const ACE_TCHAR *h);
- int dispose (void) const;
-
- virtual ~ACE_Location_Node (void);
- virtual void set_symbol (void *h);
-
- /// Will update the yyerrno member and/or corresponding configuration
- /// repository
- virtual void *symbol (ACE_Service_Gestalt *cfgptr,
- int &yyerrno,
- ACE_Service_Object_Exterminator * = 0) = 0;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- int open_dll (int & yyerrno);
-
- /// Pathname to the shared library we are working on.
- const ACE_TCHAR *pathname_;
-
- /**
- * Flag indicating whether the Service_Object generated by this
- * Location Node should be deleted or not
- * (ACE_Service_Type::DELETE_OBJ.)
- */
- int must_delete_;
-
- /// The open shared library.
- ACE_DLL dll_;
-
- /// Symbol that we've obtained from the shared library.
- void *symbol_;
-
-private:
- ACE_UNIMPLEMENTED_FUNC (ACE_Location_Node (const ACE_Location_Node&))
- ACE_UNIMPLEMENTED_FUNC (ACE_Location_Node& operator= (const ACE_Location_Node&))
-};
-
-/**
- * @class ACE_Object_Node
- *
- * @brief Keeps track of the symbol name for a shared object.
- *
- * @note This class is only meant for INTERNAL use by ACE.
- *
- * @internal
- */
-class ACE_Object_Node : public ACE_Location_Node
-{
-public:
- ACE_Object_Node (const ACE_TCHAR *pathname, const ACE_TCHAR *obj_name);
- virtual void *symbol (ACE_Service_Gestalt *config,
- int &yyerrno,
- ACE_Service_Object_Exterminator * = 0);
- virtual ~ACE_Object_Node (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Name of the object that we're parsing.
- const ACE_TCHAR *object_name_;
-
-private:
- ACE_UNIMPLEMENTED_FUNC (ACE_Object_Node (const ACE_Object_Node&))
- ACE_UNIMPLEMENTED_FUNC (ACE_Object_Node& operator= (const ACE_Object_Node&))
-};
-
-/**
- * @class ACE_Function_Node
- *
- * @brief Keeps track of the symbol name of for a shared function.
- *
- * @note This class is only meant for INTERNAL use by ACE.
- *
- * @internal
- */
-class ACE_Function_Node : public ACE_Location_Node
-{
-public:
- ACE_Function_Node (const ACE_TCHAR *pathname, const ACE_TCHAR *func_name);
- virtual void *symbol (ACE_Service_Gestalt *config,
- int &yyerrno,
- ACE_Service_Object_Exterminator *gobbler = 0);
- virtual ~ACE_Function_Node (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-
- /// Return mangled function name that takes into account ACE
- /// versioned namespace.
- /**
- * This function embeds the ACE versioned namespace name into the
- * original function name if versioned namespace support has been
- * enabled and the original function name conforms to the ACE
- * Service Object factory function naming conventions. For example
- * "@c _make_Foo" becomes "@c make_ACE_5_4_7_Foo".
- * @par
- * If versioned namespace support is disabled or the factory
- * function name does conform to ACE conventions, no mangling will
- * occur and the verbatim function name is returned.
- *
- * @return Function name that takes into account versioned namespace
- * name. Caller is responsible for calling operator
- * delete[] or ACE::strdelete() on the returned string.
- */
- ACE_TCHAR * make_func_name (ACE_TCHAR const * func_name);
-
-private:
-
- /// Name of the function that we're parsing.
- const ACE_TCHAR *function_name_;
-
-private:
- ACE_UNIMPLEMENTED_FUNC (ACE_Function_Node (const ACE_Function_Node&))
- ACE_UNIMPLEMENTED_FUNC (ACE_Function_Node& operator= (const ACE_Function_Node&))
-};
-
-/**
- * @class ACE_Static_Function_Node
- *
- * @brief Keeps track of the symbol name for a function that is not
- * linked in from a DLL, but is statically linked with the
- * application.
- *
- * @note This class is only meant for INTERNAL use by ACE.
- *
- * @internal
- */
-class ACE_Static_Function_Node : public ACE_Location_Node
-{
-public:
- explicit ACE_Static_Function_Node (const ACE_TCHAR *func_name);
- virtual void *symbol (ACE_Service_Gestalt *config,
- int &yyerrno,
- ACE_Service_Object_Exterminator * = 0);
- virtual ~ACE_Static_Function_Node (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Name of the function that we're parsing.
- const ACE_TCHAR *function_name_;
-
-private:
- ACE_UNIMPLEMENTED_FUNC (ACE_Static_Function_Node (const ACE_Static_Function_Node&))
- ACE_UNIMPLEMENTED_FUNC (ACE_Static_Function_Node& operator= (const ACE_Static_Function_Node&))
-};
-
-/// A helper class used to safely register dynamic services, which may contains
-/// subordinate static services. It is used to capture the necessary data during
-/// the parsing, but perform the actuall instantiation later.
-class ACE_Service_Type_Factory
-{
-public:
- ACE_Service_Type_Factory (ACE_TCHAR const *name,
- int type,
- ACE_Location_Node *location,
- int active);
-
- ~ACE_Service_Type_Factory (void);
-
- ACE_Service_Type *make_service_type (ACE_Service_Gestalt *pcfg) const;
-
- ACE_TCHAR const* name (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-
- /**
- * Not implemented to enforce no copying
- */
- ACE_UNIMPLEMENTED_FUNC
- (ACE_Service_Type_Factory(const ACE_Service_Type_Factory&))
-
- ACE_UNIMPLEMENTED_FUNC
- (ACE_Service_Type_Factory& operator=(const ACE_Service_Type_Factory&))
-
-private:
- ACE_TString name_;
- int type_;
- ACE_Auto_Ptr<ACE_Location_Node> location_;
- int is_active_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_USES_CLASSIC_SVC_CONF == 1 */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_PARSE_NODE_H */
-
diff --git a/dep/include/ace/Ping_Socket.h b/dep/include/ace/Ping_Socket.h
deleted file mode 100644
index 6681d013dbc..00000000000
--- a/dep/include/ace/Ping_Socket.h
+++ /dev/null
@@ -1,119 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Ping_Socket.h
- *
- * $Id: Ping_Socket.h 81737 2008-05-20 09:46:39Z johnnyw $
- *
- * @author Robert S. Iakobashvili <coroberti@gmail.com> <coroberti@walla.co.il>
- * @author Gonzalo A. Diethelm <gonzalo.diethelm@aditiva.com>
- */
-//=============================================================================
-
-#ifndef ACE_PING_SOCKET_H
-#define ACE_PING_SOCKET_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_ICMP_SUPPORT) && (ACE_HAS_ICMP_SUPPORT == 1)
-
-#include "ace/ICMP_Socket.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_INET_Addr;
-
-/**
- * @class ACE_Ping_Socket
- *
- * @brief This class is useful to perform ICMP echo checks (pinging)
- * on the party of your interest. It may be used as well to check
- * LAN-adapters against 3rd parties.
- */
-class ACE_Export ACE_Ping_Socket : public ACE_ICMP_Socket
-{
- typedef ACE_ICMP_Socket inherited;
-
-public:
-
- // = Initialization and termination methods.
-
- /// Default constructor.
- ACE_Ping_Socket (void);
-
- ACE_Ping_Socket (ACE_Addr const & local,
- int protocol = IPPROTO_ICMP,
- int reuse_addr = 0);
-
- /// Destructor.
- ~ACE_Ping_Socket (void);
-
- /// Wrapper around the BSD-style @c socket system call (no QoS).
- int open (ACE_Addr const & local = ACE_Addr::sap_any,
- int protocol = IPPROTO_ICMP,
- int reuse_addr = 0);
-
- /// @a toConnect = 1 - makes connect to remote address
- int send_echo_check (ACE_INET_Addr & remote_addr,
- bool to_connect = false);
-
- /// To receive @c ICMP_ECHOREPLY. To be called after successfully
- /// sending @c ICMP_ECHO.
- int process_incoming_dgram (char * ptr, ssize_t len);
-
- /// @a toConnect = 1 - makes connect to remote address
- int make_echo_check (ACE_INET_Addr & remote_addr,
- bool to_connect = false,
- ACE_Time_Value const * timeout = &time_default_);
-
- char * icmp_recv_buff (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-public:
-
- enum
- {
- PING_BUFFER_SIZE = (1024 * 2)
- };
-
- static ACE_Time_Value const time_default_;
-
-private:
-
- int receive_echo_reply (ACE_Time_Value const * timeout);
-
- /// Do not allow this function to percolate up to this interface.
- int get_remote_addr (ACE_INET_Addr &addr) const;
-
- char icmp_send_buff_[PING_BUFFER_SIZE];
- char icmp_recv_buff_[PING_BUFFER_SIZE];
-
- ACE_UINT16 sequence_number_;
-
- bool connected_socket_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-# include "ace/Ping_Socket.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_ICMP_SUPPORT == 1 */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_PING_SOCKET_H */
-
diff --git a/dep/include/ace/Ping_Socket.inl b/dep/include/ace/Ping_Socket.inl
deleted file mode 100644
index bce261d91e6..00000000000
--- a/dep/include/ace/Ping_Socket.inl
+++ /dev/null
@@ -1,13 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Ping_Socket.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE char *
-ACE_Ping_Socket::icmp_recv_buff (void)
-{
- return this->icmp_recv_buff_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Pipe.h b/dep/include/ace/Pipe.h
deleted file mode 100644
index 0dd37ed14d0..00000000000
--- a/dep/include/ace/Pipe.h
+++ /dev/null
@@ -1,166 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Pipe.h
- *
- * $Id: Pipe.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_PIPE_H
-#define ACE_PIPE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Default_Constants.h"
-
-#include "ace/OS_NS_sys_uio.h"
-#include "ace/OS_NS_unistd.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decl.
-class ACE_Message_Block;
-class ACE_Time_Value;
-
-/**
- * @class ACE_Pipe
- *
- * @brief Provides a portable bidirectional "pipe" abstraction.
- *
- * This class is designed to work with select()-based demuxers, such
- * as the ACE_Select_Reactor, which is why it uses sockets on Windows
- * rather than Win32 pipes (which aren't select()'able).
- */
-class ACE_Export ACE_Pipe
-{
-public:
- // = Initialization and termination.
- /// Default constructor (does nothing...).
- ACE_Pipe (void);
-
- /// Open the pipe and initialize the handles.
- ACE_Pipe (ACE_HANDLE handles[2]);
-
- /// Initialize the ACE_Pipe from the @a read and @a write handles.
- ACE_Pipe (ACE_HANDLE read, ACE_HANDLE write);
-
- /// Default dtor. It doesn't close the handles for you.
- ~ACE_Pipe (void);
-
- /// Open the pipe and initialize the handles.
- int open (ACE_HANDLE handles[2]);
-
- /// Open the pipe, setting the buffer size to the maximum.
- int open (int buffer_size = ACE_DEFAULT_MAX_SOCKET_BUFSIZ);
-
- /// Close down the pipe HANDLEs;
- int close (void);
-
- // = Accessors.
-
- /**
- * This is the "read" side of the pipe. Note, however, that
- * processes can also write to this handle as well since pipes are
- * bi-directional.
- */
- ACE_HANDLE read_handle (void) const;
-
- /**
- * This is the "write" side of the pipe. Note, however, that
- * processes can also read to this handle as well since pipes are
- * bi-directional.
- */
- ACE_HANDLE write_handle (void) const;
-
- /// Dump the state of the object.
- void dump (void) const;
-
- /// send upto @a n bytes in @a buf.
- ssize_t send (const void *buf, size_t n) const;
-
- /// Recv upto @a n bytes in @a buf.
- ssize_t recv (void *buf, size_t n) const;
-
- /// Send n bytes, keep trying until n are sent.
- ssize_t send_n (const void *buf, size_t n) const;
-
- /// Send all the @a message_blocks chained through their <next> and
- /// <cont> pointers. This call uses the underlying OS gather-write
- /// operation to reduce the domain-crossing penalty.
- ssize_t send_n (const ACE_Message_Block *message_block,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0);
-
- /// Recv n bytes, keep trying until n are received.
- ssize_t recv_n (void *buf, size_t n) const;
-
- /// Send iovecs via <::writev>.
- ssize_t send (const iovec iov[], int n) const;
-
- /// Recv iovecs via <::readv>.
- ssize_t recv (iovec iov[], int n) const;
-
- /**
- * Send N char *ptrs and int lengths. Note that the char *'s
- * precede the ints (basically, an varargs version of writev). The
- * count N is the *total* number of trailing arguments, *not* a
- * couple of the number of tuple pairs!
- */
- ssize_t send (size_t n, ...) const;
-
- /**
- * This is an interface to ::readv, that doesn't use the struct
- * iovec explicitly. The ... can be passed as an arbitrary number
- * of (char *ptr, int len) tuples. However, the count N is the
- * *total* number of trailing arguments, *not* a couple of the
- * number of tuple pairs!
- */
- ssize_t recv (size_t n, ...) const;
-
- /// Send @a n bytes via Win32 WriteFile using overlapped I/O.
- ssize_t send (const void *buf,
- size_t n,
- ACE_OVERLAPPED *overlapped) const;
-
- /// Recv @a n bytes via Win32 ReadFile using overlapped I/O.
- ssize_t recv (void *buf,
- size_t n,
- ACE_OVERLAPPED *overlapped) const;
-
- /// Send an <iovec> of size @a n to the file.
- ssize_t sendv (const iovec iov[],
- int n) const;
-
- /// Send an @c iovec of size @a n to the file. Will block until all
- /// bytes are sent or an error occurs.
- ssize_t sendv_n (const iovec iov[],
- int n) const;
-
- /// Receive an @c iovec of size @a n to the file.
- ssize_t recvv_n (iovec iov[],
- int n) const;
-
-private:
- ACE_HANDLE handles_[2];
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Pipe.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_PIPE_H */
-
diff --git a/dep/include/ace/Pipe.inl b/dep/include/ace/Pipe.inl
deleted file mode 100644
index 63e6ea5d4fb..00000000000
--- a/dep/include/ace/Pipe.inl
+++ /dev/null
@@ -1,188 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Pipe.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Global_Macros.h"
-#include "ace/ACE.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Pipe::~ACE_Pipe (void)
-{
- ACE_TRACE ("ACE_Pipe::~ACE_Pipe");
- // Notice that the destructor doesn't close the handles for you.
-}
-
-ACE_INLINE ACE_HANDLE
-ACE_Pipe::read_handle (void) const
-{
- ACE_TRACE ("ACE_Pipe::read_handle");
- return this->handles_[0];
-}
-
-ACE_INLINE ACE_HANDLE
-ACE_Pipe::write_handle (void) const
-{
- ACE_TRACE ("ACE_Pipe::write_handle");
- return this->handles_[1];
-}
-
-ACE_INLINE ssize_t
-ACE_Pipe::sendv_n (const iovec iov[], int n) const
-{
- ACE_TRACE ("ACE_Pipe::sendv_n");
-#if defined (ACE_WIN32)
- return ACE::sendv_n (this->write_handle (),
- iov,
- n);
-#else
- return ACE::writev_n (this->write_handle (),
- iov,
- n);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE ssize_t
-ACE_Pipe::send_n (const ACE_Message_Block *message_block,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred)
-{
- ACE_TRACE ("ACE_Pipe::send_n");
-#if defined (ACE_WIN32)
- return ACE::send_n (this->write_handle (),
- message_block,
- timeout,
- bytes_transferred);
-#else
- ACE_UNUSED_ARG (timeout);
- return ACE::write_n (this->write_handle (),
- message_block,
- bytes_transferred);
-#endif /* ACE_WIN32 */
-}
-
-// Recv an n byte message from the file.
-
-ACE_INLINE ssize_t
-ACE_Pipe::recvv_n (iovec iov[], int n) const
-{
- ACE_TRACE ("ACE_Pipe::recvv_n");
- // @@ Carlos, can you please update this to call the
- // new ACE::recvv_n() method that you write?
-#if defined (ACE_WIN32)
- return ACE_OS::sendv (this->read_handle (),
- iov,
- n);
-#else
- return ACE_OS::readv (this->read_handle (),
- iov,
- n);
-#endif /* ACE_WIN32 */
-}
-
-// Send an <iovec> of size <n> to the file.
-
-ACE_INLINE ssize_t
-ACE_Pipe::sendv (const iovec iov[], int n) const
-{
- ACE_TRACE ("ACE_Pipe::sendv");
-#if defined (ACE_WIN32)
- return ACE_OS::sendv (this->write_handle (), iov, n);
-#else
- return ACE_OS::writev (this->write_handle (), iov, n);
-#endif /* ACE_WIN32 */
-}
-
-// Send exactly N bytes from BUF to this file. Keeping trying until
-// this many bytes are sent.
-
-ACE_INLINE ssize_t
-ACE_Pipe::send_n (const void *buf, size_t n) const
-{
- ACE_TRACE ("ACE_Pipe::send_n");
-#if defined (ACE_WIN32)
- return ACE::send_n (this->write_handle (), buf, n);
-#else
- return ACE::write_n (this->write_handle (), buf, n);
-#endif /* ACE_WIN32 */
-}
-
-// Receive exactly N bytes from this file into BUF. Keep trying until
-// this many bytes are received.
-
-ACE_INLINE ssize_t
-ACE_Pipe::recv_n (void *buf, size_t n) const
-{
- ACE_TRACE ("ACE_Pipe::recv_n");
-#if defined (ACE_WIN32)
- return ACE::recv_n (this->read_handle (), buf, n);
-#else
- return ACE::read_n (this->read_handle (), buf, n);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE ssize_t
-ACE_Pipe::send (const void *buf, size_t n) const
-{
- ACE_TRACE ("ACE_Pipe::send");
-#if defined (ACE_WIN32)
- return ACE_OS::send (this->write_handle (), static_cast <const char *> (buf), n);
-#else
- return ACE_OS::write (this->write_handle (), static_cast <const char *> (buf), n);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE ssize_t
-ACE_Pipe::recv (void *buf, size_t n) const
-{
- ACE_TRACE ("ACE_Pipe::recv");
-#if defined (ACE_WIN32)
- return ACE_OS::recv (this->read_handle (), static_cast <char *> (buf), n);
-#else
- return ACE_OS::read (this->read_handle (), static_cast <char *> (buf), n);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE ssize_t
-ACE_Pipe::send (const iovec iov[], int n) const
-{
- ACE_TRACE ("ACE_Pipe::send");
-#if defined (ACE_WIN32)
- return ACE_OS::sendv (this->write_handle (), iov, n);
-#else
- return ACE_OS::writev (this->write_handle (), iov, n);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE ssize_t
-ACE_Pipe::recv (iovec iov[], int n) const
-{
- ACE_TRACE ("ACE_Pipe::recv");
-#if defined (ACE_WIN32)
- return ACE_OS::recvv (this->read_handle (), iov, n);
-#else
- return ACE_OS::readv (this->read_handle (), iov, n);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE ssize_t
-ACE_Pipe::send (const void *buf, size_t n,
- ACE_OVERLAPPED *overlapped) const
-{
- ACE_TRACE ("ACE_Pipe::send");
- return ACE_OS::write (this->write_handle (),
- static_cast <const char *> (buf), n,
- overlapped);
-}
-
-ACE_INLINE ssize_t
-ACE_Pipe::recv (void *buf, size_t n,
- ACE_OVERLAPPED *overlapped) const
-{
- ACE_TRACE ("ACE_Pipe::recv");
- return ACE_OS::read (this->read_handle (), static_cast <char *> (buf), n,
- overlapped);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Priority_Reactor.h b/dep/include/ace/Priority_Reactor.h
deleted file mode 100644
index bdca70ece7a..00000000000
--- a/dep/include/ace/Priority_Reactor.h
+++ /dev/null
@@ -1,101 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Priority_Reactor.h
- *
- * $Id: Priority_Reactor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Carlos O'Ryan <coryan@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_PRIORITY_REACTOR_H
-#define ACE_PRIORITY_REACTOR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Select_Reactor.h"
-#include "ace/Unbounded_Queue.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Priority_Reactor
- *
- * @brief Implements priority based dispatching.
- *
- * This class refines the dispatching mechanism for the
- * Select_Reactor by taking advantage of the priority method on
- * ACE_Event_Handler.
- */
-class ACE_Export ACE_Priority_Reactor : public ACE_Select_Reactor
-{
-public:
- // = Initialization and termination methods.
-
- /// Initialize ACE_Priority_Reactor with the default size.
- ACE_Priority_Reactor (ACE_Sig_Handler * = 0,
- ACE_Timer_Queue * = 0);
-
- /// Initialize ACE_Priority_Reactor with size @a size.
- ACE_Priority_Reactor (size_t size,
- int restart = 0,
- ACE_Sig_Handler * = 0,
- ACE_Timer_Queue * = 0);
-
- /// Close down the select_reactor and release all of its resources.
- virtual ~ACE_Priority_Reactor (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- // = Dispatching methods.
-
- /// We simply override this function to implement the priority
- /// dispatching.
- virtual int dispatch_io_set (int number_of_active_handles,
- int &number_dispatched,
- int mask,
- ACE_Handle_Set &dispatch_mask,
- ACE_Handle_Set &ready_mask,
- ACE_EH_PTMF callback);
-
-private:
- /// A small helper to initialize the bucket.
- void init_bucket (void);
-
- /// Build the bucket from the given dispatch_mask. Return -1 on
- /// failure, 0 otherwise.
- int build_bucket (ACE_Handle_Set& dispatch_mask,
- int &min_priority,
- int &max_priority);
-
- /// There is a queue per-priority, which simply holds the
- /// Event_Handlers until we know who goes first.
- typedef ACE_Unbounded_Queue<ACE_Event_Tuple> QUEUE;
- QUEUE** bucket_;
-
- /// The queues themselves use this allocator to minimize dynamic
- /// memory usage.
- ACE_Allocator* tuple_allocator_;
-
- /// Deny access since member-wise won't work...
- ACE_Priority_Reactor (const ACE_Priority_Reactor &);
- ACE_Priority_Reactor &operator = (const ACE_Priority_Reactor &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_PRIORITY_REACTOR_H */
-
diff --git a/dep/include/ace/Proactor.h b/dep/include/ace/Proactor.h
deleted file mode 100644
index 17afb7ecd3f..00000000000
--- a/dep/include/ace/Proactor.h
+++ /dev/null
@@ -1,690 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Proactor.h
- *
- * $Id: Proactor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Irfan Pyarali <irfan@cs.wustl.edu>
- * @author Tim Harrison <harrison@cs.wustl.edu>
- * @author Alexander Babu Arulanthu <alex@cs.wustl.edu>
- * @author Alexander Libman <alibman@ihug.com.au>
- */
-//=============================================================================
-
-#ifndef ACE_PROACTOR_H
-#define ACE_PROACTOR_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_WIN32_OVERLAPPED_IO) || defined (ACE_HAS_AIO_CALLS)
-// This only works on Win32 platforms and on Unix platforms supporting
-// POSIX aio calls.
-
-# include "ace/Asynch_IO.h"
-# include "ace/Asynch_IO_Impl.h"
-# include "ace/Thread_Manager.h"
-# include "ace/Timer_Queue.h"
-# include "ace/Timer_List.h"
-# include "ace/Timer_Heap.h"
-# include "ace/Timer_Wheel.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declarations.
-class ACE_Proactor_Impl;
-class ACE_Proactor_Timer_Handler;
-
-/**
- * @class ACE_Proactor_Handle_Timeout_Upcall
- *
- * @brief Functor for ACE_Timer_Queue.
- *
- * This class implements the functor required by the Timer
- * Queue to call <handle_timeout> on ACE_Handlers.
- */
-class ACE_Proactor_Handle_Timeout_Upcall
-{
-
- /// Type def for the timer queue.
- typedef ACE_Timer_Queue_T<ACE_Handler *,
- ACE_Proactor_Handle_Timeout_Upcall,
- ACE_SYNCH_RECURSIVE_MUTEX>
- TIMER_QUEUE;
-
- /// The main Proactor class has special permissions.
- friend class ACE_Proactor;
-
-public:
- /// Constructor.
- ACE_Proactor_Handle_Timeout_Upcall (void);
-
- /// This method is called when a timer is registered.
- int registration (TIMER_QUEUE &timer_queue,
- ACE_Handler *handler,
- const void *arg);
-
- /// This method is called before the timer expires.
- int preinvoke (TIMER_QUEUE &timer_queue,
- ACE_Handler *handler,
- const void *arg,
- int recurring_timer,
- const ACE_Time_Value &cur_time,
- const void *&upcall_act);
-
- /// This method is called when the timer expires.
- int timeout (TIMER_QUEUE &timer_queue,
- ACE_Handler *handler,
- const void *arg,
- int recurring_timer,
- const ACE_Time_Value &cur_time);
-
- /// This method is called after the timer expires.
- int postinvoke (TIMER_QUEUE &timer_queue,
- ACE_Handler *handler,
- const void *arg,
- int recurring_timer,
- const ACE_Time_Value &cur_time,
- const void *upcall_act);
-
- /// This method is called when a handler is canceled.
- int cancel_type (TIMER_QUEUE &timer_queue,
- ACE_Handler *handler,
- int dont_call_handle_close,
- int &requires_reference_counting);
-
- /// This method is called when a timer is canceled.
- int cancel_timer (TIMER_QUEUE &timer_queue,
- ACE_Handler *handler,
- int dont_call_handle_close,
- int requires_reference_counting);
-
- /// This method is called when the timer queue is destroyed and the
- /// timer is still contained in it.
- int deletion (TIMER_QUEUE &timer_queue,
- ACE_Handler *handler,
- const void *arg);
-
-protected:
- /// Set the proactor. This will fail, if one is already set!
- int proactor (ACE_Proactor &proactor);
-
- /// Handle to the proactor. This is needed for posting a timer result
- /// to the Proactor's completion queue.
- ACE_Proactor *proactor_;
-};
-
-/**
- * @class ACE_Proactor
- *
- * @brief A manager for asynchronous event demultiplexing.
- *
- * See the Proactor pattern description at
- * http://www.cs.wustl.edu/~schmidt/proactor.ps.gz for more
- * details.
- */
-class ACE_Export ACE_Proactor
-{
- // = Here are the private typedefs that the ACE_Proactor uses.
-
- typedef ACE_Timer_Queue_Iterator_T<ACE_Handler *,
- ACE_Proactor_Handle_Timeout_Upcall,
- ACE_SYNCH_RECURSIVE_MUTEX>
- TIMER_QUEUE_ITERATOR;
- typedef ACE_Timer_List_T<ACE_Handler *,
- ACE_Proactor_Handle_Timeout_Upcall,
- ACE_SYNCH_RECURSIVE_MUTEX>
- TIMER_LIST;
- typedef ACE_Timer_List_Iterator_T<ACE_Handler *,
- ACE_Proactor_Handle_Timeout_Upcall,
- ACE_SYNCH_RECURSIVE_MUTEX>
- TIMER_LIST_ITERATOR;
- typedef ACE_Timer_Heap_T<ACE_Handler *,
- ACE_Proactor_Handle_Timeout_Upcall,
- ACE_SYNCH_RECURSIVE_MUTEX>
- TIMER_HEAP;
- typedef ACE_Timer_Heap_Iterator_T<ACE_Handler *,
- ACE_Proactor_Handle_Timeout_Upcall,
- ACE_SYNCH_RECURSIVE_MUTEX>
- TIMER_HEAP_ITERATOR;
- typedef ACE_Timer_Wheel_T<ACE_Handler *,
- ACE_Proactor_Handle_Timeout_Upcall,
- ACE_SYNCH_RECURSIVE_MUTEX>
- TIMER_WHEEL;
- typedef ACE_Timer_Wheel_Iterator_T<ACE_Handler *,
- ACE_Proactor_Handle_Timeout_Upcall,
- ACE_SYNCH_RECURSIVE_MUTEX>
- TIMER_WHEEL_ITERATOR;
-
- // = Friendship.
-
- /// Timer handler runs a thread and manages the timers, on behalf of
- /// the Proactor.
- friend class ACE_Proactor_Timer_Handler;
-
-public:
- /// Public type.
- typedef ACE_Timer_Queue_T<ACE_Handler *,
- ACE_Proactor_Handle_Timeout_Upcall,
- ACE_SYNCH_RECURSIVE_MUTEX>
- TIMER_QUEUE;
-
- /**
- * Constructor. If @a implementation is 0, the correct implementation
- * object will be created. @a delete_implementation flag determines
- * whether the implementation object should be deleted by the
- * Proactor or not. If @a tq is 0, a new TIMER_QUEUE is created.
- */
- ACE_Proactor (ACE_Proactor_Impl *implementation = 0,
- bool delete_implementation = false,
- TIMER_QUEUE *tq = 0);
-
- /// Destruction.
- ~ACE_Proactor (void);
-
- /// Get pointer to a process-wide ACE_Proactor. @a threads should
- /// be part of another method.
- static ACE_Proactor *instance (size_t threads = 0);
-
- /// Set pointer to a process-wide ACE_Proactor and return existing
- /// pointer.
- static ACE_Proactor *instance (ACE_Proactor * proactor,
- bool delete_proactor = false);
-
- /// Delete the dynamically allocated Singleton.
- static void close_singleton (void);
-
- /// Cleanup method, used by the ACE_Object_Manager to destroy the
- /// singleton.
- static void cleanup (void *instance, void *arg);
-
- /// Name of dll in which the singleton instance lives.
- static const ACE_TCHAR *dll_name (void);
-
- /// Name of component--ACE_Proactor in this case.
- static const ACE_TCHAR *name (void);
-
- // = Proactor event loop management methods.
-
- /// Run the event loop until the <ACE_Proactor::handle_events> method
- /// returns -1 or the <end_event_loop> method is invoked.
- static int run_event_loop (void);
-
- /**
- * Run the event loop until the <ACE_Proactor::handle_events> method
- * returns -1, the <end_event_loop> method is invoked, or the
- * ACE_Time_Value expires, in which case 0 is returned.
- */
- static int run_event_loop (ACE_Time_Value &tv);
-
- /**
- * Instruct the <ACE_Proactor::instance> to terminate its event
- * loop.
- * This method wakes up all the threads blocked on waiting for
- * completions and end the event loop.
- */
- static int end_event_loop (void);
-
- /**
- * Resets the <ACE_Proactor::end_event_loop_> static so that the
- * <run_event_loop> method can be restarted.
- */
- static int reset_event_loop (void);
-
- /**
- * The singleton proactor is used by the ACE_Service_Config.
- * Therefore, we must check for the reconfiguration request and
- * handle it after handling an event.
- */
- static int check_reconfiguration (ACE_Proactor *);
-
- /// Report if the <ACE_Proactor::instance> event loop is finished.
- static int event_loop_done (void);
-
- /// Close the associated @c ACE_Proactor_Impl implementation object.
- /**
- * If @arg delete_implementation was specified to the @c open() method,
- * the implementation object is also deleted.
- */
- int close (void);
-
- /**
- * You can add a hook to various run_event methods and the hook will
- * be called after handling every proactor event. If this function
- * returns 0, proactor_run_event_loop will check for the return value of
- * handle_events. If it is -1, the the proactor_run_event_loop will return
- * (pre-maturely.)
- */
- typedef int (*PROACTOR_EVENT_HOOK)(ACE_Proactor *);
-
- // These methods work with an instance of a proactor.
- /**
- * Run the event loop until the
- * <ACE_Proactor::handle_events>
- * method returns -1 or the <end_proactor_event_loop> method is invoked.
- */
- int proactor_run_event_loop (PROACTOR_EVENT_HOOK = 0);
-
- /**
- * Run the event loop until the <ACE_Proactor::handle_events>
- * method returns -1, the
- * <end_proactor_event_loop> method is invoked,
- * or the ACE_Time_Value
- * expires, in which case a 0 is returned.
- */
- int proactor_run_event_loop (ACE_Time_Value &tv,
- PROACTOR_EVENT_HOOK = 0);
-
- /**
- * Instruct the ACE_Proactor to terminate its event loop
- * and notifies the ACE_Proactor so that it can wake up
- * and close down gracefully.
- */
- int proactor_end_event_loop (void);
-
- /// Report if the ACE_Proactor event loop is finished.
- int proactor_event_loop_done (void);
-
- /// Resets the <ACE_Proactor::end_event_loop_> static so that the
- /// <run_event_loop> method can be restarted.
- int proactor_reset_event_loop (void);
-
- /// This method adds the @a handle to the I/O completion port. This
- /// function is a no-op function for Unix systems and returns 0;
- int register_handle (ACE_HANDLE handle,
- const void *completion_key);
-
- // = Timer management.
- /**
- * Schedule a @a handler that will expire after <time>. If it
- * expires then @a act is passed in as the value to the @a handler's
- * <handle_timeout> callback method. This method returns a
- * <timer_id>. This <timer_id> can be used to cancel a timer before
- * it expires. The cancellation ensures that <timer_ids> are unique
- * up to values of greater than 2 billion timers. As long as timers
- * don't stay around longer than this there should be no problems
- * with accidentally deleting the wrong timer. Returns -1 on
- * failure (which is guaranteed never to be a valid <timer_id>).
- */
- long schedule_timer (ACE_Handler &handler,
- const void *act,
- const ACE_Time_Value &time);
-
- long schedule_repeating_timer (ACE_Handler &handler,
- const void *act,
- const ACE_Time_Value &interval);
-
- // Same as above except @a interval it is used to reschedule the
- // @a handler automatically.
-
- /// This combines the above two methods into one. Mostly for backward
- /// compatibility.
- long schedule_timer (ACE_Handler &handler,
- const void *act,
- const ACE_Time_Value &time,
- const ACE_Time_Value &interval);
-
- /// Cancel all timers associated with this @a handler. Returns number
- /// of timers cancelled.
- int cancel_timer (ACE_Handler &handler,
- int dont_call_handle_close = 1);
-
- /**
- * Cancel the single <ACE_Handler> that matches the @a timer_id value
- * (which was returned from the <schedule> method). If @a act is
- * non-NULL then it will be set to point to the ``magic cookie''
- * argument passed in when the <Handler> was registered. This makes
- * it possible to free up the memory and avoid memory leaks.
- * Returns 1 if cancellation succeeded and 0 if the @a timer_id
- * wasn't found.
- */
- int cancel_timer (long timer_id,
- const void **act = 0,
- int dont_call_handle_close = 1);
-
- /**
- * Dispatch a single set of events, waiting up to a specified time limit
- * if necessary.
- * @param wait_time the time to wait for an event to occur. This is
- * a relative time. On successful return, the time is updated to
- * reflect the amount of time spent waiting for event(s) to occur.
- * @return Returns 0 if no events occur before the wait_time expires.
- * Returns 1 when a completion is dispatched. On error, returns -1
- * and sets errno accordingly.
- */
- int handle_events (ACE_Time_Value &wait_time);
-
- /**
- * Block indefinitely until at least one event is dispatched.
- * @return Returns 1 when a completion is dispatched. On error, returns -1
- * and sets errno accordingly.
- */
- int handle_events (void);
-
- /// Add wakeup dispatch threads (reinit).
- int wake_up_dispatch_threads (void);
-
- /// Close all dispatch threads.
- int close_dispatch_threads (int wait);
-
- /// Get number of thread used as a parameter to CreatIoCompletionPort.
- size_t number_of_threads (void) const;
-
- /// Set number of thread used as a parameter to CreatIoCompletionPort.
- void number_of_threads (size_t threads);
-
- /// Get timer queue.
- TIMER_QUEUE *timer_queue (void) const;
-
- /// Set timer queue.
- void timer_queue (TIMER_QUEUE *timer_queue);
-
- /**
- * Get the event handle.
- * It is a no-op in POSIX platforms and it returns
- * ACE_INVALID_HANDLE.
- */
- ACE_HANDLE get_handle (void) const;
-
- /// Get the implementation class.
- ACE_Proactor_Impl *implementation (void) const;
-
- // = Factory methods for the operations
-
- // Note that the user does not have to use or know about these
- // methods.
-
- /// Create the correct implementation class for doing
- /// Asynch_Read_Stream.
- ACE_Asynch_Read_Stream_Impl *create_asynch_read_stream (void);
-
- /// Create the correct implementation class for doing
- /// Asynch_Write_Stream.
- ACE_Asynch_Write_Stream_Impl *create_asynch_write_stream (void);
-
- /// Create the correct implementation class for doing
- /// Asynch_Read_File.
- ACE_Asynch_Read_File_Impl *create_asynch_read_file (void);
-
- /// Create the correct implementation class for doing
- /// Asynch_Write_File.
- ACE_Asynch_Write_File_Impl *create_asynch_write_file (void);
-
- /// Create the correct implementation class for doing Asynch_Accept.
- ACE_Asynch_Accept_Impl *create_asynch_accept (void);
-
- /// Create the correct implementation class for doing Asynch_Connect.
- ACE_Asynch_Connect_Impl *create_asynch_connect (void);
-
- /// Create the correct implementation class for doing
- /// Asynch_Transmit_File.
- ACE_Asynch_Transmit_File_Impl *create_asynch_transmit_file (void);
-
- /// Create the correct implementation class for doing
- /// Asynch_Read_Dgram.
- ACE_Asynch_Read_Dgram_Impl *create_asynch_read_dgram (void);
-
- /// Create the correct implementation class for doing
- /// Asynch_Write_Dgram.
- ACE_Asynch_Write_Dgram_Impl *create_asynch_write_dgram (void);
-
- // = Factory methods for the results
-
- // Note that the user does not have to use or know about these
- // methods unless they want to "fake" results.
-
- /// Create the correct implementation class for
- /// ACE_Asynch_Read_Stream::Result class.
- ACE_Asynch_Read_Stream_Result_Impl *
- create_asynch_read_stream_result (ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- u_long bytes_to_read,
- const void* act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- /// Create the correct implementation class for
- /// ACE_Asynch_Write_Stream::Result.
- ACE_Asynch_Write_Stream_Result_Impl *
- create_asynch_write_stream_result (ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- u_long bytes_to_write,
- const void* act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- /// Create the correct implementation class for
- /// ACE_Asynch_Read_File::Result.
- ACE_Asynch_Read_File_Result_Impl *
- create_asynch_read_file_result (ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- u_long bytes_to_read,
- const void* act,
- u_long offset,
- u_long offset_high,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- /// Create the correct implementation class for
- /// ACE_Asynch_Write_File::Result.
- ACE_Asynch_Write_File_Result_Impl *
- create_asynch_write_file_result (ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- u_long bytes_to_write,
- const void* act,
- u_long offset,
- u_long offset_high,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- /// Create the correct implementation class for
- /// ACE_Asynch_Read_Dgram::Result.
- ACE_Asynch_Read_Dgram_Result_Impl *
- create_asynch_read_dgram_result (ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block *message_block,
- size_t bytes_to_read,
- int flags,
- int protocol_family,
- const void* act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- /// Create the correct implementation class for
- /// ACE_Asynch_Write_Dgram::Result.
- ACE_Asynch_Write_Dgram_Result_Impl *
- create_asynch_write_dgram_result (ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block *message_block,
- size_t bytes_to_write,
- int flags,
- const void* act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- /// Create the correct implementation class for ACE_Asynch_Accept::Result.
- ACE_Asynch_Accept_Result_Impl *
- create_asynch_accept_result (ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE listen_handle,
- ACE_HANDLE accept_handle,
- ACE_Message_Block &message_block,
- u_long bytes_to_read,
- const void* act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- /// Create the correct implementation class for ACE_Asynch_Connect::Result
- ACE_Asynch_Connect_Result_Impl *
- create_asynch_connect_result (ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE connect_handle,
- const void* act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- /// Create the correct implementation class for
- /// ACE_Asynch_Transmit_File::Result.
- ACE_Asynch_Transmit_File_Result_Impl *
- create_asynch_transmit_file_result (ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE socket,
- ACE_HANDLE file,
- ACE_Asynch_Transmit_File::Header_And_Trailer *header_and_trailer,
- u_long bytes_to_write,
- u_long offset,
- u_long offset_high,
- u_long bytes_per_send,
- u_long flags,
- const void *act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- /**
- * Create a timer result object which can be used with the Timer
- * mechanism of the Proactor.
- * If @a signal_number is -1, <POSIX_SIG_Proactor> will create a
- * Timer object with a meaningful signal number, choosing the
- * largest signal number from the signal mask of the Proactor.
- */
- ACE_Asynch_Result_Impl *
- create_asynch_timer (ACE_Handler::Proxy_Ptr &handler_proxy,
- const void *act,
- const ACE_Time_Value &tv,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
-protected:
-
- /**
- * Post <how_many> completions to the completion port so that all
- * threads can wake up. This is used in conjunction with the
- * <run_event_loop>.
- */
- static int post_wakeup_completions (int how_many);
-
- /**
- * Post <how_many> completions to the completion port so that all
- * threads can wake up. This is used in conjunction with the
- * <proactor_run_event_loop>.
- */
- int proactor_post_wakeup_completions (int how_many);
-
- /// Set the implementation class.
- void implementation (ACE_Proactor_Impl *implementation);
-
- /// Delegation/implementation class that all methods will be
- /// forwarded to.
- ACE_Proactor_Impl *implementation_;
-
- /// Flag used to indicate whether we are responsible for cleaning up
- /// the implementation instance.
- bool delete_implementation_;
-
- /// Pointer to a process-wide ACE_Proactor.
- static ACE_Proactor *proactor_;
-
- /// Must delete the <proactor_> if true.
- static bool delete_proactor_;
-
- /// Handles timeout events.
- ACE_Proactor_Timer_Handler *timer_handler_;
-
- /// This will manage the thread in the Timer_Handler.
- ACE_Thread_Manager thr_mgr_;
-
- /// Timer Queue.
- TIMER_QUEUE *timer_queue_;
-
- /// Flag on whether to delete the timer queue.
- int delete_timer_queue_;
-
- /// Terminate the proactor event loop.
- sig_atomic_t end_event_loop_;
-
- /// Number of threads in the event loop.
- sig_atomic_t event_loop_thread_count_;
-
- /// Mutex to protect work with lists.
- ACE_SYNCH_MUTEX mutex_;
-
-private:
- /// Deny access since member-wise won't work...
- ACE_Proactor (const ACE_Proactor &);
- ACE_Proactor &operator= (const ACE_Proactor &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (__ACE_INLINE__)
-# include "ace/Proactor.inl"
-# endif /* __ACE_INLINE__ */
-
-#else /* NOT WIN32 or POSIX with AIO features. */
-
-# include "ace/os_include/os_stddef.h"
-# include "ace/os_include/os_signal.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-class ACE_Export ACE_Proactor
-{
-public:
- class Timer_Queue {};
- ACE_Proactor (size_t /* number_of_threads */ = 0,
- Timer_Queue * /* tq */ = 0) {}
- ~ACE_Proactor (void) {}
- int handle_events (void) { return -1; }
- int handle_events (ACE_Time_Value &) { return -1; }
-
- /// Placeholder to enable compilation on non-Win32 platforms
- static ACE_Proactor *instance (size_t threads = 0);
-
- /// Placeholder to enable compilation on non-Win32 platforms
- static ACE_Proactor *instance (ACE_Proactor *);
-
- /// Placeholder to enable compilation on non-Win32 platforms
- static void close_singleton (void);
-
- /// Placeholder to enable compilation on non-Win32 platforms
- static int run_event_loop (void);
-
- /// Placeholder to enable compilation on non-Win32 platforms
- static int run_event_loop (ACE_Time_Value &tv);
-
- /// Placeholder to enable compilation on non-Win32 platforms
- static int end_event_loop (void);
-
- /// Placeholder to enable compilation on non-Win32 platforms
- static sig_atomic_t event_loop_done (void);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_WIN32_OVERLAPPED_IO || ACE_HAS_AIO_CALLS */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_PROACTOR_H */
-
diff --git a/dep/include/ace/Proactor.inl b/dep/include/ace/Proactor.inl
deleted file mode 100644
index a62e7936e4c..00000000000
--- a/dep/include/ace/Proactor.inl
+++ /dev/null
@@ -1,80 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Proactor.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_Proactor::run_event_loop (void)
-{
- ACE_TRACE ("ACE_Proactor::run_event_loop");
- ACE_Proactor * const p = ACE_Proactor::instance ();
-
- if (p == 0)
- return -1;
-
- return p->proactor_run_event_loop (ACE_Proactor::check_reconfiguration);
-}
-
-ACE_INLINE int
-ACE_Proactor::run_event_loop (ACE_Time_Value &tv)
-{
- ACE_TRACE ("ACE_Proactor::run_event_loop (tv)");
- ACE_Proactor * const p = ACE_Proactor::instance ();
-
- if (p == 0)
- return -1;
-
- return p->proactor_run_event_loop
- (tv, ACE_Proactor::check_reconfiguration);
-}
-
-ACE_INLINE int
-ACE_Proactor::reset_event_loop(void)
-{
- ACE_TRACE ("ACE_Proactor::reset_event_loop");
- ACE_Proactor * const p = ACE_Proactor::instance ();
-
- if (p == 0)
- return -1;
-
- return p->proactor_reset_event_loop ();
-}
-
-ACE_INLINE int
-ACE_Proactor::end_event_loop (void)
-{
- ACE_TRACE ("ACE_Proactor::end_event_loop");
- ACE_Proactor * const p = ACE_Proactor::instance ();
-
- if (p == 0)
- return -1;
-
- return p->proactor_end_event_loop ();
-}
-
-ACE_INLINE int
-ACE_Proactor::event_loop_done (void)
-{
- ACE_TRACE ("ACE_Proactor::event_loop_done");
- ACE_Proactor * const p = ACE_Proactor::instance ();
-
- if (p == 0)
- return -1;
-
- return p->proactor_event_loop_done ();
-}
-
-ACE_INLINE int
-ACE_Proactor::post_wakeup_completions (int how_many)
-{
- ACE_TRACE ("ACE_Proactor::post_wakeup_completions");
- ACE_Proactor * const p = ACE_Proactor::instance ();
-
- if (p == 0)
- return -1;
-
- return p->proactor_post_wakeup_completions (how_many);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Proactor_Impl.h b/dep/include/ace/Proactor_Impl.h
deleted file mode 100644
index b93606f443e..00000000000
--- a/dep/include/ace/Proactor_Impl.h
+++ /dev/null
@@ -1,265 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Proactor_Impl.h
- *
- * $Id: Proactor_Impl.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Alexander Babu Arulanthu <alex@cs.wustl.edu>
- * @author Alexander Libman <alibman@ihug.com.au>
- */
-//=============================================================================
-
-#ifndef ACE_PROACTOR_IMPL_H
-#define ACE_PROACTOR_IMPL_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if defined (ACE_HAS_WIN32_OVERLAPPED_IO) || defined (ACE_HAS_AIO_CALLS)
-// This only works on standard Win32 platforms and on Unix platforms supporting
-// aio calls.
-
-#include "ace/Asynch_IO.h"
-#include "ace/Reactor.h"
-#include "ace/Countdown_Time.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Proactor_Impl
- *
- * @brief A manager for asynchronous event demultiplexing. This class
- * is the base class for all the concrete implementation
- * classes.
- *
- * See the Proactor pattern description at
- * http://www.cs.wustl.edu/~schmidt/proactor.ps.gz for more
- * details.
- */
-class ACE_Export ACE_Proactor_Impl : public ACE_Event_Handler
-{
-
-public:
- /// Virtual destruction.
- virtual ~ACE_Proactor_Impl (void);
-
- /// Close the IO completion port.
- virtual int close (void) = 0;
-
- /// This method adds the @a handle to the I/O completion port. This
- /// function is a no-op function for Unix systems.
- virtual int register_handle (ACE_HANDLE handle,
- const void *completion_key) = 0;
-
- /**
- * Dispatch a single set of events. If @a wait_time elapses before
- * any events occur, return 0. Return 1 on success i.e., when a
- * completion is dispatched, non-zero (-1) on errors and errno is
- * set accordingly.
- */
- virtual int handle_events (ACE_Time_Value &wait_time) = 0;
-
- /**
- * Block indefinitely until at least one event is dispatched.
- * Dispatch a single set of events. If <wait_time> elapses before
- * any events occur, return 0. Return 1 on success i.e., when a
- * completion is dispatched, non-zero (-1) on errors and errno is
- * set accordingly.
- */
- virtual int handle_events (void) = 0;
-
- /// Add wakeup dispatch threads (reinit).
- virtual int wake_up_dispatch_threads (void) = 0;
-
- /// Close all dispatch threads.
- virtual int close_dispatch_threads (int wait) = 0;
-
- /// Get number of thread used as a parameter to CreatIoCompletionPort.
- virtual size_t number_of_threads (void) const = 0;
-
- /// Set number of thread used as a parameter to CreatIoCompletionPort.
- virtual void number_of_threads (size_t threads) = 0;
-
- /// Get the event handle.
- virtual ACE_HANDLE get_handle (void) const = 0;
-
- //
- // = Factory methods for the operations
- //
- // Note that the user does not have to use or know about these
- // methods.
-
- /// Create the correct implementation class for doing Asynch_Read_Stream.
- virtual ACE_Asynch_Read_Stream_Impl *create_asynch_read_stream (void) = 0;
-
- /// Create the correct implementation class for doing Asynch_Write_Stream.
- virtual ACE_Asynch_Write_Stream_Impl *create_asynch_write_stream (void) = 0;
-
- /// Create the correct implementation class for doing Asynch_Read_File.
- virtual ACE_Asynch_Read_File_Impl *create_asynch_read_file (void) = 0;
-
- /// Create the correct implementation class for doing Asynch_Write_File.
- virtual ACE_Asynch_Write_File_Impl *create_asynch_write_file (void) = 0;
-
- /// Create the correct implementation class for doing Asynch_Accept.
- virtual ACE_Asynch_Accept_Impl *create_asynch_accept (void) = 0;
-
- /// Create the correct implementation class for doing Asynch_Connect.
- virtual ACE_Asynch_Connect_Impl *create_asynch_connect (void) = 0;
-
- /// Create the correct implementation class for doing Asynch_Transmit_File.
- virtual ACE_Asynch_Transmit_File_Impl *create_asynch_transmit_file (void) = 0;
-
- /// Create the correct implementation class for doing
- /// Asynch_Read_Dgram.
- virtual ACE_Asynch_Read_Dgram_Impl *create_asynch_read_dgram (void) = 0;
-
- /// Create the correct implementation class for doing
- /// Asynch_Write_Dgram.
- virtual ACE_Asynch_Write_Dgram_Impl *create_asynch_write_dgram (void) = 0;
-
- //
- // = Factory methods for the results
- //
- // Note that the user does not have to use or know about these
- // methods unless they want to "fake" results.
-
- /// Create the correct implementation class for ACE_Asynch_Read_Stream::Result class.
- virtual ACE_Asynch_Read_Stream_Result_Impl *
- create_asynch_read_stream_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void* act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN) = 0;
-
- /// Create the correct implementation class for ACE_Asynch_Write_Stream::Result.
- virtual ACE_Asynch_Write_Stream_Result_Impl *
- create_asynch_write_stream_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void* act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN) = 0;
-
- /// Create the correct implementation class for ACE_Asynch_Read_File::Result.
- virtual ACE_Asynch_Read_File_Result_Impl *
- create_asynch_read_file_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void* act,
- u_long offset,
- u_long offset_high,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN) = 0;
-
- /// Create the correct implementation class for ACE_Asynch_Write_File::Result.
- virtual ACE_Asynch_Write_File_Result_Impl *
- create_asynch_write_file_result (const ACE_Handler::Proxy_Ptr &handler,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void* act,
- u_long offset,
- u_long offset_high,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN) = 0;
-
- /// Create the correct implementation class for ACE_Asynch_Read_Dgram::Result.
- virtual ACE_Asynch_Read_Dgram_Result_Impl *
- create_asynch_read_dgram_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block *message_block,
- size_t bytes_to_read,
- int flags,
- int protocol_family,
- const void* act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN) = 0;
-
- /// Create the correct implementation class for ACE_Asynch_Write_Dgram::Result.
- virtual ACE_Asynch_Write_Dgram_Result_Impl *
- create_asynch_write_dgram_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block *message_block,
- size_t bytes_to_write,
- int flags,
- const void* act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN) = 0;
-
- /// Create the correct implementation class for ACE_Asynch_Accept::Result.
- virtual ACE_Asynch_Accept_Result_Impl *
- create_asynch_accept_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE listen_handle,
- ACE_HANDLE accept_handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void* act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN) = 0;
-
- /// Create the correct implementation class for ACE_Asynch_Connect::Result.
- virtual ACE_Asynch_Connect_Result_Impl *
- create_asynch_connect_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE connect_handle,
- const void* act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN) = 0;
-
- /// Create the correct implementation class for ACE_Asynch_Transmit_File::Result.
- virtual ACE_Asynch_Transmit_File_Result_Impl *
- create_asynch_transmit_file_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE socket,
- ACE_HANDLE file,
- ACE_Asynch_Transmit_File::Header_And_Trailer *header_and_trailer,
- size_t bytes_to_write,
- u_long offset,
- u_long offset_high,
- size_t bytes_per_send,
- u_long flags,
- const void *act,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN) = 0;
-
- /**
- * Create the correct implementation object for the Timer
- * result. POSIX_SIG_Proactor will create a Timer object with a
- * meaningful signal number, if you leave the signal number as 0.
- */
- virtual ACE_Asynch_Result_Impl *
- create_asynch_timer (const ACE_Handler::Proxy_Ptr &handler_proxy,
- const void *act,
- const ACE_Time_Value &tv,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = 0) = 0;
-
- /**
- * Post @a how_many completions to the completion port so that all
- * threads can wake up. This is used in conjunction with the
- * <run_event_loop>.
- */
- virtual int post_wakeup_completions (int how_many) = 0;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_WIN32_OVERLAPPED_IO || ACE_HAS_AIO_CALLS */
-#include /**/ "ace/post.h"
-#endif /* ACE_PROACTOR_IMPL_H */
-
diff --git a/dep/include/ace/Process.h b/dep/include/ace/Process.h
deleted file mode 100644
index 6f83dc3bb1c..00000000000
--- a/dep/include/ace/Process.h
+++ /dev/null
@@ -1,635 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Process.h
- *
- * $Id: Process.h 82233 2008-07-01 22:49:26Z shuston $
- *
- * @author Tim Harrison <harrison@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_PROCESS_H
-#define ACE_PROCESS_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Handle_Set.h"
-#include "ace/Global_Macros.h"
-#include "ace/os_include/sys/os_types.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declaration
-class ACE_Time_Value;
-
-/**
- * @class ACE_Process_Options
- *
- * @brief Process Options
- *
- * This class controls the options passed to <CreateProcess> (or <fork>
- * and <exec>).
- * Notice that on Windows CE, creating a process merely means
- * instantiating a new process. You can't set the handles (since
- * there's no stdin, stdout and stderr,) specify process/thread
- * options, set environment,... So, basically, this class only
- * set the command line and nothing else.
- * Notice that on UNIX platforms, if the <setenv> is used, the
- * <spawn> is using the <execve> system call. It means that the
- * <command_line> should include a full path to the program file
- * (<execve> does not search the PATH). If <setenv> is not used
- * then, the <spawn> is using the <execvp> which searches for the
- * program file in the PATH variable.
- */
-class ACE_Export ACE_Process_Options
-{
-public:
- enum
- {
- DEFAULT_COMMAND_LINE_BUF_LEN = 1024,
- // UNIX process creation flags.
-#if defined (ACE_WIN32)
- NO_EXEC = 0
-#else
- NO_EXEC = 1
-#endif /* ACE_WIN32 */
- };
-
-protected:
- // = Default settings not part of public Interface.
- //
- /// @todo These sizes should be taken from the appropriate
- /// POSIX/system header files and/or defined dynamically.
- enum
- {
- MAX_COMMAND_LINE_OPTIONS = 128,
- ENVIRONMENT_BUFFER = 16 * 1024, // 16K
- MAX_ENVIRONMENT_ARGS = 512 //
- };
-
-public:
- /**
- * If @a inherit_environment == true, the new process will inherit the
- * environment of the current process. @a command_line_buf_len is the
- * max strlen for command-line arguments.
- */
- ACE_Process_Options (bool inherit_environment = true,
- int command_line_buf_len = DEFAULT_COMMAND_LINE_BUF_LEN,
- int env_buf_len = ENVIRONMENT_BUFFER,
- int max_env_args = MAX_ENVIRONMENT_ARGS);
-
- /// Destructor.
- ~ACE_Process_Options (void);
-
- // = Methods to set process creation options portably.
-
- /**
- * Set the standard handles of the new process to the respective
- * handles. If you want to affect a subset of the handles, make
- * sure to set the others to ACE_INVALID_HANDLE. Returns 0 on
- * success, -1 on failure.
- */
- int set_handles (ACE_HANDLE std_in,
- ACE_HANDLE std_out = ACE_INVALID_HANDLE,
- ACE_HANDLE std_err = ACE_INVALID_HANDLE);
-
- /// Release the standard handles previously set with set_handles;
- void release_handles (void);
-
- /// @param format must be of the form "VARIABLE=VALUE". There can not be
- /// any spaces between VARIABLE and the equal sign.
- int setenv (const ACE_TCHAR *format,
- ...);
-
- /**
- * Set a single environment variable, @a variable_name. Since
- * different platforms separate each environment variable
- * differently, you must call this method once for each variable.
- * <format> can be any printf format string. So options->setenv
- * ("FOO","one + two = %s", "three") will result in "FOO=one + two =
- * three".
- */
- int setenv (const ACE_TCHAR *variable_name,
- const ACE_TCHAR *format,
- ...);
-
- /// Same as above with argv format. @a envp must be null terminated.
- int setenv (ACE_TCHAR *envp[]);
-
- /// Set the working directory for the process. strlen of @a wd must
- /// be <= MAXPATHLEN.
- void working_directory (const char *wd);
-
-#if defined (ACE_HAS_WCHAR)
- /// wchar_t version of working_directory
- void working_directory (const wchar_t *wd);
-#endif /* ACE_HAS_WCHAR */
-
- /**
- * Set the command-line arguments. @a format can use any printf
- * formats. The first token in @a format should be the path to the
- * application. This can either be a full path, relative path, or
- * just an executable name. If an executable name is used, we rely
- * on the platform's support for searching paths. Since we need a
- * path to run a process, this method *must* be called! Returns 0
- * on success, -1 on failure.
- */
- int command_line (const ACE_TCHAR *format, ...);
-
-#if defined (ACE_HAS_WCHAR) && !defined (ACE_HAS_WINCE)
- /// Anti-TChar version of command_line ()
- int command_line (const ACE_ANTI_TCHAR *format, ...);
-#endif /* ACE_HAS_WCHAR && !ACE_HAS_WINCE */
-
- /// Same as above in argv format. @a argv must be null terminated.
- int command_line (const ACE_TCHAR * const argv[]);
-
- /**
- * Specify the full path or relative path, or just the executable
- * name for the process. If this is set, then @a name will be used to
- * create the process instead of argv[0] set in the command
- * line. This is here so that you can supply something other than
- * executable name as argv[0].
- */
- void process_name (const ACE_TCHAR *name);
-
- /// Return the process_name. If the <process_name(name)> set
- /// method is not called, this method will return argv[0].
- const ACE_TCHAR *process_name (void);
-
- /// Get the creation flags.
- u_long creation_flags (void) const;
-
- /**
- * Set the creation flags to affect how a new process is spawned.
- * The only ACE-defined flag is @c NO_EXEC which prevents the new process
- * from executing a new program image; this is a simple POSIX fork().
- * The @c NO_EXEC option has no affect on Windows; on other platforms where
- * a POSIX fork is not possible, specifying @c NO_EXEC will cause
- * ACE_Process::spawn() to fail.
- *
- * On Windows, the value of creation_flags is passed to the @c CreateProcess
- * system call as the value of the @c dwCreationFlags parameter.
- */
- void creation_flags (u_long);
-
- /// Current working directory. Returns "" if nothing has been set.
- ACE_TCHAR *working_directory (void);
-
- /// Buffer of command-line options. Returns a pointer to a buffer that
- /// contains the list of command line options. Prior to a call to
- /// command_line_argv(), this is a single string of space separated
- /// arguments independent of which form of command_line() was used to
- /// create it. After a call to command_line_argv(), this is a list of
- /// strings each terminated by '\0'. [Note: spawn() will call
- /// command_line_argv().] The total length of all these strings is the
- /// same as the single string in the prior case and can be obtained by
- /// providing max_len. @arg max_len, if non-zero, provides a location
- /// into which the total length of the command line buffer is returned.
- ACE_TCHAR *command_line_buf (int *max_len = 0);
-
- /**
- * argv-style command-line options. Parses and modifies the string
- * created from <command_line_>. All spaces not in quotes ("" or
- * '') are replaced with null (\0) bytes. An argv array is built
- * and returned with each entry pointing to the start of
- * null-terminated string. Returns { 0 } if nothing has been set.
- */
- ACE_TCHAR * const *command_line_argv (void);
-
- /**
- * Null-terminated buffer of null terminated strings. Each string
- * is an environment assignment "VARIABLE=value". This buffer
- * should end with two null characters.
- */
- ACE_TCHAR *env_buf (void);
-
- /// Get the process group. On UNIX, these methods are used by the
- /// ACE_Process_Manager to manage groups of processes.
- pid_t getgroup (void) const;
-
- /// Set the process group. On UNIX, these methods are used by the
- /// ACE_Process_Manager to manage groups of processes.
- pid_t setgroup (pid_t pgrp);
-
- /// Allows disabling of handle inheritence, default is TRUE.
- int handle_inheritence (void);
- void handle_inheritence (int);
-
- /// Cause the specified handle to be passed to a child process
- /// when it runs a new program image.
- /**
- * The specified handle value will be included in the spawned
- * process's command line as @arg +H @arg handle, if a new
- * program is spawned (always on Win32; else if NO_EXEC is not
- * set in creation flags). The passed handle value will be
- * duplicated if on Win32 less capable than NT.
- * @return 0 if success, -1 if failure.
- */
- int pass_handle (ACE_HANDLE);
-
- /// Get a copy of the handles the ACE_Process_Options duplicated
- /// for the spawned process.
- /**
- * Any handles created through duplication of those passed into
- * @arg pass_handle are returned in @arg set.
- * @return 0 if there were no handles to return; 1 if there were.
- */
- int dup_handles (ACE_Handle_Set &set) const;
-
- /// Get a copy of the handles passed to the spawned process. This
- /// will be the set of handles previously passed to @arg pass_handle().
- /**
- * Any handles previously passed to @arg pass_handle are returned
- * in @arg set.
- * @return 0 if there were no handles to return; 1 if there were.
- */
- int passed_handles (ACE_Handle_Set &set) const;
-
- /// Set value for avoid_zombies (has no real effect except on *nix).
- void avoid_zombies (int);
-
- /// Get current value for avoid_zombies.
- int avoid_zombies (void);
-
- /// Enable the use of a Unicode environment. This only makes sense
- /// for Win32 when ACE_USES_WCHAR is not defined.
- void enable_unicode_environment (void);
-
- /// Disable the use of a Unicode environment.
- void disable_unicode_environment (void);
-
- /// Return the unicode environment status
- bool use_unicode_environment (void) const;
-
-#if defined (ACE_WIN32)
- // = Non-portable accessors for when you "just have to use them."
-
- /// Used for setting and getting.
- ACE_TEXT_STARTUPINFO *startup_info (void);
-
- /// Get the process_attributes. Returns NULL if
- /// set_process_attributes has not been set.
- LPSECURITY_ATTRIBUTES get_process_attributes (void) const;
-
- /// If this is called, a non-null process attributes is sent to
- /// CreateProcess.
- LPSECURITY_ATTRIBUTES set_process_attributes (void);
-
- /// Get the thread_attributes. Returns NULL if set_thread_attributes
- /// has not been set.
- LPSECURITY_ATTRIBUTES get_thread_attributes (void) const;
-
- /// If this is called, a non-null thread attributes is sent to
- /// CreateProcess.
- LPSECURITY_ATTRIBUTES set_thread_attributes (void);
-
-#else /* All things not WIN32 */
-
- /// argv-style array of environment settings.
- ACE_TCHAR *const *env_argv (void);
-
- // = Accessors for the standard handles.
- ACE_HANDLE get_stdin (void) const;
- ACE_HANDLE get_stdout (void) const;
- ACE_HANDLE get_stderr (void) const;
-
- // = Set/get real & effective user & group id associated with user.
- int setreugid (const ACE_TCHAR* user);
- void setruid (uid_t id);
- void seteuid (uid_t id);
- void setrgid (uid_t id);
- void setegid (uid_t id);
- uid_t getruid (void) const;
- uid_t geteuid (void) const;
- uid_t getrgid (void) const;
- uid_t getegid (void) const;
-
- /**
- * Get the inherit_environment flag.
- */
- bool inherit_environment (void) const;
-
- /**
- * Set the inherit_environment flag.
- */
- void inherit_environment (bool nv);
-#endif /* ACE_WIN32 */
-protected:
-
-#if !defined (ACE_HAS_WINCE)
- /// Add @a assignment to environment_buf_ and adjust
- /// environment_argv_. @a len is the strlen of @a assignment.
- int setenv_i (ACE_TCHAR *assignment, size_t len);
-
- /// Whether the child process inherits the current process
- /// environment.
- bool inherit_environment_;
-#endif /* !ACE_HAS_WINCE */
-
- /// Default 0.
- u_long creation_flags_;
-
- /// Avoid zombies for spawned processes.
- int avoid_zombies_;
-
-#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)
- /// Helper function to grab win32 environment and stick it in
- /// environment_buf_ using this->setenv_i.
- void inherit_environment (void);
-
- /// Ensures once only call to inherit environment.
- int environment_inherited_;
-
- ACE_TEXT_STARTUPINFO startup_info_;
-
- /// Default TRUE.
- BOOL handle_inheritence_;
-
- /// Pointer to security_buf1_.
- LPSECURITY_ATTRIBUTES process_attributes_;
-
- /// Pointer to security_buf2_.
- LPSECURITY_ATTRIBUTES thread_attributes_;
-
- /// Data for process_attributes_.
- SECURITY_ATTRIBUTES security_buf1_;
-
- /// Data for thread_attributes_.
- SECURITY_ATTRIBUTES security_buf2_;
-
-#else /* !ACE_WIN32 */
- ACE_HANDLE stdin_;
- ACE_HANDLE stdout_;
- ACE_HANDLE stderr_;
-
- // = Real & effective user & group id's.
- // These should be set to -1 to leave unchanged (default).
- uid_t ruid_;
- uid_t euid_;
- uid_t rgid_;
- uid_t egid_;
-#endif /* ACE_WIN32 */
-
-#if !defined (ACE_HAS_WINCE)
- /// Is 1 if stdhandles was called.
- int set_handles_called_;
-
- /// Pointer into environment_buf_. This should point to the next
- /// free spot.
- size_t environment_buf_index_;
-
- /// Pointer to environment_argv_.
- int environment_argv_index_;
-
- /// Pointer to buffer of the environment settings.
- ACE_TCHAR *environment_buf_;
-
- /// Size of the environment buffer. Configurable
- size_t environment_buf_len_;
-
- /// Pointers into environment_buf_.
- ACE_TCHAR **environment_argv_;
-
- /// Maximum number of environment variables. Configurable
- int max_environment_args_;
-
- /// Maximum index of environment_argv_ buffer
- int max_environ_argv_index_;
-
- /// The current working directory.
- ACE_TCHAR working_directory_[MAXPATHLEN + 1];
-#endif /* !ACE_HAS_WINCE */
-
- /// Ensures command_line_argv is only calculated once.
- int command_line_argv_calculated_;
-
- /// Pointer to buffer of command-line arguments. E.g., "-f foo -b bar".
- ACE_TCHAR *command_line_buf_;
-
- /// Pointer to copy of command-line arguments, which is needed when
- /// converting a command-line string into a command-line argv.
- ACE_TCHAR *command_line_copy_;
-
- /// Max length of command_line_buf_
- int command_line_buf_len_;
-
- /// Argv-style command-line arguments.
- ACE_TCHAR *command_line_argv_[MAX_COMMAND_LINE_OPTIONS];
-
- /// Process-group on Unix; unused on Win32.
- pid_t process_group_;
-
- /// Set of handles that were passed in pass_handle ().
- ACE_Handle_Set handles_passed_;
-
- /// Results of duplicating handles passed in pass_handle ().
- ACE_Handle_Set dup_handles_;
-
- /// Pathname for the process. Relative path or absolute path or just
- /// the program name.
- ACE_TCHAR process_name_[MAXPATHLEN + 1];
-
- /// Indicate if a Unicode environment should be used
- bool use_unicode_environment_;
-};
-
-//class ACE_Process_Manager;
-
-/**
- * @class ACE_Process
- *
- * @brief Process
- *
- * A Portable encapsulation for creating new processes.
- * Notice that on UNIX platforms, if the <setenv> is used, the
- * <spawn> is using the <execve> system call. It means that the
- * <command_line> should include a full path to the program file
- * (<execve> does not search the PATH). If <setenv> is not used
- * then, the <spawn> is using the <execvp> which searches for the
- * program file in the PATH variable.
- */
-class ACE_Export ACE_Process
-{
-public:
- friend class ACE_Process_Manager;
-
- /// Default construction. Must use <ACE_Process::spawn> to start.
- ACE_Process (void);
-
- /// Destructor.
- virtual ~ACE_Process (void);
-
- /**
- * Called just before <ACE_OS::fork> in the <spawn>. If this
- * returns non-zero, the <spawn> is aborted (and returns
- * ACE_INVALID_PID). The default simply returns zero.
- */
- virtual int prepare (ACE_Process_Options &options);
-
- /**
- * Launch a new process as described by @a options. On success,
- * returns 1 if the option avoid_zombies is set, else returns the
- * process id of the newly spawned child. Returns -1 on
- * failure. This will be fixed in the future versions of ACE when
- * the process id of the child will be returned regardless of the option.
- */
- virtual pid_t spawn (ACE_Process_Options &options);
-
- /// Called just after <ACE_OS::fork> in the parent's context, if the
- /// <fork> succeeds. The default is to do nothing.
- virtual void parent (pid_t child);
-
- /**
- * Called just after <ACE_OS::fork> in the child's context. The
- * default does nothing. This function is *not* called on Win32
- * because the process-creation scheme does not allow it.
- */
- virtual void child (pid_t parent);
-
- /// Called by a <Process_Manager> that is removing this Process from
- /// its table of managed Processes. Default is to do nothing.
- virtual void unmanage (void);
-
- /**
- * Wait for the process we've created to exit. If <status> != 0, it
- * points to an integer where the function store the exit status of
- * child process to. If <wait_options> == <WNOHANG> then return 0
- * and don't block if the child process hasn't exited yet. A return
- * value of -1 represents the <wait> operation failed, otherwise,
- * the child process id is returned.
- */
- pid_t wait (ACE_exitcode *status = 0,
- int wait_options = 0);
-
- /**
- * Timed wait for the process we've created to exit. A return value
- * of -1 indicates that the something failed; 0 indicates that a
- * timeout occurred. Otherwise, the child's process id is returned.
- * If <status> != 0, it points to an integer where the function
- * stores the child's exit status.
- *
- * @note On UNIX platforms this function uses <ualarm>, i.e., it
- * overwrites any existing alarm. In addition, it steals all
- * <SIGCHLD>s during the timeout period, which will break another
- * <ACE_Process_Manager> in the same process that's expecting
- * <SIGCHLD> to kick off process reaping.
- */
- pid_t wait (const ACE_Time_Value &tv,
- ACE_exitcode *status = 0);
-
- /// Send the process a signal. This is only portable to operating
- /// systems that support signals, such as UNIX/POSIX.
- int kill (int signum = SIGINT);
-
- /**
- * Terminate the process abruptly using <ACE::terminate_process>.
- * This call doesn't give the process a chance to cleanup, so use it
- * with caution...
- */
- int terminate (void);
-
- /// Return the process id of the new child process.
- pid_t getpid (void) const;
-
- /// Return the handle of the process, if it has one.
- ACE_HANDLE gethandle (void) const;
-
- /// Return 1 if running; 0 otherwise.
- int running (void) const;
-
- /// Return the Process' exit code. This method returns the raw
- /// exit status returned from system APIs (such as <wait> or
- /// <waitpid>). This value is system dependent.
- ACE_exitcode exit_code (void) const;
-
- /// Return the Process' return value. This method returns the
- /// actual return value that a child process returns or <exit>s.
- int return_value (void) const;
-
- /// Close all the handles in the set obtained from the
- /// @arg ACE_Process_Options::dup_handles object used to spawn
- /// the process.
- void close_dup_handles (void);
-
- /// Close all the handles in the set obtained from the
- /// @arg ACE_Process_Options::passed_handles object used to spawn
- /// the process.
- void close_passed_handles (void);
-
-#if defined (ACE_WIN32)
- PROCESS_INFORMATION process_info (void);
-#endif /* ACE_WIN32 */
-
-private:
-
- // Disallow copying and assignment since we don't support this (yet).
- ACE_Process (const ACE_Process &);
- void operator= (const ACE_Process &);
-
-protected:
- /// Set this process' <exit_code_>. ACE_Process_Manager uses this
- /// method to set the <exit_code_> after successfully waiting for
- /// this process to exit.
- void exit_code (ACE_exitcode code);
-
-#if defined (ACE_WIN32)
- PROCESS_INFORMATION process_info_;
-#else /* ACE_WIN32 */
- /// Process id of the child.
- pid_t child_id_;
-#endif /* ACE_WIN32 */
- ACE_exitcode exit_code_;
-
- /// Set of handles that were passed to the child process.
- ACE_Handle_Set handles_passed_;
- /// Handle duplicates made for the child process.
- ACE_Handle_Set dup_handles_;
-
-private:
-#if defined (ACE_WIN32) && \
- defined (ACE_HAS_WCHAR) && !defined (ACE_USES_WCHAR) && \
- !defined (ACE_HAS_WINCE)
- wchar_t* convert_env_buffer (const char* env) const;
-#endif
-};
-
-/**
- * @class ACE_Managed_Process
- *
- * @brief A process easily managed by ACE_Process_Manager.
- *
- * @arg ACE_Managed_Process is just an @arg ACE_Process with an
- * @arg unmanage() method that deletes the instance.
- * This class is only valid for use as a dynamically-allocated object!
- */
-class ACE_Export ACE_Managed_Process : public ACE_Process
-{
-public:
-
- /// Cleanup by deleting @c this.
- virtual void unmanage (void);
-
-protected:
-
- /// Make sure that we're allocated dynamically!
- virtual ~ACE_Managed_Process (void);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Process.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_PROCESS_H */
-
diff --git a/dep/include/ace/Process.inl b/dep/include/ace/Process.inl
deleted file mode 100644
index 9723ebc8c44..00000000000
--- a/dep/include/ace/Process.inl
+++ /dev/null
@@ -1,412 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Process.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/ACE.h"
-#include "ace/OS_NS_sys_wait.h"
-#include "ace/OS_NS_signal.h"
-#include "ace/OS_NS_pwd.h"
-#include "ace/OS_NS_string.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_WIN32)
-
-ACE_INLINE PROCESS_INFORMATION
-ACE_Process::process_info (void)
-{
- return process_info_;
-}
-#endif /* ACE_WIN32 */
-
-ACE_INLINE ACE_HANDLE
-ACE_Process::gethandle (void) const
-{
-#if defined (ACE_WIN32)
- return process_info_.hProcess;
-#else
- return ACE_HANDLE (child_id_);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE pid_t
-ACE_Process::getpid (void)
- const
-{
-#if defined (ACE_WIN32)
- return process_info_.dwProcessId;
-#else /* ACE_WIN32 */
- return child_id_;
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE pid_t
-ACE_Process::wait (ACE_exitcode *status,
- int wait_options)
-{
- pid_t retv =
- ACE_OS::wait (this->getpid (),
- &this->exit_code_,
- wait_options
-#if defined (ACE_WIN32)
- , process_info_.hProcess
-#endif /* ACE_WIN32 */
- );
- if (status != 0)
- *status = this->exit_code_;
-
- return retv;
-}
-
-ACE_INLINE int
-ACE_Process::kill (int signum)
-{
- if (this->getpid () != -1)
- return ACE_OS::kill (this->getpid (), signum);
- else
- return -1;
-}
-
-ACE_INLINE int
-ACE_Process::terminate (void)
-{
- if (this->getpid () != -1)
- return ACE::terminate_process (this->getpid ());
- else
- return -1;
-}
-
-ACE_INLINE int
-ACE_Process::return_value (void) const
-{
-#if defined (ACE_WIN32)
- return this->exit_code_;
-#else
- return WEXITSTATUS (this->exit_code_);
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE ACE_exitcode
-ACE_Process::exit_code (void) const
-{
- return this->exit_code_;
-}
-
-ACE_INLINE void
-ACE_Process::exit_code (ACE_exitcode code)
-{
- this->exit_code_ = code;
-}
-
-ACE_INLINE u_long
-ACE_Process_Options::creation_flags (void) const
-{
-#if defined (ACE_USES_WCHAR) && defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)
- return creation_flags_ | CREATE_UNICODE_ENVIRONMENT;
-#else
- return creation_flags_;
-#endif /* ACE_USES_WCHAR */
-}
-
-ACE_INLINE void
-ACE_Process_Options::creation_flags (u_long cf)
-{
- creation_flags_ = cf;
-}
-
-ACE_INLINE pid_t
-ACE_Process_Options::getgroup (void) const
-{
- return process_group_;
-}
-
-ACE_INLINE pid_t
-ACE_Process_Options::setgroup (pid_t pgrp)
-{
- pid_t old = process_group_;
- process_group_ = pgrp;
- return old;
-}
-
-ACE_INLINE int
-ACE_Process_Options::handle_inheritence (void)
-{
-#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)
- return handle_inheritence_;
-#else
- ACE_NOTSUP_RETURN (0); // This is a benign error.
-#endif /* ACE_WIN32 && ! ACE_HAS_WINCE */
-}
-
-ACE_INLINE void
-ACE_Process_Options::handle_inheritence (int hi)
-{
-#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)
- handle_inheritence_ = hi;
-#else
- ACE_UNUSED_ARG (hi);
- ACE_NOTSUP;
-#endif /* !ACE_HAS_WINCE */
-}
-
-ACE_INLINE int
-ACE_Process_Options::avoid_zombies (void)
-{
- return avoid_zombies_;
-}
-ACE_INLINE void
-ACE_Process_Options::avoid_zombies (int avoid_zombies)
-{
- avoid_zombies_ = avoid_zombies;
-}
-
-#if defined (ACE_WIN32)
-
-ACE_INLINE ACE_TEXT_STARTUPINFO *
-ACE_Process_Options::startup_info (void)
-{
-#if !defined (ACE_HAS_WINCE)
- return &startup_info_;
-#else
- return 0;
-#endif /* !ACE_HAS_WINCE */
-}
-
-ACE_INLINE LPSECURITY_ATTRIBUTES
-ACE_Process_Options::get_process_attributes (void) const
-{
-#if !defined (ACE_HAS_WINCE)
- return process_attributes_;
-#else
- return 0;
-#endif /* !ACE_HAS_WINCE */
-}
-
-ACE_INLINE LPSECURITY_ATTRIBUTES
-ACE_Process_Options::set_process_attributes (void)
-{
-#if !defined (ACE_HAS_WINCE)
- process_attributes_ = &security_buf1_;
- return process_attributes_;
-#else
- return 0;
-#endif /* !ACE_HAS_WINCE */
-}
-
-ACE_INLINE LPSECURITY_ATTRIBUTES
-ACE_Process_Options::get_thread_attributes (void) const
-{
-#if !defined (ACE_HAS_WINCE)
- return thread_attributes_;
-#else
- return 0;
-#endif /* !ACE_HAS_WINCE */
-}
-
-ACE_INLINE LPSECURITY_ATTRIBUTES
-ACE_Process_Options::set_thread_attributes (void)
-{
-#if !defined (ACE_HAS_WINCE)
- thread_attributes_ = &security_buf2_;
- return thread_attributes_;
-#else
- return 0;
-#endif /* !ACE_HAS_WINCE */
-}
-
-#else /* !defined (ACE_WIN32) */
-
-ACE_INLINE ACE_HANDLE
-ACE_Process_Options::get_stdin (void) const
-{
- return stdin_;
-}
-
-ACE_INLINE ACE_HANDLE
-ACE_Process_Options::get_stdout (void) const
-{
- return stdout_;
-}
-
-ACE_INLINE ACE_HANDLE
-ACE_Process_Options::get_stderr (void) const
-{
- return stderr_;
-}
-
-ACE_INLINE bool
-ACE_Process_Options::inherit_environment (void) const
-{
- return inherit_environment_;
-}
-
-ACE_INLINE void
-ACE_Process_Options::inherit_environment (bool nv)
-{
- inherit_environment_ = nv;
-}
-
-ACE_INLINE int
-ACE_Process_Options::setreugid (const ACE_TCHAR* user)
-{
-#if !defined (ACE_LACKS_PWD_FUNCTIONS)
- struct passwd *ent = ACE_OS::getpwnam (ACE_TEXT_ALWAYS_CHAR (user));
-
- if (ent != 0)
- {
- this->euid_ = ent->pw_uid;
- this->ruid_ = ent->pw_uid;
- this->egid_ = ent->pw_gid;
- this->rgid_ = ent->pw_gid;
- return 0;
- }
- else
- return -1;
-#else
- ACE_UNUSED_ARG (user);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_LACKS_PWD_FUNCTIONS */
-}
-
-ACE_INLINE void
-ACE_Process_Options::setruid (uid_t id)
-{
- this->ruid_ = id;
-}
-
-ACE_INLINE void
-ACE_Process_Options::seteuid (uid_t id)
-{
- this->euid_ = id;
-}
-
-ACE_INLINE void
-ACE_Process_Options::setrgid (uid_t id)
-{
- this->rgid_ = id;
-}
-
-ACE_INLINE void
-ACE_Process_Options::setegid (uid_t id)
-{
- this->egid_ = id;
-}
-
-ACE_INLINE uid_t
-ACE_Process_Options::getruid (void) const
-{
- return this->ruid_;
-}
-
-ACE_INLINE uid_t
-ACE_Process_Options::geteuid (void) const
-{
- return this->euid_;
-}
-
-ACE_INLINE uid_t
-ACE_Process_Options::getrgid (void) const
-{
- return this->rgid_;
-}
-
-ACE_INLINE uid_t
-ACE_Process_Options::getegid (void) const
-{
- return this->egid_;
-}
-#endif /* ACE_WIN32 */
-
-ACE_INLINE ACE_TCHAR *
-ACE_Process_Options::command_line_buf (int *max_lenp)
-{
- if (max_lenp != 0)
- *max_lenp = this->command_line_buf_len_;
- return this->command_line_buf_;
-}
-
-ACE_INLINE ACE_TCHAR *
-ACE_Process_Options::working_directory (void)
-{
-#if !defined (ACE_HAS_WINCE)
- if (working_directory_[0] == '\0')
- return 0;
- else
- return working_directory_;
-#else
- return 0;
-#endif /* !ACE_HAS_WINCE */
-}
-
-ACE_INLINE void
-ACE_Process_Options::working_directory (const char *wd)
-{
-#if !defined(ACE_HAS_WINCE)
- ACE_OS::strcpy (working_directory_, ACE_TEXT_CHAR_TO_TCHAR (wd));
-#else
- ACE_UNUSED_ARG (wd);
-#endif /* !ACE_HAS_WINCE */
-}
-
-#if defined (ACE_HAS_WCHAR)
-ACE_INLINE void
-ACE_Process_Options::working_directory (const wchar_t *wd)
-{
-#if !defined(ACE_HAS_WINCE)
- ACE_OS::strcpy (working_directory_, ACE_TEXT_WCHAR_TO_TCHAR (wd));
-#else
- ACE_UNUSED_ARG (wd);
-#endif /* !ACE_HAS_WINCE */
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE void
-ACE_Process_Options::process_name (const ACE_TCHAR *p)
-{
- ACE_OS::strcpy (this->process_name_, p);
-}
-
-ACE_INLINE const ACE_TCHAR *
-ACE_Process_Options::process_name (void)
-{
- if (process_name_[0] == '\0')
- this->process_name (this->command_line_argv ()[0]);
-
- return this->process_name_;
-}
-
-#if defined (ACE_HAS_WINCE)
-// Here is a collection of inline functions which are defined only
-// under CE. They are not empty on most other platforms.
-
-ACE_INLINE int
-ACE_Process_Options::setenv (ACE_TCHAR * /* envp */[])
-{
- return -1;
-}
-
-ACE_INLINE int
-ACE_Process_Options::setenv (const ACE_TCHAR * /* format */, ...)
-{
- return -1;
-}
-
-ACE_INLINE int
-ACE_Process_Options::setenv (const ACE_TCHAR * /* variable_name */,
- const ACE_TCHAR * /* format */,
- ...)
-{
- return -1;
-}
-
-ACE_INLINE int
-ACE_Process_Options::set_handles (ACE_HANDLE /* std_in */,
- ACE_HANDLE /* std_out */,
- ACE_HANDLE /* std_err */)
-{
- return -1;
-}
-
-#endif /* ACE_HAS_WINCE */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Process_Manager.h b/dep/include/ace/Process_Manager.h
deleted file mode 100644
index 53b5ad7d55b..00000000000
--- a/dep/include/ace/Process_Manager.h
+++ /dev/null
@@ -1,478 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Process_Manager.h
- *
- * $Id: Process_Manager.h 81014 2008-03-19 11:41:31Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_PROCESS_MANAGER_H
-#define ACE_PROCESS_MANAGER_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Process.h"
-#include "ace/Event_Handler.h"
-#include "ace/Time_Value.h"
-
-#if defined (ACE_HAS_THREADS)
-# include "ace/Recursive_Thread_Mutex.h"
-#endif /* ACE_HAS_THREADS */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Reactor;
-
-/**
- * @class ACE_Process_Manager
- *
- * @brief Manages a group of processes.
- *
- * This class allows applications to control groups of processes,
- * similar to how the ACE_Thread_Manager controls groups of
- * threads. Naturally, it doesn't work at all on platforms, such
- * as VxWorks or pSoS, that don't support process.
- * There are two main ways of using ACE_Process_Manager,
- * depending on how involved you wish to be with the termination
- * of managed processes. If you want processes to simply
- * go away when they're finished, register the ACE_Process_Manager with
- * an ACE_Reactor that can handle notifications of child process exit:
- * @code
- * ACE_Process_Manager mgr;
- * // ...
- * mgr.open (100, ACE_Reactor::instance ());
- * @endcode
- * In this usage scenario, the ACE_Process_Manager will clean up after any
- * processes that it spawns. (On Unix, this means executing a
- * wait(2) to collect the exit status and avoid zombie
- * processes; on Win32, it means closing the process and thread
- * HANDLEs that are created when CreateProcess is called.)
- *
- * @note When you register a ACE_Process_Manager with a
- * ACE_Reactor, the reactor's notification pipe is used to help reap the
- * available process exit statuses. Therefore, you must not use a
- * reactor whose notify pipe has been disabled. Here's the
- * sequence of steps used to reap the exit statuses in this case:
- * -# The ACE_Process_Manager registers a signal handler for
- * SIGCHLD.
- * -# The SIGCHLD handler, when invoked, uses the ACE_Reactor's
- * notify() method to inform the ACE_Reactor to wake up.
- * -# The ACE_Reactor calls the ACE_Process_Manager's
- * handle_input() method; this happens synchronously, not in
- * signal context.
- * -# The handle_input() method collects all available exit
- * statuses.
- *
- * If, on the other hand you want to wait "in line" to handle the
- * terminated process cleanup code, call one of the wait functions
- * whenever there might be managed processes that have exited.
- *
- * Note that in either case, ACE_Process_Manager allows you to
- * register an ACE_Event_Handler to be called when a specific
- * spawned process exits, or when any process without a specific
- * ACE_Event_Handler exits. When a process exits, the
- * appropriate ACE_Event_Handler's handle_input() method is called; the
- * ACE_HANDLE passed is either the process's HANDLE (on Win32),
- * or its pid cast to an ACE_HANDLE (on POSIX).
- * It is also possible to call the wait() functions even when the
- * ACE_Process_Manager is registered with a reactor.
- *
- * @note Be aware that the wait functions are "sloppy" on Unix,
- * because there's no good way to wait for a subset of the
- * children of a process. The wait functions may end up
- * collecting the exit status of a process that's not managed by
- * the ACE_Process_Manager whose wait() you invoked. It's best to
- * only use a single ACE_Process_Manager, and to create all
- * subprocesses by calling that manager's spawn() method.
- */
-class ACE_Export ACE_Process_Manager : protected ACE_Event_Handler
-{
-public:
- friend class ACE_Process_Control;
-
- enum
- {
- DEFAULT_SIZE = 100
- };
-
- /**
- * @name Initialization and termination methods
- */
- //@{
- /**
- * Initialize an ACE_Process_Manager with a table containing up to
- * @a size processes. This table resizes itself automatically as
- * needed. If a @a reactor is provided, this
- * ACE_Process_Manager uses it to notify an application when a
- * process it controls exits. By default, however, we don't use an
- * ACE_Reactor.
- */
- ACE_Process_Manager (size_t size = ACE_Process_Manager::DEFAULT_SIZE,
- ACE_Reactor *reactor = 0);
-
- /**
- * Initialize an ACE_Process_Manager with a table containing up to
- * @a size processes. This table resizes itself automatically as
- * needed. If a @a reactor is provided, this
- * ACE_Process_Manager uses it to notify an application when a
- * process it controls exits. By default, however, we don't use an
- * ACE_Reactor.
- */
- int open (size_t size = ACE_Process_Manager::DEFAULT_SIZE,
- ACE_Reactor *r = 0);
-
- /// Release all resources. Do not wait for processes to exit.
- int close (void);
-
- /// Destructor releases all resources and does not wait for processes
- /// to exit.
- virtual ~ACE_Process_Manager (void);
-
- //@}
-
- /**
- * @name Singleton access and control
- */
- //@{
- /// Get pointer to a process-wide ACE_Process_Manager.
- static ACE_Process_Manager *instance (void);
-
- /// Set pointer to a process-wide ACE_Process_Manager and return
- /// existing pointer.
- static ACE_Process_Manager *instance (ACE_Process_Manager *);
-
- /// Delete the dynamically allocated singleton.
- static void close_singleton (void);
-
- /// Cleanup method, used by the ACE_Object_Manager to destroy the
- /// singleton.
- static void cleanup (void *instance, void *arg);
-
- //@}
-
- /**
- * @name Process creation methods
- */
- //@{
- /**
- * Create a new process with specified @a options.
- * Register @a event_handler to be called back when the process exits.
- *
- * On success, returns the process id of the child that was created.
- * On failure, returns ACE_INVALID_PID.
- */
- pid_t spawn (ACE_Process *proc,
- ACE_Process_Options &options,
- ACE_Event_Handler *event_handler = 0);
-
- /**
- * Create a new process with the specified @a options.
- * Register @a event_handler to be called back when the process exits.
- *
- * On success, returns the process id of the child that was created.
- * On failure, returns ACE_INVALID_PID.
- */
- pid_t spawn (ACE_Process_Options &options,
- ACE_Event_Handler *event_handler = 0);
-
- /**
- * Create @a n new processes with the same @a options.
- * If @a child_pids is non-0 it is expected to be an array of at least
- * @a n pid_t, which are filled in with the process IDs of the spawned
- * processes.
- * Register @a event_handler to be called back when each process exits.
- * Returns 0 on success and -1 on failure.
- */
- int spawn_n (size_t n,
- ACE_Process_Options &options,
- pid_t *child_pids = 0,
- ACE_Event_Handler *event_Handler = 0);
- //@}
-
- /**
- * @name Process synchronization operations
- */
- //@{
- /**
- * Abruptly terminate a single process with id @a pid using the
- * ACE::terminate_process() method which works on both signal-capable
- * systems and on Windows.
- *
- * @note This call is potentially dangerous to use since the process
- * being terminated may not have a chance to cleanup before it shuts down.
- *
- * @retval 0 on success and -1 on failure.
- */
- int terminate (pid_t pid);
-
- /**
- * Sends the specified signal to the specified process.
- *
- * @note This only works on platforms that have signal capability. In
- * particular, it doesn't work on Windows.
- *
- * @retval 0 on success and -1 on failure.
- */
- int terminate (pid_t pid, int sig);
-
- /**
- * Block until there are no more child processes running that were
- * spawned by this ACE_Process_Manager. Unlike the wait() method
- * below, this method does not require a signal handler or use of
- * ACE_OS::sigwait() because it simply blocks synchronously waiting
- * for all the children managed by this ACE_Process_Manager to
- * exit. Note that this does not return any status information
- * about the success or failure of exiting child processes, although
- * any registered exit handlers are called.
- *
- * @param timeout Relative time to wait for processes to terminate.
- *
- * @retval 0 on success; -1 on failure.
- */
- int wait (const ACE_Time_Value &timeout = ACE_Time_Value::max_time);
-
- /**
- * Wait up to @a timeout for a single specified process to terminate.
- * If @a pid is 0, this method waits for any of the managed processes
- * (but see the note concerning "sloppy process cleanup on unix").
- * If @a pid != 0, waits for that process only.
- *
- * @param pid Process ID
- * @param timeout Relative time to wait for process to terminate
- * @param status Exit status of terminated process
- *
- * @retval The pid of the process which exited, 0
- * if a timeout occurred, or ACE_INVALID_PID on error.
- */
- pid_t wait (pid_t pid,
- const ACE_Time_Value &timeout,
- ACE_exitcode *status = 0);
-
- /**
- * Wait indefinitely for a single, specified process to terminate.
- * If @a pid is 0, waits for any of the managed processes (but see the
- * note concerning "sloppy process cleanup on unix").
- * If @a pid != 0, this method waits for that process only.
- *
- * @retval The pid of the process which exited, or
- * ACE_INVALID_PID on error.
- */
- pid_t wait (pid_t pid,
- ACE_exitcode *status = 0);
-
- /**
- * @deprecated
- * Reap the result of a single process by calling ACE_OS::waitpid(),
- * therefore, this method is not portable to Windows. If the child is
- * successfully reaped, remove() is called automatically.
- * Use one of the wait() methods instead of this method.
- */
- int reap (pid_t pid = -1,
- ACE_exitcode *stat_loc = 0,
- int options = WNOHANG);
- //@}
-
- /**
- * @name Utility methods
- */
- //@{
- /**
- * Register an event handler to be called back when the specified
- * process exits. If @a pid == ACE_INVALID_PID this handler is called
- * when any process with no specific handler exits.
- *
- * @warning In multithreaded applications, there is a race condition
- * if a process exits between the time it is spawned and when its
- * handler is registered. To avoid this, register the handler at
- * the time the process is spawned.
- */
- int register_handler (ACE_Event_Handler *event_handler,
- pid_t pid = ACE_INVALID_PID);
-
- /**
- * Remove process @a pid from the ACE_Process_Manager's internal records.
- * This is called automatically by the reap() method after it successfully
- * reaps a process. It's also possible to call this method
- * directly from a signal handler, but don't call both reap() and
- * remove()!
- */
- int remove (pid_t pid);
-
- /// Return the number of managed processes.
- size_t managed (void) const;
-
- /**
- * Sets the scheduling parameters for process identified by @a pid by
- * passing @a params, @a pid to ACE_OS::sched_params().
- *
- * @retval 0 on success, -1 on failure, and ACE_INVALID_PID when the
- * specified @a pid is not managed by this ACE_Process_Manager.
- */
- int set_scheduler (const ACE_Sched_Params &params, pid_t pid);
-
- /**
- * Sets the scheduling parameters for all the processes managed by
- * this ACE_Process_Manager by passing @a params to
- * ACE_OS::sched_params().
- *
- * @retval 0 on success, -1 on failure.
- */
- int set_scheduler_all (const ACE_Sched_Params &params);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
- //@}
-
-protected:
- // = These methods allow a <Process_Manager> to be an <Event_Handler>.
-
- // As an <Event_Handler>, the <Process_Manager> automagically
- // detects child Processes exiting and calls notify_proc_handler()
- // and remove(). This means that you don't have to (shouldn't!)
- // call the wait(...) methods yourself.
-
- // On Unix, we can't detect individual process termination very
- // well; the best method is to catch SIGCHLD and then call the
- // polling wait() function to collect any available exit statuses.
- // However, we don't want to do this from within a signal handler
- // because of the restrictions associated. Therefore (following the
- // lead in examples/mumble) we open a bogus handle (to ACE_DEV_NULL)
- // and register that handle with our Reactor. Then, when our
- // SIGCHLD handler gets invoked, we tell the Reactor that the bogus
- // handle is readable. That will cause the handle_input() function
- // to be called once we're out of the interrupt context, and
- // handle_input() collects exit statuses.
-
- // On Win32, we simply register ourself with the Reactor to deal
- // with the Process handle becoming signaled. No muss, no fuss, no
- // signal handler, and no dummy handle.
-
-#if !defined(ACE_WIN32)
- /// Collect one (or more, on unix) process exit status.
- virtual int handle_input (ACE_HANDLE proc);
-#endif // !defined(ACE_WIN32)
-
- /**
- * On Unix, this routine is called asynchronously when a SIGCHLD is
- * received. We just tweak the reactor so that it'll call back our
- * <handle_input> function, which allows us to handle Process exits
- * synchronously.
- *
- * On Win32, this routine is called synchronously, and is passed the
- * HANDLE of the Process that exited, so we can do all our work here
- */
- virtual int handle_signal (int signum,
- siginfo_t * = 0,
- ucontext_t * = 0);
-
-private:
-
- /**
- * @struct Process_Descriptor
- *
- * @internal This struct is for internal use only by ACE_Process_Manager.
- *
- * @brief Information describing each process that's controlled by an
- * ACE_Process_Manager.
- */
- struct Process_Descriptor
- {
- /// Default ctor/dtor.
- Process_Descriptor (void);
- ~Process_Descriptor (void);
-
- /// Describes the process itself.
- ACE_Process *process_;
-
- /// Function to call when process exits
- ACE_Event_Handler *exit_notify_;
-
- /// Dump the state of an object.
- void dump (void) const;
- };
-
- /// Resize the pool of Process_Descriptors.
- int resize (size_t);
-
- /// Locate the index of the table slot occupied by @a process_id.
- /// Returns -1 if @a process_id is not in the @c process_table_
- ssize_t find_proc (pid_t process_id);
-
-#if defined (ACE_WIN32)
- /// Locate the index of the table slot occupied by @a process_handle.
- /// Returns ~0 if @a process_handle is not in the @c process_table_
- ssize_t find_proc (ACE_HANDLE process_handle);
-#endif /* ACE_WIN32 */
-
- /// Insert a process in the table (checks for duplicates). Omitting
- /// the process handle won't work on Win32...
- /// Register @a event_handler to be called back when the process exits.
- int insert_proc (ACE_Process *process,
- ACE_Event_Handler *event_handler = 0);
-
- /**
- * Append information about a process, i.e., its <process_id> in the
- * @c process_table_. Each entry is added at the end, growing the
- * table if necessary.
- * Register @a event_handler to be called back when the process exits.
- */
- int append_proc (ACE_Process *process,
- ACE_Event_Handler *event_handler = 0);
-
- /// Actually removes the process at index @a n from the table. This method
- /// must be called with locks held.
- int remove_proc (size_t n);
-
- /// If there's a specific handler for the Process at index @a n in the
- /// table, or there's a default handler, call it.
- int notify_proc_handler (size_t n, ACE_exitcode status);
-
- /// Vector that describes process state within the Process_Manager.
- Process_Descriptor *process_table_;
-
- /// Maximum number of processes we can manage (should be dynamically
- /// allocated).
- size_t max_process_table_size_;
-
- /// Current number of processes we are managing.
- size_t current_count_;
-
- /// This event handler is used to notify when a process we control
- /// exits.
- ACE_Event_Handler *default_exit_handler_;
-
- /// Singleton pointer.
- static ACE_Process_Manager *instance_;
-
- /// Controls whether the <Process_Manager> is deleted when we shut
- /// down (we can only delete it safely if we created it!)
- static bool delete_instance_;
-
-#if defined (ACE_HAS_THREADS)
- /// This lock protects access/ops on @c process_table_.
- ACE_Recursive_Thread_Mutex lock_;
-#endif /* ACE_HAS_THREADS */
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Process_Manager.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_PROCESS_MANAGER_H */
-
diff --git a/dep/include/ace/Process_Manager.inl b/dep/include/ace/Process_Manager.inl
deleted file mode 100644
index be8b53cab58..00000000000
--- a/dep/include/ace/Process_Manager.inl
+++ /dev/null
@@ -1,13 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Process_Manager.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE size_t
-ACE_Process_Manager::managed (void) const
-{
- return current_count_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Process_Mutex.h b/dep/include/ace/Process_Mutex.h
deleted file mode 100644
index 8f23211a378..00000000000
--- a/dep/include/ace/Process_Mutex.h
+++ /dev/null
@@ -1,217 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Process_Mutex.h
- *
- * $Id: Process_Mutex.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * A wrapper for mutexes that can be used across processes on the
- * same host machine, as well as within a process, of course.
- *
- * @author Douglas C. Schmidt <schmidt@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_PROCESS_MUTEX_H
-#define ACE_PROCESS_MUTEX_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// To make it easier to carry the setting though this file as well as
-// Process_Mutex.{cpp inl}, set a private macro here.
-#ifdef _ACE_USE_SV_SEM
-# undef _ACE_USE_SV_SEM
-#endif /* _ACE_USE_SV_SEM */
-
-#if defined (ACE_HAS_SYSV_IPC) && !defined (ACE_USES_MUTEX_FOR_PROCESS_MUTEX)
-# include "ace/SV_Semaphore_Complex.h"
-# define _ACE_USE_SV_SEM
-#else
-# include "ace/Mutex.h"
-#endif /* ACE_HAS_SYSV_IPC && !ACE_USES_MUTEX_FOR_PROCESS_MUTEX */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declarations
-class ACE_Time_Value;
-
-/**
- * @class ACE_Process_Mutex
- *
- * @brief A wrapper for mutexes that can be used across processes on
- * the same host machine, as well as within a process, of
- * course.
- *
- * @attention The mechanism upon which @c ACE_Process_Mutex is based
- * can be configured at build time to be either @c ACE_SV_Semaphore_Complex
- * (on platforms that support it) or @c ACE_Mutex. On platforms that
- * require interprocess mutexes be allocated from shared memory (Pthreads
- * and UI Threads are examples), @c ACE_SV_Semaphore_Complex provides a
- * more reliable mechanism for implementing inter-process mutex than
- * @c ACE_Mutex. However, at least on some platforms,
- * @c ACE_SV_Semaphore_Complex is limited to a small number of
- * objects by the underlying System V IPC kernel parameters. If you
- * want to force use of @c ACE_Mutex as the underlying mechanism, set
- * @c ACE_USES_MUTEX_FOR_PROCESS_MUTEX in your @c config.h file.
- * Also, if you require the ability to do a timed @c acquire(), you must
- * set @c ACE_USES_MUTEX_FOR_PROCESS_MUTEX, as timed acquire does not
- * work with System V semaphores.
- * @attention Currently there is also the operational difference between
- * pthreads and semaphores based @c. For semaphore base @c the semaphore
- * is destroyed after the last instance of @c in OS. In contrary, pthread based
- * @c is destroyed when the owner, namely the process which created the
- * first instance of @c destroys the mutex. For protable applications it is better
- * to always ensure that the owner of the mutex destroys it after the
- * other processes.
- */
-class ACE_Export ACE_Process_Mutex
-{
-public:
- /**
- * Create a Process_Mutex, passing in the optional @c name.
- *
- * @param name optional, null-terminated string containing the name of
- * the object. Multiple users of the same @c ACE_Process_Mutex must use
- * the same name to access the same object. If not specified, a name
- * is generated.
- * @param arg optional, attributes to be used to initialize the mutex.
- * If using @c ACE_SV_Semaphore_Complex as the underlying mechanism,
- * this argument is ignored.
- * @param mode optional, the protection mode for either the backing store
- * file (for ACE_Mutex use) or the ACE_SV_Semaphore_Complex that's created.
- */
- ACE_Process_Mutex (const char *name = 0,
- void *arg = 0,
- mode_t mode = ACE_DEFAULT_FILE_PERMS);
-
-#if defined (ACE_HAS_WCHAR)
- /**
- * Create a Process_Mutex, passing in the optional @c name. (@c wchar_t
- * version)
- *
- * @param name optional, null-terminated string containing the name of
- * the object. Multiple users of the same @c ACE_Process_Mutex must use
- * the same name to access the same object. If not specified, a name
- * is generated.
- * @param arg optional, attributes to be used to initialize the mutex.
- * If using @c ACE_SV_Semaphore_Complex as the underlying mechanism,
- * this argument is ignored.
- * @param mode optional, the protection mode for either the backing store
- * file (for ACE_Mutex use) or the ACE_SV_Semaphore_Complex that's created.
- */
- ACE_Process_Mutex (const wchar_t *name,
- void *arg = 0,
- mode_t mode = ACE_DEFAULT_FILE_PERMS);
-#endif /* ACE_HAS_WCHAR */
-
- ~ACE_Process_Mutex (void);
-
- /**
- * Explicitly destroy the mutex. Note that only one thread should
- * call this method since it doesn't protect against race
- * conditions.
- *
- * @return 0 on success; -1 on failure.
- */
- int remove (void);
-
- /**
- * Acquire lock ownership (wait on queue if necessary).
- *
- * @return 0 on success; -1 on failure.
- */
- int acquire (void);
-
- /**
- * Acquire lock ownership, but timeout if lock if hasn't been
- * acquired by given time.
- *
- * @param tv the absolute time until which the caller is willing to
- * wait to acquire the lock.
- *
- * @return 0 on success; -1 on failure.
- */
- int acquire (ACE_Time_Value &tv);
-
- /**
- * Conditionally acquire lock (i.e., don't wait on queue).
- *
- * @return 0 on success; -1 on failure. If the lock could not be acquired
- * because someone else already had the lock, @c errno is set to @c EBUSY.
- */
- int tryacquire (void);
-
- /// Release lock and unblock a thread at head of queue.
- int release (void);
-
- /// Acquire lock ownership (wait on queue if necessary).
- int acquire_read (void);
-
- /// Acquire lock ownership (wait on queue if necessary).
- int acquire_write (void);
-
- /**
- * Conditionally acquire a lock (i.e., won't block). Returns -1 on
- * failure. If we "failed" because someone else already had the
- * lock, @c errno is set to @c EBUSY.
- */
- int tryacquire_read (void);
-
- /**
- * Conditionally acquire a lock (i.e., won't block). Returns -1 on
- * failure. If we "failed" because someone else already had the
- * lock, @c errno is set to @c EBUSY.
- */
- int tryacquire_write (void);
-
- /**
- * This is only here for consistency with the other synchronization
- * APIs and usability with Lock adapters. Assumes the caller already has
- * acquired the mutex and returns 0 in all cases.
- */
- int tryacquire_write_upgrade (void);
-
-#if !defined (_ACE_USE_SV_SEM)
- /// Return the underlying mutex.
- const ACE_mutex_t &lock (void) const;
-#endif /* !_ACE_USE_SV_SEM */
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// If the user does not provide a name we generate a unique name in
- /// this buffer.
- ACE_TCHAR name_[ACE_UNIQUE_NAME_LEN];
-
- /// Create and return the unique name.
- const ACE_TCHAR *unique_name (void);
-
-#if defined (_ACE_USE_SV_SEM)
- /// We need this to get the right semantics...
- ACE_SV_Semaphore_Complex lock_;
-#else
- ACE_Mutex lock_;
-#endif /* _ACE_USE_SV_SEM */
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Process_Mutex.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_PROCESS_MUTEX_H */
-
diff --git a/dep/include/ace/Process_Mutex.inl b/dep/include/ace/Process_Mutex.inl
deleted file mode 100644
index 00c84e6a5bc..00000000000
--- a/dep/include/ace/Process_Mutex.inl
+++ /dev/null
@@ -1,118 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Process_Mutex.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if !defined (_ACE_USE_SV_SEM)
-ACE_INLINE const ACE_mutex_t &
-ACE_Process_Mutex::lock (void) const
-{
-// ACE_TRACE ("ACE_Process_Mutex::lock");
- return this->lock_.lock ();
-}
-#endif /* !_ACE_USE_SV_SEM */
-
-// Explicitly destroy the mutex.
-ACE_INLINE int
-ACE_Process_Mutex::remove (void)
-{
- return this->lock_.remove ();
-}
-
-// Acquire lock ownership (wait on priority queue if necessary).
-ACE_INLINE int
-ACE_Process_Mutex::acquire (void)
-{
-#if defined (_ACE_USE_SV_SEM)
- return this->lock_.acquire (0, SEM_UNDO);
-#else
- return this->lock_.acquire ();
-#endif // _ACE_USE_SV_SEM
-}
-
-// Acquire lock ownership (wait on priority queue if necessary).
-ACE_INLINE int
-ACE_Process_Mutex::acquire (ACE_Time_Value &tv)
-{
-#if !defined (_ACE_USE_SV_SEM)
- return this->lock_.acquire (tv);
-#else
- ACE_UNUSED_ARG (tv);
- ACE_NOTSUP_RETURN (-1);
-#endif /* !_ACE_USE_SV_SEM */
-}
-
-// Conditionally acquire lock (i.e., don't wait on queue).
-ACE_INLINE int
-ACE_Process_Mutex::tryacquire (void)
-{
-#if defined (_ACE_USE_SV_SEM)
- return this->lock_.tryacquire (0, SEM_UNDO);
-#else
- return this->lock_.tryacquire ();
-#endif // _ACE_USE_SV_SEM
-}
-
-// Release lock and unblock a thread at head of priority queue.
-ACE_INLINE int
-ACE_Process_Mutex::release (void)
-{
-#if defined (_ACE_USE_SV_SEM)
- return this->lock_.release (0, SEM_UNDO);
-#else
- return this->lock_.release ();
-#endif // _ACE_USE_SV_SEM
-}
-
-// Acquire lock ownership (wait on priority queue if necessary).
-ACE_INLINE int
-ACE_Process_Mutex::acquire_read (void)
-{
-#if defined (_ACE_USE_SV_SEM)
- return this->lock_.acquire_read (0, SEM_UNDO);
-#else
- return this->lock_.acquire_read ();
-#endif // _ACE_USE_SV_SEM
-}
-
-// Acquire lock ownership (wait on priority queue if necessary).
-ACE_INLINE int
-ACE_Process_Mutex::acquire_write (void)
-{
-#if defined (_ACE_USE_SV_SEM)
- return this->lock_.acquire_write (0, SEM_UNDO);
-#else
- return this->lock_.acquire_write ();
-#endif // _ACE_USE_SV_SEM
-}
-
-// Conditionally acquire a lock (i.e., won't block).
-ACE_INLINE int
-ACE_Process_Mutex::tryacquire_read (void)
-{
-#if defined (_ACE_USE_SV_SEM)
- return this->lock_.tryacquire_read (0, SEM_UNDO);
-#else
- return this->lock_.tryacquire_read ();
-#endif // _ACE_USE_SV_SEM
-}
-
-// Conditionally acquire a lock (i.e., won't block).
-ACE_INLINE int
-ACE_Process_Mutex::tryacquire_write (void)
-{
-#if defined (_ACE_USE_SV_SEM)
- return this->lock_.tryacquire_write (0, SEM_UNDO);
-#else
- return this->lock_.tryacquire_write ();
-#endif // _ACE_USE_SV_SEM
-}
-
-ACE_INLINE int
-ACE_Process_Mutex::tryacquire_write_upgrade (void)
-{
- return 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Process_Semaphore.h b/dep/include/ace/Process_Semaphore.h
deleted file mode 100644
index aa5b8b1aa58..00000000000
--- a/dep/include/ace/Process_Semaphore.h
+++ /dev/null
@@ -1,161 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Process_Semaphore.h
- *
- * $Id: Process_Semaphore.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Wrapper for Dijkstra style general semaphores that work
- * across processes.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_PROCESS_SEMAPHORE_H
-#define ACE_PROCESS_SEMAPHORE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !(defined (ACE_WIN32) || defined (ACE_HAS_POSIX_SEM))
-# include "ace/SV_Semaphore_Complex.h"
-#else
-# include "ace/Semaphore.h"
-#endif /* !(ACE_WIN32 || ACE_HAS_POSIX_SEM) */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Process_Semaphore
- *
- * @brief Wrapper for Dijkstra style general semaphores that work
- * across processes.
- */
-class ACE_Export ACE_Process_Semaphore
-{
-public:
- /// Initialize the semaphore, with an initial value of @a count and a
- /// maximum value of @a max.
- ACE_Process_Semaphore (u_int count = 1, // By default make this unlocked.
- const ACE_TCHAR *name = 0,
- void * = 0,
- int max = 0x7FFFFFFF);
-
- /**
- * Explicitly destroy the semaphore. Note that only one thread
- * should call this method since it doesn't protect against race
- * conditions.
- */
- int remove (void);
-
- /// Block the thread until the semaphore count becomes greater than
- /// 0, then decrement it.
- int acquire (void);
-
- /**
- * Conditionally decrement the semaphore if count is greater than 0
- * (i.e., won't block). Returns -1 on failure. If we "failed"
- * because someone else already had the lock, @c errno is set to
- * @c EBUSY.
- */
- int tryacquire (void);
-
- /// Increment the semaphore, potentially unblocking a waiting thread.
- int release (void);
-
- /**
- * Acquire semaphore ownership. This calls <acquire> and is only
- * here to make the ACE_Process_Semaphore interface consistent
- * with the other synchronization APIs.
- */
- int acquire_read (void);
-
- /**
- * Acquire semaphore ownership. This calls <acquire> and is only
- * here to make the ACE_Process_Semaphore interface consistent
- * with the other synchronization APIs.
- */
- int acquire_write (void);
-
- /**
- * Conditionally acquire semaphore (i.e., won't block). This calls
- * <tryacquire> and is only here to make the ACE_Process_Semaphore
- * interface consistent with the other synchronization APIs.
- * Returns -1 on failure. If we "failed" because someone else
- * already had the lock, @c errno is set to @c EBUSY.
- */
- int tryacquire_read (void);
-
- /**
- * Conditionally acquire semaphore (i.e., won't block). This calls
- * <tryacquire> and is only here to make the ACE_Process_Semaphore
- * interface consistent with the other synchronization APIs.
- * Returns -1 on failure. If we "failed" because someone else
- * already had the lock, @c errno is set to @c EBUSY.
- */
- int tryacquire_write (void);
-
- /**
- * This is only here to make the ACE_Process_Semaphore
- * interface consistent with the other synchronization APIs.
- * Assumes the caller has already acquired the semaphore using one of
- * the above calls, and returns 0 (success) always.
- */
- int tryacquire_write_upgrade (void);
-
-#if defined (ACE_WIN32) || defined (ACE_HAS_POSIX_SEM)
- /// Return the underlying lock.
- const ACE_sema_t &lock (void) const;
-#endif /* ACE_WIN32 || ACE_HAS_POSIX_SEM */
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
-#if defined (ACE_WIN32) || defined (ACE_HAS_POSIX_SEM)
- ACE_Semaphore lock_;
-#else
- /// We need this to get the right semantics...
- ACE_SV_Semaphore_Complex lock_;
-#endif /* ACE_WIN32 || ACE_HAS_POSIX_SEM */
-};
-
-/*****************************************************************************/
-
-template <class T> class ACE_Malloc_Lock_Adapter_T;
-
-/**
- * @class ACE_Malloc_Lock_Adapter_T<ACE_Process_Semaphore>
- *
- * @brief Template specialization of ACE_Malloc_Lock_Adapter_T for
- * ACE_Process_Semaphore.
- *
- * This is needed since the ctor for ACE_Process_Semaphore doesn't match
- * the standard form used by other lock strategy classes.
- */
-template<>
-class ACE_Export ACE_Malloc_Lock_Adapter_T<ACE_Process_Semaphore>
-{
-public:
- ACE_Process_Semaphore * operator () (const ACE_TCHAR *name);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Process_Semaphore.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_PROCESS_SEMAPHORE_H */
-
diff --git a/dep/include/ace/Process_Semaphore.inl b/dep/include/ace/Process_Semaphore.inl
deleted file mode 100644
index 0874b2d51dd..00000000000
--- a/dep/include/ace/Process_Semaphore.inl
+++ /dev/null
@@ -1,66 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Process_Semaphore.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_WIN32) || defined (ACE_HAS_POSIX_SEM)
-ACE_INLINE const ACE_sema_t &
-ACE_Process_Semaphore::lock (void) const
-{
-// ACE_TRACE ("ACE_Process_Semaphore::lock");
- return this->lock_.lock ();
-}
-#endif /* ACE_WIN32 || ACE_HAS_POSIX_SEM */
-
-// Acquire semaphore ownership. This calls <acquire> and is only here
-// to make the ACE_Process_Semaphore interface consistent with the
-// other synchronization APIs.
-
-ACE_INLINE int
-ACE_Process_Semaphore::acquire_read (void)
-{
- return this->acquire ();
-}
-
-// Acquire semaphore ownership. This calls <acquire> and is only here
-// to make the ACE_Process_Semaphore interface consistent with the
-// other synchronization APIs.
-
-ACE_INLINE int
-ACE_Process_Semaphore::acquire_write (void)
-{
- return this->acquire ();
-}
-
-// Conditionally acquire semaphore (i.e., won't block). This calls
-// <tryacquire> and is only here to make the ACE_Process_Semaphore
-// interface consistent with the other synchronization APIs.
-
-ACE_INLINE int
-ACE_Process_Semaphore::tryacquire_read (void)
-{
- return this->tryacquire ();
-}
-
-// Conditionally acquire semaphore (i.e., won't block). This calls
-// <tryacquire> and is only here to make the ACE_Process_Semaphore
-// interface consistent with the other synchronization APIs.
-
-ACE_INLINE int
-ACE_Process_Semaphore::tryacquire_write (void)
-{
- return this->tryacquire ();
-}
-
-// This is only here to make the ACE_Process_Semaphore
-// interface consistent with the other synchronization APIs.
-// Assumes the caller has already acquired the semaphore using one of
-// the above calls, and returns 0 (success) always.
-ACE_INLINE int
-ACE_Process_Semaphore::tryacquire_write_upgrade (void)
-{
- return 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Profile_Timer.h b/dep/include/ace/Profile_Timer.h
deleted file mode 100644
index 64721603362..00000000000
--- a/dep/include/ace/Profile_Timer.h
+++ /dev/null
@@ -1,139 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Profile_Timer.h
- *
- * $Id: Profile_Timer.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_PROFILE_TIMER_H
-#define ACE_PROFILE_TIMER_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/High_Res_Timer.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Profile_Timer
- *
- * @brief This class provides both a timing mechanism and a mechanism
- * for reporting the resource usage of a process.
- */
-class ACE_Export ACE_Profile_Timer
-{
-public:
-
- /**
- * @class ACE_Elapsed_Time
- *
- * @brief Keeps track of the various user, system, and elapsed (real)
- * times.
- */
- class ACE_Elapsed_Time
- {
- public:
- /// Elapsed wall clock time.
- ACE_timer_t real_time;
-
- /// CPU time spent in user space.
- ACE_timer_t user_time;
-
- /// CPU time spent in system space.
- ACE_timer_t system_time;
- };
-
- typedef ACE_Rusage Rusage;
-
- // = Initialization and termination methods.
- /// Default constructor. Clears all time values to 0.
- ACE_Profile_Timer (void);
-
- /// Shutdown the timer.
- ~ACE_Profile_Timer (void);
-
- // = Timer methods.
- /// Activate the timer.
- int start (void);
-
- /// Stop the timer.
- int stop (void);
-
- // = Resource utilization methods.
- /// Compute the time elapsed between calls to @c start() and @c stop().
- int elapsed_time (ACE_Elapsed_Time &et);
-
- /// Compute the amount of resource utilization between calls to @c start()
- /// and @c stop().
- void elapsed_rusage (ACE_Profile_Timer::Rusage &rusage);
-
- /// Return the resource utilization (don't recompute it).
- void get_rusage (ACE_Profile_Timer::Rusage &rusage);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Compute how much time has elapsed.
- void compute_times (ACE_Elapsed_Time &et);
-
- /// Keep track of the starting resource utilization.
- ACE_Profile_Timer::Rusage begin_usage_;
-
- /// Keep track of the ending resource utilization.
- ACE_Profile_Timer::Rusage end_usage_;
-
- /// Keep track of the last rusage for incremental timing.
- ACE_Profile_Timer::Rusage last_usage_;
-
-#if defined (ACE_HAS_PRUSAGE_T)
- /// Substract two timestructs and store their difference.
- void subtract (timespec_t &tdiff, timespec_t &t0, timespec_t &t1);
-
- /// I/O handle for /proc file system.
- ACE_HANDLE proc_handle_;
-
-#elif defined (ACE_HAS_GETRUSAGE)
- /// Substract two timestructs and store their difference.
- void subtract (timeval &tdiff,
- timeval &t0,
- timeval &t1);
-
- /// Keep track of the beginning time.
- timeval begin_time_;
-
- /// Keep track of the ending time.
- timeval end_time_;
-
- /// Keep track of the last time for incremental timing.
- timeval last_time_;
-#endif /* ACE_HAS_PRUSAGE_T */
-
-#if defined (ACE_WIN32) || (!defined (ACE_HAS_PRUSAGE_T) && !defined (ACE_HAS_GETRUSAGE))
- /// The high resolution timer
- ACE_High_Res_Timer timer_;
-#endif /* ACE_WIN32 || !ACE_HAS_PRUSAGE_T && !ACE_HAS_GETRUSAGE */
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-# include "ace/Profile_Timer.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_PROFILE_TIMER_H */
-
diff --git a/dep/include/ace/Profile_Timer.inl b/dep/include/ace/Profile_Timer.inl
deleted file mode 100644
index 9990585cef6..00000000000
--- a/dep/include/ace/Profile_Timer.inl
+++ /dev/null
@@ -1,129 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Profile_Timer.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_sys_time.h"
-#include "ace/OS_NS_sys_resource.h"
-#include "ace/Global_Macros.h"
-
-#if (defined (ACE_HAS_PRUSAGE_T) || defined (ACE_HAS_GETRUSAGE)) && !defined (ACE_WIN32)
-
-# if defined (ACE_HAS_PRUSAGE_T)
-# include "ace/OS_NS_stropts.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_Profile_Timer::start (void)
-{
- ACE_TRACE ("ACE_Profile_Timer::start");
- return ACE_OS::ioctl (this->proc_handle_,
- PIOCUSAGE,
- &this->begin_usage_);
-}
-
-ACE_INLINE int
-ACE_Profile_Timer::stop (void)
-{
- ACE_TRACE ("ACE_Profile_Timer::stop");
- this->last_usage_ = this->end_usage_;
- return ACE_OS::ioctl (this->proc_handle_,
- PIOCUSAGE,
- &this->end_usage_);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# elif defined (ACE_HAS_GETRUSAGE)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_Profile_Timer::start (void)
-{
- ACE_TRACE ("ACE_Profile_Timer::start");
- this->begin_time_ = ACE_OS::gettimeofday ();
- ACE_OS::getrusage (RUSAGE_SELF,
- &this->begin_usage_);
- return 0;
-}
-
-ACE_INLINE int
-ACE_Profile_Timer::stop (void)
-{
- ACE_TRACE ("ACE_Profile_Timer::stop");
- this->last_time_ = this->end_time_;
- this->end_time_ = ACE_OS::gettimeofday ();
- this->last_usage_ = this->end_usage_;
- ACE_OS::getrusage (RUSAGE_SELF,
- &this->end_usage_);
- return 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# endif /* ACE_HAS_PRUSAGE_T */
-
-#elif defined (ACE_WIN32)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Profile_Timer::~ACE_Profile_Timer (void)
-{
-}
-
-ACE_INLINE int
-ACE_Profile_Timer::start (void)
-{
- ACE_TRACE ("ACE_Profile_Timer::start");
-# if defined (ACE_HAS_GETRUSAGE)
- ACE_OS::getrusage (RUSAGE_SELF,
- &this->begin_usage_);
-# endif /* ACE_HAS_GETRUSAGE */
- this->timer_.start ();
- return 0;
-}
-
-ACE_INLINE int
-ACE_Profile_Timer::stop (void)
-{
- ACE_TRACE ("ACE_Profile_Timer::stop");
- this->timer_.stop ();
-# if defined (ACE_HAS_GETRUSAGE)
- this->last_usage_ = this->end_usage_;
- ACE_OS::getrusage (RUSAGE_SELF, &this->end_usage_);
-# endif /* ACE_HAS_GETRUSAGE */
- return 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#else
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_Profile_Timer::start (void)
-{
- ACE_TRACE ("ACE_Profile_Timer::start");
- this->timer_.start ();
- return 0;
-}
-
-ACE_INLINE int
-ACE_Profile_Timer::stop (void)
-{
- ACE_TRACE ("ACE_Profile_Timer::stop");
- this->timer_.stop ();
- return 0;
-}
-
-ACE_INLINE
-ACE_Profile_Timer::~ACE_Profile_Timer (void)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* defined (ACE_HAS_PRUSAGE_T) || defined (ACE_HAS_GETRUSAGE) */
diff --git a/dep/include/ace/RB_Tree.h b/dep/include/ace/RB_Tree.h
deleted file mode 100644
index b02e3e41139..00000000000
--- a/dep/include/ace/RB_Tree.h
+++ /dev/null
@@ -1,902 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file RB_Tree.h
- *
- * $Id: RB_Tree.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Chris Gill
- */
-//=============================================================================
-
-#ifndef ACE_RB_TREE_H
-#define ACE_RB_TREE_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Global_Macros.h"
-#include "ace/Functor_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_RB_Tree_Iterator_Base;
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_RB_Tree_Iterator;
-
-// Forward decl.
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_RB_Tree_Reverse_Iterator;
-
-// Forward decl.
-class ACE_Allocator;
-
-class ACE_RB_Tree_Node_Base
-{
-public:
- enum RB_Tree_Node_Color {RED, BLACK};
-};
-
-/**
- * @class ACE_RB_Tree_Node
- *
- * @brief Implements a node in a Red-Black Tree ADT.
- */
-template <class EXT_ID, class INT_ID>
-class ACE_RB_Tree_Node : public ACE_RB_Tree_Node_Base
-{
-public:
- // = Initialization and termination methods.
-
- /// Constructor.
- ACE_RB_Tree_Node (const EXT_ID &k, const INT_ID &t);
-
- /// Destructor.
- ~ACE_RB_Tree_Node (void);
-
- /// Key accessor.
- EXT_ID &key (void);
-
- /// Item accessor.
- INT_ID &item (void);
-
- /// Set color of the node.
- void color (RB_Tree_Node_Color c);
-
- /// Get color of the node.
- RB_Tree_Node_Color color (void);
-
- /// Accessor for node's parent pointer.
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *parent (void);
-
- /// Mutator for node's parent pointer.
- void parent (ACE_RB_Tree_Node<EXT_ID, INT_ID> * p);
-
- /// Accessor for node's left child pointer.
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *left (void);
-
- /// Mutator for node's left child pointer.
- void left (ACE_RB_Tree_Node<EXT_ID, INT_ID> *l);
-
- /// Accessor for node's right child pointer.
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *right (void);
-
- /// Mutator for node's right child pointer
- void right (ACE_RB_Tree_Node<EXT_ID, INT_ID> * r);
-
-private:
-
- /// The key.
- EXT_ID k_;
-
- /// The item.
- INT_ID t_;
-
- /// Color of the node.
- RB_Tree_Node_Color color_;
-
- /// Pointer to node's parent.
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *parent_;
-
- /// Pointer to node's left child.
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *left_;
-
- /// Pointer to node's right child.
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *right_;
-};
-
-class ACE_RB_Tree_Base
-{
-public:
- /// Search result enumeration.
- enum RB_SearchResult {LEFT, EXACT, RIGHT};
-
- /// Get the allocator;
- /**
- * @note This method is inlined here rather than in RB_Tree.inl
- * since that file may be included multiple times when
- * inlining is disabled and on platforms where
- * @c ACE_TEMPLATES_REQUIRE_SOURCE is defined. In those
- * platform/configuration combinations, multiple definitions
- * of this method occured. Placing the definition inline in
- * the header avoids such errors.
- */
- ACE_Allocator * allocator (void) const { return this->allocator_; }
-
-protected:
- // = Protected members.
-
- /// Pointer to a memory allocator.
- ACE_Allocator *allocator_;
-};
-
-/**
- * @class ACE_RB_Tree
- *
- * @brief Implements a Red-Black Tree ADT, according to T. H. Corman,
- * C. E. Leiserson, and R. L. Rivest, "Introduction to Algorithms"
- * 1990, MIT, chapter 14.
- *
- * A number of Changes have been made to this class template
- * in order to conform to the ACE_Hash_Map_Manager_Ex
- * interface. All previously supported public methods are
- * still part of this class. However, these are marked as
- * DEPRECATED and will be removed from this class in
- * a future version of ACE. Please migrate your code
- * to the appropriate public methods indicated in the
- * method deprecation comments.
- * This class uses an ACE_Allocator to allocate memory. The
- * user can make this a persistent class by providing an
- * ACE_Allocator with a persistable memory pool.
- *
- * <b> Requirements and Performance Characteristics</b>
- * - Internal Structure:
- * Binary tree
- * - Duplicates allowed?
- * No
- * - Random access allowed?
- * No
- * - Search speed:
- * Log(n)
- * - Insert/replace speed:
- * Log(n)
- * - Iterator still valid after change to container?
- * Yes, except if the iterated-over element is removed.
- * - Frees memory for removed elements?
- * Yes
- * - Items inserted by:
- * Value
- * - Requirements for contained type
- * -# Default constructor
- * -# Copy constructor
- * -# operator=
- * -# operator==
- * -# operator<
- */
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_RB_Tree : public ACE_RB_Tree_Base
-{
-
-public:
- friend class ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>;
- friend class ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>;
- friend class ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>;
-
- typedef EXT_ID KEY;
- typedef INT_ID VALUE;
- typedef ACE_LOCK lock_type;
- typedef ACE_RB_Tree_Node<EXT_ID, INT_ID> ENTRY;
-
- // = ACE-style iterator typedefs.
- typedef ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> ITERATOR;
- typedef ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> REVERSE_ITERATOR;
-
- // = STL-style iterator typedefs.
- typedef ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> iterator;
- typedef ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> reverse_iterator;
-
- // = Initialization and termination methods.
-
- /// Constructor.
- ACE_RB_Tree (ACE_Allocator *alloc = 0);
-
- /// Copy constructor.
- ACE_RB_Tree (const ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &rbt);
-
- /// Initialize an RB Tree.
- int open (ACE_Allocator *alloc = 0);
-
- /// Close down an RB_Tree and release dynamically allocated
- /// resources.
- int close (void);
-
- /// Destructor.
- virtual ~ACE_RB_Tree (void);
-
- // = insertion, removal, and search methods.
-
- /**
- * Associate @a ext_id with @a int_id. If @a ext_id is already in the
- * tree then the <ACE_RB_Tree_Node> is not changed. Returns 0 if a
- * new entry is bound successfully, returns 1 if an attempt is made
- * to bind an existing entry, and returns -1 if failures occur.
- */
- int bind (const EXT_ID &item,
- const INT_ID &int_id);
-
- /**
- * Same as a normal bind, except the tree entry is also passed back
- * to the caller. The entry in this case will either be the newly
- * created entry, or the existing one.
- */
- int bind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry);
-
- /**
- * Associate @a ext_id with @a int_id if and only if @a ext_id is not
- * in the tree. If @a ext_id is already in the tree then the @a int_id
- * parameter is assigned the existing value in the tree. Returns 0
- * if a new entry is bound successfully, returns 1 if an attempt is
- * made to bind an existing entry, and returns -1 if failures occur.
- */
- int trybind (const EXT_ID &ext_id,
- INT_ID &int_id);
-
- /**
- * Same as a normal trybind, except the tree entry is also passed
- * back to the caller. The entry in this case will either be the
- * newly created entry, or the existing one.
- */
- int trybind (const EXT_ID &ext_id,
- INT_ID &int_id,
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry);
-
- /**
- * Reassociate @a ext_id with @a int_id. If @a ext_id is not in the
- * tree then behaves just like <bind>. Returns 0 if a new entry is
- * bound successfully, returns 1 if an existing entry was rebound,
- * and returns -1 if failures occur.
- */
- int rebind (const EXT_ID &ext_id,
- const INT_ID &int_id);
-
- /**
- * Same as a normal rebind, except the tree entry is also passed back
- * to the caller. The entry in this case will either be the newly
- * created entry, or the existing one.
- */
- int rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry);
-
- /**
- * Associate @a ext_id with @a int_id. If @a ext_id is not in the tree
- * then behaves just like <bind>. Otherwise, store the old value of
- * @a int_id into the "out" parameter and rebind the new parameters.
- * Returns 0 if a new entry is bound successfully, returns 1 if an
- * existing entry was rebound, and returns -1 if failures occur.
- */
- int rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- INT_ID &old_int_id);
-
- /**
- * Same as a normal rebind, except the tree entry is also passed back
- * to the caller. The entry in this case will either be the newly
- * created entry, or the existing one.
- */
- int rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- INT_ID &old_int_id,
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry);
-
- /**
- * Associate @a ext_id with @a int_id. If @a ext_id is not in the tree
- * then behaves just like <bind>. Otherwise, store the old values
- * of @a ext_id and @a int_id into the "out" parameters and rebind the
- * new parameters. This is very useful if you need to have an
- * atomic way of updating <ACE_RB_Tree_Nodes> and you also need
- * full control over memory allocation. Returns 0 if a new entry is
- * bound successfully, returns 1 if an existing entry was rebound,
- * and returns -1 if failures occur.
- */
- int rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- EXT_ID &old_ext_id,
- INT_ID &old_int_id);
-
- /**
- * Same as a normal rebind, except the tree entry is also passed back
- * to the caller. The entry in this case will either be the newly
- * created entry, or the existing one.
- */
- int rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- EXT_ID &old_ext_id,
- INT_ID &old_int_id,
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry);
-
- /// Locate @a ext_id and pass out parameter via @a int_id. If found,
- /// return 0, returns -1 if not found.
- int find (const EXT_ID &ext_id,
- INT_ID &int_id);
-
- /// Locate @a ext_id and pass out parameter via @a entry. If found,
- /// return 0, returns -1 if not found.
- int find (const EXT_ID &ext_id,
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry);
-
- /**
- * Unbind (remove) the @a ext_id from the tree. Don't return the
- * @a int_id to the caller (this is useful for collections where the
- * @c int_ids are *not* dynamically allocated...)
- */
- int unbind (const EXT_ID &ext_id);
-
- /// Break any association of @a ext_id. Returns the value of @a int_id
- /// in case the caller needs to deallocate memory.
- int unbind (const EXT_ID &ext_id,
- INT_ID &int_id);
-
- /**
- * Remove entry from tree. This method should be used with *extreme*
- * caution, and only for optimization purposes. The node being passed
- * in had better have been allocated by the tree that is unbinding it.
- */
- int unbind (ACE_RB_Tree_Node<EXT_ID, INT_ID> *entry);
-
- // = Public helper methods.
-
- /// Returns the current number of nodes in the tree.
- size_t current_size (void) const;
-
- /// Assignment operator.
- void operator= (const ACE_RB_Tree<EXT_ID,
- INT_ID,
- COMPARE_KEYS,
- ACE_LOCK> &rbt);
-
- /**
- * Returns a reference to the underlying <ACE_LOCK>. This makes it
- * possible to acquire the lock explicitly, which can be useful in
- * some cases if you instantiate the ACE_Atomic_Op with an
- * ACE_Recursive_Mutex or ACE_Process_Mutex, or if you need to
- * guard the state of an iterator.
- * @note The right name would be <lock>, but HP/C++ will choke on that!
- */
- ACE_LOCK &mutex (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL styled iterator factory functions.
-
- /// Return forward iterator positioned at first node in tree.
- ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> begin (void);
-
- /// Return forward iterator positioned at last node in tree.
- ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> end (void);
-
- /// Return reverse iterator positioned at last node in tree.
- ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> rbegin (void);
-
- /// Return reverse iterator positioned at first node in tree.
- ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> rend (void);
-
- /// Recursively tests the invariant red-black properties at each
- /// node of the tree. Returns 0 if invariant holds, else -1.
- /// This method is computationally expensive, and should only be
- /// called for testing purposes, and not in code that depends on the
- /// algorithmic complexity bounds provided by the other methods.
- int test_invariant (void);
-
- // = DEPRECATED methods.
- // Please migrate your code to use the new methods instead
-
- /**
- * Returns a pointer to the item corresponding to the
- * given key, or 0 if it cannot find the key in the tree.
- *
- * @deprecated signature will change to become
- * int find (const EXT_ID &ext_id); which will return
- * 0 if the @a ext_id is in the tree, otherwise -1.
- */
- INT_ID* find (const EXT_ID &k);
-
- /**
- * Inserts a *copy* of the key and the item into the tree: both the
- * key type EXT_ID and the item type INT_ID must have well defined semantics
- * for copy construction. The default implementation also requires that
- * the key type support well defined < semantics. This method returns a
- * pointer to the inserted item copy, or 0 if an error occurred.
- * @note If an identical key already exists in the tree, no new item
- * is created, and the returned pointer addresses the existing item
- * associated with the existing key.
- * @deprecated
- */
- INT_ID* insert (const EXT_ID &k, const INT_ID &t);
-
- /**
- * Removes the item associated with the given key from the tree and
- * destroys it. Returns 1 if it found the item and successfully
- * destroyed it, 0 if it did not find the item, or -1 if an error
- * occurred.
- * @deprecated
- */
- int remove (const EXT_ID &k);
-
- /// @deprecated
- /// Destroys all nodes and sets the root pointer null.
- void clear (void);
-
-protected:
- /// Reinitialize constructor.
- /**
- * This constructor is used to provide a valid vtable and allocator
- * if the tree is reconstructed from shared memory. Constructor
- * used by the derived class that has an allocator
- */
- ACE_RB_Tree (void *location,
- ACE_Allocator *alloc);
-
- // = Protected methods. These should only be called with locks held.
-
- /// Recursively tests the invariant red-black properties at each
- /// node of the tree. Returns 0 if invariant holds, else -1.
- int test_invariant_recurse (ACE_RB_Tree_Node<EXT_ID, INT_ID> * x,
- int & expected_black_height,
- int measured_black_height);
-
- /// Method for right rotation of the tree about a given node.
- void RB_rotate_right (ACE_RB_Tree_Node<EXT_ID, INT_ID> * x);
-
- /// Method for left rotation of the tree about a given node.
- void RB_rotate_left (ACE_RB_Tree_Node<EXT_ID, INT_ID> * x);
-
- /// Method for restoring Red-Black properties after deletion.
- void RB_delete_fixup (ACE_RB_Tree_Node<EXT_ID, INT_ID> * x,
- ACE_RB_Tree_Node<EXT_ID, INT_ID> * parent);
-
- /// Method to find the successor node of the given node in the tree.
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *
- RB_tree_successor (ACE_RB_Tree_Node<EXT_ID, INT_ID> *x) const;
-
- /// Method to find the predecessor node of the given node in the
- /// tree.
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *
- RB_tree_predecessor (ACE_RB_Tree_Node<EXT_ID, INT_ID> *x) const;
-
- /// Method to find the minimum node of the subtree rooted at the
- /// given node.
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *
- RB_tree_minimum (ACE_RB_Tree_Node<EXT_ID, INT_ID> *x) const;
-
- /// Method to find the maximum node of the subtree rooted at the
- /// given node.
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *
- RB_tree_maximum (ACE_RB_Tree_Node<EXT_ID, INT_ID> *x) const;
-
- /**
- * Returns a pointer to a matching node if there is one, a pointer
- * to the node under which to insert the item if the tree is not
- * empty and there is no such match, or 0 if the tree is empty.
- * It stores the result of the search in the result argument:
- * LEFT if the node is to the left of the node to be inserted,
- * RIGHT if the node is to the right of the node to be inserted,
- * or EXACT if an exactly matching node already exists.
- */
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *find_node (const EXT_ID &k,
- ACE_RB_Tree_Base::RB_SearchResult &result);
-
- /// Rebalance the tree after insertion of a node.
- void RB_rebalance (ACE_RB_Tree_Node<EXT_ID, INT_ID> * x);
-
- /// Delete children (left and right) of the node. Must be called with
- /// lock held.
- void delete_children_i (ACE_RB_Tree_Node<EXT_ID, INT_ID> *parent);
-
- /// Close down an RB_Tree. this method should
- /// only be called with locks already held.
- int close_i (void);
-
- /**
- * Retrieves a pointer to the item corresponding to the
- * given key. If find_exact==1, find the exact match node,
- * otherwise just find a match node
- * Returns 0 for success, or -1 if it cannot find the key in the tree.
- */
- int find_i (const EXT_ID &ext_id, ACE_RB_Tree_Node<EXT_ID, INT_ID>* &entry, int find_exact = 1);
-
- /**
- * Inserts a *copy* of the key and the item into the tree: both the
- * key type EXT_ID and the item type INT_ID must have well defined semantics
- * for copy construction. The default implementation also requires that
- * the key type support well defined < semantics. This method returns a
- * pointer to the inserted item copy, or 0 if an error occurred.
- * @note If an identical key already exists in the tree, no new item
- * is created, and the returned pointer addresses the existing item
- * associated with the existing key.
- */
- INT_ID* insert_i (const EXT_ID &k, const INT_ID &t);
-
- /**
- * Inserts a *copy* of the key and the item into the tree: both the
- * key type EXT_ID and the item type INT_ID must have well defined semantics
- * for copy construction. The default implementation also requires that
- * the key type support well defined < semantics. This method passes back
- * a pointer to the inserted (or existing) node, and the search status. If
- * the node already exists, the method returns 1. If the node does not
- * exist, and a new one is successfully created, and the method returns 0.
- * If there was an error, the method returns -1.
- */
- int insert_i (const EXT_ID &k, const INT_ID &t,
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry);
-
- /**
- * Removes the item associated with the given key from the tree and
- * destroys it. Returns 1 if it found the item and successfully
- * destroyed it, 0 if it did not find the item, or -1 if an error
- * occurred. Returns the stored internal id in the second argument.
- */
- int remove_i (const EXT_ID &k, INT_ID &i);
-
- /// Removes the item associated with the given key from the tree and
- /// destroys it.
- int remove_i (ACE_RB_Tree_Node<EXT_ID, INT_ID> *z);
-
- /// Recursive function to dump the state of an object.
- void dump_i (ACE_RB_Tree_Node<EXT_ID, INT_ID> *node) const;
-
- /// Function to dump node contents. Does nothing in its
- /// basic form, but template specialization can be used to
- /// provide definitions for various EXT_ID and INT_ID types.
- void dump_node_i (ACE_RB_Tree_Node<EXT_ID, INT_ID> &node) const;
-
- /// Less than comparison function for keys, using comparison functor.
- int lessthan (const EXT_ID &k1, const EXT_ID &k2);
-
-private:
-
- // = Private members.
-
- /// Synchronization variable for the MT_SAFE ACE_RB_Tree.
- ACE_LOCK lock_;
-
- /// The root of the tree.
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *root_;
-
- /// Comparison functor for comparing nodes in the tree.
- COMPARE_KEYS compare_keys_;
-
- /// The current number of nodes in the tree.
- size_t current_size_;
-};
-
-/**
- * @class ACE_RB_Tree_Iterator_Base
- *
- * @brief Implements a common base class for iterators for a Red-Black Tree ADT.
- */
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_RB_Tree_Iterator_Base
-{
-
-public:
-
- /// Copy constructor.
- ACE_RB_Tree_Iterator_Base (const ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &iter);
-
- /// Assignment operator: copies both the tree reference and the position in the tree.
- void operator= (const ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &iter);
-
- // = Iteration methods.
-
- /// Returns 1 when the iteration has completed, otherwise 0.
- int done (void) const;
-
- /// STL-like iterator dereference operator: returns a reference
- /// to the node underneath the iterator.
- ACE_RB_Tree_Node<EXT_ID, INT_ID> & operator* (void) const;
-
- /// STL-like iterator dereference operator: returns a pointer
- /// to the node underneath the iterator.
- ACE_RB_Tree_Node<EXT_ID, INT_ID> * operator-> (void) const;
-
- /// Returns a const reference to the tree over which we're iterating.
- const ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &tree (void);
-
- /// Comparison operator: returns 1 if both iterators point to the same position, otherwise 0.
- bool operator== (const ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &) const;
-
- /// Comparison operator: returns 1 if the iterators point to different positions, otherwise 0.
- bool operator!= (const ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
-
- // = Initialization and termination methods.
-
- /// Create the singular iterator. No valid iterator can be equal to
- /// it, it is illegal to dereference a singular iterator, etc. etc.
- ACE_RB_Tree_Iterator_Base (void);
-
- /**
- * Constructor. Takes an ACE_RB_Tree over which to iterate, and
- * an integer indicating (if non-zero) to position the iterator
- * at the first element in the tree (if this integer is 0, the
- * iterator is positioned at the last element in the tree).
- */
- ACE_RB_Tree_Iterator_Base (const ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &tree,
- int set_first);
-
- /**
- * Constructor. Takes an ACE_RB_Tree over which to iterate, and
- * a pointer to a node in the tree.
- */
- ACE_RB_Tree_Iterator_Base (const ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &tree,
- ACE_RB_Tree_Node<EXT_ID, INT_ID>* entry);
-
- /**
- * Constructor. Takes an ACE_RB_Tree over which to iterate, and a key.
- * The key must come first to distinguish the case of EXT_ID == int.
- */
- ACE_RB_Tree_Iterator_Base (const EXT_ID& key,
- ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS,ACE_LOCK> &tree);
-
- /// Destructor.
- ~ACE_RB_Tree_Iterator_Base (void);
-
- // = Internal methods
-
- /// Move forward by one element in the tree. Returns 0 when
- /// there are no more elements in the tree, otherwise 1.
- int forward_i (void);
-
- /// Move back by one element in the tree. Returns 0 when
- /// there are no more elements in the tree, otherwise 1.
- int reverse_i (void);
-
- /// Dump the state of an object.
- void dump_i (void) const;
-
- // = Protected members.
-
- /// Reference to the ACE_RB_Tree over which we're iterating.
- const ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> *tree_;
-
- /// Pointer to the node currently under the iterator.
- ACE_RB_Tree_Node <EXT_ID, INT_ID> *node_;
-
-};
-
-/**
- * @class ACE_RB_Tree_Iterator
- *
- * @brief Implements an iterator for a Red-Black Tree ADT.
- */
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_RB_Tree_Iterator : public ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>
-{
-
-public:
-
- // = Initialization and termination methods.
- /**
- * Create the singular iterator.
- * It is illegal to deference the iterator, no valid iterator is
- * equal to a singular iterator, etc. etc.
- */
- ACE_RB_Tree_Iterator (void);
-
- /**
- * Constructor. Takes an ACE_RB_Tree over which to iterate, and
- * an integer indicating (if non-zero) to position the iterator
- * at the first element in the tree (if this integer is 0, the
- * iterator is positioned at the last element in the tree).
- */
- ACE_RB_Tree_Iterator (const ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &tree,
- int set_first = 1);
- /**
- * Constructor. Takes an ACE_RB_Tree over which to iterate
- * and a pointer to a node in the tree.
- */
- ACE_RB_Tree_Iterator (const ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &tree,
- ACE_RB_Tree_Node<EXT_ID, INT_ID>* entry);
-
- /**
- * Constructor. Takes an ACE_RB_Tree over which to iterate, and a key;
- * the key comes first in order to distinguish the case of EXT_ID == int.
- */
- ACE_RB_Tree_Iterator (const EXT_ID &key,
- ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &tree);
-
- /// Destructor.
- ~ACE_RB_Tree_Iterator (void);
-
- // = ACE-style iteration methods.
-
- /// Move forward by one element in the tree. Returns
- /// 0 when all elements have been seen, else 1.
- int advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL-style iteration methods.
-
- /// Prefix advance.
- ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> & operator++ (void);
-
- /// Postfix advance.
- ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> operator++ (int);
-
- /// Prefix reverse.
- ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> & operator-- (void);
-
- /// Postfix reverse.
- ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> operator-- (int);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /**
- * Passes back the <entry> under the iterator. Returns 0 if
- * the iteration has completed, otherwise 1. This method must
- * be declared and defined in both the derived forward and
- * reverse iterator classes rather than in the base iterator
- * class because of a method signature resolution problem
- * caused by the existence of the deprecated next (void)
- * method in the derived forward iterator class. When that
- * deprecated method is removed, this method should be removed
- * from the derived classes and placed in the base class.
- */
- int next (ACE_RB_Tree_Node<EXT_ID, INT_ID> *&next_entry) const;
-
- // = DEPRECATED methods. Please migrate your code to use the new methods instead
-
- /// @deprecated
- /// Accessor for key of node under iterator (if any).
- EXT_ID *key (void);
-
- /// @deprecated
- /// Accessor for item of node under iterator (if any).
- INT_ID *item (void);
-
- /// @deprecated
- /// Move to the first item in the iteration (and in the tree).
- int first (void);
-
- /// @deprecated
- /// Move to the last item in the iteration (and in the tree).
- int last (void);
-
- /// @deprecated
- /// Move to the next item in the iteration (and in the tree).
- int next (void);
-
- /// @deprecated
- /// Move to the previous item in the iteration (and in the tree).
- int previous (void);
-
- /**
- * @deprecated: use the base class <done> method instead.
- * Returns 0 if the iterator is positioned over a valid ACE_RB_Tree
- * node, returns 1 if not.
- */
- int is_done (void);
-
-};
-
-/**
- * @class ACE_RB_Tree_Reverse_Iterator
- *
- * @brief Implements a reverse iterator for a Red-Black Tree ADT.
- */
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-class ACE_RB_Tree_Reverse_Iterator : public ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>
-{
-
-public:
-
- // = Initialization and termination methods.
- /**
- * Create the singular iterator.
- * It is illegal to deference the iterator, no valid iterator is
- * equal to a singular iterator, etc. etc.
- */
- ACE_RB_Tree_Reverse_Iterator (void);
-
- /**
- * Constructor. Takes an ACE_RB_Tree over which to iterate, and
- * an integer indicating (if non-zero) to position the iterator
- * at the last element in the tree (if this integer is 0, the
- * iterator is positioned at the first element in the tree).
- */
- ACE_RB_Tree_Reverse_Iterator (const ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &tree,
- int set_last = 1);
-
- /**
- * Constructor. Takes an ACE_RB_Tree over which to iterate, and
- * a point to a node in the tree.
- */
- ACE_RB_Tree_Reverse_Iterator (const ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &tree,
- ACE_RB_Tree_Node<EXT_ID, INT_ID>* entry);
-
- /**
- * Constructor. Takes an ACE_RB_Tree over which to iterate, and a key;
- * the key comes first in order to distinguish the case of EXT_ID == int.
- */
- ACE_RB_Tree_Reverse_Iterator (const EXT_ID &key,
- ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &tree);
-
- /// Destructor.
- ~ACE_RB_Tree_Reverse_Iterator (void);
-
- // = ACE-style iteration methods.
-
- /// Move forward by one element in the tree. Returns
- /// 0 when all elements have been seen, else 1.
- int advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL-style iteration methods.
-
- /// Prefix advance.
- ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> & operator++ (void);
-
- /// Postfix advance.
- ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> operator++ (int);
-
- /// Prefix reverse.
- ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> & operator-- (void);
-
- /// Postfix reverse.
- ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> operator-- (int);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /**
- * Passes back the <entry> under the iterator. Returns 0 if
- * the iteration has completed, otherwise 1. This method must
- * be declared and defined in both the derived forward and
- * reverse iterator classes rather than in the base iterator
- * class because of a method signature resolution problem
- * caused by the existence of the deprecated next (void)
- * method in the derived forward iterator class. When that
- * deprecated method is removed, this method should be removed
- * from the derived classes and placed in the base class.
- */
- int next (ACE_RB_Tree_Node<EXT_ID, INT_ID> *&next_entry) const;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/RB_Tree.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/RB_Tree.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("RB_Tree.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ! defined (ACE_RB_TREE_H) */
-
diff --git a/dep/include/ace/RB_Tree.inl b/dep/include/ace/RB_Tree.inl
deleted file mode 100644
index e4e5ab3d759..00000000000
--- a/dep/include/ace/RB_Tree.inl
+++ /dev/null
@@ -1,1103 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: RB_Tree.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Guard_T.h"
-#include "ace/Malloc_Base.h"
-#include "ace/Log_Msg.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/////////////////////////////////////////////////////
-// template class ACE_RB_Tree_Node<EXT_ID, INT_ID> //
-/////////////////////////////////////////////////////
-
-// Key accessor.
-
-template <class EXT_ID, class INT_ID>
-ACE_INLINE EXT_ID &
-ACE_RB_Tree_Node<EXT_ID, INT_ID>::key ()
-{
- ACE_TRACE ("ACE_RB_Tree_Node<EXT_ID, INT_ID>::key");
- return k_;
-}
-
-// Item accessor.
-
-template <class EXT_ID, class INT_ID>
-ACE_INLINE INT_ID &
-ACE_RB_Tree_Node<EXT_ID, INT_ID>::item ()
-{
- ACE_TRACE ("ACE_RB_Tree_Node<EXT_ID, INT_ID>:item");
- return t_;
-}
-
-// Set color of the node.
-
-template <class EXT_ID, class INT_ID>
-ACE_INLINE void
-ACE_RB_Tree_Node<EXT_ID, INT_ID>::color (ACE_RB_Tree_Node_Base::RB_Tree_Node_Color c)
-{
- ACE_TRACE ("ACE_RB_Tree_Node<EXT_ID, INT_ID>::color mutator");
- color_ = c;
-}
-
-// Get color of the node.
-
-template <class EXT_ID, class INT_ID>
-ACE_INLINE ACE_RB_Tree_Node_Base::RB_Tree_Node_Color
-ACE_RB_Tree_Node<EXT_ID, INT_ID>::color ()
-{
- ACE_TRACE ("ACE_RB_Tree_Node<EXT_ID, INT_ID>::color accessor");
- return color_;
-}
-
-// Accessor for node's parent pointer.
-
-template <class EXT_ID, class INT_ID>
-ACE_INLINE ACE_RB_Tree_Node<EXT_ID, INT_ID> *
-ACE_RB_Tree_Node<EXT_ID, INT_ID>::parent ()
-{
- ACE_TRACE ("ACE_RB_Tree_Node<EXT_ID, INT_ID>::parent accessor");
- return parent_;
-}
-
-// Mutator for node's parent pointer.
-
-template <class EXT_ID, class INT_ID>
-ACE_INLINE void
-ACE_RB_Tree_Node<EXT_ID, INT_ID>::parent (ACE_RB_Tree_Node<EXT_ID, INT_ID> * p)
-{
- ACE_TRACE ("ACE_RB_Tree_Node<EXT_ID, INT_ID>::parent mutator");
- parent_ = p;
-}
-
-// Accessor for node's left child pointer.
-
-template <class EXT_ID, class INT_ID>
-ACE_INLINE ACE_RB_Tree_Node<EXT_ID, INT_ID> *
-ACE_RB_Tree_Node<EXT_ID, INT_ID>::left ()
-{
- ACE_TRACE ("ACE_RB_Tree_Node<EXT_ID, INT_ID>::left accessor");
- return left_;
-}
-
-// Mutator for node's left child pointer.
-
-template <class EXT_ID, class INT_ID>
-ACE_INLINE void
-ACE_RB_Tree_Node<EXT_ID, INT_ID>::left (ACE_RB_Tree_Node<EXT_ID, INT_ID> * l)
-{
- ACE_TRACE ("ACE_RB_Tree_Node<EXT_ID, INT_ID>::left mutator");
- left_ = l;
-}
-
-// Accessor for node's right child pointer.
-
-template <class EXT_ID, class INT_ID>
-ACE_INLINE ACE_RB_Tree_Node<EXT_ID, INT_ID> *
-ACE_RB_Tree_Node<EXT_ID, INT_ID>::right ()
-{
- ACE_TRACE ("ACE_RB_Tree_Node<EXT_ID, INT_ID>::right accessor");
- return right_;
-}
-
-// Mutator for node's right child pointer.
-
-template <class EXT_ID, class INT_ID>
-ACE_INLINE void
-ACE_RB_Tree_Node<EXT_ID, INT_ID>::right (ACE_RB_Tree_Node<EXT_ID, INT_ID> * r)
-{
- ACE_TRACE ("ACE_RB_Tree_Node<EXT_ID, INT_ID>::right mutator");
- right_ = r;
-}
-
-////////////////////////////////////////////////////////////////////////
-// template class ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> //
-////////////////////////////////////////////////////////////////////////
-
-// Initialize an RB Tree.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::open (ACE_Allocator *alloc)
-{
- ACE_TRACE ("ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::open");
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- // Calling this->close_i () ensures we release previously allocated
- // memory before allocating new memory.
- this->close_i ();
-
- // If we were passed an allocator use it,
- // otherwise use the default instance.
-
- if (alloc == 0)
- alloc = ACE_Allocator::instance ();
-
- this->allocator_ = alloc;
-
- return 0;
-}
-
-// Close down an RB_Tree and release dynamically allocated
-// resources.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::close (void)
-{
- ACE_TRACE ("ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::close");
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->close_i ();
-}
-
-// Associate <ext_id> with <int_id>. If <ext_id> is already in the
-// tree then the <ACE_RB_Tree_Node> is not changed. Returns 0 if a
-// new entry is bound successfully, returns 1 if an attempt is made
-// to bind an existing entry, and returns -1 if failures occur.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::bind (const EXT_ID &ext_id,
- const INT_ID &int_id)
-{
- ACE_TRACE ("ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::bind (const EXT_ID &item, const INT_ID &int_id)");
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *entry;
- return this->insert_i (ext_id, int_id, entry);
-}
-
-// Same as a normal bind, except the tree entry is also passed back
-// to the caller. The entry in this case will either be the newly
-// created entry, or the existing one.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::bind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry)
-{
- ACE_TRACE ("ACE_RB_Tree::bind (const EXT_ID &ext_id, const INT_ID &int_id, "
- "ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry)");
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->insert_i (ext_id, int_id, entry);
-}
-
-// Associate <ext_id> with <int_id> if and only if <ext_id> is not
-// in the tree. If <ext_id> is already in the tree then the <int_id>
-// parameter is assigned the existing value in the tree. Returns 0
-// if a new entry is bound successfully, returns 1 if an attempt is
-// made to bind an existing entry, and returns -1 if failures occur.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::trybind (const EXT_ID &ext_id,
- INT_ID &int_id)
-{
- ACE_TRACE ("ACE_RB_Tree::trybind (const EXT_ID &ext_id, INT_ID &int_id)");
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *entry;
- int result = this->insert_i (ext_id, int_id, entry);
-
- if (result == 1)
- {
- int_id = entry->item ();
- }
-
- return result;
-}
-
-// Same as a normal trybind, except the tree entry is also passed
-// back to the caller. The entry in this case will either be the
-// newly created entry, or the existing one.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::trybind (const EXT_ID &ext_id,
- INT_ID &int_id,
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry)
-{
- ACE_TRACE ("ACE_RB_Tree::trybind (const EXT_ID &ext_id, INT_ID &int_id, "
- "ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry)");
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- int result = this->insert_i (ext_id, int_id, entry);
-
- if (result == 1)
- {
- int_id = entry->item ();
- }
-
- return result;
-}
-
-// Reassociate <ext_id> with <int_id>. If <ext_id> is not in the
-// tree then behaves just like <bind>. Returns 0 if a new entry is
-// bound successfully, returns 1 if an existing entry was rebound,
-// and returns -1 if failures occur.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const INT_ID &int_id)
-{
- ACE_TRACE ("ACE_RB_Tree::rebind (const EXT_ID &ext_id, const INT_ID &int_id)");
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *entry;
- int result = this->insert_i (ext_id, int_id, entry);
-
- if (result == 1)
- {
- entry->key () = ext_id;
- entry->item () = int_id;
- }
-
- return result;
-}
-
-// Same as a normal rebind, except the tree entry is also passed back
-// to the caller. The entry in this case will either be the newly
-// created entry, or the existing one.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry)
-{
- ACE_TRACE ("ACE_RB_Tree::rebind (const EXT_ID &ext_id, const INT_ID &int_id, "
- "ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry)");
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- int result = this->insert_i (ext_id, int_id, entry);
-
- if (result == 1)
- {
- entry->key () = ext_id;
- entry->item () = int_id;
- }
-
- return result;
-}
-
-// Associate <ext_id> with <int_id>. If <ext_id> is not in the tree
-// then behaves just like <bind>. Otherwise, store the old value of
-// <int_id> into the "out" parameter and rebind the new parameters.
-// Returns 0 if a new entry is bound successfully, returns 1 if an
-// existing entry was rebound, and returns -1 if failures occur.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- INT_ID &old_int_id)
-{
- ACE_TRACE ("ACE_RB_Tree::rebind (const EXT_ID &ext_id, "
- "const INT_ID &int_id, INT_ID &old_int_id)");
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *entry;
- int result = this->insert_i (ext_id, int_id, entry);
-
- if (result == 1)
- {
- old_int_id = entry->item ();
- entry->key () = ext_id;
- entry->item () = int_id;
- }
-
- return result;
-}
-
-// Same as a normal rebind, except the tree entry is also passed back
-// to the caller. The entry in this case will either be the newly
-// created entry, or the existing one.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- INT_ID &old_int_id,
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry)
-{
- ACE_TRACE ("ACE_RB_Tree::rebind (const EXT_ID &ext_id, const INT_ID &int_id,"
- "INT_ID &old_int_id, ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry)");
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- int result = this->insert_i (ext_id, int_id, entry);
-
- if (result == 1)
- {
- old_int_id = entry->item ();
- entry->key () = ext_id;
- entry->item () = int_id;
- }
-
- return result;
-}
-
-// Associate <ext_id> with <int_id>. If <ext_id> is not in the tree
-// then behaves just like <bind>. Otherwise, store the old values
-// of <ext_id> and <int_id> into the "out" parameters and rebind the
-// new parameters. This is very useful if you need to have an
-// atomic way of updating <ACE_RB_Tree_Nodes> and you also need
-// full control over memory allocation. Returns 0 if a new entry is
-// bound successfully, returns 1 if an existing entry was rebound,
-// and returns -1 if failures occur.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- EXT_ID &old_ext_id,
- INT_ID &old_int_id)
-{
- ACE_TRACE ("ACE_RB_Tree::rebind (const EXT_ID &ext_id, const INT_ID &int_id,"
- "EXT_ID &old_ext_id, INT_ID &old_int_id)");
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *entry;
- int result = this->insert_i (ext_id, int_id, entry);
-
- if (result == 1)
- {
- old_ext_id = entry->key ();
- old_int_id = entry->item ();
- entry->key () = ext_id;
- entry->item () = int_id;
- }
-
- return result;
-}
-
-// Same as a normal rebind, except the tree entry is also passed back
-// to the caller. The entry in this case will either be the newly
-// created entry, or the existing one.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::rebind (const EXT_ID &ext_id,
- const INT_ID &int_id,
- EXT_ID &old_ext_id,
- INT_ID &old_int_id,
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry)
-{
- ACE_TRACE ("ACE_RB_Tree::rebind (const EXT_ID &ext_id, const INT_ID &int_id, "
- "EXT_ID &old_ext_id, INT_ID &old_int_id, "
- "ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry)");
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- int result = this->insert_i (ext_id, int_id, entry);
-
- if (result == 1)
- {
- old_ext_id = entry->key ();
- old_int_id = entry->item ();
- entry->key () = ext_id;
- entry->item () = int_id;
- }
-
- return result;
-}
-
-// Locate <ext_id> and pass out parameter via <int_id>. If found,
-// return 0, returns -1 if not found.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::find (const EXT_ID &ext_id,
- INT_ID &int_id)
-{
- ACE_TRACE ("ACE_RB_Tree::find (const EXT_ID &ext_id, INT_ID &int_id)");
- ACE_READ_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *entry = 0;
-
- int result = this->find_i (ext_id, entry);
- if (result == 0)
- {
- int_id = entry->item ();
- }
-
- return result;
-}
-
-// Locate <ext_id> and pass out parameter via <entry>. If found,
-// return 0, returns -1 if not found.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::find (const EXT_ID &ext_id,
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry)
-{
- ACE_TRACE ("ACE_RB_Tree::find (const EXT_ID &ext_id, ACE_RB_Tree_Node<EXT_ID, INT_ID> *&entry)");
- ACE_READ_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->find_i (ext_id, entry);
-}
-
-// Unbind (remove) the <ext_id> from the tree. Don't return the
-// <int_id> to the caller (this is useful for collections where the
-// <int_id>s are *not* dynamically allocated...).
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::unbind (const EXT_ID &ext_id)
-{
- ACE_TRACE ("ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::unbind (const EXT_ID &ext_id)");
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- INT_ID int_id;
- int result = this->remove_i (ext_id, int_id);
-
- // Remap the return codes from the internal method: this
- // is maintained this way in support of deprecated methods,
- // and will be cleaned up when these methods are removed.
- switch (result)
- {
- case 1:
- // If the node was found and deleted, return success.
- return 0;
- case 0:
- // If nothing was found, set errno and break.
- errno = ENOENT;
- break;
- case -1:
- // If an error happened, just break.
- break;
- }
-
- // Return an error if we didn't already return success.
- return -1;
-}
-
-// Break any association of <ext_id>. Returns the value of <int_id>
-// in case the caller needs to deallocate memory.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::unbind (const EXT_ID &ext_id,
- INT_ID &int_id)
-{
- ACE_TRACE ("ACE_RB_Tree::unbind (const EXT_ID &ext_id, INT_ID &int_id)");
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- int result = this->remove_i (ext_id, int_id);
-
- // Remap the return codes from the internal method: this
- // is maintained this way in support of deprecated methods,
- // and will be cleaned up when these methods are removed.
- switch (result)
- {
- case 1:
- // If the node was found and deleted, return success.
- return 0;
- case 0:
- // If nothing was found, set errno and break.
- errno = ENOENT;
- break;
- case -1:
- // If an error happened, just break.
- break;
- }
-
- // Return an error if we didn't already return success.
- return -1;
-}
-
-// Remove entry from the tree. This method should be used with *extreme*
-// caution, and only for optimization purposes. The node being passed
-// in had better have been allocated by the tree that is unbinding it.
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::unbind (ACE_RB_Tree_Node<EXT_ID, INT_ID> *entry)
-{
- ACE_TRACE ("ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::unbind (ACE_RB_Tree_Node<EXT_ID, INT_ID> *entry)");
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- return this->remove_i (entry);
-}
-
-// Returns a reference to the underlying <ACE_LOCK>. This makes it
-// possible to acquire the lock explicitly, which can be useful in
-// some cases if you instantiate the <ACE_Atomic_Op> with an
-// <ACE_Recursive_Mutex> or <ACE_Process_Mutex>, or if you need to
-// guard the state of an iterator. NOTE: the right name would be
-// <lock>, but HP/C++ will choke on that!
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE ACE_LOCK &
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::mutex (void)
-{
- ACE_TRACE ("ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::mutex");
- return this->lock_;
-}
-
-// Dump the state of an object.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE void
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::dump");
- ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this));
- ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\ncurrent_size_ = %d\n"), this->current_size_));
- this->allocator_->dump ();
- this->lock_.dump ();
- ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\nDumping nodes from root\n")));
- this->dump_i (this->root_);
- ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP));
-#endif /* ACE_HAS_DUMP */
-}
-
-// Return forward iterator positioned at first node in tree.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::begin (void)
-{
- ACE_TRACE ("ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::begin");
-
- return ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> (*this);
-}
-
-// Return forward iterator positioned at last node in tree.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::end (void)
-{
- ACE_TRACE ("ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::end");
-
- return ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> ();
-}
-
-// Return reverse iterator positioned at last node in tree.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::rbegin (void)
-{
- ACE_TRACE ("ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::rbegin");
-
- return ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> (*this);
-}
-
-// Return reverse iterator positioned at first node in tree.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::rend (void)
-{
- ACE_TRACE ("ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::rend");
-
- return ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> ();
-}
-
-// Returns a pointer to the item corresponding to the given key,
-// or 0 if it cannot find the key in the tree. DEPRECATED.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE INT_ID*
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::find (const EXT_ID &k)
-{
- ACE_TRACE ("ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::find (const EXT_ID &k)");
-
- // The reinterpret cast is to ensure that when this deprecated
- // method is removed, and is replaced (as planned) by a find method
- // that takes the same argument signature but returns an int, that
- // the compiler will cough if this return macro is not changed to
- // just return an int (whose value will be -1). Please leave this
- // as is.
- ACE_READ_GUARD_RETURN (ACE_LOCK,
- ace_mon,
- this->lock_,
- reinterpret_cast<INT_ID*> (0L));
-
- ACE_RB_Tree_Node<EXT_ID, INT_ID> *entry = 0;
- int result = this->find_i (k, entry);
- return (result == 0) ? &(entry->item ()) : 0;
-}
-
-// Inserts a *copy* of the key and the item into the tree:
-// both the key type EXT_ID and the item type INT_ID must have well
-// defined semantics for copy construction and < comparison.
-// This method returns a pointer to the inserted item copy,
-// or 0 if an error occurred. NOTE: if an identical key
-// already exists in the tree, no new item is created, and
-// the returned pointer addresses the existing item
-// associated with the existing key. DEPRECATED.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE INT_ID*
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::insert (const EXT_ID &k, const INT_ID &t)
-{
- ACE_TRACE ("ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::insert");
- ACE_WRITE_GUARD_RETURN (ACE_LOCK,
- ace_mon,
- this->lock_,
- reinterpret_cast<INT_ID*> (0L));
-
- return this->insert_i (k, t);
-}
-
-// Removes the item associated with the given key from the
-// tree and destroys it. Returns 1 if it found the item
-// and successfully destroyed it, 0 if it did not find the
-// item, or -1 if an error occurred. DEPRECATED.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::remove (const EXT_ID &k)
-{
- ACE_TRACE ("ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::remove");
- ACE_WRITE_GUARD_RETURN (ACE_LOCK, ace_mon, this->lock_, -1);
-
- INT_ID i;
- return this->remove_i (k, i);
-}
-
-// Destroys all nodes and sets the root pointer null. DEPRECATED
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE void
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::clear ()
-{
- ACE_TRACE ("ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::clear");
- ACE_WRITE_GUARD (ACE_LOCK, ace_mon, this->lock_);
-
- this->close_i ();
-}
-
-// Returns the current number of nodes in the tree.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE size_t
-ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::current_size () const
-{
- ACE_TRACE ("ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::current_size");
- return current_size_;
-}
-
-///////////////////////////////////////////////////////////////////////
-// template class //
-// ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> //
-///////////////////////////////////////////////////////////////////////
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE
-ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::ACE_RB_Tree_Iterator_Base (void)
- : tree_ (0), node_ (0)
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::ACE_RB_Tree_Iterator_Base (void)");
-}
-
-// Returns 1 when the iteration has completed, otherwise 0.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::done (void) const
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::done");
-
- return node_ ? 0 : 1;
-}
-
-// STL-like iterator dereference operator: returns a reference
-// to the node underneath the iterator.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE ACE_RB_Tree_Node<EXT_ID, INT_ID> &
-ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator* (void) const
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator*");
- return *(this->node_);
-}
-
-// STL-like iterator dereference operator: returns a reference
-// to the node underneath the iterator.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE ACE_RB_Tree_Node<EXT_ID, INT_ID> *
-ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator-> (void) const
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator->");
- return this->node_;
-}
-
-// Returns a reference to the tree over which we're iterating.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>ACE_INLINE const ACE_RB_Tree<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &
-ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::tree (void)
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::tree");
- return *tree_;
-}
-
-// Comparison operator: returns 1 if both iterators point to the same position, otherwise 0.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE bool
-ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator==
- (const ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &rbt) const
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator==");
- return (this->node_ == rbt.node_) ? true : false;
-}
-
-// Comparison operator: returns 1 if the iterators point to different positions, otherwise 0.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE bool
-ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator!=
- (const ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &rbt) const
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator!=");
- return (this->node_ == rbt.node_) ? false : true;
-}
-
-// Move forward by one element in the tree. Returns 0 when
-// there are no more elements in the tree, otherwise 1.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::forward_i (void)
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::forward_i");
-
- if (node_)
- {
- node_ = tree_->RB_tree_successor (node_);
- }
-
- return node_ ? 1 : 0;
-}
-
-// Move back by one element in the tree. Returns 0 when
-// there are no more elements in the tree, otherwise 1.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::reverse_i (void)
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator_Base<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::reverse_i");
-
- if (node_)
- {
- node_ = tree_->RB_tree_predecessor (node_);
- }
-
- return node_ ? 1 : 0;
-}
-
-//////////////////////////////////////////////////////////////////
-// template class //
-// ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> //
-//////////////////////////////////////////////////////////////////
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE
-ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::ACE_RB_Tree_Iterator (void)
- : ACE_RB_Tree_Iterator_Base<EXT_ID,INT_ID,COMPARE_KEYS,ACE_LOCK> ()
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::ACE_RB_Tree_Iterator (void)");
-}
-
-// Move forward by one element in the tree. Returns
-// 0 when all elements have been seen, else 1.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::advance (void)
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::advance");
-
- return this->forward_i ();
-}
-
-// Dump the state of an object.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE void
-ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::dump");
-
- this->dump_i ();
-#endif /* ACE_HAS_DUMP */
-}
-
-// Prefix advance.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &
-ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator++ (void)
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> operator++ (void)");
-
- this->forward_i ();
- return *this;
-}
-
-// Postfix advance.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>
-ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator++ (int)
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> operator++ (int)");
-
- ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> retv (*this);
- ++*this;
- return retv;
-}
-
-// Prefix reverse.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &
-ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator-- (void)
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> operator-- (void)");
-
- this->reverse_i ();
- return *this;
-}
-
-// Postfix reverse.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>
-ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator-- (int)
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> operator-- (int)");
-
- ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> retv (*this);
- --*this;
- return retv;
-}
-
-// Passes back the <entry> under the iterator. Returns 0 if
-// the iteration has completed, otherwise 1. This method must
-// be declared and defined in both the derived forward and
-// reverse iterator classes rather than in the base iterator
-// class because of a method signature resolution problem
-// caused by the existence of the deprecated next (void)
-// method in the derived forward iterator class. When that
-// deprecated method is removed, this method should be removed
-// from the derived classes and placed in the base class.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::next (ACE_RB_Tree_Node<EXT_ID, INT_ID> *&next_entry) const
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::next");
-
- if (this->node_)
- {
- next_entry = this->node_;
- return 1;
- }
-
- return 0;
-}
-
-// Accessor for key of node under iterator (if any). DEPRECATED.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE EXT_ID *
-ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::key ()
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::key");
- return this->node_ ? (&(this->node_->key ())) : 0;
-}
-
-// Accessor for item of node under iterator (if any). DEPRECATED.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE INT_ID *
-ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::item ()
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::item");
- return this->node_ ? (&(this->node_->item ())) : 0;
-}
-
-// Move to the first item in the tree. DEPRECATED.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::first ()
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::first");
- this->node_ = this->tree_->RB_tree_minimum (this->tree_->root_);
- return this->node_ ? 1 : 0;
-}
-
-// Move to the last item in the tree. DEPRECATED.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::last ()
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::last");
- this->node_ = this->tree_->RB_tree_maximum (this->tree_->root_);
- return this->node_ ? 1 : 0;
-}
-
-// Moves to the next item in the tree,
-// returns 1 if there is a next item, 0 otherwise. DEPRECATED.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::next ()
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::next");
- this->node_ = this->tree_->RB_tree_successor (this->node_);
- return this->node_ ? 1 : 0;
-}
-
-// Moves to the previous item in the tree,
-// returns 1 if there is a previous item, 0 otherwise. DEPRECATED.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::previous ()
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::previous");
- this->node_ = this->tree_->RB_tree_predecessor (this->node_);
- return this->node_ ? 1 : 0;
-}
-
-// Returns 0 if the iterator is positioned over a valid ACE_RB_Tree
-// node, returns 1 if not. DEPRECATED.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::is_done ()
-{
- ACE_TRACE ("ACE_RB_Tree_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::is_done");
- return this->node_ ? 0 : 1;
-}
-
-//////////////////////////////////////////////////////////////////////////
-// template class //
-// ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> //
-//////////////////////////////////////////////////////////////////////////
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE
-ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::ACE_RB_Tree_Reverse_Iterator (void)
- : ACE_RB_Tree_Iterator_Base<EXT_ID,INT_ID,COMPARE_KEYS,ACE_LOCK> ()
-{
- ACE_TRACE ("ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::ACE_RB_Tree_Reverse_Iterator (void)");
-}
-
-// Move forward by one element in the tree. Returns
-// 0 when all elements have been seen, else 1.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::advance (void)
-{
- ACE_TRACE ("ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::advance");
-
- return this->reverse_i ();
-}
-
-// Dump the state of an object.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE void
-ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::dump");
-
- this->dump_i ();
-#endif /* ACE_HAS_DUMP */
-}
-
-// Prefix advance.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &
-ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator++ (void)
-{
- ACE_TRACE ("ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator++ (void)");
-
- this->reverse_i ();
- return *this;
-}
-
-// Postfix advance.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>
-ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator++ (int)
-{
- ACE_TRACE ("ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator++ (int)");
-
- ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> retv (*this);
- ++*this;
- return retv;
-}
-
-// Prefix reverse.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> &
-ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator-- (void)
-{
- ACE_TRACE ("ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator-- (void)");
-
- this->forward_i ();
- return *this;
-}
-
-// Postfix reverse.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>
-ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator-- (int)
-{
- ACE_TRACE ("ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::operator-- (int)");
-
- ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK> retv (*this);
- --*this;
- return retv;
-}
-
-// Passes back the <entry> under the iterator. Returns 0 if
-// the iteration has completed, otherwise 1. This method must
-// be declared and defined in both the derived forward and
-// reverse iterator classes rather than in the base iterator
-// class because of a method signature resolution problem
-// caused by the existence of the deprecated next (void)
-// method in the derived forward iterator class. When that
-// deprecated method is removed, this method should be removed
-// from the derived classes and placed in the base class.
-
-template <class EXT_ID, class INT_ID, class COMPARE_KEYS, class ACE_LOCK>
-ACE_INLINE int
-ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::next (ACE_RB_Tree_Node<EXT_ID, INT_ID> *&next_entry) const
-{
- ACE_TRACE ("ACE_RB_Tree_Reverse_Iterator<EXT_ID, INT_ID, COMPARE_KEYS, ACE_LOCK>::next");
-
- if (this->node_)
- {
- next_entry = this->node_;
- return 1;
- }
-
- return 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/RW_Mutex.h b/dep/include/ace/RW_Mutex.h
deleted file mode 100644
index ffb31124475..00000000000
--- a/dep/include/ace/RW_Mutex.h
+++ /dev/null
@@ -1,142 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file RW_Mutex.h
- *
- * $Id: RW_Mutex.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_RW_MUTEX_H
-#define ACE_RW_MUTEX_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// ACE platform supports some form of threading.
-#if defined (ACE_HAS_THREADS)
-
-#include "ace/OS_NS_Thread.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_RW_Mutex
- *
- * @brief Wrapper for readers/writer locks.
- *
- * These are most useful for applications that have many more
- * parallel readers than writers...
- */
-class ACE_Export ACE_RW_Mutex
-{
-public:
- /// Initialize a readers/writer lock.
- ACE_RW_Mutex (int type = USYNC_THREAD,
- const ACE_TCHAR *name = 0,
- void *arg = 0);
-
- /// Implicitly destroy a readers/writer lock
- ~ACE_RW_Mutex (void);
-
- /**
- * Explicitly destroy a readers/writer lock. Note that only one
- * thread should call this method since it doesn't protect against
- * race conditions.
- */
- int remove (void);
-
- /// Acquire a read lock, but block if a writer hold the lock.
- int acquire_read (void);
-
- /// Acquire a write lock, but block if any readers or a
- /// writer hold the lock.
- int acquire_write (void);
-
- /**
- * Conditionally acquire a read lock (i.e., won't block). Returns
- * -1 on failure. If we "failed" because someone else already had
- * the lock, @c errno is set to @c EBUSY.
- */
- int tryacquire_read (void);
-
- /// Conditionally acquire a write lock (i.e., won't block).
- int tryacquire_write (void);
-
- /**
- * Conditionally upgrade a read lock to a write lock. This only
- * works if there are no other readers present, in which case the
- * method returns 0. Otherwise, the method returns -1 and sets
- * @c errno to @c EBUSY. Note that the caller of this method *must*
- * already possess this lock as a read lock (but this condition is
- * not checked by the current implementation).
- */
- int tryacquire_write_upgrade (void);
-
- /**
- * Note, for interface uniformity with other synchronization
- * wrappers we include the <acquire> method. This is implemented as
- * a write-lock to safe...
- */
- int acquire (void);
-
- /**
- * Note, for interface uniformity with other synchronization
- * wrappers we include the <tryacquire> method. This is implemented
- * as a write-lock to be safe... Returns -1 on failure. If we
- * "failed" because someone else already had the lock, @c errno is
- * set to @c EBUSY.
- */
- int tryacquire (void);
-
- /// Unlock a readers/writer lock.
- int release (void);
-
- /// Return the underlying lock.
- const ACE_rwlock_t &lock (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Readers/writer lock.
- ACE_rwlock_t lock_;
-
- /// Keeps track of whether <remove> has been called yet to avoid
- /// multiple <remove> calls, e.g., explicitly and implicitly in the
- /// destructor. This flag isn't protected by a lock, so make sure
- /// that you don't have multiple threads simultaneously calling
- /// <remove> on the same object, which is a bad idea anyway...
- int removed_;
-
-private:
- // = Prevent assignment and initialization.
- void operator= (const ACE_RW_Mutex &);
- ACE_RW_Mutex (const ACE_RW_Mutex &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/RW_Mutex.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_THREADS */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_RW_MUTEX_H */
-
diff --git a/dep/include/ace/RW_Mutex.inl b/dep/include/ace/RW_Mutex.inl
deleted file mode 100644
index b26dc986cc1..00000000000
--- a/dep/include/ace/RW_Mutex.inl
+++ /dev/null
@@ -1,83 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: RW_Mutex.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE const ACE_rwlock_t &
-ACE_RW_Mutex::lock (void) const
-{
-// ACE_TRACE ("ACE_RW_Mutex::lock");
- return this->lock_;
-}
-
-ACE_INLINE int
-ACE_RW_Mutex::remove (void)
-{
-// ACE_TRACE ("ACE_RW_Mutex::remove");
- int result = 0;
- if (this->removed_ == 0)
- {
- this->removed_ = 1;
- result = ACE_OS::rwlock_destroy (&this->lock_);
- }
- return result;
-}
-
-ACE_INLINE int
-ACE_RW_Mutex::acquire_read (void)
-{
-// ACE_TRACE ("ACE_RW_Mutex::acquire_read");
- return ACE_OS::rw_rdlock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_RW_Mutex::acquire_write (void)
-{
-// ACE_TRACE ("ACE_RW_Mutex::acquire_write");
- return ACE_OS::rw_wrlock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_RW_Mutex::acquire (void)
-{
-// ACE_TRACE ("ACE_RW_Mutex::acquire");
- return ACE_OS::rw_wrlock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_RW_Mutex::tryacquire_read (void)
-{
-// ACE_TRACE ("ACE_RW_Mutex::tryacquire_read");
- return ACE_OS::rw_tryrdlock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_RW_Mutex::tryacquire_write (void)
-{
-// ACE_TRACE ("ACE_RW_Mutex::tryacquire_write");
- return ACE_OS::rw_trywrlock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_RW_Mutex::tryacquire_write_upgrade (void)
-{
-// ACE_TRACE ("ACE_RW_Mutex::tryacquire_write_upgrade");
- return ACE_OS::rw_trywrlock_upgrade (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_RW_Mutex::tryacquire (void)
-{
-// ACE_TRACE ("ACE_RW_Mutex::tryacquire");
- return this->tryacquire_write ();
-}
-
-ACE_INLINE int
-ACE_RW_Mutex::release (void)
-{
-// ACE_TRACE ("ACE_RW_Mutex::release");
- return ACE_OS::rw_unlock (&this->lock_);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/RW_Process_Mutex.h b/dep/include/ace/RW_Process_Mutex.h
deleted file mode 100644
index d6bb39f67c9..00000000000
--- a/dep/include/ace/RW_Process_Mutex.h
+++ /dev/null
@@ -1,145 +0,0 @@
-// -*- C++ -*-
-//
-//=============================================================================
-/**
- * @file RW_Process_Mutex.h
- *
- * $Id: RW_Process_Mutex.h 81509 2008-04-28 22:00:49Z shuston $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_RW_PROCESS_MUTEX_H
-#define ACE_RW_PROCESS_MUTEX_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/File_Lock.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Default_Constants.h"
-#include "ace/OS_NS_fcntl.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_RW_Process_Mutex
- *
- * @brief Wrapper for readers/writer locks that exist across processes.
- *
- * @note This class uses an ACE_File_Lock as its implementation. Thus, it
- * can only be reliably used between separate processes, rather than
- * threads in the same process. This isn't a limitation of ACE, it's simply
- * the file lock semantics on UNIX and Win32.
- *
- * @todo For systems with pthread_rwlockattr_setpshared one
- * may consider using them to make the mutex faster.
- */
-class ACE_Export ACE_RW_Process_Mutex
-{
-public:
- /// Create a cross-process readers/writer mutex, passing in the optional
- /// @a name, @a flags and @a mode \sa ACE_File_Lock.
- /// If not specified, a name is generated and flags and mode are set
- /// to default platform values.
-#if defined (ACE_WIN32)
- ACE_RW_Process_Mutex (const ACE_TCHAR *name = 0,
- int flags = O_CREAT|O_RDWR,
- mode_t mode = ACE_DEFAULT_OPEN_PERMS);
-#else
- ACE_RW_Process_Mutex (const ACE_TCHAR *name = 0,
- int flags = O_CREAT|O_RDWR,
- mode_t mode = S_IRUSR | S_IWUSR );
-#endif /* ACE_WIN32 */
-
- ~ACE_RW_Process_Mutex (void);
-
- /**
- * Explicitly destroy the mutex. Note that only one thread should
- * call this method since it doesn't protect against race
- * conditions.
- */
- int remove (void);
-
- /// Same as acquire_write().
- /// Acquire lock ownership; blocks until the lock is acquired or the
- /// operation fails.
- int acquire (void);
-
- /**
- * Same as tryacquire_write().
- * Try to acquire the lock, but do not block if the lock is not immediately
- * acquired.
- *
- * @retval -1 on failure. If the lock is already held, @c errno is set
- * to @c EBUSY.
- */
- int tryacquire (void);
-
- /// Release lock.
- int release (void);
-
- /// Acquire read lock; blocks until the lock is acquired or the
- /// operation fails.
- int acquire_read (void);
-
- /// Acquire write lock; blocks until the lock is acquired or the
- /// operation fails.
- int acquire_write (void);
-
- /**
- * Try to acquire the read lock, but do not block if the lock is not
- * immediately acquired.
- *
- * @retval -1 on failure. If the lock is already held, @c errno is set
- * to @c EBUSY.
- */
- int tryacquire_read (void);
-
- /**
- * Try to acquire the write lock, but do not block if the lock is not
- * immediately acquired.
- *
- * @retval -1 on failure. If the lock is already held, @c errno is set
- * to @c EBUSY.
- */
- int tryacquire_write (void);
-
- /// Attempt to upgrade a read lock to a write lock. Returns 0 on
- /// success, -1 on failure.
- int tryacquire_write_upgrade (void);
-
- /// Return the underlying lock.
- const ACE_File_Lock &lock (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// If the user does not provide a name we generate a unique name in
- /// this buffer.
- ACE_TCHAR name_[ACE_UNIQUE_NAME_LEN];
-
- /// Create and return the unique name.
- const ACE_TCHAR *unique_name (void);
-
- /// We need this to get the readers/writer semantics...
- ACE_File_Lock lock_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/RW_Process_Mutex.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_RW_PROCESS_MUTEX_H */
-
diff --git a/dep/include/ace/RW_Process_Mutex.inl b/dep/include/ace/RW_Process_Mutex.inl
deleted file mode 100644
index 42e92270a87..00000000000
--- a/dep/include/ace/RW_Process_Mutex.inl
+++ /dev/null
@@ -1,77 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: RW_Process_Mutex.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Explicitly destroy the mutex.
-ACE_INLINE int
-ACE_RW_Process_Mutex::remove (void)
-{
- return this->lock_.remove ();
-}
-
-// Acquire lock ownership (wait on priority queue if necessary).
-ACE_INLINE int
-ACE_RW_Process_Mutex::acquire (void)
-{
- return this->lock_.acquire ();
-}
-
-// Conditionally acquire lock (i.e., don't wait on queue).
-ACE_INLINE int
-ACE_RW_Process_Mutex::tryacquire (void)
-{
- return this->lock_.tryacquire ();
-}
-
-// Release lock and unblock a thread at head of priority queue.
-ACE_INLINE int
-ACE_RW_Process_Mutex::release (void)
-{
- return this->lock_.release ();
-}
-
-// Acquire lock ownership (wait on priority queue if necessary).
-ACE_INLINE int
-ACE_RW_Process_Mutex::acquire_read (void)
-{
- return this->lock_.acquire_read ();
-}
-
-// Acquire lock ownership (wait on priority queue if necessary).
-ACE_INLINE int
-ACE_RW_Process_Mutex::acquire_write (void)
-{
- return this->lock_.acquire_write ();
-}
-
-// Conditionally acquire a lock (i.e., won't block).
-ACE_INLINE int
-ACE_RW_Process_Mutex::tryacquire_read (void)
-{
- return this->lock_.tryacquire_read ();
-}
-
-// Conditionally acquire a lock (i.e., won't block).
-ACE_INLINE int
-ACE_RW_Process_Mutex::tryacquire_write (void)
-{
- return this->lock_.tryacquire_write ();
-}
-
-// Conditionally upgrade a lock (i.e., won't block).
-ACE_INLINE int
-ACE_RW_Process_Mutex::tryacquire_write_upgrade (void)
-{
- return this->lock_.tryacquire_write_upgrade ();
-}
-
-ACE_INLINE const ACE_File_Lock &
-ACE_RW_Process_Mutex::lock (void) const
-{
-// ACE_TRACE ("ACE_RW_Process_Mutex::lock");
- return this->lock_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/RW_Thread_Mutex.h b/dep/include/ace/RW_Thread_Mutex.h
deleted file mode 100644
index b8c1c341754..00000000000
--- a/dep/include/ace/RW_Thread_Mutex.h
+++ /dev/null
@@ -1,75 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file RW_Thread_Mutex.h
- *
- * $Id: RW_Thread_Mutex.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_RW_THREAD_MUTEX_H
-#define ACE_RW_THREAD_MUTEX_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_HAS_THREADS)
-# include "ace/Null_Mutex.h"
-#else /* ACE_HAS_THREADS */
-// ACE platform supports some form of threading.
-
-#include "ace/RW_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_RW_Thread_Mutex
- *
- * @brief Wrapper for readers/writer locks that exist within a process.
- */
-class ACE_Export ACE_RW_Thread_Mutex : public ACE_RW_Mutex
-{
-public:
- ACE_RW_Thread_Mutex (const ACE_TCHAR *name = 0,
- void *arg = 0);
-
- /// Default dtor.
- ~ACE_RW_Thread_Mutex (void);
-
- /**
- * Conditionally upgrade a read lock to a write lock. This only
- * works if there are no other readers present, in which case the
- * method returns 0. Otherwise, the method returns -1 and sets
- * @c errno to @c EBUSY. Note that the caller of this method *must*
- * already possess this lock as a read lock (but this condition is
- * not checked by the current implementation).
- */
- int tryacquire_write_upgrade (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/RW_Thread_Mutex.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* !ACE_HAS_THREADS */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_RW_THREAD_MUTEX_H */
-
diff --git a/dep/include/ace/RW_Thread_Mutex.inl b/dep/include/ace/RW_Thread_Mutex.inl
deleted file mode 100644
index 9e41cd9d967..00000000000
--- a/dep/include/ace/RW_Thread_Mutex.inl
+++ /dev/null
@@ -1,19 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: RW_Thread_Mutex.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_RW_Thread_Mutex::tryacquire_write_upgrade (void)
-{
-// ACE_TRACE ("ACE_RW_Thread_Mutex::tryacquire_write_upgrade");
- return ACE_OS::rw_trywrlock_upgrade (&this->lock_);
-}
-
-ACE_INLINE
-ACE_RW_Thread_Mutex::~ACE_RW_Thread_Mutex (void)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Reactor.h b/dep/include/ace/Reactor.h
deleted file mode 100644
index dc89ed4d6cc..00000000000
--- a/dep/include/ace/Reactor.h
+++ /dev/null
@@ -1,880 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Reactor.h
- *
- * $Id: Reactor.h 82117 2008-06-22 17:05:12Z schmidt $
- *
- * @author Irfan Pyarali <irfan@cs.wustl.edu>
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_REACTOR_H
-#define ACE_REACTOR_H
-
-#include /**/ "ace/pre.h"
-
-// Timer Queue is a complicated template class. A simple forward
-// declaration will not work.
-#include "ace/Timer_Queuefwd.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// Contains the timer related interface for the Reactor.
-#include "ace/Reactor_Timer_Interface.h"
-
-// Event_Handler.h contains the definition of ACE_Reactor_Mask
-#include "ace/Event_Handler.h"
-
-// Get ACE_Time_Value in
-#include "ace/Time_Value.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Reactor_Impl;
-class ACE_Handle_Set;
-class ACE_Sig_Action;
-class ACE_Sig_Handler;
-class ACE_Sig_Set;
-
-/*
- * Hook to specialize the Reactor implementation with the concrete
- * Reactor type, for exmaple, select, thread pool reactor known
- * at compile time.
- */
-//@@ REACTOR_SPL_INCLUDE_FORWARD_DECL_ADD_HOOK
-
-/**
- * @class ACE_Reactor
- *
- * @brief This class forwards all methods to its delegation/implementation class, e.g.,
- * ACE_Select_Reactor or ACE_WFMO_Reactor.
- */
-class ACE_Export ACE_Reactor : public ACE_Reactor_Timer_Interface
-{
-public:
- /// Operations on the "ready" mask and the "dispatch" mask.
- enum
- {
- /// Retrieve current value of the the "ready" mask or the
- /// "dispatch" mask.
- GET_MASK = 1,
- /// Set value of bits to new mask (changes the entire mask).
- SET_MASK = 2,
- /// Bitwise "or" the value into the mask (only changes enabled
- /// bits).
- ADD_MASK = 3,
- /// Bitwise "and" the negation of the value out of the mask (only
- /// changes enabled bits).
- CLR_MASK = 4
- };
-
- /**
- * You can specify a hook function to event-handling methods that will
- * be called after each iteration of event handling. If the hook function
- * returns a non-zero value, the event loop will immediately resume
- * waiting for the next event(s) to process without checking the error
- * status of the just-completed iteration of event handling or the
- * end-of-loop indication. If the hook function returns 0, the event
- * handling error status and the end-of-loop indication will be checked
- * as normal, just as if there is no hook function specified.
- */
- typedef int (*REACTOR_EVENT_HOOK)(ACE_Reactor *);
-
- /// Get pointer to a process-wide ACE_Reactor.
- static ACE_Reactor *instance (void);
-
- /**
- * Set pointer to a process-wide ACE_Reactor and return existing
- * pointer. If @a delete_reactor == true then we'll delete the Reactor
- * at destruction time.
- */
- static ACE_Reactor *instance (ACE_Reactor *, bool delete_reactor = false);
-
- /// Delete the dynamically allocated Singleton
- static void close_singleton (void);
-
- /// Name of the dll in which the dll lives.
- static const ACE_TCHAR *dll_name (void);
-
- /// Name of the component--ACE_Reactor in this case.
- static const ACE_TCHAR *name (void);
-
- // = Singleton reactor event loop management methods.
-
- // Note that these method ONLY work on the "Singleton Reactor,"
- // i.e., the one returned from <ACE_Reactor::instance>.
- /**
- * Run the event loop until the
- * <ACE_Reactor::handle_events/ACE_Reactor::alertable_handle_events>
- * method returns -1 or the <end_event_loop> method is invoked.
- * Note that this method can only be used by the singleton
- * <ACE_Reactor::instance>. Thus, to run another reactor use
- * <ACE_Reactor::run_reactor_event_loop>.
- *
- * @deprecated Use ACE_Reactor::instance()->run_reactor_event_loop() instead
- */
- static int run_event_loop (void);
- static int run_alertable_event_loop (void);
-
- /**
- * Run the event loop until the <ACE_Reactor::handle_events> or
- * <ACE_Reactor::alertable_handle_events> methods returns -1, the
- * <end_event_loop> method is invoked, or the ACE_Time_Value
- * expires. Note that this method can only be used by the singleton
- * <ACE_Reactor::instance>. Thus, to run another reactor use
- * <ACE_Reactor::run_reactor_event_loop>.
- *
- * @deprecated Use ACE_Reactor::instance()->run_reactor_event_loop() instead
- */
- static int run_event_loop (ACE_Time_Value &tv);
- static int run_alertable_event_loop (ACE_Time_Value &tv);
-
- /**
- * Instruct the <ACE_Reactor::instance> to terminate its event loop
- * and notifies the <ACE_Reactor::instance> so that it can wake up
- * and close down gracefully. Note that this method can only be
- * used by the singleton <ACE_Reactor::instance>. Thus, to
- * terminate another reactor, use
- * <ACE_Reactor::end_reactor_event_loop>.
- *
- * @deprecated Use ACE_Reactor::instance()->end_reactor_event_loop() instead
- */
- static int end_event_loop (void);
-
- /**
- * Report if the <ACE_Reactor::instance>'s event loop is finished.
- * Note that this method can only be used by the singleton
- * <ACE_Reactor::instance>. Thus, to check another reactor use
- * <ACE_Reactor::reactor_event_loop_done>.
- *
- * @deprecated Use ACE_Reactor::instance()->reactor_event_loop_done() instead
- */
- static int event_loop_done (void);
-
- /**
- * Resets the <ACE_Reactor::end_event_loop_> static so that the
- * <run_event_loop> method can be restarted. Note that this method
- * can only be used by the singleton <ACE_Reactor::instance>. Thus,
- * to reset another reactor use <ACE_Reactor::reset_reactor_event_loop>.
- *
- * @deprecated Use ACE_Reactor::instance()->reset_reactor_event_loop()
- * instead
- */
- static void reset_event_loop (void);
-
- /**
- * The singleton reactor is used by the ACE_Service_Config.
- * Therefore, we must check for the reconfiguration request and
- * handle it after handling an event.
- */
- static int check_reconfiguration (ACE_Reactor *);
-
- // = Reactor event loop management methods.
-
- // These methods work with an instance of a reactor.
- /**
- * Run the event loop until the
- * <ACE_Reactor::handle_events/ACE_Reactor::alertable_handle_events>
- * method returns -1 or the <end_reactor_event_loop> method is invoked.
- */
- int run_reactor_event_loop (REACTOR_EVENT_HOOK = 0);
- int run_alertable_reactor_event_loop (REACTOR_EVENT_HOOK = 0);
-
- /**
- * Run the event loop until the <ACE_Reactor::handle_events> or
- * <ACE_Reactor::alertable_handle_events> methods returns -1, the
- * <end_reactor_event_loop> method is invoked, or the ACE_Time_Value
- * expires.
- */
- int run_reactor_event_loop (ACE_Time_Value &tv,
- REACTOR_EVENT_HOOK = 0);
- int run_alertable_reactor_event_loop (ACE_Time_Value &tv,
- REACTOR_EVENT_HOOK = 0);
-
- /**
- * Instruct the Reactor to terminate its event loop and notifies the
- * Reactor so that it can wake up and deactivate
- * itself. Deactivating the Reactor would allow the Reactor to be
- * shutdown gracefully. Internally the Reactor calls deactivate ()
- * on the underlying implementation.
- * Any queued notifications remain queued on return from this method.
- * If the event loop is restarted in the future, the notifications
- * will be dispatched then. If the reactor is closed or deleted without
- * further dispatching, the notifications will be lost.
- */
- int end_reactor_event_loop (void);
-
- /// Indicate if the Reactor's event loop has been ended.
- int reactor_event_loop_done (void);
-
- /// Resets the <ACE_Reactor::end_event_loop_> static so that the
- /// <run_event_loop> method can be restarted.
- void reset_reactor_event_loop (void);
-
- /**
- * Create the Reactor using @a implementation. The flag
- * @a delete_implementation tells the Reactor whether or not to
- * delete the @a implementation on destruction.
- */
- ACE_Reactor (ACE_Reactor_Impl *implementation = 0,
- bool delete_implementation = false);
-
- /// Close down and release all resources.
- /**
- * Any notifications that remain queued on this reactor instance are
- * lost.
- */
- virtual ~ACE_Reactor (void);
-
- /**
- * Initialize the ACE_Reactor to manage <max_number_of_handles>.
- * If <restart> is non-0 then the ACE_Reactor's <handle_events>
- * method will be restarted automatically when <EINTR> occurs. If
- * <signal_handler> or <timer_queue> are non-0 they are used as the
- * signal handler and timer queue, respectively.
- */
- int open (size_t max_number_of_handles,
- int restart = 0,
- ACE_Sig_Handler *signal_handler = 0,
- ACE_Timer_Queue *timer_queue = 0);
-
- /// Use a user specified signal handler instead.
- int set_sig_handler (ACE_Sig_Handler *signal_handler);
-
- /// Set a user-specified timer queue.
- int timer_queue (ACE_Timer_Queue *tq);
-
- /// Return the current ACE_Timer_Queue.
- ACE_Timer_Queue *timer_queue (void) const;
-
- /// Close down and release all resources.
- int close (void);
-
- // = Event loop drivers.
-
- /**
- * Returns non-zero if there are I/O events "ready" for dispatching,
- * but does not actually dispatch the event handlers. By default,
- * don't block while checking this, i.e., "poll".
- */
- int work_pending (const ACE_Time_Value &max_wait_time = ACE_Time_Value::zero);
-
- /**
- * This event loop driver blocks for up to @a max_wait_time before
- * returning. It will return earlier if events occur. Note that
- * @a max_wait_time can be 0, in which case this method blocks
- * indefinitely until events occur.
- *
- * @a max_wait_time is decremented to reflect how much time this call
- * took. For instance, if a time value of 3 seconds is passed to
- * handle_events and an event occurs after 2 seconds,
- * @a max_wait_time will equal 1 second. This can be used if an
- * application wishes to handle events for some fixed amount of
- * time.
- *
- * Returns the total number of timers and I/O ACE_Event_Handlers
- * that were dispatched, 0 if the @a max_wait_time elapsed without
- * dispatching any handlers, or -1 if an error occurs.
- *
- * The only difference between <alertable_handle_events> and
- * <handle_events> is that in the alertable case, the eventloop will
- * return when the system queues an I/O completion routine or an
- * Asynchronous Procedure Call.
- */
- int handle_events (ACE_Time_Value *max_wait_time = 0);
- int alertable_handle_events (ACE_Time_Value *max_wait_time = 0);
-
- /**
- * This method is just like the one above, except the
- * @a max_wait_time value is a reference and can therefore never be
- * NULL.
- *
- * The only difference between <alertable_handle_events> and
- * <handle_events> is that in the alertable case, the eventloop will
- * return when the system queues an I/O completion routine or an
- * Asynchronous Procedure Call.
- */
- int handle_events (ACE_Time_Value &max_wait_time);
- int alertable_handle_events (ACE_Time_Value &max_wait_time);
-
- // = Register and remove handlers.
-
- /**
- * Register handler for I/O events.
- *
- * A handler can be associated with multiple handles. A handle
- * cannot be associated with multiple handlers.
- *
- * The handle will come from ACE_Event_Handler::get_handle().
- *
- * Reactor will call ACE_Event_Handler::add_reference() for a new
- * handler/handle pair.
- *
- * If this handler/handle pair has already been registered, any new
- * masks specified will be added. In this case,
- * ACE_Event_Handler::add_reference() will not be called.
- *
- * If the registered handler is currently suspended, it will remain
- * suspended. When the handler is resumed, it will have the
- * existing masks plus any masks added through this call. Handlers
- * do not have partial suspensions.
- */
- int register_handler (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask);
-
- /**
- * Register handler for I/O events.
- *
- * Same as register_handler(ACE_Event_Handler*,ACE_Reactor_Mask),
- * except handle is explicitly specified.
- */
- int register_handler (ACE_HANDLE io_handle,
- ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask);
-
-#if defined (ACE_WIN32)
-
- /**
- * Register handler for OS events.
- *
- * Register an @a event_handler that will be notified when
- * <event_handle> is signaled. This will call back its
- * <handle_signal> hook method.
- *
- * Reactor will call ACE_Event_Handler::add_reference() for a new
- * handler/handle pair.
- *
- * This interface is only available Win32 platforms because
- * ACE_HANDLE is an int on non-Win32 platforms and compilers are not
- * able to tell the difference between
- * register_handler(ACE_Event_Handler*,ACE_Reactor_Mask) and
- * register_handler(ACE_Event_Handler*,ACE_HANDLE).
- */
- int register_handler (ACE_Event_Handler *event_handler,
- ACE_HANDLE event_handle = ACE_INVALID_HANDLE);
-
-#endif /* ACE_WIN32 */
-
- /**
- * Register handler for I/O events.
- *
- * Similar to
- * register_handler(ACE_HANDLE,ACE_Event_Handler*,ACE_Reactor_Mask),
- * except that the user gets to specify the event handle that will
- * be used for this registration. This only applies to Reactors
- * that use event handles for I/O registrations.
- */
- int register_handler (ACE_HANDLE event_handle,
- ACE_HANDLE io_handle,
- ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask);
-
- /**
- * Register handler for multiple I/O events.
- *
- * Shorthand for calling
- * register_handler(ACE_HANDLE,ACE_Event_Handler*,ACE_Reactor_Mask),
- * multiple times for the same @a event_handler and @a masks but
- * different <handles>.
- */
- int register_handler (const ACE_Handle_Set &handles,
- ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask masks);
-
- /**
- * Register handler for signals.
- *
- * Register @a new_sh to handle the signal @a signum using the
- * @a new_disp. Returns the @a old_sh that was previously registered
- * (if any), along with the @a old_disp of the signal handler.
- *
- * Reactor will call ACE_Event_Handler::add_reference() on @a new_sh
- * and ACE_Event_Handler::remove_reference() on @a old_sh.
- */
- int register_handler (int signum,
- ACE_Event_Handler *new_sh,
- ACE_Sig_Action *new_disp = 0,
- ACE_Event_Handler **old_sh = 0,
- ACE_Sig_Action *old_disp = 0);
-
- /**
- * Register handler for multiple signals.
- *
- * Shorthand for calling
- * register_handler(int,ACE_Event_Handler*,ACE_Sig_Action*,ACE_Event_Handler**,ACE_Sig_Action*)
- * multiple times for the same @a event_handler and @a sig_action but
- * different <signals>.
- */
- int register_handler (const ACE_Sig_Set &sigset,
- ACE_Event_Handler *event_handler,
- ACE_Sig_Action *sig_action = 0);
-
- /**
- * Remove @a masks from @a handle registration.
- *
- * For I/O handles, @a masks are removed from the Reactor. Unless
- * @a masks includes ACE_Event_Handler::DONT_CALL,
- * ACE_Event_Handler::handle_close() will be called with the @a masks
- * that have been removed. If all masks have been removed,
- * ACE_Event_Handler::remove_reference() will be called.
- *
- * For OS handles, the @a handle is removed from the Reactor. Unless
- * @a masks includes ACE_Event_Handler::DONT_CALL,
- * ACE_Event_Handler::handle_close() will be called with
- * ACE_Event_Handler::NULL_MASK.
- * ACE_Event_Handler::remove_reference() will also be called.
- */
- int remove_handler (ACE_HANDLE handle,
- ACE_Reactor_Mask masks);
-
- /**
- * Remove @a masks from @a event_handler registration.
- *
- * Same as remove_handler(ACE_HANDLE,ACE_Reactor_Mask), except
- * @a handle comes from ACE_Event_Handler::get_handle().
- */
- int remove_handler (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask masks);
-
- /**
- * Remove @a masks from multiple <handle> registrations.
- *
- * Shorthand for calling remove_handler(ACE_HANDLE,ACE_Reactor_Mask)
- * multiple times for the same @a masks but different @a handles.
- */
- int remove_handler (const ACE_Handle_Set &handles,
- ACE_Reactor_Mask masks);
-
- /**
- * Remove signal handler registration.
- *
- * Remove the ACE_Event_Handler currently associated with @a signum.
- * Install the new disposition (if given) and return the previous
- * disposition (if desired by the caller).
- *
- * Note that, unlike removing handler for I/O events,
- * ACE_Event_Handler::handle_close() will not be called when the
- * handler is removed. Neither will any reference-counting activity be
- * involved.
- *
- * @note There's an existing enhancement request in Bugzilla,
- * #2368, to change this behavior so that ACE_Event_Handler::handle_close()
- * is called when the signal handler is removed. Thus, there's some chance
- * this behavior will change in a future version of ACE.
- */
- int remove_handler (int signum,
- ACE_Sig_Action *new_disp,
- ACE_Sig_Action *old_disp = 0,
- int sigkey = -1);
-
- /**
- * Remove multiple signal handler registrations.
- *
- * Shorthand for calling
- * remove_handler(int,ACE_Sig_Action*,ACE_Sig_Action*,int) multiple
- * times for every signal in @a sigset.
- */
- int remove_handler (const ACE_Sig_Set &sigset);
-
- // = Suspend and resume Handlers.
-
- /**
- * Suspend @a handle temporarily.
- */
- int suspend_handler (ACE_HANDLE handle);
-
- /**
- * Suspend @a event_handler temporarily.
- *
- * Handle is obtained from ACE_Event_Handler::get_handle().
- */
- int suspend_handler (ACE_Event_Handler *event_handler);
-
- /**
- * Suspend @a handles temporarily.
- *
- * Shorthand for calling suspend_handler(ACE_HANDLE) with multiple
- * @a handles.
- */
- int suspend_handler (const ACE_Handle_Set &handles);
-
- /**
- * Suspend all registered handles temporarily.
- */
- int suspend_handlers (void);
-
- /**
- * Resume @a handle.
- */
- int resume_handler (ACE_HANDLE handle);
-
- /**
- * Resume @a event_handler.
- *
- * Handle is obtained from ACE_Event_Handler::get_handle().
- */
- int resume_handler (ACE_Event_Handler *event_handler);
-
- /**
- * Resume @a handles.
- *
- * Shorthand for calling resume_handler(ACE_HANDLE) with multiple
- * <handles>.
- */
- int resume_handler (const ACE_Handle_Set &handles);
-
- /**
- * Resume all registered handles.
- */
- int resume_handlers (void);
-
- /// Does the reactor allow the application to resume the handle on
- /// its own ie. can it pass on the control of handle resumption to
- /// the application. A positive value indicates that the handlers
- /// are application resumable. A value of 0 indicates otherwise.
- int resumable_handler (void);
-
- // = Timer management.
-
- /**
- * Schedule a timer event.
- *
- * Schedule a timer event that will expire after an <delay> amount
- * of time. The return value of this method, a timer_id value,
- * uniquely identifies the @a event_handler in the ACE_Reactor's
- * internal list of timers. This timer_id value can be used to
- * cancel the timer with the cancel_timer() call.
- *
- * Reactor will call ACE_Event_Handler::add_reference() on the
- * handler. After the timeout occurs and
- * ACE_Event_Handler::handle_timeout() has completed, the handler
- * will be implicitly removed from the Reactor and
- * ACE_Event_Handler::remove_reference() will be called.
- *
- * @see cancel_timer()
- * @see reset_timer_interval()
- *
- * @param event_handler Event handler to schedule on reactor
- * @param arg Argument passed to the handle_timeout() method of
- * event_handler
- * @param delay Time interval after which the timer will expire
- * @param interval Time interval after which the timer will be automatically
- * rescheduled
- * @return -1 on failure, a timer_id value on success
- */
- virtual long schedule_timer (ACE_Event_Handler *event_handler,
- const void *arg,
- const ACE_Time_Value &delay,
- const ACE_Time_Value &interval =
- ACE_Time_Value::zero);
-
- /**
- * Reset recurring timer interval.
- *
- * Resets the interval of the timer represented by @a timer_id to
- * @a interval, which is specified in relative time to the current
- * <gettimeofday>. If @a interval is equal to
- * ACE_Time_Value::zero, the timer will become a non-rescheduling
- * timer. Returns 0 if successful, -1 if not.
- *
- * This change will not take effect until the next timeout.
- */
- virtual int reset_timer_interval (long timer_id,
- const ACE_Time_Value &interval);
-
- /**
- * Cancel timer.
- *
- * Cancel timer associated with @a timer_id that was returned from
- * the schedule_timer() method. If arg is non-NULL then it will be
- * set to point to the ``magic cookie'' argument passed in when the
- * handler was registered. This makes it possible to free up the
- * memory and avoid memory leaks. Returns 1 if cancellation
- * succeeded and 0 if the @a timer_id wasn't found.
- *
- * On successful cancellation, ACE_Event_Handler::handle_close()
- * will be called with ACE_Event_Handler::TIMER_MASK.
- * ACE_Event_Handler::remove_reference() will also be called.
- */
- virtual int cancel_timer (long timer_id,
- const void **arg = 0,
- int dont_call_handle_close = 1);
-
- /**
- * Cancel all timers associated with event handler.
- *
- * Shorthand for calling cancel_timer(long,const void **,int)
- * multiple times for all timer associated with @a event_handler.
- *
- * ACE_Event_Handler::handle_close() will be called with
- * ACE_Event_Handler::TIMER_MASK only once irrespective of the
- * number of timers associated with the event handler.
- * ACE_Event_Handler::remove_reference() will also be called once
- * for every timer associated with the event handler.
- *
- * Returns number of handlers cancelled.
- */
- virtual int cancel_timer (ACE_Event_Handler *event_handler,
- int dont_call_handle_close = 1);
-
- // = High-level Event_Handler scheduling operations
-
- /// Add @a masks_to_be_added to the @a event_handler's entry.
- /// @a event_handler must already have been registered.
- /// Note that this call does not cause the Reactor to re-examine
- /// its set of handlers - the new masks will be noticed the next
- /// time the Reactor waits for activity. If there is no other
- /// activity expected, or you need immediate re-examination of the
- /// wait masks, either call ACE_Reactor::notify after this call, or
- /// use ACE_Reactor::register_handler instead.
- int schedule_wakeup (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask masks_to_be_added);
-
- /// Add @a masks_to_be_added to the @a handle's entry. <event_handler>
- /// associated with @a handle must already have been registered.
- /// Note that this call does not cause the Reactor to re-examine
- /// its set of handlers - the new masks will be noticed the next
- /// time the Reactor waits for activity. If there is no other
- /// activity expected, or you need immediate re-examination of
- /// the wait masks, either call ACE_Reactor::notify after this call,
- /// or use ACE_Reactor::register_handler instead.
- int schedule_wakeup (ACE_HANDLE handle,
- ACE_Reactor_Mask masks_to_be_added);
-
- /// Clear @a masks_to_be_cleared from the @a event_handler's entry.
- /// Note that this call does not cause the Reactor to re-examine
- /// its set of handlers - the new masks will be noticed the next
- /// time the Reactor waits for activity. If there is no other
- /// activity expected, or you need immediate re-examination of
- /// the wait masks, either call ACE_Reactor::notify after this
- /// call, or use ACE_Reactor::register_handler instead.
- int cancel_wakeup (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask masks_to_be_cleared);
-
- /// Clear @a masks_to_be_cleared from the <handle>'s entry.
- /// Note that this call does not cause the Reactor to re-examine
- /// its set of handlers - the new masks will be noticed the next
- /// time the Reactor waits for activity. If there is no other
- /// activity expected, or you need immediate re-examination of
- /// the wait masks, either call ACE_Reactor::notify after this
- /// call, or use ACE_Reactor::register_handler instead.
- int cancel_wakeup (ACE_HANDLE handle,
- ACE_Reactor_Mask masks_to_be_cleared);
-
- // = Notification methods.
-
- /**
- * Dispatch user specified events.
- *
- * Handler will be dispatched irrespective of whether it is
- * registered, not registered, or suspended in the Reactor.
- *
- * If user specified event is successfully queued,
- * ACE_Event_Handler::add_reference() will be called. After the
- * notify occurs and the upcall to the handler completes, the
- * handler will be implicitly removed from the Reactor and
- * ACE_Event_Handler::remove_reference() will be called. No other
- * upcall reference counting is done.
- *
- * For I/O or OS events, the upcall is invoked with an
- * ACE_INVALID_HANDLE.
- *
- * For timer events, the upcall is invoked with a null ACT.
- *
- * @param event_handler: IN - Handler on which the event will be
- * dispatched.
- * @param masks: IN - Events to be dispatched - multiple events can
- * be OR'd together.
- * @param timeout: INOUT - Relative time up to which to wait for
- * user specified event to be queued. If tv is 0, wait
- * indefinitely. When the call returns, tv has the time remaining
- * after the call completes.
- */
- int notify (ACE_Event_Handler *event_handler = 0,
- ACE_Reactor_Mask masks = ACE_Event_Handler::EXCEPT_MASK,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Set the maximum number of times that ACE_Reactor will
- * iterate and dispatch the ACE_Event_Handlers that are passed in
- * via the notify queue before breaking out of its
- * <ACE_Message_Queue::dequeue> loop. By default, this is set to
- * -1, which means "iterate until the queue is empty." Setting this
- * to a value like "1 or 2" will increase "fairness" (and thus
- * prevent starvation) at the expense of slightly higher dispatching
- * overhead.
- */
- void max_notify_iterations (int iterations);
-
- /**
- * Get the maximum number of times that the ACE_Reactor will
- * iterate and dispatch the ACE_Event_Handler's that are passed in
- * via the notify queue before breaking out of its
- * <ACE_Message_Queue::dequeue> loop.
- */
- int max_notify_iterations (void);
-
- /**
- * Purge any notifications pending in this reactor for the specified
- * ACE_Event_Handler object. If @a eh == 0, all notifications for
- * all handlers are removed (but not any notifications posted just
- * to wake up the reactor itself). Returns the number of
- * notifications purged. Returns -1 on error.
- *
- * After the purging occurs, the handler will be implicitly removed
- * from the Reactor and ACE_Event_Handler::remove_reference() will
- * be called.
- */
- int purge_pending_notifications (ACE_Event_Handler *eh,
- ACE_Reactor_Mask =
- ACE_Event_Handler::ALL_EVENTS_MASK);
-
- // = Assorted helper methods.
-
- /**
- * Return the Event_Handler associated with @a handle. Return 0 if
- * @a handle is not registered.
- *
- * Reactor will call ACE_Event_Handler::add_reference() on the
- * handler before returning it.
- */
- ACE_Event_Handler *find_handler (ACE_HANDLE handle);
-
- /**
- * Check to see if @a handle is associated with a valid Event_Handler
- * bound to @a mask. Return the @c event_handler associated with this
- * @a handler if @a event_handler != 0.
- *
- * Reactor will call ACE_Event_Handler::add_reference() on the
- * handler before returning it if @a event_handler != 0.
- */
- int handler (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- ACE_Event_Handler **event_handler = 0);
-
- /**
- * Check to see if @a signum is associated with a valid Event_Handler
- * bound to a signal. Return the @a event_handler associated with
- * this @c handler if @a event_handler != 0.
- */
- int handler (int signum,
- ACE_Event_Handler **event_handler = 0);
-
- /// Returns true if Reactor has been successfully initialized, else
- /// false.
- int initialized (void);
-
- /// Returns the current size of the Reactor's internal descriptor
- /// table.
- size_t size (void) const;
-
- /// Returns a reference to the Reactor's internal lock.
- ACE_Lock &lock (void);
-
- /// Wake up all threads in waiting in the event loop
- void wakeup_all_threads (void);
-
- /// Transfers ownership of Reactor to the @a new_owner.
- int owner (ACE_thread_t new_owner,
- ACE_thread_t *old_owner = 0);
-
- /// Return the ID of the "owner" thread.
- int owner (ACE_thread_t *owner);
-
- /// Set position of the owner thread.
- void requeue_position (int position);
-
- /// Get position of the owner thread.
- int requeue_position (void);
-
- /// Get the existing restart value.
- int restart (void);
-
- /// Set a new value for restart and return the original value.
- int restart (int r);
-
- // = Low-level wait_set mask manipulation methods.
-
- /// GET/SET/ADD/CLR the dispatch mask "bit" bound with the
- /// @a event_handler and @a mask.
- int mask_ops (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask,
- int ops);
-
- /// GET/SET/ADD/CLR the dispatch MASK "bit" bound with the @a handle
- /// and @a mask.
- int mask_ops (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- int ops);
-
- // = Low-level ready_set mask manipulation methods.
- /// GET/SET/ADD/CLR the ready "bit" bound with the @a event_handler
- /// and @a mask.
- int ready_ops (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask,
- int ops);
-
- /// GET/SET/ADD/CLR the ready "bit" bound with the <handle> and @a mask.
- int ready_ops (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- int ops);
-
- /// Get the implementation class
- ACE_Reactor_Impl *implementation (void) const;
-
- /**
- * Returns 0, if the size of the current message has been put in
- * @a size returns -1, if not. ACE_HANDLE allows the reactor to
- * check if the caller is valid. Used for CLASSIX Reactor
- * implementation.
- */
- int current_info (ACE_HANDLE handle, size_t &msg_size);
-
- /// Return 1 if we any event associations were made by the reactor
- /// for the handles that it waits on, 0 otherwise.
- int uses_event_associations (void);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /// Dump the state of the object.
- void dump (void) const;
-
-protected:
- /// Set the implementation class.
- void implementation (ACE_Reactor_Impl *implementation);
-
- /// Delegation/implementation class that all methods will be
- /// forwarded to.
- ACE_Reactor_Impl *implementation_;
-
- /// Flag used to indicate whether we are responsible for cleaning up
- /// the implementation instance
- bool delete_implementation_;
-
- /// Pointer to a process-wide ACE_Reactor singleton.
- static ACE_Reactor *reactor_;
-
- /// Must delete the reactor_ singleton if true.
- static bool delete_reactor_;
-
- /// Deny access since member-wise won't work...
- ACE_Reactor (const ACE_Reactor &);
- ACE_Reactor &operator = (const ACE_Reactor &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Reactor.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_REACTOR_H */
-
diff --git a/dep/include/ace/Reactor.inl b/dep/include/ace/Reactor.inl
deleted file mode 100644
index f3f5b17992c..00000000000
--- a/dep/include/ace/Reactor.inl
+++ /dev/null
@@ -1,498 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Reactor.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Reactor_Impl.h"
-
-/*
- * Hook to specialize the Reactor with the concrete implementation
- * known at compile time.
- */
-//@@ REACTOR_SPL_INCLUDE_FORWARD_DECL_ADD_HOOK
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Run the event loop until the <ACE_Reactor::handle_events> method
-// returns -1 or the <end_event_loop> method is invoked.
-ACE_INLINE int
-ACE_Reactor::run_event_loop (void)
-{
- ACE_TRACE ("ACE_Reactor::run_event_loop");
- ACE_Reactor *r = ACE_Reactor::instance ();
-
- if (r == 0)
- return -1;
-
- return r->run_reactor_event_loop (ACE_Reactor::check_reconfiguration);
-}
-
-// Run the event loop until the <ACE_Reactor::handle_events>
-// method returns -1, the <end_event_loop> method
-// is invoked, or the <ACE_Time_Value> expires.
-
-ACE_INLINE int
-ACE_Reactor::run_event_loop (ACE_Time_Value &tv)
-{
- ACE_TRACE ("ACE_Reactor::run_event_loop");
- ACE_Reactor *r = ACE_Reactor::instance ();
-
- if (r == 0)
- return -1;
-
- return r->run_reactor_event_loop
- (tv, ACE_Reactor::check_reconfiguration);
-}
-
-// Run the event loop until the <ACE_Reactor::alertable_handle_events> method
-// returns -1 or the <end_event_loop> method is invoked.
-
-ACE_INLINE int
-ACE_Reactor::run_alertable_event_loop (void)
-{
- ACE_TRACE ("ACE_Reactor::run_alertable_event_loop");
- ACE_Reactor *r = ACE_Reactor::instance ();
-
- if (r == 0)
- return -1;
-
- return r->run_alertable_reactor_event_loop (ACE_Reactor::check_reconfiguration);
-}
-
-// Run the event loop until the <ACE_Reactor::alertable_handle_events>
-// method returns -1, the <end_event_loop> method
-// is invoked, or the <ACE_Time_Value> expires.
-
-ACE_INLINE int
-ACE_Reactor::run_alertable_event_loop (ACE_Time_Value &tv)
-{
- ACE_TRACE ("ACE_Reactor::run_alertable_event_loop");
- ACE_Reactor *r = ACE_Reactor::instance ();
-
- if (r == 0)
- return -1;
-
- return r->run_alertable_reactor_event_loop
- (tv, ACE_Reactor::check_reconfiguration);
-}
-
-ACE_INLINE void
-ACE_Reactor::reset_event_loop (void)
-{
- ACE_TRACE ("ACE_Reactor::reset_event_loop");
-
- ACE_Reactor::instance ()->reset_reactor_event_loop ();
-}
-
-ACE_INLINE int
-ACE_Reactor::end_event_loop (void)
-{
- ACE_TRACE ("ACE_Reactor::end_event_loop");
- ACE_Reactor::instance ()->end_reactor_event_loop ();
-
- return 0;
-}
-
-ACE_INLINE int
-ACE_Reactor::event_loop_done (void)
-{
- ACE_TRACE ("ACE_Reactor::event_loop_done");
- return ACE_Reactor::instance ()->reactor_event_loop_done ();
-}
-
-ACE_INLINE int
-ACE_Reactor::end_reactor_event_loop (void)
-{
- ACE_TRACE ("ACE_Reactor::end_reactor_event_loop");
-
- this->implementation_->deactivate (1);
-
- return 0;
-}
-
-ACE_INLINE void
-ACE_Reactor::reset_reactor_event_loop (void)
-{
- ACE_TRACE ("ACE_Reactor::reset_reactor_event_loop");
-
- this->implementation_->deactivate (0);
-}
-
-ACE_INLINE int
-ACE_Reactor::resumable_handler (void)
-{
- return this->implementation ()->resumable_handler ();
-}
-
-ACE_INLINE ACE_Reactor_Impl *
-ACE_Reactor::implementation (void) const
-{
- return this->implementation_;
-}
-
-ACE_INLINE void
-ACE_Reactor::implementation (ACE_Reactor_Impl *impl)
-{
- this->implementation_ = impl;
-}
-
-ACE_INLINE int
-ACE_Reactor::current_info (ACE_HANDLE handle, size_t &size)
-{
- return this->implementation ()->current_info (handle, size);
-}
-
-ACE_INLINE int
-ACE_Reactor::open (size_t size,
- int restart,
- ACE_Sig_Handler *signal_handler,
- ACE_Timer_Queue *timer_queue)
-{
- return this->implementation ()->open (size,
- restart,
- signal_handler,
- timer_queue);
-}
-ACE_INLINE int
-ACE_Reactor::set_sig_handler (ACE_Sig_Handler *signal_handler)
-{
- return this->implementation ()->set_sig_handler (signal_handler);
-}
-
-ACE_INLINE int
-ACE_Reactor::timer_queue (ACE_Timer_Queue *tq)
-{
- return this->implementation ()->timer_queue (tq);
-}
-
-ACE_INLINE ACE_Timer_Queue *
-ACE_Reactor::timer_queue (void) const
-{
- return this->implementation ()->timer_queue ();
-}
-
-ACE_INLINE int
-ACE_Reactor::close (void)
-{
- return this->implementation ()->close ();
-}
-
-ACE_INLINE int
-ACE_Reactor::work_pending (const ACE_Time_Value &max_wait_time)
-{
- return this->implementation ()->work_pending (max_wait_time);
-}
-
-ACE_INLINE int
-ACE_Reactor::handle_events (ACE_Time_Value *max_wait_time)
-{
- return this->implementation ()->handle_events (max_wait_time);
-}
-
-ACE_INLINE int
-ACE_Reactor::alertable_handle_events (ACE_Time_Value *max_wait_time)
-{
- return this->implementation ()->alertable_handle_events (max_wait_time);
-}
-
-ACE_INLINE int
-ACE_Reactor::handle_events (ACE_Time_Value &max_wait_time)
-{
- return this->implementation ()->handle_events (max_wait_time);
-}
-
-ACE_INLINE int
-ACE_Reactor::alertable_handle_events (ACE_Time_Value &max_wait_time)
-{
- return this->implementation ()->alertable_handle_events (max_wait_time);
-}
-
-ACE_INLINE int
-ACE_Reactor::register_handler (int signum,
- ACE_Event_Handler *new_sh,
- ACE_Sig_Action *new_disp,
- ACE_Event_Handler **old_sh,
- ACE_Sig_Action *old_disp)
-{
- return this->implementation ()->register_handler (signum,
- new_sh,
- new_disp,
- old_sh,
- old_disp);
-}
-
-ACE_INLINE int
-ACE_Reactor::register_handler (const ACE_Sig_Set &sigset,
- ACE_Event_Handler *new_sh,
- ACE_Sig_Action *new_disp)
-{
- return this->implementation ()->register_handler (sigset,
- new_sh,
- new_disp);
-}
-
-ACE_INLINE int
-ACE_Reactor::remove_handler (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask)
-{
- return this->implementation ()->remove_handler (event_handler, mask);
-}
-
-ACE_INLINE int
-ACE_Reactor::remove_handler (ACE_HANDLE handle,
- ACE_Reactor_Mask mask)
-{
- return this->implementation ()->remove_handler (handle, mask);
-}
-
-ACE_INLINE int
-ACE_Reactor::remove_handler (const ACE_Handle_Set &handle_set,
- ACE_Reactor_Mask mask)
-{
- return this->implementation ()->remove_handler (handle_set, mask);
-}
-
-ACE_INLINE int
-ACE_Reactor::remove_handler (int signum,
- ACE_Sig_Action *new_disp,
- ACE_Sig_Action *old_disp,
- int sigkey)
-{
- return this->implementation ()->remove_handler (signum,
- new_disp,
- old_disp,
- sigkey);
-}
-
-ACE_INLINE int
-ACE_Reactor::remove_handler (const ACE_Sig_Set &sigset)
-{
- return this->implementation ()->remove_handler (sigset);
-}
-
-ACE_INLINE int
-ACE_Reactor::suspend_handler (ACE_Event_Handler *event_handler)
-{
- return this->implementation ()->suspend_handler (event_handler);
-}
-
-ACE_INLINE int
-ACE_Reactor::suspend_handler (ACE_HANDLE handle)
-{
- return this->implementation ()->suspend_handler (handle);
-}
-
-ACE_INLINE int
-ACE_Reactor::suspend_handler (const ACE_Handle_Set &handles)
-{
- return this->implementation ()->suspend_handler (handles);
-}
-
-ACE_INLINE int
-ACE_Reactor::suspend_handlers (void)
-{
- return this->implementation ()->suspend_handlers ();
-}
-
-ACE_INLINE int
-ACE_Reactor::resume_handler (ACE_Event_Handler *event_handler)
-{
- return this->implementation ()->resume_handler (event_handler);
-}
-
-ACE_INLINE int
-ACE_Reactor::resume_handler (ACE_HANDLE handle)
-{
- return this->implementation ()->resume_handler (handle);
-}
-
-ACE_INLINE int
-ACE_Reactor::resume_handler (const ACE_Handle_Set &handles)
-{
- return this->implementation ()->resume_handler (handles);
-}
-
-ACE_INLINE int
-ACE_Reactor::resume_handlers (void)
-{
- return this->implementation ()->resume_handlers ();
-}
-
-ACE_INLINE int
-ACE_Reactor::schedule_wakeup (ACE_HANDLE handle,
- ACE_Reactor_Mask masks_to_be_added)
-{
- return implementation ()->schedule_wakeup (handle, masks_to_be_added);
-}
-
-ACE_INLINE int
-ACE_Reactor::cancel_wakeup (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask masks_to_be_cleared)
-{
- return this->implementation ()->cancel_wakeup (event_handler,
- masks_to_be_cleared);
-}
-
-ACE_INLINE int
-ACE_Reactor::cancel_wakeup (ACE_HANDLE handle,
- ACE_Reactor_Mask masks_to_be_cleared)
-{
- return this->implementation ()->cancel_wakeup (handle,
- masks_to_be_cleared);
-}
-
-ACE_INLINE void
-ACE_Reactor::max_notify_iterations (int iterations)
-{
- this->implementation ()->max_notify_iterations (iterations);
-}
-
-ACE_INLINE int
-ACE_Reactor::max_notify_iterations (void)
-{
- return this->implementation ()->max_notify_iterations ();
-}
-
-ACE_INLINE int
-ACE_Reactor::purge_pending_notifications (ACE_Event_Handler *eh,
- ACE_Reactor_Mask mask)
-{
- return this->implementation ()->purge_pending_notifications (eh, mask);
-}
-
-ACE_INLINE ACE_Event_Handler *
-ACE_Reactor::find_handler (ACE_HANDLE handle)
-{
- return this->implementation ()->find_handler (handle);
-}
-
-ACE_INLINE int
-ACE_Reactor::handler (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- ACE_Event_Handler **event_handler)
-{
- return this->implementation ()->handler (handle, mask, event_handler);
-}
-
-ACE_INLINE int
-ACE_Reactor::handler (int signum,
- ACE_Event_Handler **event_handler)
-{
- return this->implementation ()->handler (signum, event_handler);
-}
-
-ACE_INLINE int
-ACE_Reactor::initialized (void)
-{
- return this->implementation ()->initialized ();
-}
-
-ACE_INLINE ACE_Lock &
-ACE_Reactor::lock (void)
-{
- return this->implementation ()->lock ();
-}
-
-ACE_INLINE void
-ACE_Reactor::wakeup_all_threads (void)
-{
- this->implementation ()->wakeup_all_threads ();
-}
-
-ACE_INLINE int
-ACE_Reactor::owner (ACE_thread_t new_owner, ACE_thread_t *old_owner)
-{
- return this->implementation ()->owner (new_owner, old_owner);
-}
-
-ACE_INLINE int
-ACE_Reactor::owner (ACE_thread_t *owner)
-{
- return this->implementation ()->owner (owner);
-}
-
-ACE_INLINE int
-ACE_Reactor::restart (void)
-{
- return this->implementation ()->restart ();
-}
-
-ACE_INLINE int
-ACE_Reactor::restart (int r)
-{
- return this->implementation ()->restart (r);
-}
-
-ACE_INLINE void
-ACE_Reactor::requeue_position (int position)
-{
- this->implementation ()->requeue_position (position);
-}
-
-ACE_INLINE int
-ACE_Reactor::requeue_position (void)
-{
- return this->implementation ()->requeue_position ();
-}
-
-ACE_INLINE int
-ACE_Reactor::mask_ops (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask,
- int ops)
-{
- return this->implementation ()->mask_ops (event_handler, mask, ops);
-}
-
-ACE_INLINE int
-ACE_Reactor::mask_ops (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- int ops)
-{
- return this->implementation ()->mask_ops (handle, mask, ops);
-}
-
-ACE_INLINE int
-ACE_Reactor::ready_ops (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask,
- int ops)
-{
- return this->implementation ()->ready_ops (event_handler, mask, ops);
-}
-
-ACE_INLINE int
-ACE_Reactor::ready_ops (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- int ops)
-{
- return this->implementation ()->ready_ops (handle, mask, ops);
-}
-
-ACE_INLINE int
-ACE_Reactor::reactor_event_loop_done (void)
-{
- ACE_TRACE ("ACE_Reactor::reactor_event_loop_done");
- return this->implementation_->deactivated ();
-}
-
-ACE_INLINE size_t
-ACE_Reactor::size (void) const
-{
- return this->implementation ()->size ();
-}
-
-ACE_INLINE int
-ACE_Reactor::uses_event_associations (void)
-{
- return this->implementation ()->uses_event_associations ();
-}
-
-ACE_INLINE void
-ACE_Reactor::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_Reactor::dump");
-
- implementation_->dump ();
-#endif /* ACE_HAS_DUMP */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Reactor_Impl.h b/dep/include/ace/Reactor_Impl.h
deleted file mode 100644
index db5a6ea2524..00000000000
--- a/dep/include/ace/Reactor_Impl.h
+++ /dev/null
@@ -1,569 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Reactor_Impl.h
- *
- * $Id: Reactor_Impl.h 81082 2008-03-25 09:09:11Z johnnyw $
- *
- * @author Irfan Pyarali
- */
-//=============================================================================
-
-#ifndef ACE_REACTOR_IMPL_H
-#define ACE_REACTOR_IMPL_H
-#include /**/ "ace/pre.h"
-
-// Timer Queue is a complicated template class. A simple forward
-// declaration will not work
-#include "ace/Timer_Queuefwd.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// Event_Handler.h contains the definition of ACE_Reactor_Mask
-#include "ace/Event_Handler.h"
-#include "ace/Countdown_Time.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decls
-class ACE_Handle_Set;
-class ACE_Reactor_Impl;
-class ACE_Sig_Action;
-class ACE_Sig_Handler;
-class ACE_Sig_Set;
-
-/**
- * @class ACE_Reactor_Notify
- *
- * @internal This class is for ACE internal use only.
- *
- * @brief Abstract class for unblocking an ACE_Reactor_Impl from its
- * event loop.
- */
-class ACE_Export ACE_Reactor_Notify : public ACE_Event_Handler
-{
-public:
- // = Initialization and termination methods.
- virtual int open (ACE_Reactor_Impl *,
- ACE_Timer_Queue *timer_queue = 0,
- int disable_notify = 0) = 0;
- virtual int close (void) = 0;
-
- /**
- * Called by a thread when it wants to unblock the <Reactor_Impl>.
- * This wakeups the <Reactor_Impl> if currently blocked. Pass over
- * both the <Event_Handler> *and* the @a mask to allow the caller to
- * dictate which <Event_Handler> method the <Reactor_Impl> will
- * invoke. The ACE_Time_Value indicates how long to blocking
- * trying to notify the <Reactor_Impl>. If @a timeout == 0, the
- * caller will block until action is possible, else will wait until
- * the relative time specified in *@a timeout elapses).
- */
- virtual int notify (ACE_Event_Handler *eh = 0,
- ACE_Reactor_Mask mask = ACE_Event_Handler::EXCEPT_MASK,
- ACE_Time_Value *timeout = 0) = 0;
-
- /// Handles pending threads (if any) that are waiting to unblock the
- /// <Reactor_Impl>.
- virtual int dispatch_notifications (int &number_of_active_handles,
- ACE_Handle_Set &rd_mask) = 0;
-
- /// Returns the ACE_HANDLE of the notify pipe on which the reactor
- /// is listening for notifications so that other threads can unblock
- /// the <Reactor_Impl>
- virtual ACE_HANDLE notify_handle (void) = 0;
-
- /// Verify whether the buffer has dispatchable info or not.
- virtual int is_dispatchable (ACE_Notification_Buffer &buffer)= 0;
-
- /// Handle one of the notify call on the <handle>. This could be
- /// because of a thread trying to unblock the <Reactor_Impl>
- virtual int dispatch_notify (ACE_Notification_Buffer &buffer) = 0;
-
- /// Read one of the notify call on the @a handle into the
- /// @a buffer. This could be because of a thread trying to unblock
- /// the <Reactor_Impl>
- virtual int read_notify_pipe (ACE_HANDLE handle,
- ACE_Notification_Buffer &buffer) = 0;
- /**
- * Set the maximum number of times that the <handle_input> method
- * will iterate and dispatch the <ACE_Event_Handlers> that are
- * passed in via the notify queue before breaking out of the event
- * loop. By default, this is set to -1, which means "iterate until
- * the queue is empty." Setting this to a value like "1 or 2" will
- * increase "fairness" (and thus prevent starvation) at the expense
- * of slightly higher dispatching overhead.
- */
- virtual void max_notify_iterations (int) = 0;
-
- /**
- * Get the maximum number of times that the <handle_input> method
- * will iterate and dispatch the <ACE_Event_Handlers> that are
- * passed in via the notify queue before breaking out of its event
- * loop.
- */
- virtual int max_notify_iterations (void) = 0;
-
- /**
- * Purge any notifications pending in this reactor for the specified
- * ACE_Event_Handler object. Returns the number of notifications
- * purged. Returns -1 on error.
- */
- virtual int purge_pending_notifications (ACE_Event_Handler * = 0,
- ACE_Reactor_Mask = ACE_Event_Handler::ALL_EVENTS_MASK) = 0;
-
- /// Dump the state of an object.
- virtual void dump (void) const = 0;
-};
-
-/**
- * @class ACE_Reactor_Impl
- *
- * @brief An abstract class for implementing the Reactor Pattern.
- */
-class ACE_Export ACE_Reactor_Impl
-{
-public:
- /// Close down and release all resources.
- virtual ~ACE_Reactor_Impl (void);
-
- /// Initialization.
- virtual int open (size_t size,
- int restart = 0,
- ACE_Sig_Handler * = 0,
- ACE_Timer_Queue * = 0,
- int disable_notify_pipe = 0,
- ACE_Reactor_Notify * = 0) = 0;
-
- /**
- * Returns 0, if the size of the current message has been put in
- * @a size Returns -1, if not. ACE_HANDLE allows the reactor to
- * check if the caller is valid.
- */
- virtual int current_info (ACE_HANDLE, size_t & /* size */) = 0;
-
- /// Use a user specified signal handler instead.
- virtual int set_sig_handler (ACE_Sig_Handler *signal_handler) = 0;
-
- /// Set a user-specified timer queue.
- virtual int timer_queue (ACE_Timer_Queue *tq) = 0;
-
- /// Return the current ACE_Timer_Queue.
- virtual ACE_Timer_Queue *timer_queue (void) const = 0;
-
- /// Close down and release all resources.
- virtual int close (void) = 0;
-
- // = Event loop drivers.
- /**
- * Returns non-zero if there are I/O events "ready" for dispatching,
- * but does not actually dispatch the event handlers. By default,
- * don't block while checking this, i.e., "poll".
- */
- virtual int work_pending (const ACE_Time_Value &max_wait_time = ACE_Time_Value::zero) = 0;
-
- /**
- * This event loop driver blocks for up to @a max_wait_time before
- * returning. It will return earlier if events occur. Note that
- * @a max_wait_time can be 0, in which case this method blocks
- * indefinitely until events occur.
- *
- * @a max_wait_time is decremented to reflect how much time this call
- * took. For instance, if a time value of 3 seconds is passed to
- * handle_events and an event occurs after 2 seconds,
- * @a max_wait_time will equal 1 second. This can be used if an
- * application wishes to handle events for some fixed amount of
- * time.
- *
- * Returns the total number of ACE_Event_Handlers that were
- * dispatched, 0 if the @a max_wait_time elapsed without dispatching
- * any handlers, or -1 if an error occurs.
- *
- * The only difference between <alertable_handle_events> and
- * <handle_events> is that in the alertable case, the eventloop will
- * return when the system queues an I/O completion routine or an
- * Asynchronous Procedure Call.
- */
- virtual int handle_events (ACE_Time_Value *max_wait_time = 0) = 0;
- virtual int alertable_handle_events (ACE_Time_Value *max_wait_time = 0) = 0;
-
- /**
- * This method is just like the one above, except the
- * @a max_wait_time value is a reference and can therefore never be
- * NULL.
- *
- * The only difference between <alertable_handle_events> and
- * <handle_events> is that in the alertable case, the eventloop will
- * return when the system queues an I/O completion routine or an
- * Asynchronous Procedure Call.
- */
- virtual int handle_events (ACE_Time_Value &max_wait_time) = 0;
- virtual int alertable_handle_events (ACE_Time_Value &max_wait_time) = 0;
-
- // = Event handling control.
-
- /**
- * Return the status of Reactor. If this function returns 0, the reactor is
- * actively handling events. If it returns non-zero, <handling_events> and
- * <handle_alertable_events> return -1 immediately.
- */
- virtual int deactivated (void) = 0;
-
- /**
- * Control whether the Reactor will handle any more incoming events or not.
- * If @a do_stop == 1, the Reactor will be disabled. By default, a reactor
- * is in active state and can be deactivated/reactived as wish.
- */
- virtual void deactivate (int do_stop) = 0;
-
- // = Register and remove Handlers.
-
- /// Register @a event_handler with @a mask. The I/O handle will always
- /// come from <get_handle> on the @a event_handler.
- virtual int register_handler (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask) = 0;
-
- /// Register @a event_handler with @a mask. The I/O handle is provided
- /// through the <io_handle> parameter.
- virtual int register_handler (ACE_HANDLE io_handle,
- ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask) = 0;
-
-#if defined (ACE_WIN32)
-
- // Originally this interface was available for all platforms, but
- // because ACE_HANDLE is an int on non-Win32 platforms, compilers
- // are not able to tell the difference between
- // register_handler(ACE_Event_Handler*,ACE_Reactor_Mask) and
- // register_handler(ACE_Event_Handler*,ACE_HANDLE). Therefore, we
- // have restricted this method to Win32 only.
-
- /**
- * Register an @a event_handler that will be notified when
- * <event_handle> is signaled. Since no event mask is passed
- * through this interface, it is assumed that the <event_handle>
- * being passed in is an event handle and not an I/O handle.
- */
- virtual int register_handler (ACE_Event_Handler *event_handler,
- ACE_HANDLE event_handle = ACE_INVALID_HANDLE) = 0;
-
-#endif /* ACE_WIN32 */
-
- /**
- * Register an @a event_handler that will be notified when
- * <event_handle> is signaled. @a mask specifies the network events
- * that the @a event_handler is interested in.
- */
- virtual int register_handler (ACE_HANDLE event_handle,
- ACE_HANDLE io_handle,
- ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask) = 0;
-
- /// Register @a event_handler with all the <handles> in the <Handle_Set>.
- virtual int register_handler (const ACE_Handle_Set &handles,
- ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask) = 0;
-
- /**
- * Register <new_sh> to handle the signal @a signum using the
- * <new_disp>. Returns the <old_sh> that was previously registered
- * (if any), along with the <old_disp> of the signal handler.
- */
- virtual int register_handler (int signum,
- ACE_Event_Handler *new_sh,
- ACE_Sig_Action *new_disp = 0,
- ACE_Event_Handler **old_sh = 0,
- ACE_Sig_Action *old_disp = 0) = 0;
-
- /// Registers <new_sh> to handle a set of signals <sigset> using the
- /// <new_disp>.
- virtual int register_handler (const ACE_Sig_Set &sigset,
- ACE_Event_Handler *new_sh,
- ACE_Sig_Action *new_disp = 0) = 0;
-
- /**
- * Removes @a event_handler. Note that the I/O handle will be
- * obtained using <get_handle> method of @a event_handler . If
- * @a mask == ACE_Event_Handler::DONT_CALL then the <handle_close>
- * method of the @a event_handler is not invoked.
- */
- virtual int remove_handler (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask) = 0;
-
- /**
- * Removes <handle>. If @a mask == ACE_Event_Handler::DONT_CALL
- * then the <handle_close> method of the associated <event_handler>
- * is not invoked.
- */
- virtual int remove_handler (ACE_HANDLE handle,
- ACE_Reactor_Mask mask) = 0;
-
- /**
- * Removes all handles in <handle_set>. If @a mask ==
- * ACE_Event_Handler::DONT_CALL then the <handle_close> method of
- * the associated <event_handler>s is not invoked.
- */
- virtual int remove_handler (const ACE_Handle_Set &handle_set,
- ACE_Reactor_Mask mask) = 0;
-
- /**
- * Remove the ACE_Event_Handler currently associated with @a signum.
- * Install the new disposition (if given) and return the previous
- * disposition (if desired by the caller). Returns 0 on success and
- * -1 if @a signum is invalid.
- */
- virtual int remove_handler (int signum,
- ACE_Sig_Action *new_disp,
- ACE_Sig_Action *old_disp = 0,
- int sigkey = -1) = 0;
-
- /// Calls <remove_handler> for every signal in <sigset>.
- virtual int remove_handler (const ACE_Sig_Set &sigset) = 0;
-
- // = Suspend and resume Handlers.
-
- /// Suspend @a event_handler temporarily. Use
- /// <ACE_Event_Handler::get_handle> to get the handle.
- virtual int suspend_handler (ACE_Event_Handler *event_handler) = 0;
-
- /// Suspend <handle> temporarily.
- virtual int suspend_handler (ACE_HANDLE handle) = 0;
-
- /// Suspend all <handles> in handle set temporarily.
- virtual int suspend_handler (const ACE_Handle_Set &handles) = 0;
-
- /// Suspend all <handles> temporarily.
- virtual int suspend_handlers (void) = 0;
-
- /// Resume @a event_handler. Use <ACE_Event_Handler::get_handle> to
- /// get the handle.
- virtual int resume_handler (ACE_Event_Handler *event_handler) = 0;
-
- /// Resume <handle>.
- virtual int resume_handler (ACE_HANDLE handle) = 0;
-
- /// Resume all <handles> in handle set.
- virtual int resume_handler (const ACE_Handle_Set &handles) = 0;
-
- /// Resume all <handles>.
- virtual int resume_handlers (void) = 0;
-
- /// Does the reactor allow the application to resume the handle on
- /// its own ie. can it pass on the control of handle resumption to
- /// the application
- virtual int resumable_handler (void) = 0;
-
- /// Return 1 if we any event associations were made by the reactor
- /// for the handles that it waits on, 0 otherwise.
- virtual int uses_event_associations (void) = 0;
-
- // If we need to reset handles returned from accept/connect.
-
- // = Timer management.
-
- /**
- * Schedule an ACE_Event_Handler that will expire after an amount
- * of time. The return value of this method, a timer_id value,
- * uniquely identifies the event_handler in the ACE_Reactor's
- * internal list of timers.
- * This timer_id value can be used to cancel the timer
- * with the cancel_timer() call.
- *
- * @see cancel_timer()
- * @see reset_timer_interval()
- *
- * @param event_handler event handler to schedule on reactor
- * @param arg argument passed to the handle_timeout() method of event_handler
- * @param delay time interval after which the timer will expire
- * @param interval time interval after which the timer will be automatically rescheduled
- * @return -1 on failure, a timer_id value on success
- */
- virtual long schedule_timer (ACE_Event_Handler *event_handler,
- const void *arg,
- const ACE_Time_Value &delay,
- const ACE_Time_Value &interval = ACE_Time_Value::zero) = 0;
-
- /**
- * Resets the interval of the timer represented by @a timer_id to
- * @a interval, which is specified in relative time to the current
- * <gettimeofday>. If @a interval is equal to
- * ACE_Time_Value::zero, the timer will become a non-rescheduling
- * timer. Returns 0 if successful, -1 if not.
- */
- virtual int reset_timer_interval (long timer_id,
- const ACE_Time_Value &interval) = 0;
-
- /// Cancel all Event_Handlers that match the address of
- /// @a event_handler. Returns number of handlers cancelled.
- virtual int cancel_timer (ACE_Event_Handler *event_handler,
- int dont_call_handle_close = 1) = 0;
-
- /**
- * Cancel the single Event_Handler that matches the @a timer_id value
- * (which was returned from the schedule method). If arg is
- * non-NULL then it will be set to point to the ``magic cookie''
- * argument passed in when the Event_Handler was registered. This
- * makes it possible to free up the memory and avoid memory leaks.
- * Returns 1 if cancellation succeeded and 0 if the @a timer_id
- * wasn't found.
- */
- virtual int cancel_timer (long timer_id,
- const void **arg = 0,
- int dont_call_handle_close = 1) = 0;
-
- // = High-level Event_Handler scheduling operations
-
- /// Add @a masks_to_be_added to the @a event_handler's entry.
- /// @a event_handler must already have been registered.
- virtual int schedule_wakeup (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask masks_to_be_added) = 0;
-
- /// Add @a masks_to_be_added to the <handle>'s entry. <event_handler>
- /// associated with <handle> must already have been registered.
- virtual int schedule_wakeup (ACE_HANDLE handle,
- ACE_Reactor_Mask masks_to_be_added) = 0;
-
- /// Clear @a masks_to_be_cleared from the <event_handler>'s entry.
- virtual int cancel_wakeup (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask masks_to_be_cleared) = 0;
-
- /// Clear @a masks_to_be_cleared from the <handle>'s entry.
- virtual int cancel_wakeup (ACE_HANDLE handle,
- ACE_Reactor_Mask masks_to_be_cleared) = 0;
-
- // = Notification methods.
-
- /**
- * Notify @a event_handler of @a mask event. The ACE_Time_Value
- * indicates how long to blocking trying to notify. If @a timeout ==
- * 0, the caller will block until action is possible, else will wait
- * until the relative time specified in @a timeout elapses).
- */
- virtual int notify (ACE_Event_Handler *event_handler = 0,
- ACE_Reactor_Mask mask = ACE_Event_Handler::EXCEPT_MASK,
- ACE_Time_Value * = 0) = 0;
-
- /**
- * Set the maximum number of times that ACE_Reactor_Impl will
- * iterate and dispatch the <ACE_Event_Handlers> that are passed in
- * via the notify queue before breaking out of its
- * <ACE_Message_Queue::dequeue> loop. By default, this is set to
- * -1, which means "iterate until the queue is empty." Setting this
- * to a value like "1 or 2" will increase "fairness" (and thus
- * prevent starvation) at the expense of slightly higher dispatching
- * overhead.
- */
- virtual void max_notify_iterations (int) = 0;
-
- /**
- * Get the maximum number of times that the ACE_Reactor_Impl will
- * iterate and dispatch the <ACE_Event_Handlers> that are passed in
- * via the notify queue before breaking out of its
- * <ACE_Message_Queue::dequeue> loop.
- */
- virtual int max_notify_iterations (void) = 0;
-
- /**
- * Purge any notifications pending in this reactor for the specified
- * ACE_Event_Handler object. Returns the number of notifications
- * purged. Returns -1 on error.
- */
- virtual int purge_pending_notifications (ACE_Event_Handler * = 0,
- ACE_Reactor_Mask = ACE_Event_Handler::ALL_EVENTS_MASK) = 0;
-
- /**
- * Return the Event_Handler associated with <handle>. Return 0 if
- * <handle> is not registered.
- */
- virtual ACE_Event_Handler *find_handler (ACE_HANDLE handle) = 0;
-
- /**
- * Check to see if <handle> is associated with a valid Event_Handler
- * bound to @a mask. Return the @a event_handler associated with this
- * handler if @a event_handler != 0.
- */
- virtual int handler (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- ACE_Event_Handler **event_handler = 0) = 0;
-
- /**
- * Check to see if @a signum is associated with a valid Event_Handler
- * bound to a signal. Return the @a event_handler associated with
- * this handler if @a event_handler != 0.
- */
- virtual int handler (int signum,
- ACE_Event_Handler ** = 0) = 0;
-
- /// Returns true if Reactor has been successfully initialized, else
- /// false.
- virtual bool initialized (void) = 0;
-
- /// Returns the current size of the Reactor's internal descriptor
- /// table.
- virtual size_t size (void) const = 0;
-
- /// Returns a reference to the Reactor's internal lock.
- virtual ACE_Lock &lock (void) = 0;
-
- /// Wake up all threads in waiting in the event loop
- virtual void wakeup_all_threads (void) = 0;
-
- /// Transfers ownership of Reactor_Impl to the <new_owner>.
- virtual int owner (ACE_thread_t new_owner, ACE_thread_t *old_owner = 0) = 0;
-
- /// Return the ID of the "owner" thread.
- virtual int owner (ACE_thread_t *owner) = 0;
-
- /// Get the existing restart value.
- virtual int restart (void) = 0;
-
- /// Set a new value for restart and return the original value.
- virtual int restart (int r) = 0;
-
- /// Set position of the owner thread.
- virtual void requeue_position (int) = 0;
-
- /// Get position of the owner thread.
- virtual int requeue_position (void) = 0;
-
- // = Low-level wait_set mask manipulation methods.
-
- /// GET/SET/ADD/CLR the dispatch mask "bit" bound with the
- /// @a event_handler and @a mask.
- virtual int mask_ops (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask,
- int ops) = 0;
-
- /// GET/SET/ADD/CLR the dispatch MASK "bit" bound with the <handle>
- /// and @a mask.
- virtual int mask_ops (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- int ops) = 0;
-
- // = Low-level ready_set mask manipulation methods.
- /// GET/SET/ADD/CLR the ready "bit" bound with the @a event_handler
- /// and @a mask.
- virtual int ready_ops (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask,
- int ops) = 0;
-
- /// GET/SET/ADD/CLR the ready "bit" bound with the <handle> and @a mask.
- virtual int ready_ops (ACE_HANDLE handle,
- ACE_Reactor_Mask,
- int ops) = 0;
-
- /// Dump the state of an object.
- virtual void dump (void) const = 0;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_REACTOR_IMPL_H */
-
diff --git a/dep/include/ace/Reactor_Notification_Strategy.h b/dep/include/ace/Reactor_Notification_Strategy.h
deleted file mode 100644
index fd73b36bb67..00000000000
--- a/dep/include/ace/Reactor_Notification_Strategy.h
+++ /dev/null
@@ -1,67 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Reactor_Notification_Strategy.h
- *
- * $Id: Reactor_Notification_Strategy.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-#ifndef ACE_REACTOR_NOTIFICATION_STRATEGY_H
-#define ACE_REACTOR_NOTIFICATION_STRATEGY_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Notification_Strategy.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Reactor_Notification_Strategy
- *
- * @brief Used to notify an ACE_Reactor
- *
- * Integrates the ACE_Message_Queue notification into the
- * <ACE_Reactor::notify> method.
- */
-class ACE_Export ACE_Reactor_Notification_Strategy : public ACE_Notification_Strategy
-{
-public:
- ACE_Reactor_Notification_Strategy (ACE_Reactor *reactor,
- ACE_Event_Handler *eh,
- ACE_Reactor_Mask mask);
-
- /// Default dtor.
- virtual ~ACE_Reactor_Notification_Strategy (void);
-
- virtual int notify (void);
-
- virtual int notify (ACE_Event_Handler *eh, ACE_Reactor_Mask mask);
-
- /// Get the reactor
- ACE_Reactor *reactor (void);
-
- /// Set the reactor
- void reactor (ACE_Reactor *r);
-
-protected:
- /// The Reactor
- ACE_Reactor *reactor_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Reactor_Notification_Strategy.inl"
-#endif /* __ACE_INLINE __ */
-
-#include /**/ "ace/post.h"
-
-#endif /*ACE_REACTOR_NOTIFICATION_STRATEGY_H */
-
diff --git a/dep/include/ace/Reactor_Notification_Strategy.inl b/dep/include/ace/Reactor_Notification_Strategy.inl
deleted file mode 100644
index 69a260d0f55..00000000000
--- a/dep/include/ace/Reactor_Notification_Strategy.inl
+++ /dev/null
@@ -1,19 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Reactor_Notification_Strategy.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ACE_Reactor *
-ACE_Reactor_Notification_Strategy::reactor (void)
-{
- return this->reactor_;
-}
-
-ACE_INLINE void
-ACE_Reactor_Notification_Strategy::reactor (ACE_Reactor *r)
-{
- this->reactor_ = r;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Reactor_Timer_Interface.h b/dep/include/ace/Reactor_Timer_Interface.h
deleted file mode 100644
index aaa2a663b0a..00000000000
--- a/dep/include/ace/Reactor_Timer_Interface.h
+++ /dev/null
@@ -1,61 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Reactor_Timer_Interface.h
- *
- * $Id: Reactor_Timer_Interface.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Irfan Pyarali <irfan@oomworks.com>
- */
-//=============================================================================
-
-#ifndef ACE_REACTOR_TIMER_INTERFACE_H
-#define ACE_REACTOR_TIMER_INTERFACE_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Time_Value.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Event_Handler;
-
-/**
- * @class ACE_Reactor_Timer_Interface
- *
- * @brief Interface for timer related methods on the Reactor.
- */
-class ACE_Export ACE_Reactor_Timer_Interface
-{
-public:
-
- virtual ~ACE_Reactor_Timer_Interface (void);
-
- virtual long schedule_timer (ACE_Event_Handler *event_handler,
- const void *arg,
- const ACE_Time_Value &delay,
- const ACE_Time_Value &interval = ACE_Time_Value::zero) = 0;
-
- virtual int reset_timer_interval (long timer_id,
- const ACE_Time_Value &interval) = 0;
-
- virtual int cancel_timer (long timer_id,
- const void **arg = 0,
- int dont_call_handle_close = 1) = 0;
-
- virtual int cancel_timer (ACE_Event_Handler *event_handler,
- int dont_call_handle_close = 1) = 0;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_REACTOR_TIMER_INTERFACE_H */
-
diff --git a/dep/include/ace/Reactor_Token_T.h b/dep/include/ace/Reactor_Token_T.h
deleted file mode 100644
index 9eedb7b4d0b..00000000000
--- a/dep/include/ace/Reactor_Token_T.h
+++ /dev/null
@@ -1,93 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Reactor_Token_T.h
- *
- * $Id: Reactor_Token_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Steve Huston <shuston@riverace.com>
- */
-//=============================================================================
-
-#ifndef ACE_REACTOR_TOKEN_T_H
-#define ACE_REACTOR_TOKEN_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Reactor_Impl.h"
-#include "ace/Token.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Reactor_Token_T
- *
- * @internal For ACE internal use only.
- *
- * @brief Used as a synchronization mechanism to coordinate concurrent
- * access to an ACE_Reactor_Impl object.
- *
- * This class is used to make access to a reactor's internals and
- * demultiplexing mechanism thread-safe. By default, the thread that
- * runs the handle_events() loop holds the token, even when it is blocked
- * in the demultiplexer. Whenever another thread wants to access the
- * reactor, such as via the register_handler(), remove_handler(), etc.
- * methods, it must ask the token owner for temporary release of the token.
- * To accomplish this, this class reimplements the ACE_Token::sleep_hook()
- * method through which the owning thread can be notified to temporarily
- * release the token if the current situation permits.
- *
- * The owner of the token is responsible for deciding which
- * request for the token can be granted. By using the
- * ACE_Token::renew() method, the thread that releases the token
- * temporarily can specify to get the token back right after the
- * other thread has completed using the token. Thus, there is a
- * dedicated thread that owns the token by default. This
- * thread grants other threads access to the token by ensuring
- * that whenever somebody else has finished using the token the
- * original owner reclaims the token again, i.e., the owner has the
- * chance to schedule other threads. The thread that most likely needs
- * the token most of the time is the thread running the dispatch loop.
- */
-template <class ACE_TOKEN_TYPE>
-class ACE_Reactor_Token_T : public ACE_TOKEN_TYPE
-{
-public:
- ACE_Reactor_Token_T (ACE_Reactor_Impl &r,
- int s_queue = ACE_TOKEN_TYPE::FIFO);
- ACE_Reactor_Token_T (int s_queue = ACE_TOKEN_TYPE::FIFO);
- virtual ~ACE_Reactor_Token_T (void);
-
- /// Called just before a token waiter goes to sleep.
- /// @see ACE_Token::sleep_hook
- virtual void sleep_hook (void);
-
- /// Get the reactor implementation
- ACE_Reactor_Impl &reactor (void);
-
- /// Set the reactor implementation
- void reactor (ACE_Reactor_Impl &);
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- ACE_Reactor_Impl *reactor_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Reactor_Token_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Reactor_Token_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_REACTOR_TOKEN_T_H */
-
diff --git a/dep/include/ace/Read_Buffer.h b/dep/include/ace/Read_Buffer.h
deleted file mode 100644
index 5dc1e9fa181..00000000000
--- a/dep/include/ace/Read_Buffer.h
+++ /dev/null
@@ -1,130 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Read_Buffer.h
- *
- * $Id: Read_Buffer.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Seth Widoff
- */
-//==========================================================================
-
-#ifndef ACE_READ_BUFFER_H
-#define ACE_READ_BUFFER_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Global_Macros.h"
-#include "ace/os_include/os_stdio.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Allocator;
-
-/**
- * @class ACE_Read_Buffer
- *
- * @brief Efficiently reads an artibrarily large buffer from an input
- * stream up to and including a termination character. Also
- * performs search/replace on single occurrences a character in
- * the buffer using the principles of Integrated Layer
- * Processing.
- *
- * This implementation is optimized to do a single dynamic
- * allocation and make only one copy of the data. It uses
- * recursion and the run-time stack to accomplish this
- * efficiently.
- */
-class ACE_Export ACE_Read_Buffer
-{
-public:
- // = Initialization and termination methods.
- /// Read from a FILE *.
- ACE_Read_Buffer (FILE *fp,
- bool close_on_delete = false,
- ACE_Allocator * = 0);
-
-#if !defined (ACE_HAS_WINCE)
- // Note that ACE_HANDLE = FILE under CE.
-
- /// Read from an open HANDLE.
- ACE_Read_Buffer (ACE_HANDLE handle,
- bool close_on_delete = false,
- ACE_Allocator * = 0);
-#endif // ACE_HAS_WINCE
-
- /// Closes the FILE *.
- ~ACE_Read_Buffer (void);
-
- /**
- * Returns a pointer dynamically allocated with
- * ACE_Allocator::malloc to data from the input stream up to (and
- * including) the @a terminator. If @a search is >= 0 then all
- * occurrences of the @a search value are substituted with the
- * @a replace value. The last of the byte of data is a 0, so that
- * @c strlen can be used on it. The caller is responsible for
- * freeing the pointer returned from this method using the
- * ACE_Allocator::free.
- */
- char *read (int terminator = EOF,
- int search = '\n',
- int replace = '\0');
-
- /// Returns the number of characters replaced during a @c read.
- size_t replaced (void) const;
-
- /// Returns the size of the allocated buffer obtained during a
- /// @c read, not including the null terminator.
- size_t size (void) const;
-
- /// Returns a pointer to its allocator.
- ACE_Allocator *alloc (void) const;
-
- /// Dump the state of the object.
- void dump (void) const;
-
-private:
-
- // Disallow copying and assignment...
- void operator= (const ACE_Read_Buffer &);
- ACE_Read_Buffer (const ACE_Read_Buffer &);
-
-private:
- /// Recursive helper method that does the work...
- char *rec_read (int term, int search, int replace);
-
- /// The total number of characters in the buffer.
- size_t size_;
-
- /// The total number of characters replaced.
- size_t occurrences_;
-
- /// The stream we are reading from.
- FILE *stream_;
-
- /// Keeps track of whether we should close the FILE in the
- /// destructor.
- bool const close_on_delete_;
-
- /// Pointer to the allocator.
- ACE_Allocator *allocator_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-# include "ace/Read_Buffer.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_READ_BUFFER_H */
-
diff --git a/dep/include/ace/Read_Buffer.inl b/dep/include/ace/Read_Buffer.inl
deleted file mode 100644
index 4d104bd2af9..00000000000
--- a/dep/include/ace/Read_Buffer.inl
+++ /dev/null
@@ -1,32 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Read_Buffer.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Accessor to the number of bytes in the buffer.
-
-ACE_INLINE size_t
-ACE_Read_Buffer::size (void) const
-{
- ACE_TRACE ("ACE_Read_Buffer::size");
- return this->size_;
-}
-
-// The total number of characters replaced.
-
-ACE_INLINE size_t
-ACE_Read_Buffer::replaced (void) const
-{
- ACE_TRACE ("ACE_Read_Buffer::replaced");
- return this->occurrences_;
-}
-
-ACE_INLINE ACE_Allocator *
-ACE_Read_Buffer::alloc (void) const
-{
- ACE_TRACE ("ACE_Read_Buffer::alloc");
- return this->allocator_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Recursive_Thread_Mutex.h b/dep/include/ace/Recursive_Thread_Mutex.h
deleted file mode 100644
index 0f61a75e300..00000000000
--- a/dep/include/ace/Recursive_Thread_Mutex.h
+++ /dev/null
@@ -1,195 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Recursive_Thread_Mutex.h
- *
- * $Id: Recursive_Thread_Mutex.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu> and
- * Abdullah Sowayan <abdullah.sowayan@lmco.com>
- */
-//==========================================================================
-
-#ifndef ACE_RECURSIVE_THREAD_MUTEX_H
-#define ACE_RECURSIVE_THREAD_MUTEX_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_HAS_THREADS)
-# include "ace/Null_Mutex.h"
-#else /* ACE_HAS_THREADS */
-// ACE platform supports some form of threading.
-
-#include "ace/OS_NS_Thread.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Recursive_Thread_Mutex
- *
- * @brief Implement a C++ wrapper that allows nested acquisition and
- * release of a mutex that occurs in the same thread.
- */
-class ACE_Export ACE_Recursive_Thread_Mutex
-{
-public:
- /// Initialize a recursive mutex.
- ACE_Recursive_Thread_Mutex (const ACE_TCHAR *name = 0,
- ACE_mutexattr_t *arg = 0);
-
- /// Implicitly release a recursive mutex.
- ~ACE_Recursive_Thread_Mutex (void);
-
- /**
- * Implicitly release a recursive mutex. Note that only one thread
- * should call this method since it doesn't protect against race
- * conditions.
- */
- int remove (void);
-
- /**
- * Acquire a recursive mutex (will increment the nesting level and
- * not deadmutex if the owner of the mutex calls this method more
- * than once).
- */
- int acquire (void);
-
- /**
- * Block the thread until we acquire the mutex or until @a tv times
- * out, in which case -1 is returned with @c errno == @c ETIME. Note
- * that @a tv is assumed to be in "absolute" rather than "relative"
- * time. The value of @a tv is updated upon return to show the
- * actual (absolute) acquisition time.
- */
- int acquire (ACE_Time_Value &tv);
-
- /**
- * If @a tv == 0 the call <acquire()> directly. Otherwise, Block the
- * thread until we acquire the mutex or until @a tv times out, in
- * which case -1 is returned with @c errno == @c ETIME. Note that
- * <*tv> is assumed to be in "absolute" rather than "relative" time.
- * The value of <*tv> is updated upon return to show the actual
- * (absolute) acquisition time.
- */
- int acquire (ACE_Time_Value *tv);
-
- /**
- * Conditionally acquire a recursive mutex (i.e., won't block).
- * Returns -1 on failure. If we "failed" because someone else
- * already had the lock, @c errno is set to @c EBUSY.
- */
- int tryacquire (void);
-
- /**
- * Acquire mutex ownership. This calls <acquire> and is only
- * here to make the <ACE_Recusive_Thread_Mutex> interface consistent
- * with the other synchronization APIs.
- */
- int acquire_read (void);
-
- /**
- * Acquire mutex ownership. This calls <acquire> and is only
- * here to make the <ACE_Recusive_Thread_Mutex> interface consistent
- * with the other synchronization APIs.
- */
- int acquire_write (void);
-
- /**
- * Conditionally acquire mutex (i.e., won't block). This calls
- * <tryacquire> and is only here to make the
- * <ACE_Recusive_Thread_Mutex> interface consistent with the other
- * synchronization APIs. Returns -1 on failure. If we "failed"
- * because someone else already had the lock, @c errno is set to
- * @c EBUSY.
- */
- int tryacquire_read (void);
-
- /**
- * Conditionally acquire mutex (i.e., won't block). This calls
- * <tryacquire> and is only here to make the
- * <ACE_Recusive_Thread_Mutex> interface consistent with the other
- * synchronization APIs. Returns -1 on failure. If we "failed"
- * because someone else already had the lock, @c errno is set to
- * @c EBUSY.
- */
- int tryacquire_write (void);
-
- /**
- * This is only here to make the ACE_Recursive_Thread_Mutex
- * interface consistent with the other synchronization APIs.
- * Assumes the caller has already acquired the mutex using one of
- * the above calls, and returns 0 (success) always.
- */
- int tryacquire_write_upgrade (void);
-
- /**
- * Releases a recursive mutex (will not release mutex until all the
- * nesting level drops to 0, which means the mutex is no longer
- * held).
- */
- int release (void);
-
- /// Return the id of the thread that currently owns the mutex.
- ACE_thread_t get_thread_id (void);
-
- /**
- * Return the nesting level of the recursion. When a thread has
- * acquired the mutex for the first time, the nesting level == 1.
- * The nesting level is incremented every time the thread acquires
- * the mutex recursively. Note that if the ACE_HAS_RECURSIVE_MUTEXES
- * macro is enabled then this method may return -1 on platforms that
- * do not expose the internal count.
- */
- int get_nesting_level (void);
-
- /// Returns a reference to the recursive mutex;
- ACE_recursive_thread_mutex_t &mutex (void);
-
- /// Returns a reference to the recursive mutex's internal mutex;
- ACE_thread_mutex_t &get_nesting_mutex (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- // = This method should *not* be public (they hold no locks...)
- void set_thread_id (ACE_thread_t t);
-
- /// Recursive mutex.
- ACE_recursive_thread_mutex_t lock_;
-
- /// Keeps track of whether <remove> has been called yet to avoid
- /// multiple <remove> calls, e.g., explicitly and implicitly in the
- /// destructor. This flag isn't protected by a lock, so make sure
- /// that you don't have multiple threads simultaneously calling
- /// <remove> on the same object, which is a bad idea anyway...
- bool removed_;
-
-private:
- // = Prevent assignment and initialization.
- void operator= (const ACE_Recursive_Thread_Mutex &);
- ACE_Recursive_Thread_Mutex (const ACE_Recursive_Thread_Mutex &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Recursive_Thread_Mutex.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* !ACE_HAS_THREADS */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_RECURSIVE_THREAD_MUTEX_H */
-
diff --git a/dep/include/ace/Recursive_Thread_Mutex.inl b/dep/include/ace/Recursive_Thread_Mutex.inl
deleted file mode 100644
index fe282097eb2..00000000000
--- a/dep/include/ace/Recursive_Thread_Mutex.inl
+++ /dev/null
@@ -1,95 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Recursive_Thread_Mutex.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ACE_recursive_thread_mutex_t &
-ACE_Recursive_Thread_Mutex::mutex (void)
-{
- return lock_;
-}
-
-ACE_INLINE ACE_thread_mutex_t &
-ACE_Recursive_Thread_Mutex::get_nesting_mutex (void)
-{
-#if defined (ACE_HAS_RECURSIVE_MUTEXES)
- return static_cast<ACE_thread_mutex_t &> (lock_);
-#else
- return lock_.nesting_mutex_;
-#endif /* ACE_HAS_RECURSIVE_MUTEXES */
-}
-
-ACE_INLINE void
-ACE_Recursive_Thread_Mutex::set_thread_id (ACE_thread_t t)
-{
-// ACE_TRACE ("ACE_Recursive_Thread_Mutex::set_thread_id");
-#if defined (ACE_HAS_RECURSIVE_MUTEXES)
- ACE_UNUSED_ARG (t);
-#else /* ! ACE_HAS_RECURSIVE_MUTEXES */
- this->lock_.owner_id_ = t;
-#endif /* ! ACE_HAS_RECURSIVE_MUTEXES */
-}
-
-ACE_INLINE int
-ACE_Recursive_Thread_Mutex::acquire (void)
-{
- return ACE_OS::recursive_mutex_lock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_Recursive_Thread_Mutex::release (void)
-{
- return ACE_OS::recursive_mutex_unlock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_Recursive_Thread_Mutex::tryacquire (void)
-{
- return ACE_OS::recursive_mutex_trylock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_Recursive_Thread_Mutex::acquire (ACE_Time_Value &tv)
-{
- return ACE_OS::recursive_mutex_lock (&this->lock_, tv);
-}
-
-ACE_INLINE int
-ACE_Recursive_Thread_Mutex::acquire (ACE_Time_Value *tv)
-{
- return ACE_OS::recursive_mutex_lock (&this->lock_, tv);
-}
-
-ACE_INLINE int
-ACE_Recursive_Thread_Mutex::acquire_read (void)
-{
- return this->acquire ();
-}
-
-ACE_INLINE int
-ACE_Recursive_Thread_Mutex::acquire_write (void)
-{
- return this->acquire ();
-}
-
-ACE_INLINE int
-ACE_Recursive_Thread_Mutex::tryacquire_read (void)
-{
- return this->tryacquire ();
-}
-
-ACE_INLINE int
-ACE_Recursive_Thread_Mutex::tryacquire_write (void)
-{
- return this->tryacquire ();
-}
-
-ACE_INLINE int
-ACE_Recursive_Thread_Mutex::tryacquire_write_upgrade (void)
-{
- return 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
diff --git a/dep/include/ace/Recyclable.h b/dep/include/ace/Recyclable.h
deleted file mode 100644
index 6053963d6e0..00000000000
--- a/dep/include/ace/Recyclable.h
+++ /dev/null
@@ -1,80 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Recyclable.h
- *
- * $Id: Recyclable.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-#ifndef ACE_RECYCLABLE_H
-#define ACE_RECYCLABLE_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/// States of a recyclable object.
-enum ACE_Recyclable_State
-{
- /// Idle and can be purged.
- ACE_RECYCLABLE_IDLE_AND_PURGABLE,
-
- /// Idle but cannot be purged.
- ACE_RECYCLABLE_IDLE_BUT_NOT_PURGABLE,
-
- /// Can be purged, but is not idle (mostly for debugging).
- ACE_RECYCLABLE_PURGABLE_BUT_NOT_IDLE,
-
- /// Busy (i.e., cannot be recycled or purged).
- ACE_RECYCLABLE_BUSY,
-
- /// Closed.
- ACE_RECYCLABLE_CLOSED,
-
- /// Unknown state.
- ACE_RECYCLABLE_UNKNOWN
-};
-
-/**
- * @class ACE_Recyclable
- */
-class ACE_Export ACE_Recyclable
-{
-public:
- /// Destructor.
- virtual ~ACE_Recyclable (void);
-
- /// Get the recyclable bit
- ACE_Recyclable_State recycle_state (void) const;
-
- /// Set the recyclable bit
- void recycle_state (ACE_Recyclable_State new_state);
-
-protected:
-
- /// Constructor.
- ACE_Recyclable (ACE_Recyclable_State initial_state);
-
-protected:
-
- /// Our state.
- ACE_Recyclable_State recycle_state_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Recyclable.inl"
-#endif /* __ACE_INLINE __ */
-
-#include /**/ "ace/post.h"
-#endif /*ACE_RECYCLABLE_STATE_H*/
-
diff --git a/dep/include/ace/Recyclable.inl b/dep/include/ace/Recyclable.inl
deleted file mode 100644
index c07d89a8505..00000000000
--- a/dep/include/ace/Recyclable.inl
+++ /dev/null
@@ -1,20 +0,0 @@
-// -*- C++ -*-
-//
-//$Id: Recyclable.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ACE_Recyclable_State
-ACE_Recyclable::recycle_state (void) const
-{
- return this->recycle_state_;
-}
-
-ACE_INLINE void
-ACE_Recyclable::recycle_state (ACE_Recyclable_State new_state)
-{
- if (this->recycle_state_ != ACE_RECYCLABLE_CLOSED)
- this->recycle_state_ = new_state;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Refcountable.h b/dep/include/ace/Refcountable.h
deleted file mode 100644
index 19fc26601bc..00000000000
--- a/dep/include/ace/Refcountable.h
+++ /dev/null
@@ -1,33 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Refcountable.h
- *
- * $Id: Refcountable.h 81402 2008-04-23 18:30:54Z johnnyw $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-#ifndef ACE_REFCOUNTABLE_H
-#define ACE_REFCOUNTABLE_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Refcountable_T.h"
-#include "ace/Null_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-typedef ACE_Refcountable_T<ACE_Null_Mutex> ACE_Refcountable;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /*ACE_REFCOUNTABLE_H*/
-
diff --git a/dep/include/ace/Refcountable_T.h b/dep/include/ace/Refcountable_T.h
deleted file mode 100644
index c18781f7954..00000000000
--- a/dep/include/ace/Refcountable_T.h
+++ /dev/null
@@ -1,68 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Refcountable_T.h
- *
- * $Id: Refcountable_T.h 81409 2008-04-24 08:30:48Z johnnyw $
- *
- * @author Doug Schmidt
- * @author Johnny Willemsen
- */
-//=============================================================================
-#ifndef ACE_REFCOUNTABLE_T_H
-#define ACE_REFCOUNTABLE_T_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Atomic_Op.h"
-#include "ace/Synch_Traits.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class ACE_LOCK>
-class ACE_Refcountable_T
-{
-public:
- /// Destructor.
- virtual ~ACE_Refcountable_T (void);
-
- // = Increment/Decrement refcount
- long increment (void);
- long decrement (void);
-
- /// Returns the current refcount.
- long refcount (void) const;
-
-protected:
- /// Protected constructor.
- ACE_Refcountable_T (long refcount);
-
- /// Current refcount.
- ACE_Atomic_Op <ACE_LOCK, long> refcount_;
-};
-
-typedef ACE_Refcountable_T<ACE_Null_Mutex> ACE_Refcountable;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Refcountable_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Refcountable_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Refcountable_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /*ACE_REFCOUNTABLE_T_H*/
-
diff --git a/dep/include/ace/Refcountable_T.inl b/dep/include/ace/Refcountable_T.inl
deleted file mode 100644
index b66e3f9e236..00000000000
--- a/dep/include/ace/Refcountable_T.inl
+++ /dev/null
@@ -1,35 +0,0 @@
-// -*- C++ -*-
-//
-//$Id: Refcountable_T.inl 81407 2008-04-24 05:59:30Z johnnyw $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class ACE_LOCK>
-ACE_INLINE
-ACE_Refcountable_T<ACE_LOCK>::ACE_Refcountable_T (long refcount)
- : refcount_ (refcount)
-{
-}
-
-template <class ACE_LOCK>
-ACE_INLINE long
-ACE_Refcountable_T<ACE_LOCK>::increment (void)
-{
- return ++this->refcount_;
-}
-
-template <class ACE_LOCK>
-ACE_INLINE long
-ACE_Refcountable_T<ACE_LOCK>::decrement (void)
-{
- return --this->refcount_;
-}
-
-template <class ACE_LOCK>
-ACE_INLINE long
-ACE_Refcountable_T<ACE_LOCK>::refcount (void) const
-{
- return this->refcount_.value ();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Refcounted_Auto_Ptr.h b/dep/include/ace/Refcounted_Auto_Ptr.h
deleted file mode 100644
index 43f639e8516..00000000000
--- a/dep/include/ace/Refcounted_Auto_Ptr.h
+++ /dev/null
@@ -1,200 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Refcounted_Auto_Ptr.h
- *
- * $Id: Refcounted_Auto_Ptr.h 81179 2008-03-31 19:00:29Z iliyan $
- *
- * @author John Tucker <JTucker@infoglide.com>
- */
-//=============================================================================
-
-#ifndef ACE_REFCOUNTED_AUTO_PTR_H
-#define ACE_REFCOUNTED_AUTO_PTR_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Auto_Ptr.h"
-#include "ace/Atomic_Op.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decl.
-template <class X, class ACE_LOCK> class ACE_Refcounted_Auto_Ptr_Rep;
-template <class X, class ACE_LOCK> class ACE_Refcounted_Auto_Ptr;
-
-/**
- * @class ACE_Refcounted_Auto_Ptr
- *
- * @brief This class implements support for a reference counted auto_ptr.
- * Assigning or copying instances of an ACE_Refcounted_Auto_Ptr
- * will automatically increment the reference count. When the last
- * instance that references a ACE_Refcounted_Auto_Ptr instance is
- * destroyed or overwritten, it will invoke delete on its underlying
- * pointer.
- *
- * The ACE_Refcounted_Auto_Ptr works by maintaining a reference to a
- * separate representation object, ACE_Refcounted_Auto_Ptr_Rep. That
- * separate representation object contains the reference count and
- * the actual pointer value.
- */
-template <class X, class ACE_LOCK>
-class ACE_Refcounted_Auto_Ptr
-{
-public:
-
- // = Initialization and termination methods.
-
- /// Constructor that initializes an ACE_Refcounted_Auto_Ptr to
- /// the specified pointer value.
- explicit ACE_Refcounted_Auto_Ptr (X *p = 0);
-
- /// Copy constructor binds the new ACE_Refcounted_Auto_Ptr to the
- /// representation object referenced by @a r.
- /// An ACE_Refcounted_Auto_Ptr_Rep is created if necessary.
- ACE_Refcounted_Auto_Ptr (const ACE_Refcounted_Auto_Ptr<X, ACE_LOCK> &r);
-
- /// Destructor. Releases the reference to the underlying representation.
- /// If the release of that reference causes its reference count to reach 0,
- /// the representation object will also be destroyed.
- virtual ~ACE_Refcounted_Auto_Ptr (void);
-
- /// Assignment operator that binds the current object and @a r to the same
- /// ACE_Refcounted_Auto_Ptr_Rep. An ACE_Refcounted_Auto_Ptr_Rep
- /// is created if necessary.
- void operator = (const ACE_Refcounted_Auto_Ptr<X, ACE_LOCK> &r);
-
- /// Equality operator that returns @c true if both
- /// ACE_Refcounted_Auto_Ptr objects point to the same underlying
- /// representation. It does not compare the actual pointers.
- /**
- * @note It also returns @c true if both objects have just been
- * instantiated and not used yet.
- */
- bool operator == (const ACE_Refcounted_Auto_Ptr<X, ACE_LOCK> &r) const;
-
- /// Inequality operator, which is the opposite of equality.
- bool operator != (const ACE_Refcounted_Auto_Ptr<X, ACE_LOCK> &r) const;
-
- /// Redirection operator
- X *operator-> (void) const;
-
- /// Accessor method.
- X &operator *() const;
-
- /// Check rep easily.
- bool operator !() const;
-
- /// Check rep easily.
- operator bool () const;
-
- /// Releases the reference to the underlying representation object.
- /// @retval The pointer value prior to releasing it.
- X *release (void);
-
- /// Releases the current pointer value and then sets a new
- /// pointer value specified by @a p.
- void reset (X *p = 0);
-
- /// Get the pointer value.
- X *get (void) const;
-
- /// Get the reference count value.
- long count (void) const;
-
- /// Returns @c true if this object does not contain a valid pointer.
- bool null (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// the ACE_Refcounted_Auto_Ptr_Rep
- typedef ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK> AUTO_REFCOUNTED_PTR_REP;
-
- /// Protect operations on the ACE_Refcounted_Auto_Ptr.
- AUTO_REFCOUNTED_PTR_REP *rep_;
-};
-
-/**
- * @class ACE_Refcounted_Auto_Ptr_Rep
- *
- * @brief An ACE_Refcounted_Auto_Ptr_Rep object encapsulates a pointer
- * to an object of type X. It uses a lock object of type ACE_LOCK to protect
- * access to the reference count.
- *
- * @internal ACE_Refcounted_Auto_Ptr_Rep is used internally by the
- * ACE_Refcounted_Auto_Ptr class and is only accessible through it.
- */
-template <class X, class ACE_LOCK>
-class ACE_Refcounted_Auto_Ptr_Rep
-{
-private:
- friend class ACE_Refcounted_Auto_Ptr<X, ACE_LOCK>;
-
- /// Get the pointer value.
- X *get (void) const;
-
- /// Get the reference count value.
- long count (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- // = Encapsulate reference count and object lifetime of instances.
- // These methods must go after the others to work around a bug with
- // Borland's C++ Builder...
-
- /// Allocate a new ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK> instance,
- /// returning NULL if it cannot be created.
- static ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK> *internal_create (X *p);
-
- /// Create a ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK> and initialize
- /// the reference count.
- static ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK> *create (X *p);
-
- /// Increase the reference count on @a rep.
- ///
- /// @retval @a rep if success, 0 if there's an error obtaining the lock
- /// on @a rep.
- static ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK> *attach (ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK> *&rep);
-
- /// Decreases the reference count and and deletes rep if there are no
- /// more references to rep.
- ///
- /// Precondition (rep != 0)
- static void detach (ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK> *&rep);
-
- /// Pointer to the result.
- ACE_Auto_Basic_Ptr<X> ptr_;
-
- /// Reference count.
- mutable ACE_Atomic_Op<ACE_LOCK, long> ref_count_;
-
-private:
- // = Constructor and destructor private.
- ACE_Refcounted_Auto_Ptr_Rep (X *p = 0);
- ~ACE_Refcounted_Auto_Ptr_Rep (void);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include "ace/Refcounted_Auto_Ptr.inl"
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Refcounted_Auto_Ptr.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Refcounted_Auto_Ptr.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_REFCOUNTED_AUTO_PTR_H */
-
diff --git a/dep/include/ace/Refcounted_Auto_Ptr.inl b/dep/include/ace/Refcounted_Auto_Ptr.inl
deleted file mode 100644
index d9aacfacc74..00000000000
--- a/dep/include/ace/Refcounted_Auto_Ptr.inl
+++ /dev/null
@@ -1,190 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Refcounted_Auto_Ptr.inl 81179 2008-03-31 19:00:29Z iliyan $
-
-#include "ace/Guard_T.h"
-#include "ace/Log_Msg.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class X, class ACE_LOCK> inline long
-ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK>::count (void) const
-{
- return this->ref_count_.value();
-}
-
-template <class X, class ACE_LOCK> inline long
-ACE_Refcounted_Auto_Ptr<X, ACE_LOCK>::count (void) const
-{
- return this->rep_->count ();
-}
-
-template <class X, class ACE_LOCK> inline bool
-ACE_Refcounted_Auto_Ptr<X, ACE_LOCK>::null (void) const
-{
- return (this->rep_ == 0 || this->rep_->get () == 0);
-}
-
-template <class X, class ACE_LOCK> inline ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK> *
-ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK>::internal_create (X *p)
-{
- ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK> *temp = 0;
- ACE_NEW_RETURN (temp,
- (ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK>) (p),
- 0);
- return temp;
-}
-
-template <class X, class ACE_LOCK> inline ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK> *
-ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK>::create (X *p)
-{
- // Yes set ref count to zero.
- ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK> *temp = internal_create (p);
-#if defined (ACE_NEW_THROWS_EXCEPTIONS)
- if (temp == 0)
- ACE_throw_bad_alloc;
-#else
- ACE_ASSERT (temp != 0);
-#endif /* ACE_NEW_THROWS_EXCEPTIONS */
- return temp;
-}
-
-template <class X, class ACE_LOCK> inline ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK> *
-ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK>::attach (ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK>*& rep)
-{
- if (rep == 0)
- return 0;
-
- ++rep->ref_count_;
-
- return rep;
-}
-
-template <class X, class ACE_LOCK> inline void
-ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK>::detach (ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK>*& rep)
-{
- if (rep == 0)
- return;
-
- if (rep->ref_count_-- == 0)
- delete rep;
-}
-
-template <class X, class ACE_LOCK> inline
-ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK>::ACE_Refcounted_Auto_Ptr_Rep (X *p)
- : ptr_ (p),
- ref_count_ (0)
-{
-}
-
-template <class X, class ACE_LOCK> inline
-ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK>::~ACE_Refcounted_Auto_Ptr_Rep (void)
-{
-}
-
-template <class X, class ACE_LOCK> inline X *
-ACE_Refcounted_Auto_Ptr_Rep<X, ACE_LOCK>::get (void) const
-{
- return this->ptr_.get ();
-}
-
-template <class X, class ACE_LOCK> inline
-ACE_Refcounted_Auto_Ptr<X, ACE_LOCK>::ACE_Refcounted_Auto_Ptr (X *p)
- : rep_ (AUTO_REFCOUNTED_PTR_REP::create (p))
-{
-}
-
-template <class X, class ACE_LOCK> inline
-ACE_Refcounted_Auto_Ptr<X, ACE_LOCK>::ACE_Refcounted_Auto_Ptr (const ACE_Refcounted_Auto_Ptr<X, ACE_LOCK> &r)
- : rep_ (AUTO_REFCOUNTED_PTR_REP::attach (((ACE_Refcounted_Auto_Ptr<X, ACE_LOCK> &) r).rep_))
-{
-}
-
-template <class X, class ACE_LOCK> inline bool
-ACE_Refcounted_Auto_Ptr<X, ACE_LOCK>::operator== (const ACE_Refcounted_Auto_Ptr<X, ACE_LOCK> &r) const
-{
- return r.rep_ == this->rep_;
-}
-
-template <class X, class ACE_LOCK> inline bool
-ACE_Refcounted_Auto_Ptr<X, ACE_LOCK>::operator!= (const ACE_Refcounted_Auto_Ptr<X, ACE_LOCK> &r) const
-{
- return r.rep_ != this->rep_;
-}
-
-template <class X, class ACE_LOCK> inline X *
-ACE_Refcounted_Auto_Ptr<X, ACE_LOCK>::operator-> (void) const
-{
- return this->rep_->get();
-}
-
-template<class X, class ACE_LOCK> inline X &
-ACE_Refcounted_Auto_Ptr<X, ACE_LOCK>::operator *() const
-{
- return *this->rep_->get ();
-}
-
-template<class X, class ACE_LOCK> inline bool
-ACE_Refcounted_Auto_Ptr<X, ACE_LOCK>::operator !() const
-{
- return this->rep_->get () == 0;
-}
-
-template<class X, class ACE_LOCK> inline
-ACE_Refcounted_Auto_Ptr<X, ACE_LOCK>::operator bool () const
-{
- return this->rep_->get () != 0;
-}
-
-template <class X, class ACE_LOCK> inline X*
-ACE_Refcounted_Auto_Ptr<X, ACE_LOCK>::get (void) const
-{
- // We return the ACE_Future_rep.
- return this->rep_->get ();
-}
-
-template<class X, class ACE_LOCK> inline X *
-ACE_Refcounted_Auto_Ptr<X, ACE_LOCK>::release (void)
-{
- X *p = this->get ();
- AUTO_REFCOUNTED_PTR_REP::detach (this->rep_);
- this->rep_ = 0;
- return p;
-}
-
-template<class X, class ACE_LOCK> inline void
-ACE_Refcounted_Auto_Ptr<X, ACE_LOCK>::reset (X *p)
-{
- // Avoid deleting the underlying auto_ptr if assigning the same actual
- // pointer value.
- if (this->get () == p)
- return;
-
- AUTO_REFCOUNTED_PTR_REP *old_rep = this->rep_;
- if ((this->rep_ = AUTO_REFCOUNTED_PTR_REP::create (p)) != 0)
- AUTO_REFCOUNTED_PTR_REP::detach (old_rep);
- else
- this->rep_ = old_rep;
- return;
-}
-
-template <class X, class ACE_LOCK> inline void
-ACE_Refcounted_Auto_Ptr<X, ACE_LOCK>::operator = (const ACE_Refcounted_Auto_Ptr<X, ACE_LOCK> &rhs)
-{
- // bind <this> to the same <ACE_Refcounted_Auto_Ptr_Rep> as <r>.
- AUTO_REFCOUNTED_PTR_REP *old_rep = this->rep_;
- if (rhs.rep_ != 0)
- {
- this->rep_ = AUTO_REFCOUNTED_PTR_REP::attach
- (const_cast<ACE_Refcounted_Auto_Ptr<X, ACE_LOCK>& > (rhs).rep_);
- if (this->rep_ != 0)
- AUTO_REFCOUNTED_PTR_REP::detach (old_rep);
- }
- else // Assign a 0 rep to this
- {
- AUTO_REFCOUNTED_PTR_REP::detach (old_rep);
- this->rep_ = 0;
- }
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Registry.h b/dep/include/ace/Registry.h
deleted file mode 100644
index f3521829c2a..00000000000
--- a/dep/include/ace/Registry.h
+++ /dev/null
@@ -1,558 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Registry.h
- *
- * $Id: Registry.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Irfan Pyarali (irfan@cs.wustl.edu)
- */
-//=============================================================================
-
-#ifndef ACE_REGISTRY_H
-#define ACE_REGISTRY_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_WIN32) && !defined (ACE_LACKS_WIN32_REGISTRY)
-// This only works on registry-capable Win32 platforms.
-
-#include "ace/Containers.h"
-#include "ace/SString.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Registry
- *
- * @brief A Name Server implementation
- *
- * The registry interface is inspired by the interface
- * specified in the CORBA Naming Service Specification.
- * The implementation is done through Win32 <Reg*> functions.
- * Other than providing an OO wrapper for the Win32 <Reg*>
- * functions, ACE_Registry provides an abstraction for iteration
- * over the elements of the Registry.
- */
-class ACE_Export ACE_Registry
-{
-public:
-
- /// International string
- struct ACE_Export Name_Component
- {
- ACE_TString id_;
- ACE_TString kind_;
-
- bool operator== (const Name_Component &rhs) const;
- bool operator!= (const Name_Component &rhs) const;
- // Comparison
- };
- // The <id_> field is used,
- // but the <kind_> field is currently ignored
-
- /// A Name is an ordered collections of components (ids)
- typedef ACE_Unbounded_Set<Name_Component> Name;
-
- /// Separator for components in a name
- static const ACE_TCHAR STRING_SEPARATOR[];
-
- /// Convert a @a name to a @c string
- static ACE_TString make_string (const Name &name);
-
- /// Convert a @a string to a @c name
- static Name make_name (const ACE_TString &string);
-
- /// There are two types of bindings
- enum Binding_Type {INVALID, OBJECT, CONTEXT};
-
- struct ACE_Export Binding
- {
- /// Empty (default) constructor
- Binding (void);
-
- /// Constructor
- /// (Name version)
- Binding (const Name &binding_name,
- Binding_Type binding_type);
-
- /// Constructor
- /// (String version)
- Binding (const ACE_TString &binding_name,
- Binding_Type binding_type);
-
- bool operator== (const Binding &rhs) const;
- bool operator!= (const Binding &rhs) const;
- // Comparison
-
- /// Name accessor
- /// (Name version)
- void name (Name &name);
-
- /// Set Name (String version)
- void name (ACE_TString &name);
-
- /// Get Name (String version)
- ACE_TString name (void);
-
- /// Type accessor
- Binding_Type type (void);
-
- private:
- /// A binding has a name
- ACE_TString name_;
-
- /// .... and a type
- Binding_Type type_;
- };
-
- /// A list of bindings
- typedef ACE_Unbounded_Set<Binding> Binding_List;
-
- // Forward declaration of iterator
- class Binding_Iterator;
-
- /**
- * @class Object
- *
- * @brief An object representation
- *
- * In CORBA, all objects inherit from (CORBA::Object).
- * For the registry, this is used as a wrapper for an
- * instance of a built-in data type.
- * Think about an object as being similar to a file
- * in a file system.
- */
- class ACE_Export Object
- {
- public:
- /// Default constructor
- Object (void *data = 0,
- u_long size = 0,
- u_long type = REG_NONE);
-
- /// Set data
- void data (void *data);
-
- /// Get data
- void *data (void) const;
-
- /// Set size
- void size (u_long size);
-
- /// Get size
- u_long size (void) const;
-
- /// Set type
- void type (u_long type);
-
- /// Get type
- u_long type (void) const;
-
- private:
- /// Pointer to data
- void *data_;
-
- /// Size of the data
- u_long size_;
-
- /// Type of data
- u_long type_;
- };
-
- /**
- * @class Naming_Context
- *
- * @brief An context representation
- *
- * Think about a context as being similar to a directory
- * in a file system.
- */
- class ACE_Export Naming_Context
- {
- public:
- /// Friend factory
- friend class ACE_Predefined_Naming_Contexts;
-
- enum {
- /// Max sizes of names
- /// (Not too sure about this value)
- MAX_OBJECT_NAME_SIZE = BUFSIZ,
-
- /// Max size of context name
- MAX_CONTEXT_NAME_SIZE = MAXPATHLEN + 1
- };
-
- /// Empty constructor: keys will be NULL
- Naming_Context (void);
-
- /// Constructor: key_ will be set to @a key
- Naming_Context (const HKEY &key);
-
- /// Destructor will call <Naming_Context::close>.
- ~Naming_Context (void);
-
- // The following interfaces are for objects
-
- /**
- * Insert @a object with @a name into @c this context.
- * This will fail if @a name already exists
- * (Name version)
- */
- int bind_new (const Name &name,
- const Object &object);
-
- /**
- * Insert @a object with @a name into @c this context
- * This will fail if @a name already exists
- * (String version)
- */
- int bind_new (const ACE_TString &name,
- const Object &object);
-
- /**
- * Insert or update @a object with @a name into @c this context
- * This will not fail if @a name already exists
- * (Name version)
- */
- int bind (const Name &name,
- const Object &object);
-
- /**
- * Insert or update <object> with @a name into @c this context
- * This will not fail if @a name already exists
- * (String version)
- */
- int bind (const ACE_TString &name,
- const Object &object);
-
- /// Update <object> with @a name in @c this context
- /// (Name version)
- int rebind (const Name &name,
- const Object &object);
-
- /// Update <object> with @a name in @c this context
- int rebind (const ACE_TString &name,
- const Object &object);
-
- /// Find <object> with @a name in @c this context
- /// (Name version)
- int resolve (const Name &name,
- Object &object);
-
- /// Find <object> with @a name in @c this context
- int resolve (const ACE_TString &name,
- Object &object);
-
- /// Delete object with @a name in @c this context
- /// (Name version)
- int unbind (const Name &name);
-
- /// Delete object with @a name in @c this context
- int unbind (const ACE_TString &name);
-
- // The following interfaces are for Naming Context
-
- /// Create new @c naming_context
- int new_context (Naming_Context &naming_context);
-
- /**
- * Insert <naming_context> with @a name relative to @c this context
- * This will fail if @a name already exists
- * (Name version)
- */
- int bind_new_context (const Name &name,
- Naming_Context &naming_context,
- u_long persistence = REG_OPTION_NON_VOLATILE,
- u_long security_access = KEY_ALL_ACCESS,
- LPSECURITY_ATTRIBUTES security_attributes = 0);
-
- /// Insert <naming_context> with @a name relative to @c this context
- /// This will fail if @a name already exists
- int bind_new_context (const ACE_TString &name,
- Naming_Context &naming_context,
- u_long persistence = REG_OPTION_NON_VOLATILE,
- u_long security_access = KEY_ALL_ACCESS,
- LPSECURITY_ATTRIBUTES security_attributes = 0);
-
- /**
- * Insert or update <naming_context> with @a name relative to @c this context
- * This will not fail if @a name already exists
- * (Name version)
- */
- int bind_context (const Name &name,
- /* const */ Naming_Context &naming_context,
- u_long persistence = REG_OPTION_NON_VOLATILE,
- u_long security_access = KEY_ALL_ACCESS,
- LPSECURITY_ATTRIBUTES security_attributes = 0);
-
- /// Insert or update <naming_context> with @a name relative to @c this context
- /// This will not fail if @a name already exists
- int bind_context (const ACE_TString &name,
- /* const */ Naming_Context &naming_context,
- u_long persistence = REG_OPTION_NON_VOLATILE,
- u_long security_access = KEY_ALL_ACCESS,
- LPSECURITY_ATTRIBUTES security_attributes = 0);
-
- /// Rename <naming_context> to @a name
- /// (Name version)
- int rebind_context (const Name &name,
- /* const */ Naming_Context &naming_context);
-
- /// Rename <naming_context> to @a name
- int rebind_context (const ACE_TString &name,
- /* const */ Naming_Context &naming_context);
-
- /// Find <naming_context> with @a name in @c this context
- /// (Name version)
- int resolve_context (const Name &name,
- Naming_Context &naming_context,
- u_long security_access = KEY_ALL_ACCESS);
-
- /// Find <naming_context> with @a name in @c this context
- int resolve_context (const ACE_TString &name,
- Naming_Context &naming_context,
- u_long security_access = KEY_ALL_ACCESS);
-
- /// Remove naming_context with @a name from @c this context
- /// (Name version)
- int unbind_context (const Name &name);
-
- /// Remove naming_context with @a name from @c this context
- int unbind_context (const ACE_TString &name);
-
- /// Same as <unbind_context> with @c this as naming_context
- int destroy (void);
-
- /**
- * listing function: iterator creator
- * This is useful when there are many objects and contexts
- * in @c this context and you only want to look at a few entries
- * at a time
- */
- int list (u_long how_many,
- Binding_List &list,
- Binding_Iterator &iterator);
-
- /// listing function: iterator creator
- /// This gives back a listing of all entries in @c this context.
- int list (Binding_List &list);
-
- // Some other necessary functions which are
- // not part of the CORBA interface
-
- /// Sync content of context to disk
- int flush (void);
-
- /// Close the handle of the context
- /// @note <close> does not call <flush>
- int close (void);
-
- // Accessors
-
- /// Get key
- HKEY key (void);
-
- // void parent (HKEY parent);
- /// Get parent
- HKEY parent (void);
-
- /// Get name
- /// (Name version)
- void name (Name &name);
-
- /// Set name (String version)
- void name (ACE_TString &name);
-
- /// Get name (String version)
- ACE_TString name (void);
-
- protected:
- /// Set key
- void key (HKEY key);
-
- /// Set parent
- void parent (HKEY parent);
-
- /// Set name
- /// (Name version)
- void name (const Name &name);
-
- /// Set name
- /// (String version)
- void name (const ACE_TString &name);
-
- private:
- /// Disallow copy constructors
- Naming_Context (const Naming_Context &rhs);
-
- /// Disallow assignment
- const Naming_Context &operator= (const Naming_Context &rhs);
-
- /// Key for self
- HKEY key_;
-
- /// Key for parent
- HKEY parent_key_;
-
- /// Name of self
- ACE_TString name_;
- };
-
- /**
- * @class Binding_Iterator
- *
- * @brief An iterator
- *
- * Useful when iteratorating over a few entries at a time
- */
- class ACE_Export Binding_Iterator
- {
- public:
- /// Friend factory
- friend class Naming_Context;
-
- /// Default constructor
- Binding_Iterator (void);
-
- /// Next entry
- int next_one (Binding &binding);
-
- /// Next <how_many> entries
- int next_n (u_long how_many,
- Binding_List &list);
-
- /// Cleanup
- int destroy (void);
-
- /// Reset the internal state of the iterator
- void reset (void);
-
- /// Get naming_context that the iterator is iterating over
- Naming_Context &naming_context (void);
-
- private:
-
- /// Set naming_context that the iterator is iterating over
- void naming_context (Naming_Context& naming_context);
-
- /// Reference to context
- Naming_Context *naming_context_;
-
- public:
- // This should really be private
- // But the compiler is broken
-
- /**
- * @class Iteration_State
- *
- * Base class for state
- */
- class ACE_Export Iteration_State
- {
- public:
- /// Constructor
- Iteration_State ();
-
- /// Set the iterator reference.
- void iterator (Binding_Iterator *iterator);
-
- /// Next <how_many> entries
- virtual int next_n (u_long how_many,
- Binding_List &list) = 0;
-
- /// Reset state
- void reset (void);
-
- protected:
- /// Pointer to parent iterator
- Binding_Iterator *parent_;
-
- u_long index_;
- };
-
- private:
- class ACE_Export Object_Iteration : public Iteration_State
- {
- /// Next <how_many> entries
- int next_n (u_long how_many,
- Binding_List &list);
- };
-
- class ACE_Export Context_Iteration : public Iteration_State
- {
- public:
- /// Next @a how_many entries
- int next_n (u_long how_many,
- Binding_List &list);
- };
-
- class ACE_Export Iteration_Complete : public Iteration_State
- {
- public:
- /// Next @a how_many entries
- int next_n (u_long how_many,
- Binding_List &list);
- };
-
- /// Friend states
- friend class Iteration_State;
- friend class Object_Iteration;
- friend class Context_Iteration;
- friend class Iteration_Complete;
-
- /// Instances of all states
- Object_Iteration object_iteration_;
- Context_Iteration context_iteration_;
- Iteration_Complete iteration_complete_;
-
- /// Pointer to current state
- Iteration_State *current_enumeration_;
-
- /// Set current_enumeration
- void current_enumeration (Iteration_State& current_enumeration);
-
- /// Get current_enumeration
- Iteration_State &current_enumeration (void);
- };
-};
-
-/**
- * @class ACE_Predefined_Naming_Contexts
- *
- * @brief A factory for predefined registries, which exist by default
- * on Win32 platforms
- *
- * This factory can connect to both local and remote
- * predefined registries.
- */
-class ACE_Export ACE_Predefined_Naming_Contexts
-{
-public:
- /**
- * Factory method for connecting to predefined registries. This
- * method works for both remote and local machines. However, for
- * remote machines, HKEY_CLASSES_ROOT and HKEY_CURRENT_USER types
- * are not allowed
- */
- static int connect (ACE_Registry::Naming_Context &naming_context,
- HKEY predefined = HKEY_LOCAL_MACHINE,
- const ACE_TCHAR *machine_name = 0);
-
-private:
- /// Check if @a machine_name is the local host
- static int is_local_host (const ACE_TCHAR *machine_name);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_WIN32 && !ACE_LACKS_WIN32_REGISTRY */
-#include /**/ "ace/post.h"
-#endif /* ACE_REGISTRY_H */
-
diff --git a/dep/include/ace/Registry_Name_Space.h b/dep/include/ace/Registry_Name_Space.h
deleted file mode 100644
index 213856bd17d..00000000000
--- a/dep/include/ace/Registry_Name_Space.h
+++ /dev/null
@@ -1,140 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Registry_Name_Space.h
- *
- * $Id: Registry_Name_Space.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Irfan Pyarali (irfan@cs.wustl.edu)
- */
-//=============================================================================
-
-#ifndef ACE_REGISTRY_NAME_SPACE_H
-#define ACE_REGISTRY_NAME_SPACE_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if (defined (ACE_WIN32) && defined (ACE_USES_WCHAR))
-// This only works on Win32 platforms when ACE_USES_WCHAR is turned on
-
-#include "ace/Registry.h"
-#include "ace/Naming_Context.h"
-#include "ace/Name_Space.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Registry_Name_Space
- *
- * @brief Interface to a Name Server Database which is maintained by
- * the Win32 Registry. Allows to add, change, remove and
- * resolve NameBindings.
- *
- * Manages a Naming Service for a registry name space which
- * includes bindings for all contexts. All strings are stored in
- * wide character format. A Name Binding consists of a name
- * (that's the key), a value string. There is no type string
- * support in this Name Space.
- */
-class ACE_Export ACE_Registry_Name_Space : public ACE_Name_Space
-{
-public:
-
- /// Constructor
- ACE_Registry_Name_Space (void);
-
- /// Contacts and opens the registry on the specified server
- ACE_Registry_Name_Space (ACE_Name_Options *name_options);
-
- /// Destructor
- ~ACE_Registry_Name_Space (void);
-
- /// Contacts and opens the registry on the specified server
- int open (ACE_Name_Options *name_options);
-
- /// Bind a new name to a naming context (Wide character strings).
- int bind (const ACE_NS_WString &name_in,
- const ACE_NS_WString &value_in,
- const char *type_in = "");
-
- /**
- * Overwrite the value or type of an existing name in a
- * ACE_Name_Space or bind a new name to the context, if it didn't
- * exist yet. (Wide charcter strings interface).
- */
- int rebind (const ACE_NS_WString &name_in,
- const ACE_NS_WString &value_in,
- const char *type_in = "");
-
- /// Delete a name from a ACE_Name_Space (Wide charcter strings
- /// Interface).
- int unbind (const ACE_NS_WString &name_in);
-
- /// Get value and type of a given name binding (Wide chars). The
- /// caller is responsible for deleting both <value_out> and <type_out>!
- int resolve (const ACE_NS_WString &name_in,
- ACE_NS_WString &value_out,
- char *&type_out);
-
- /// Get a set of names matching a specified pattern (wchars). Matching
- /// means the names must begin with the pattern string.
- int list_names (ACE_WSTRING_SET &set_out,
- const ACE_NS_WString &pattern_in);
-
- /// Get a set of values matching a specified pattern (wchars). Matching
- /// means the values must begin with the pattern string.
- int list_values (ACE_WSTRING_SET &set_out,
- const ACE_NS_WString &pattern_in);
-
- /// Get a set of types matching a specified pattern (wchars). Matching
- /// means the types must begin with the pattern string.
- int list_types (ACE_WSTRING_SET &set_out,
- const ACE_NS_WString &pattern_in);
-
- /**
- * Get a set of names matching a specified pattern (wchars). Matching
- * means the names must begin with the pattern string. Returns the
- * complete binding associated each pattern match.
- */
- int list_name_entries (ACE_BINDING_SET &set,
- const ACE_NS_WString &pattern);
-
- /**
- * Get a set of values matching a specified pattern (wchars). Matching
- * means the values must begin with the pattern string. Returns the
- * complete binding associated each pattern match.
- */
- int list_value_entries (ACE_BINDING_SET &set,
- const ACE_NS_WString &pattern);
-
- /**
- * Get a set of types matching a specified pattern (wchars). Matching
- * means the types must begin with the pattern string. Returns the
- * complete binding associated each pattern match.
- */
- int list_type_entries (ACE_BINDING_SET &set,
- const ACE_NS_WString &pattern);
-
- /// Dump the state of the object
- void dump (void) const;
-
-private:
-
- /// current context
- ACE_Registry::Naming_Context context_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_WIN32 && ACE_USES_WCHAR */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_REGISTRY_NAME_SPACE_H */
-
diff --git a/dep/include/ace/Remote_Name_Space.h b/dep/include/ace/Remote_Name_Space.h
deleted file mode 100644
index ea9e43a90c0..00000000000
--- a/dep/include/ace/Remote_Name_Space.h
+++ /dev/null
@@ -1,147 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Remote_Name_Space.h
- *
- * $Id: Remote_Name_Space.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Prashant Jain
- */
-//==========================================================================
-
-#ifndef ACE_REMOTE_NAME_SPACE_H
-#define ACE_REMOTE_NAME_SPACE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Name_Proxy.h"
-#include "ace/Name_Space.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_NS_WString;
-
-typedef ACE_Unbounded_Set<ACE_NS_WString> ACE_WSTRING_SET;
-
-/**
- * @class ACE_Remote_Name_Space
- *
- * @brief Maintaining accesses Remote Name Server Database. Allows to
- * add NameBindings, change them, remove them and resolve
- * NameBindings.
- *
- * Manages a Naming Service for a remote name space which
- * includes bindings for net_local naming context. All strings
- * are stored in wide character format. A Name Binding consists
- * of a name (that's the key), a value string and an optional
- * type string (no wide chars).
- */
-class ACE_Export ACE_Remote_Name_Space : public ACE_Name_Space
-{
-public:
- // = Initialization and termination methods.
- /// "Do-nothing" constructor.
- ACE_Remote_Name_Space (void);
-
- /**
- * Specifies the scope of this namespace, opens and memory-maps the
- * associated file (if accessible) or contacts the dedicated name
- * server process for NET_LOCAL namespace.
- */
- ACE_Remote_Name_Space (const ACE_TCHAR *hostname, u_short port);
-
- /**
- * Specifies the scope of this namespace, opens and memory-maps the
- * associated file (if accessible) or contacts the dedicated name
- * server process for NET_LOCAL namespace.
- */
- int open (const ACE_TCHAR *servername, u_short port);
-
- /// destructor, do some cleanup :TBD: last dtor should "compress"
- /// file
- ~ACE_Remote_Name_Space (void);
-
- /// Bind a new name to a naming context (Wide character strings).
- virtual int bind (const ACE_NS_WString &name_in,
- const ACE_NS_WString &value_in,
- const char *type_in = "");
-
- /**
- * Overwrite the value or type of an existing name in a
- * ACE_Remote_Name_Space or bind a new name to the context, if it
- * didn't exist yet. (Wide charcter strings interface).
- */
- virtual int rebind (const ACE_NS_WString &name_in,
- const ACE_NS_WString &value_in,
- const char *type_in = "");
-
- /// Delete a name from a ACE_Remote_Name_Space (Wide charcter strings
- /// Interface).
- virtual int unbind (const ACE_NS_WString &name_in);
-
- /// Get value and type of a given name binding (Wide chars). The
- /// caller is responsible for deleting both <value_out> and <type_out>!
- virtual int resolve (const ACE_NS_WString &name_in,
- ACE_NS_WString &value_out,
- char *&type_out);
-
- /// Get a set of names matching a specified pattern (wchars). Matching
- /// means the names must begin with the pattern string.
- virtual int list_names (ACE_WSTRING_SET &set_out,
- const ACE_NS_WString &pattern_in);
-
- /// Get a set of values matching a specified pattern (wchars). Matching
- /// means the values must begin with the pattern string.
- virtual int list_values (ACE_WSTRING_SET &set_out,
- const ACE_NS_WString &pattern_in);
-
- /// Get a set of types matching a specified pattern (wchars). Matching
- /// means the types must begin with the pattern string.
- virtual int list_types (ACE_WSTRING_SET &set_out,
- const ACE_NS_WString &pattern_in);
-
- /**
- * Get a set of names matching a specified pattern (wchars). Matching
- * means the names must begin with the pattern string. Returns the
- * complete binding associated each pattern match.
- */
- virtual int list_name_entries (ACE_BINDING_SET &set,
- const ACE_NS_WString &pattern);
-
- /**
- * Get a set of values matching a specified pattern (wchars). Matching
- * means the values must begin with the pattern string. Returns the
- * complete binding associated each pattern match.
- */
- virtual int list_value_entries (ACE_BINDING_SET &set,
- const ACE_NS_WString &pattern);
-
- /**
- * Get a set of types matching a specified pattern (wchars). Matching
- * means the types must begin with the pattern string. Returns the
- * complete binding associated each pattern match.
- */
- virtual int list_type_entries (ACE_BINDING_SET &set,
- const ACE_NS_WString &pattern);
-
- /// Dump the state of the object.
- virtual void dump (void) const;
-
-private:
- /// Interface to Name server process for NET_LOCAL namespace.
- ACE_Name_Proxy ns_proxy_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_REMOTE_NAME_SPACE_H */
-
diff --git a/dep/include/ace/Remote_Tokens.h b/dep/include/ace/Remote_Tokens.h
deleted file mode 100644
index 77d0acc69d6..00000000000
--- a/dep/include/ace/Remote_Tokens.h
+++ /dev/null
@@ -1,322 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Remote_Tokens.h
- *
- * $Id: Remote_Tokens.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt (schmidt@cs.wustl.edu)
- * @author Tim Harrison (harrison@cs.wustl.edu)
- */
-//=============================================================================
-
-#ifndef ACE_REMOTE_MUTEX_H
-#define ACE_REMOTE_MUTEX_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/INET_Addr.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SOCK_Connector.h"
-#include "ace/SOCK_Stream.h"
-#include "ace/Synch_Options.h"
-#include "ace/Local_Tokens.h"
-#include "ace/Token_Request_Reply.h"
-
-#if defined (ACE_HAS_TOKENS_LIBRARY)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Remote_Token_Proxy
- *
- * @brief Proxy for acquiring, renewing, and releasing a distributed
- * synchronization token.
- *
- * The Remote_Token_Proxy class implements the mechanisms for
- * distributed token operations. It is similar to the
- * ACE_Token_Proxy.
- * = BUGS
- * Distributed sleep_hooks have not been implemented. <owner_id>
- * is not implemented.
- */
-class ACE_Export ACE_Remote_Token_Proxy : public ACE_Token_Proxy
-{
-public:
- /// Null construction.
- ACE_Remote_Token_Proxy (void);
-
- /// Death.
- virtual ~ACE_Remote_Token_Proxy (void);
-
- /**
- * Same as Token_Proxy. @a name is the string uniquely identifying
- * the token. <ignore_deadlock> can be 1 to disable deadlock
- * notifications. <debug> prints debug messages.
- */
- int open (const ACE_TCHAR *name,
- int ignore_deadlock = 0,
- int debug = 0);
-
- /**
- * Open a connection with the token server. This only need be used
- * when the user wishes to explicitly open a connection to check if
- * the server exists. Connections are stored in the
- * ACE_Token_Connections singleton as thread-specific data. That
- * is, every thread has only one connection that is used for all
- * remote tokens.
- */
- int initiate_connection (void);
-
- /**
- * Acquire the distributed token. If notify is specified and the
- * token is already held, the owner is notified. options contains
- * the timeout value for the acquire call. The timer is kept at the
- * token server. Asynchronous operations are not supported.
- * Returns 0 on success, -1 on failure with @c errno == problem.
- */
- virtual int acquire (int notify = 0,
- void (*sleep_hook)(void *) = 0,
- ACE_Synch_Options &options =
- ACE_Synch_Options::synch);
-
- /**
- * Try to acquire the distributed token. If the token is already
- * held, the call returns without queueing the caller as a waiter.
- * Returns 0 on success (the token was acquired), and -1 with
- * EWOULDBLOCK if the token was already held.
- */
- virtual int tryacquire (void (*sleep_hook)(void *) = 0);
-
- /**
- * Renew the token by offering to release it if there are any other
- * waiters, otherwise get the token back immediately. This renew
- * has the same semantics as ACE_Local_Mutex release. It is
- * semantically equivalent to <release> followed by <acquire>, but
- * it is faster. options contains the timeout value used if renew
- * blocks. As with acquire, the timer is maintained at the token
- * server. If there are waiters and requeue_position == -1, the
- * caller is queued at the rear of the waiter list. Otherwise,
- * requeue_position specifies the number of waiters to "let by"
- * before reacquiring the token (effectively, the position in the
- * waiter list.)
- */
- virtual int renew (int requeue_position = 0,
- ACE_Synch_Options &options =
- ACE_Synch_Options::synch);
-
- /**
- * Release the distributed token. Similar to ACE_Local_Mutex, if the
- * caller is not the owner, it is removed from the waiter list (if
- * applicable.) Returns 0 on success, -1 on failure with @c errno ==
- * problem.
- */
- virtual int release (ACE_Synch_Options &options =
- ACE_Synch_Options::synch);
-
- /// Become interface compliant for ACE_Guard<>. This has no
- /// functionality.
- virtual int remove (ACE_Synch_Options &options =
- ACE_Synch_Options::synch);
-
- /// Override the default to do nothing.
- virtual void token_acquired (ACE_TPQ_Entry *);
-
- /// The client id of the current token holder
- virtual const ACE_TCHAR* owner_id (void);
-
- /**
- * Sets the server address for all instances of ACE_Remote_Token_Proxy
- * If this isn't called, the environment variable TOKEN_SERVER is
- * checked for the server address. If that is not specified, all
- * ACE_Remote_** operations will fail.
- */
- static void set_server_address (const ACE_INET_Addr &server_address);
-
- /// Dump the state of the class.
- void dump (void) const;
-
-protected:
-
- /// If shadows report deadlock, go remote anyway
- int ignore_shadow_deadlock_;
-
- /// Perform the request and wait for the reply.
- int request_reply (ACE_Token_Request &request,
- ACE_Synch_Options &options);
-};
-
-/**
- * @class ACE_Remote_Mutex
- *
- * @brief Proxy for acquiring, renewing, and releasing a distributed
- * mutex.
- *
- * This is the remote equivalent to ACE_Local_Mutex. The
- * Remote_Mutex class offers methods for acquiring, renewing, and
- * releasing a distributed synchronization mutex. Similar to
- * ACE_Local_Mutex, ACE_Remote_Token_Proxy offers recursive
- * acquisition, FIFO waiter ordering, and deadlock detection. It
- * depends on the Token Server for its distributed synchronization
- * semantics.
- */
-class ACE_Export ACE_Remote_Mutex : public ACE_Remote_Token_Proxy
-{
-public:
- /// Null creation. Remote_Token_Proxy::open must be called.
- ACE_Remote_Mutex (void);
-
- /// Calls Remote_Token_Proxy::open for you.
- ACE_Remote_Mutex (const ACE_TCHAR *token_name,
- int ignore_deadlock = 0,
- int debug = 0);
-
- /// Dump the state of the class.
- void dump (void) const;
-
- /// Return deep copy.
- virtual ACE_Token_Proxy *clone (void) const;
-
-protected:
- /// Make the correct type of ACE_Tokens.
- /// This is called by the ACE_Token_Manager.
- virtual ACE_Tokens *create_token (const ACE_TCHAR *name);
-};
-
-/**
- * @class ACE_Remote_RLock
- *
- * @brief Proxy for acquiring, renewing, and releasing a distributed
- * readers lock.
- *
- * This is the remote equivalent to ACE_Local_RLock. Multiple
- * readers can hold the lock simultaneously when no writers have
- * the lock. Alternatively, when a writer holds the lock, no other
- * participants (readers or writers) may hold the lock.
- * ACE_Remote_RLock depends on the ACE Token Server for its
- * distributed synchronization semantics.
- */
-class ACE_Export ACE_Remote_RLock : public ACE_Remote_Token_Proxy
-{
-public:
- ACE_Remote_RLock (void);
-
- ACE_Remote_RLock (const ACE_TCHAR *token_name,
- int ignore_deadlock = 0,
- int debug = 0);
-
- ACE_Remote_RLock (const ACE_Remote_RLock &mutex);
-
- /// Dump the state of the class.
- void dump (void) const;
-
- /// Returns ACE_RW_Token::RLOCK;
- virtual int type (void) const;
-
- /// Return deep copy.
- virtual ACE_Token_Proxy *clone (void) const;
-
-protected:
- /// Make the correct type of ACE_Tokens. This is called by the Token
- /// Manager.
- virtual ACE_Tokens *create_token (const ACE_TCHAR *name);
-};
-
-/**
- * @class ACE_Remote_WLock
- *
- * @brief Proxy for acquiring, renewing, and releasing a distributed
- * writers lock.
- *
- * Shields applications from details of interacting with the
- * ACE_Token_Server. The token_name_ is just the string that the
- * Token Server uses to identify the token. The client_id_ (also
- * used by the Token Server,) identifies the owner of the token and
- * is used for deadlock detection.
- */
-class ACE_Export ACE_Remote_WLock : public ACE_Remote_Token_Proxy
-{
-public:
- ACE_Remote_WLock (void);
-
- ACE_Remote_WLock (const ACE_TCHAR *token_name,
- int ignore_deadlock = 0,
- int debug = 0);
-
- ACE_Remote_WLock (const ACE_Remote_WLock &mutex);
-
- /// Dump the state of the class.
- void dump (void) const;
-
- /// Returns ACE_RW_Token::WLOCK;
- virtual int type (void) const;
-
- /// Return deep copy.
- virtual ACE_Token_Proxy *clone (void) const;
-
-protected:
- /// Make the correct type of ACE_Tokens. This is called by the Token
- /// Manager.
- virtual ACE_Tokens *create_token (const ACE_TCHAR *name);
-};
-
-/**
- * @class ACE_TSS_Connection
- *
- * @brief Class for providing a connection per thread.
- *
- * ACE_TSS_Connection provides a single access point for all
- * threads to access thread-specific connections. This prevents
- * resource-sharing problems such as thread serialization.
- */
-class ACE_Export ACE_TSS_Connection : public ACE_TSS<ACE_SOCK_Stream>
-{
-public:
- // Necessary to make some compilers work...
- ACE_TSS_Connection (void);
- ~ACE_TSS_Connection (void);
-
- /// Retrieve the thread's connection
- ACE_SOCK_Stream *get_connection (void);
-
- /// Factory Method that creates a new SOCK Stream.
- virtual ACE_SOCK_Stream *make_TSS_TYPE (void) const;
-
- /// Inheritence and operator overloading don't mix. Redefine this
- /// from ACE_TSS so that we can use it.
- operator ACE_SOCK_Stream *(void);
-
- /// Set the server address.
- static void set_server_address (const ACE_INET_Addr &server_address);
-
- /// Dump the state of the class.
- void dump (void) const;
-
-protected:
- /// The address of the Token Server used by all instances of
- /// Token_Proxy.
- static ACE_INET_Addr server_address_;
-
-private:
- /// Private: should not be used
- ACE_TSS_Connection (const ACE_TSS_Connection &);
- void operator= (const ACE_TSS_Connection &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_TOKENS_LIBRARY */
-
-#if defined (__ACE_INLINE__)
-#include "ace/Remote_Tokens.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_REMOTE_TOKEN_H */
-
diff --git a/dep/include/ace/Remote_Tokens.inl b/dep/include/ace/Remote_Tokens.inl
deleted file mode 100644
index 3d811c00836..00000000000
--- a/dep/include/ace/Remote_Tokens.inl
+++ /dev/null
@@ -1,48 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Remote_Tokens.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#if defined (ACE_HAS_TOKENS_LIBRARY)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Remote_Mutex::ACE_Remote_Mutex (void)
-{
- ACE_TRACE ("ACE_Remote_Mutex::ACE_Remote_Mutex");
-}
-
-ACE_INLINE
-ACE_Remote_Mutex::ACE_Remote_Mutex (const ACE_TCHAR *token_name,
- int ignore_deadlock,
- int debug)
-{
- ACE_TRACE ("ACE_Remote_Mutex::ACE_Remote_Mutex");
- this->open (token_name, ignore_deadlock, debug);
-}
-
-// ************************************************************
-
-ACE_INLINE
-ACE_Remote_RLock::ACE_Remote_RLock (const ACE_TCHAR *token_name,
- int ignore_deadlock,
- int debug)
-{
- ACE_TRACE ("ACE_Remote_RLock::ACE_Remote_RLock");
- this->open (token_name, ignore_deadlock, debug);
-}
-
-// ************************************************************
-
-ACE_INLINE
-ACE_Remote_WLock::ACE_Remote_WLock (const ACE_TCHAR *token_name,
- int ignore_deadlock,
- int debug)
-{
- ACE_TRACE ("ACE_Remote_WLock::ACE_Remote_WLock");
- this->open (token_name, ignore_deadlock, debug);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_TOKENS_LIBRARY */
diff --git a/dep/include/ace/Reverse_Lock_T.h b/dep/include/ace/Reverse_Lock_T.h
deleted file mode 100644
index 979ee34ce63..00000000000
--- a/dep/include/ace/Reverse_Lock_T.h
+++ /dev/null
@@ -1,140 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Reverse_Lock_T.h
- *
- * $Id: Reverse_Lock_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_REVERSE_LOCK_T_H
-#define ACE_REVERSE_LOCK_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Lock.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @namespace ACE_Acquire_Method
- *
- * @brief An enum namespace.
- *
- * These enums should have been inside the reverse lock class, but
- * some lame compilers cannot handle enums inside template classes.
- *
- * The METHOD_TYPE is used to indicate which acquire() method will be
- * called on the real lock when the release() method is called on the
- * reverse lock. REGULAR indicated the acquire() method, READ
- * indicates the acquire_read() method, and WRITE indicates the
- * acquire_write() method. Note that the try_*() methods are not
- * represented here because we have to make sure that the release()
- * method on the reverse lock acquires a lock on the real lock.
- **/
-namespace ACE_Acquire_Method
-{
- enum METHOD_TYPE
- {
- ACE_REGULAR,
- ACE_READ,
- ACE_WRITE
- };
-}
-
-/**
- * @class ACE_Reverse_Lock
- *
- * @brief A reverse (or anti) lock.
- *
- * This is an interesting adapter class that changes a lock into
- * a reverse lock, i.e., <acquire> on this class calls <release>
- * on the lock, and <release> on this class calls <acquire> on
- * the lock.
- * One motivation for this class is when we temporarily want to
- * release a lock (which we have already acquired) but then
- * reacquire it soon after. An alternative design would be to
- * add a Anti_Guard or Reverse_Guard class which would <release>
- * on construction and <acquire> destruction. However, there
- * are *many* varieties of the Guard class and this design
- * choice would lead to at least 6 new classes. One new
- * ACE_Reverse_Lock class seemed more reasonable.
- */
-template <class ACE_LOCKING_MECHANISM>
-class ACE_Reverse_Lock : public ACE_Lock
-{
-public:
-
- typedef ACE_LOCKING_MECHANISM ACE_LOCK;
-
- // = Initialization/Finalization methods.
-
- /// Constructor. All locking requests will be forwarded to <lock>.
- ACE_Reverse_Lock (ACE_LOCKING_MECHANISM &lock,
- ACE_Acquire_Method::METHOD_TYPE acquire_method = ACE_Acquire_Method::ACE_REGULAR);
-
- /// Destructor. If <lock_> was not passed in by the user, it will be
- /// deleted.
- virtual ~ACE_Reverse_Lock (void);
-
- // = Lock accessors.
- /// Release the lock.
- virtual int acquire (void);
-
- /// Release the lock.
- virtual int tryacquire (void);
-
- /// Acquire the lock.
- virtual int release (void);
-
- /// Release the lock.
- virtual int acquire_read (void);
-
- /// Release the lock.
- virtual int acquire_write (void);
-
- /// Release the lock.
- virtual int tryacquire_read (void);
-
- /// Release the lock.
- virtual int tryacquire_write (void);
-
- /// Release the lock.
- virtual int tryacquire_write_upgrade (void);
-
- /// Explicitly destroy the lock.
- virtual int remove (void);
-
-private:
- /// The concrete locking mechanism that all the methods delegate to.
- ACE_LOCKING_MECHANISM &lock_;
-
- /// This indicates what kind of acquire method will be called.
- ACE_Acquire_Method::METHOD_TYPE acquire_method_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Reverse_Lock_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Reverse_Lock_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Reverse_Lock_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_REVERSE_LOCK_T_H */
-
diff --git a/dep/include/ace/Reverse_Lock_T.inl b/dep/include/ace/Reverse_Lock_T.inl
deleted file mode 100644
index 27e3a9a5040..00000000000
--- a/dep/include/ace/Reverse_Lock_T.inl
+++ /dev/null
@@ -1,19 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Reverse_Lock_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/config-all.h"
-#include "ace/OS_NS_errno.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class ACE_LOCKING_MECHANISM> ACE_INLINE
-ACE_Reverse_Lock<ACE_LOCKING_MECHANISM>::ACE_Reverse_Lock (
- ACE_LOCKING_MECHANISM &lock,
- ACE_Acquire_Method::METHOD_TYPE acquire_method)
- : lock_ (lock),
- acquire_method_ (acquire_method)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SOCK.h b/dep/include/ace/SOCK.h
deleted file mode 100644
index 3d8b13cf24f..00000000000
--- a/dep/include/ace/SOCK.h
+++ /dev/null
@@ -1,139 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file SOCK.h
- *
- * $Id: SOCK.h 81014 2008-03-19 11:41:31Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SOCK_H
-#define ACE_SOCK_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Addr.h"
-#include "ace/IPC_SAP.h"
-#include "ace/OS_NS_stropts.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SOCK
- *
- * @brief An abstract class that forms the basis for more specific
- * classes, such as ACE_SOCK_Acceptor and ACE_SOCK_Stream.
- * Do not instantiate this class.
- *
- * This class provides functions that are common to all of the
- * <ACE_SOCK_*> classes. ACE_SOCK provides the ability to get
- * and set socket options, get the local and remote addresses,
- * and open and close a socket handle.
- */
-class ACE_Export ACE_SOCK : public ACE_IPC_SAP
-{
-public:
-
- /// Wrapper around the @c setsockopt system call.
- int set_option (int level,
- int option,
- void *optval,
- int optlen) const;
-
- /// Wrapper around the @c getsockopt system call.
- int get_option (int level,
- int option,
- void *optval,
- int *optlen) const;
-
- /**
- * Close the socket.
- * This method also sets the object's handle value to ACE_INVALID_HANDLE.
- *
- * @return The result of closing the socket; 0 if the handle value
- * was already ACE_INVALID_HANDLE.
- */
- int close (void);
-
- /// Return the local endpoint address in the referenced <ACE_Addr>.
- /// Returns 0 if successful, else -1.
- int get_local_addr (ACE_Addr &) const;
-
- /**
- * Return the address of the remotely connected peer (if there is
- * one), in the referenced ACE_Addr. Returns 0 if successful, else
- * -1.
- */
- int get_remote_addr (ACE_Addr &) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /// Wrapper around the BSD-style @c socket system call (no QoS).
- int open (int type,
- int protocol_family,
- int protocol,
- int reuse_addr);
-
- /// Wrapper around the QoS-enabled @c WSASocket function.
- int open (int type,
- int protocol_family,
- int protocol,
- ACE_Protocol_Info *protocolinfo,
- ACE_SOCK_GROUP g,
- u_long flags,
- int reuse_addr);
-
-protected:
-
- /// Constructor with arguments to call the BSD-style @c socket system
- /// call (no QoS).
- ACE_SOCK (int type,
- int protocol_family,
- int protocol = 0,
- int reuse_addr = 0);
-
- /// Constructor with arguments to call the QoS-enabled @c WSASocket
- /// function.
- ACE_SOCK (int type,
- int protocol_family,
- int protocol,
- ACE_Protocol_Info *protocolinfo,
- ACE_SOCK_GROUP g,
- u_long flags,
- int reuse_addr);
-
- /// Default constructor is protected to prevent instances of this class
- /// from being defined.
- ACE_SOCK (void);
-
- /// Protected destructor.
- /**
- * Not a virtual destructor. Protected destructor to prevent
- * operator delete() from being called through a base class ACE_SOCK
- * pointer/reference.
- */
- ~ACE_SOCK (void);
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SOCK.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SOCK_H */
-
diff --git a/dep/include/ace/SOCK.inl b/dep/include/ace/SOCK.inl
deleted file mode 100644
index 957ad5ac50c..00000000000
--- a/dep/include/ace/SOCK.inl
+++ /dev/null
@@ -1,39 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SOCK.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_sys_socket.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_SOCK::~ACE_SOCK (void)
-{
- // ACE_TRACE ("ACE_SOCK::~ACE_SOCK");
-}
-
-ACE_INLINE int
-ACE_SOCK::set_option (int level,
- int option,
- void *optval,
- int optlen) const
-{
- ACE_TRACE ("ACE_SOCK::set_option");
- return ACE_OS::setsockopt (this->get_handle (), level,
- option, (char *) optval, optlen);
-}
-
-// Provides access to the ACE_OS::getsockopt system call.
-
-ACE_INLINE int
-ACE_SOCK::get_option (int level,
- int option,
- void *optval,
- int *optlen) const
-{
- ACE_TRACE ("ACE_SOCK::get_option");
- return ACE_OS::getsockopt (this->get_handle (), level,
- option, (char *) optval, optlen);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SOCK_Acceptor.h b/dep/include/ace/SOCK_Acceptor.h
deleted file mode 100644
index e854ec07737..00000000000
--- a/dep/include/ace/SOCK_Acceptor.h
+++ /dev/null
@@ -1,179 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file SOCK_Acceptor.h
- *
- * $Id: SOCK_Acceptor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SOCK_ACCEPTOR_H
-#define ACE_SOCK_ACCEPTOR_H
-#include /**/ "ace/pre.h"
-
-#include "ace/SOCK_Stream.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-class ACE_Accept_QoS_Params;
-
-/**
- * @class ACE_SOCK_Acceptor
- *
- * @brief Defines a factory that creates new ACE_Streams passively.
- *
- * The ACE_SOCK_Acceptor has its own "passive-mode" socket.
- * This serves as a factory to create so-called "data-mode"
- * sockets, which are what the ACE_SOCK_Stream encapsulates.
- * Therefore, by inheriting from ACE_SOCK, ACE_SOCK_Acceptor
- * gets its very own socket.
- */
-class ACE_Export ACE_SOCK_Acceptor : public ACE_SOCK
-{
-public:
- // = Initialization and termination methods.
- /// Default constructor.
- ACE_SOCK_Acceptor (void);
-
- /**
- * Initialize a passive-mode BSD-style acceptor socket (no QoS).
- * @a local_sap is the address that we're going to listen for
- * connections on. If @a reuse_addr is 1 then we'll use the
- * @c SO_REUSEADDR to reuse this address.
- */
- ACE_SOCK_Acceptor (const ACE_Addr &local_sap,
- int reuse_addr = 0,
- int protocol_family = PF_UNSPEC,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 0);
-
- /// Initialize a passive-mode QoS-enabled acceptor socket. Returns 0
- /// on success and -1 on failure.
- ACE_SOCK_Acceptor (const ACE_Addr &local_sap,
- ACE_Protocol_Info *protocolinfo,
- ACE_SOCK_GROUP g,
- u_long flags,
- int reuse_addr,
- int protocol_family = PF_UNSPEC,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 0);
-
- /**
- * Initialize a passive-mode BSD-style acceptor socket (no QoS).
- * @a local_sap is the address that we're going to listen for
- * connections on. If @a reuse_addr is 1 then we'll use the
- * @c SO_REUSEADDR to reuse this address. Returns 0 on success and
- * -1 on failure.
- */
- int open (const ACE_Addr &local_sap,
- int reuse_addr = 0,
- int protocol_family = PF_UNSPEC,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 0);
-
- /// Initialize a passive-mode QoS-enabled acceptor socket. Returns 0
- /// on success and -1 on failure.
- int open (const ACE_Addr &local_sap,
- ACE_Protocol_Info *protocolinfo,
- ACE_SOCK_GROUP g,
- u_long flags,
- int reuse_addr,
- int protocol_family = PF_UNSPEC,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 0);
-
- /// Close the socket. Returns 0 on success and -1 on failure.
- int close (void);
-
- /// Default dtor.
- ~ACE_SOCK_Acceptor (void);
-
- // = Passive connection <accept> methods.
- /**
- * Accept a new ACE_SOCK_Stream connection. A @a timeout of 0
- * means block forever, a @a timeout of {0, 0} means poll. <restart>
- * == 1 means "restart if interrupted," i.e., if errno == EINTR.
- * Note that @a new_stream inherits the "blocking mode" of @c this
- * ACE_SOCK_Acceptor, i.e., if @c this acceptor factory is in
- * non-blocking mode, the @a new_stream will be in non-blocking mode
- * and vice versa.
- */
- int accept (ACE_SOCK_Stream &new_stream,
- ACE_Addr *remote_addr = 0,
- ACE_Time_Value *timeout = 0,
- int restart = 1,
- int reset_new_handle = 0) const;
-
-#if !defined (ACE_HAS_WINCE)
- /**
- * Accept a new ACE_SOCK_Stream connection using the QoS
- * information in @a qos_params. A @a timeout of 0 means block
- * forever, a @a timeout of {0, 0} means poll. @a restart == 1 means
- * "restart if interrupted," i.e., if errno == EINTR. Note that
- * @a new_stream inherits the "blocking mode" of @c this
- * ACE_SOCK_Acceptor, i.e., if @c this acceptor factory is in
- * non-blocking mode, the @a new_stream will be in non-blocking mode
- * and vice versa.
- */
- int accept (ACE_SOCK_Stream &new_stream,
- ACE_Accept_QoS_Params qos_params,
- ACE_Addr *remote_addr = 0,
- ACE_Time_Value *timeout = 0,
- int restart = 1,
- int reset_new_handle = 0) const;
-#endif // ACE_HAS_WINCE
-
- // = Meta-type info
- typedef ACE_INET_Addr PEER_ADDR;
- typedef ACE_SOCK_Stream PEER_STREAM;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Perform operations that must occur before <ACE_OS::accept> is
- /// called.
- int shared_accept_start (ACE_Time_Value *timeout,
- int restart,
- int &in_blocking_mode) const;
-
- /// Perform operations that must occur after <ACE_OS::accept> is
- /// called.
- int shared_accept_finish (ACE_SOCK_Stream new_stream,
- int in_blocking_mode,
- int reset_new_handle) const;
-
- /**
- * This method factors out the common <open> code and is called by
- * both the QoS-enabled <open> method and the BSD-style <open>
- * method.
- */
- int shared_open (const ACE_Addr &local_sap,
- int protocol_family,
- int backlog);
-
-private:
- /// Do not allow this function to percolate up to this interface...
- int get_remote_addr (ACE_Addr &) const;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SOCK_Acceptor.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SOCK_ACCEPTOR_H */
-
diff --git a/dep/include/ace/SOCK_Acceptor.inl b/dep/include/ace/SOCK_Acceptor.inl
deleted file mode 100644
index fec79aeecd6..00000000000
--- a/dep/include/ace/SOCK_Acceptor.inl
+++ /dev/null
@@ -1,13 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SOCK_Acceptor.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_SOCK_Acceptor::~ACE_SOCK_Acceptor (void)
-{
- ACE_TRACE ("ACE_SOCK_Acceptor::~ACE_SOCK_Acceptor");
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SOCK_CODgram.h b/dep/include/ace/SOCK_CODgram.h
deleted file mode 100644
index b7641fccb19..00000000000
--- a/dep/include/ace/SOCK_CODgram.h
+++ /dev/null
@@ -1,143 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SOCK_CODgram.h
- *
- * $Id: SOCK_CODgram.h 81509 2008-04-28 22:00:49Z shuston $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_SOCK_CODGRAM_H
-#define ACE_SOCK_CODGRAM_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SOCK_IO.h"
-#include "ace/Addr.h"
-#include "ace/INET_Addr.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SOCK_CODgram
- *
- * @brief Defines the member functions for the ACE_SOCK connected
- * datagram abstraction.
- */
-class ACE_Export ACE_SOCK_CODgram : public ACE_SOCK_IO
-{
-public:
- /// Default constructor.
- ACE_SOCK_CODgram (void);
-
- /**
- * Constructor with addresses specified. Calls open().
- * This constructor binds and/or connects to a specified address,
- * optionally binding an unused port number.
- *
- * @param remote_sap The remote address.
- * @param local_sap The local address.
- * @param protocol_family The protocol family for the new socket. If
- * either @p remote_sap or @p local_sap is
- * specified (i.e., not ACE_Addr::sap_any) its
- * address type is used instead of this value.
- * If both addresses are specified, their address
- * types must match. If neither address is specified,
- * the platform's default IP address type is used.
- * @param protocol Protocol value for the new socket.
- * @param reuse_addr Reuse the local address or not.
- *
- * There are four possible combinations of remote_sap and local_sap. The
- * behavior in these combinations is:
- *
- * @li <b>remote_addr == ACE_Addr::sap_any && local_addr == ACE_Addr::sap_any:</b>
- * If @p protocol_family specifies PF_INET or PF_INET6,
- * bind the local address to a randomly generated port number.
- *
- * @li <b>remote_addr == ACE_Addr::sap_any && local_addr != ACE_Addr::sap_any:</b>
- * Bind the local address (used primarily by servers).
- *
- * @li <b>remote_addr != ACE_Addr::sap_any && local_addr == ACE_Addr::sap_any:</b>
- * Connect to the remote address without binding a local address
- * (used primarily by clients).
- *
- * @li <b>remote_addr != ACE_Addr::sap_any && local_addr != ACE_Addr::sap_any:</b>
- * Bind to the local address and connect to the remote address.
- */
- ACE_SOCK_CODgram (const ACE_Addr &remote_sap,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int protocol_family = ACE_PROTOCOL_FAMILY_INET,
- int protocol = 0,
- int reuse_addr = 0);
-
- /// Default dtor.
- ~ACE_SOCK_CODgram (void);
-
- // Initiate a connected dgram.
-
- /**
- * Initiate a connected datagram socket, optionally binding an
- * unused port number.
- *
- * @param remote_sap The remote address.
- * @param local_sap The local address.
- * @param protocol_family The protocol family for the new socket. If
- * either @p remote_sap or @p local_sap is
- * specified (i.e., not ACE_Addr::sap_any) its
- * address type is used instead of this value.
- * If both addresses are specified, their address
- * types must match. If neither address is specified,
- * the platform's default IP address type is used.
- * @param protocol Protocol value for the new socket.
- * @param reuse_addr Reuse the local address or not.
- *
- * There are four possible combinations of remote_sap and local_sap. The
- * behavior in these combinations is:
- *
- * @li <b>remote_addr == ACE_Addr::sap_any && local_addr == ACE_Addr::sap_any:</b>
- * If @p protocol_family specifies PF_INET or PF_INET6,
- * bind the local address to a randomly generated port number.
- *
- * @li <b>remote_addr == ACE_Addr::sap_any && local_addr != ACE_Addr::sap_any:</b>
- * Bind the local address (used primarily by servers).
- *
- * @li <b>remote_addr != ACE_Addr::sap_any && local_addr == ACE_Addr::sap_any:</b>
- * Connect to the remote address without binding a local address
- * (used primarily by clients).
- *
- * @li <b>remote_addr != ACE_Addr::sap_any && local_addr != ACE_Addr::sap_any:</b>
- * Bind to the local address and connect to the remote address.
- */
- int open (const ACE_Addr &remote_sap,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int protocol_family = ACE_PROTOCOL_FAMILY_INET,
- int protocol = 0,
- int reuse_addr = 0);
-
- // = Meta-type info.
- typedef ACE_INET_Addr PEER_ADDR;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SOCK_CODgram.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SOCK_CODGRAM_H */
-
diff --git a/dep/include/ace/SOCK_CODgram.inl b/dep/include/ace/SOCK_CODgram.inl
deleted file mode 100644
index a05228b3654..00000000000
--- a/dep/include/ace/SOCK_CODgram.inl
+++ /dev/null
@@ -1,19 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SOCK_CODgram.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_SOCK_CODgram::ACE_SOCK_CODgram (void)
-{
- ACE_TRACE ("ACE_SOCK_CODgram::ACE_SOCK_CODgram");
-}
-
-ACE_INLINE
-ACE_SOCK_CODgram::~ACE_SOCK_CODgram (void)
-{
- ACE_TRACE ("ACE_SOCK_CODgram::~ACE_SOCK_CODgram");
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SOCK_Connector.h b/dep/include/ace/SOCK_Connector.h
deleted file mode 100644
index 9b77e7d61dd..00000000000
--- a/dep/include/ace/SOCK_Connector.h
+++ /dev/null
@@ -1,322 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SOCK_Connector.h
- *
- * $Id: SOCK_Connector.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SOCK_CONNECTOR_H
-#define ACE_SOCK_CONNECTOR_H
-#include /**/ "ace/pre.h"
-
-#include "ace/SOCK_Stream.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_QoS_Params;
-class ACE_Time_Value;
-
-/**
- * @class ACE_SOCK_Connector
- *
- * @brief Defines a factory that actively connects to a remote IP
- * address and TCP port, creating a new @c ACE_SOCK_Stream object.
- *
- * The @c ACE_SOCK_Connector doesn't have a socket of its own,
- * i.e., it simply "borrows" the one from the @c ACE_SOCK_Stream
- * that's being connected. The reason for this is that the
- * underlying socket API doesn't use a factory socket to connect
- * data mode sockets. Therefore, there's no need to inherit
- * @c ACE_SOCK_Connector from @c ACE_SOCK. A nice side-effect of
- * this is that @c ACE_SOCK_Connector objects do not store state so
- * they can be used reentrantly in multithreaded programs.
- */
-class ACE_Export ACE_SOCK_Connector
-{
-public:
- // = Initialization and termination methods.
- /// Default constructor.
- ACE_SOCK_Connector (void);
-
- /**
- * Actively connect to a peer, producing a connected @c ACE_SOCK_Stream
- * object if the connection succeeds.
- *
- * @param new_stream The @c ACE_SOCK_Stream object that will be connected
- * to the peer.
- * @param remote_sap The address that we are trying to connect to.
- * The protocol family of @c remote_sap is used for
- * the connected socket. That is, if @c remote_sap
- * contains an IPv6 address, a socket with family
- * PF_INET6 will be used, else it will be PF_INET.
- * @param timeout Pointer to an @c ACE_Time_Value object with amount
- * of time to wait to connect. If the pointer is 0
- * then the call blocks until the connection attempt
- * is complete, whether it succeeds or fails. If
- * *timeout == {0, 0} then the connection is done
- * using nonblocking mode. In this case, if the
- * connection can't be made immediately, this method
- * returns -1 and errno == EWOULDBLOCK.
- * If *timeout > {0, 0} then this is the maximum amount
- * of time to wait before timing out; if the specified
- * amount of time passes before the connection is made,
- * this method returns -1 and errno == ETIME. Note
- * the difference between this case and when a blocking
- * connect is attmpted that TCP times out - in the latter
- * case, errno will be ETIMEDOUT.
- * @param local_sap (optional) The local address to bind to. If it's
- * the default value of @c ACE_Addr::sap_any then the
- * OS will choose an unused port.
- * @param reuse_addr (optional) If the value is 1, the local address
- * (@c local_sap) is reused, even if it hasn't been
- * cleaned up yet.
- * @param flags Ignored.
- * @param perms Ignored.
- * @param protocol (optional) If value is 0, default SOCK_STREAM
- * protocol is selected by kernel (typically TCP).
- */
- ACE_SOCK_Connector (ACE_SOCK_Stream &new_stream,
- const ACE_Addr &remote_sap,
- const ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = 0,
- int perms = 0,
- int protocol = 0);
-
-#if !defined (ACE_HAS_WINCE)
- /**
- * Actively connect to a peer, producing a connected @c ACE_SOCK_Stream
- * object if the connection succeeds.
- *
- * @param new_stream The @c ACE_SOCK_Stream object that will be connected
- * to the peer.
- * @param remote_sap The address that we are trying to connect to.
- * The protocol family of @c remote_sap is used for
- * the connected socket. That is, if @c remote_sap
- * contains an IPv6 address, a socket with family
- * PF_INET6 will be used, else it will be PF_INET.
- * @param qos_params Contains QoS parameters that are passed to the
- * IntServ (RSVP) and DiffServ protocols.
- * @see ACE_QoS_Params.
- * @param timeout Pointer to an @c ACE_Time_Value object with amount
- * of time to wait to connect. If the pointer is 0
- * then the call blocks until the connection attempt
- * is complete, whether it succeeds or fails. If
- * *timeout == {0, 0} then the connection is done
- * using nonblocking mode. In this case, if the
- * connection can't be made immediately, this method
- * returns -1 and errno == EWOULDBLOCK.
- * If *timeout > {0, 0} then this is the maximum amount
- * of time to wait before timing out; if the specified
- * amount of time passes before the connection is made,
- * this method returns -1 and errno == ETIME. Note
- * the difference between this case and when a blocking
- * connect is attmpted that TCP times out - in the latter
- * case, errno will be ETIMEDOUT.
- * @param local_sap (optional) The local address to bind to. If it's
- * the default value of @c ACE_Addr::sap_any then the
- * OS will choose an unused port.
- * @param reuse_addr (optional) If the value is 1, the local address
- * (@c local_sap) is reused, even if it hasn't been
- * cleaned up yet.
- * @param flags Ignored.
- * @param perms Ignored.
- */
- ACE_SOCK_Connector (ACE_SOCK_Stream &new_stream,
- const ACE_Addr &remote_sap,
- ACE_QoS_Params qos_params,
- const ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- ACE_Protocol_Info *protocolinfo = 0,
- ACE_SOCK_GROUP g = 0,
- u_long flags = 0,
- int reuse_addr = 0,
- int perms = 0);
-#endif // ACE_HAS_WINCE
-
- /**
- * Actively connect to a peer, producing a connected @c ACE_SOCK_Stream
- * object if the connection succeeds.
- *
- * @param new_stream The @c ACE_SOCK_Stream object that will be connected
- * to the peer.
- * @param remote_sap The address that we are trying to connect to.
- * The protocol family of @c remote_sap is used for
- * the connected socket. That is, if @c remote_sap
- * contains an IPv6 address, a socket with family
- * PF_INET6 will be used, else it will be PF_INET.
- * @param timeout Pointer to an @c ACE_Time_Value object with amount
- * of time to wait to connect. If the pointer is 0
- * then the call blocks until the connection attempt
- * is complete, whether it succeeds or fails. If
- * *timeout == {0, 0} then the connection is done
- * using nonblocking mode. In this case, if the
- * connection can't be made immediately, this method
- * returns -1 and errno == EWOULDBLOCK.
- * If *timeout > {0, 0} then this is the maximum amount
- * of time to wait before timing out; if the specified
- * amount of time passes before the connection is made,
- * this method returns -1 and errno == ETIME. Note
- * the difference between this case and when a blocking
- * connect is attmpted that TCP times out - in the latter
- * case, errno will be ETIMEDOUT.
- * @param local_sap (optional) The local address to bind to. If it's
- * the default value of @c ACE_Addr::sap_any then the
- * OS will choose an unused port.
- * @param reuse_addr (optional) If the value is 1, the local address
- * (@c local_sap) is reused, even if it hasn't been
- * cleaned up yet.
- * @param flags Ignored.
- * @param perms Ignored.
- * @param protocol (optional) If value is 0, default SOCK_STREAM
- * protocol is selected by kernel (typically TCP).
- *
- * @return Returns 0 if the connection succeeds. If it fails,
- * -1 is returned and errno contains a specific error
- * code.
- */
- int connect (ACE_SOCK_Stream &new_stream,
- const ACE_Addr &remote_sap,
- const ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = 0,
- int perms = 0,
- int protocol = 0);
-
-#if !defined (ACE_HAS_WINCE)
- /**
- * Actively connect to a peer, producing a connected @c ACE_SOCK_Stream
- * object if the connection succeeds.
- *
- * @param new_stream The @c ACE_SOCK_Stream object that will be connected
- * to the peer.
- * @param remote_sap The address that we are trying to connect to.
- * The protocol family of @c remote_sap is used for
- * the connected socket. That is, if @c remote_sap
- * contains an IPv6 address, a socket with family
- * PF_INET6 will be used, else it will be PF_INET.
- * @param qos_params Contains QoS parameters that are passed to the
- * IntServ (RSVP) and DiffServ protocols.
- * @see ACE_QoS_Params.
- * @param timeout Pointer to an @c ACE_Time_Value object with amount
- * of time to wait to connect. If the pointer is 0
- * then the call blocks until the connection attempt
- * is complete, whether it succeeds or fails. If
- * *timeout == {0, 0} then the connection is done
- * using nonblocking mode. In this case, if the
- * connection can't be made immediately, this method
- * returns -1 and errno == EWOULDBLOCK.
- * If *timeout > {0, 0} then this is the maximum amount
- * of time to wait before timing out; if the specified
- * amount of time passes before the connection is made,
- * this method returns -1 and errno == ETIME. Note
- * the difference between this case and when a blocking
- * connect is attmpted that TCP times out - in the latter
- * case, errno will be ETIMEDOUT.
- * @param local_sap (optional) The local address to bind to. If it's
- * the default value of @c ACE_Addr::sap_any then the
- * OS will choose an unused port.
- * @param reuse_addr (optional) If the value is 1, the local address
- * (@c local_sap) is reused, even if it hasn't been
- * cleaned up yet.
- * @param flags Ignored.
- * @param perms Ignored.
- *
- * @return Returns 0 if the connection succeeds. If it fails,
- * -1 is returned and errno contains a specific error
- * code.
- */
- int connect (ACE_SOCK_Stream &new_stream,
- const ACE_Addr &remote_sap,
- ACE_QoS_Params qos_params,
- const ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- ACE_Protocol_Info *protocolinfo = 0,
- ACE_SOCK_GROUP g = 0,
- u_long flags = 0,
- int reuse_addr = 0,
- int perms = 0);
-#endif // ACE_HAS_WINCE
-
- /// Default dtor.
- ~ACE_SOCK_Connector (void);
-
- // = Completion routine.
- /**
- * Try to complete a nonblocking connection that was begun by a
- * previous call to connect with a {0, 0} ACE_Time_Value timeout.
- * @see connect().
- *
- * @param new_stream The @c ACE_SOCK_Stream object that will be connected
- * to the peer.
- * @param remote_sap If non-0, it points to the @c ACE_INET_Addr object
- * that will contain the address of the connected peer.
- * @param timeout Same values and return value possibilites as for
- * connect(). @see connect().
- */
- int complete (ACE_SOCK_Stream &new_stream,
- ACE_Addr *remote_sap = 0,
- const ACE_Time_Value *timeout = 0);
-
- /// Resets any event associations on this handle
- int reset_new_handle (ACE_HANDLE handle);
-
- // = Meta-type info
- typedef ACE_INET_Addr PEER_ADDR;
- typedef ACE_SOCK_Stream PEER_STREAM;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Perform operations that ensure the socket is opened using
- /// BSD-style semantics (no QoS).
- int shared_open (ACE_SOCK_Stream &new_stream,
- int protocol_family,
- int protocol,
- int reuse_addr);
-
- /// Perform operations that ensure the socket is opened using
- /// QoS-enabled semantics.
- int shared_open (ACE_SOCK_Stream &new_stream,
- int protocol_family,
- int protocol,
- ACE_Protocol_Info *protocolinfo,
- ACE_SOCK_GROUP g,
- u_long flags,
- int reuse_addr);
-
- /// Perform operations that must be called before <ACE_OS::connect>.
- int shared_connect_start (ACE_SOCK_Stream &new_stream,
- const ACE_Time_Value *timeout,
- const ACE_Addr &local_sap);
-
- /// Perform operations that must be called after <ACE_OS::connect>.
- int shared_connect_finish (ACE_SOCK_Stream &new_stream,
- const ACE_Time_Value *timeout,
- int result);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SOCK_Connector.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SOCK_CONNECTOR_H */
-
diff --git a/dep/include/ace/SOCK_Connector.inl b/dep/include/ace/SOCK_Connector.inl
deleted file mode 100644
index ec99a5f38db..00000000000
--- a/dep/include/ace/SOCK_Connector.inl
+++ /dev/null
@@ -1,38 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SOCK_Connector.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// This constructor is used by a client when it wants to connect to
-// the specified REMOTE_SAP address using a blocking open.
-
-ACE_INLINE
-ACE_SOCK_Connector::~ACE_SOCK_Connector (void)
-{
- ACE_TRACE ("ACE_SOCK_Connector::~ACE_SOCK_Connector");
-}
-
-// Do-nothing constructor...
-
-ACE_INLINE
-ACE_SOCK_Connector::ACE_SOCK_Connector (void)
-{
- ACE_TRACE ("ACE_SOCK_Connector::ACE_SOCK_Connector");
-}
-
-ACE_INLINE int
-ACE_SOCK_Connector::reset_new_handle (ACE_HANDLE handle)
-{
-#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
- // Reset the event association
- return ::WSAEventSelect ((SOCKET) handle,
- 0,
- 0);
-#else /* !defined ACE_HAS_WINSOCK2 */
- ACE_UNUSED_ARG (handle);
- return 0;
-#endif /* ACE_WIN32 */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SOCK_Dgram.h b/dep/include/ace/SOCK_Dgram.h
deleted file mode 100644
index 42696a51fdd..00000000000
--- a/dep/include/ace/SOCK_Dgram.h
+++ /dev/null
@@ -1,240 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SOCK_Dgram.h
- *
- * $Id: SOCK_Dgram.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SOCK_DGRAM_H
-#define ACE_SOCK_DGRAM_H
-#include /**/ "ace/pre.h"
-
-#include "ace/SOCK.h"
-#include "ace/INET_Addr.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Addr.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-/**
- * @class ACE_SOCK_Dgram
- *
- * @brief Defines the member functions for the ACE_SOCK datagram
- * abstraction.
- */
-class ACE_Export ACE_SOCK_Dgram : public ACE_SOCK
-{
-public:
- // = Initialization and termination methods.
- /// Default constructor.
- ACE_SOCK_Dgram (void);
-
- /// This is a BSD-style method (i.e., no QoS) for initiating a socket
- /// dgram that will accept datagrams at the <local> address.
- ACE_SOCK_Dgram (const ACE_Addr &local,
- int protocol_family = ACE_PROTOCOL_FAMILY_INET,
- int protocol = 0,
- int reuse_addr = 0);
-
- /**
- * This is a QoS-enabed method for initiating a socket dgram that
- * will accept datagrams at the <local> address. The @a qos_params
- * are passed to <ACE_OS::join_leaf>.
- */
- ACE_SOCK_Dgram (const ACE_Addr &local,
- int protocol_family,
- int protocol,
- ACE_Protocol_Info *protocolinfo,
- ACE_SOCK_GROUP g = 0,
- u_long flags = 0,
- int reuse_addr = 0);
-
- /// This is a BSD-style method (i.e., no QoS) for initiating a socket
- /// dgram that will accept datagrams at the <local> address.
- int open (const ACE_Addr &local,
- int protocol_family = ACE_PROTOCOL_FAMILY_INET,
- int protocol = 0,
- int reuse_addr = 0);
-
- /**
- * This is a QoS-enabed method for initiating a socket dgram that
- * will accept datagrams at the <local> address. The @a qos_params
- * are passed to <ACE_OS::join_leaf>.
- */
- int open (const ACE_Addr &local,
- int protocol_family,
- int protocol,
- ACE_Protocol_Info *protocolinfo,
- ACE_SOCK_GROUP g = 0,
- u_long flags = 0,
- int reuse_addr = 0);
-
- /// Default dtor.
- ~ACE_SOCK_Dgram (void);
-
- // = Data transfer routines.
- /// Send an @a n byte @a buf to the datagram socket (uses <sendto(3)>).
- ssize_t send (const void *buf,
- size_t n,
- const ACE_Addr &addr,
- int flags = 0) const;
-
- /// Receive an @a n byte @a buf from the datagram socket (uses
- /// <recvfrom(3)>).
- ssize_t recv (void *buf,
- size_t n,
- ACE_Addr &addr,
- int flags = 0) const;
-
- /**
- * Allows a client to read from a socket without having to provide a
- * buffer to read. This method determines how much data is in the
- * socket, allocates a buffer of this size, reads in the data, and
- * returns the number of bytes read. The caller is responsible for
- * deleting the member in the <iov_base> field of <io_vec> using the
- * ``delete []'' syntax.
- */
- ssize_t recv (iovec *io_vec,
- ACE_Addr &addr,
- int flags = 0,
- const ACE_Time_Value *timeout = 0) const;
-
- /// Send an <iovec> of size @a n to the datagram socket (uses
- /// <sendmsg(3)>).
- ssize_t send (const iovec iov[],
- int n,
- const ACE_Addr &addr,
- int flags = 0) const;
-
- /// Recv an <iovec> of size @a n to the datagram socket (uses
- /// <recvmsg(3)>).
- ssize_t recv (iovec iov[],
- int n,
- ACE_Addr &addr,
- int flags = 0) const;
-
- /**
- * Wait up to @a timeout amount of time to receive a datagram into
- * @a buf. The ACE_Time_Value indicates how long to blocking
- * trying to receive. If @a timeout == 0, the caller will block
- * until action is possible, else will wait until the relative time
- * specified in *@a timeout elapses). If <recv> times out a -1 is
- * returned with @c errno == ETIME. If it succeeds the number of
- * bytes received is returned.
- */
- ssize_t recv (void *buf,
- size_t n,
- ACE_Addr &addr,
- int flags,
- const ACE_Time_Value *timeout) const;
-
- /**
- * Wait up to @a timeout amount of time to send a datagram to
- * @a buf. The ACE_Time_Value indicates how long to blocking
- * trying to receive. If @a timeout == 0, the caller will block
- * until action is possible, else will wait until the relative time
- * specified in *@a timeout elapses). If <send> times out a -1 is
- * returned with @c errno == ETIME. If it succeeds the number of
- * bytes sent is returned.
- */
- ssize_t send (const void *buf,
- size_t n,
- const ACE_Addr &addr,
- int flags,
- const ACE_Time_Value *timeout) const;
-
- /// Send <buffer_count> worth of @a buffers to @a addr using overlapped
- /// I/O (uses <WSASendTo>). Returns 0 on success.
- ssize_t send (const iovec buffers[],
- int buffer_count,
- size_t &number_of_bytes_sent,
- int flags,
- const ACE_Addr &addr,
- ACE_OVERLAPPED *overlapped,
- ACE_OVERLAPPED_COMPLETION_FUNC func) const;
-
- /// Recv <buffer_count> worth of @a buffers from @a addr using
- /// overlapped I/O (uses <WSARecvFrom>). Returns 0 on success.
- ssize_t recv (iovec buffers[],
- int buffer_count,
- size_t &number_of_bytes_recvd,
- int &flags,
- ACE_Addr &addr,
- ACE_OVERLAPPED *overlapped,
- ACE_OVERLAPPED_COMPLETION_FUNC func) const;
-
- /// Send an @a n byte @a buf to the datagram socket (uses <WSASendTo>).
- ssize_t send (const void *buf,
- size_t n,
- const ACE_Addr &addr,
- int flags,
- ACE_OVERLAPPED *overlapped,
- ACE_OVERLAPPED_COMPLETION_FUNC func) const;
-
- /// Receive an @a n byte @a buf from the datagram socket (uses
- /// <WSARecvFrom>).
- ssize_t recv (void *buf,
- size_t n,
- ACE_Addr &addr,
- int flags,
- ACE_OVERLAPPED *overlapped,
- ACE_OVERLAPPED_COMPLETION_FUNC func) const;
-
- // = Meta-type info.
- typedef ACE_INET_Addr PEER_ADDR;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Set NIC to use as multicast interface.
- int set_nic (const ACE_TCHAR *net_if,
- int addr_family = AF_UNSPEC);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Open is shared by this and by <LSOCK_Dgram>.
- int shared_open (const ACE_Addr &local,
- int protocol_family);
-
- /// Create a multicast addr/if pair, in format useful for system calls.
- /// If mreq param is NULL, just verify the passed addr/interface specs.
- int make_multicast_ifaddr (ip_mreq *mreq, // Put result here, if != NULL.
- const ACE_INET_Addr &mcast_addr,
- const ACE_TCHAR *net_if);
-
-#if defined (ACE_HAS_IPV6)
- /// Create a multicast addr/if pair, in format useful for system calls.
- /// If mreq param is NULL, just verify the passed addr/interface specs.
- int make_multicast_ifaddr6 (ipv6_mreq *mreq, // Put result here, if != NULL.
- const ACE_INET_Addr &mcast_addr,
- const ACE_TCHAR *net_if);
-
-#endif /* ACE_HAS_IPV6 */
-
-private:
- /// Do not allow this function to percolate up to this interface...
- int get_remote_addr (ACE_Addr &) const;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SOCK_Dgram.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SOCK_DGRAM_H */
-
diff --git a/dep/include/ace/SOCK_Dgram.inl b/dep/include/ace/SOCK_Dgram.inl
deleted file mode 100644
index 7bffb19ba70..00000000000
--- a/dep/include/ace/SOCK_Dgram.inl
+++ /dev/null
@@ -1,167 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SOCK_Dgram.inl 80826 2008-03-04 14:51:23Z wotte $
-
-// SOCK_Dgram.i
-
-#include "ace/OS_NS_sys_socket.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Here's the simple-minded constructor.
-
-ACE_INLINE
-ACE_SOCK_Dgram::ACE_SOCK_Dgram (void)
-{
- ACE_TRACE ("ACE_SOCK_Dgram::ACE_SOCK_Dgram");
-}
-
-ACE_INLINE
-ACE_SOCK_Dgram::~ACE_SOCK_Dgram (void)
-{
- ACE_TRACE ("ACE_SOCK_Dgram::~ACE_SOCK_Dgram");
-}
-
-// <sendto> an N byte datagram to <addr> (connectionless version).
-
-ACE_INLINE ssize_t
-ACE_SOCK_Dgram::send (const void *buf,
- size_t n,
- const ACE_Addr &addr,
- int flags) const
-{
- ACE_TRACE ("ACE_SOCK_Dgram::send");
- sockaddr *saddr = (sockaddr *) addr.get_addr ();
- int len = addr.get_size ();
- return ACE_OS::sendto (this->get_handle (),
- (const char *) buf,
- n,
- flags,
- (struct sockaddr *) saddr,
- len);
-}
-
-// <recvfrom> an n byte datagram (connectionless version).
-
-ACE_INLINE ssize_t
-ACE_SOCK_Dgram::recv (void *buf,
- size_t n,
- ACE_Addr &addr,
- int flags) const
-{
- ACE_TRACE ("ACE_SOCK_Dgram::recv");
- sockaddr *saddr = (sockaddr *) addr.get_addr ();
- int addr_len = addr.get_size ();
-
- ssize_t const status = ACE_OS::recvfrom (this->get_handle (),
- (char *) buf,
- n,
- flags,
- (sockaddr *) saddr,
- &addr_len);
- addr.set_size (addr_len);
- addr.set_type (saddr->sa_family);
- return status;
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_Dgram::send (const iovec buffers[],
- int buffer_count,
- size_t &number_of_bytes_sent,
- int flags,
- const ACE_Addr &addr,
- ACE_OVERLAPPED *overlapped,
- ACE_OVERLAPPED_COMPLETION_FUNC func) const
-{
- ACE_TRACE ("ACE_SOCK_Dgram::send");
- sockaddr *saddr = (sockaddr *) addr.get_addr ();
- int len = addr.get_size ();
- return ACE_OS::sendto (this->get_handle (),
- buffers,
- buffer_count,
- number_of_bytes_sent,
- flags,
- (const sockaddr *) saddr,
- len,
- overlapped,
- func);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_Dgram::recv (iovec buffers[],
- int buffer_count,
- size_t &number_of_bytes_recvd,
- int &flags,
- ACE_Addr &addr,
- ACE_OVERLAPPED *overlapped,
- ACE_OVERLAPPED_COMPLETION_FUNC func) const
-{
- ACE_TRACE ("ACE_SOCK_Dgram::recv");
- sockaddr *saddr = (sockaddr *) addr.get_addr ();
- int addr_len = addr.get_size ();
-
- ssize_t status = ACE_OS::recvfrom (this->get_handle (),
- buffers,
- buffer_count,
- number_of_bytes_recvd,
- flags,
- (sockaddr *) saddr,
- &addr_len,
- overlapped,
- func);
- addr.set_size (addr_len);
- addr.set_type (saddr->sa_family);
- return status;
-}
-
-// <sendto> an N byte datagram to <addr> (connectionless version).
-
-ACE_INLINE ssize_t
-ACE_SOCK_Dgram::send (const void *buf,
- size_t n,
- const ACE_Addr &addr,
- int flags,
- ACE_OVERLAPPED *overlapped,
- ACE_OVERLAPPED_COMPLETION_FUNC func) const
-{
- ACE_TRACE ("ACE_SOCK_Dgram::send");
-
- iovec buffer[1];
- buffer[0].iov_len = static_cast<u_long> (n); // Betting on < 4G
- buffer[0].iov_base = (char *) buf;
- size_t number_of_bytes_sent = 0;
- return this->send (buffer,
- 1,
- number_of_bytes_sent,
- flags,
- addr,
- overlapped,
- func);
-}
-
-// <recvfrom> an n byte datagram (connectionless version).
-
-ACE_INLINE ssize_t
-ACE_SOCK_Dgram::recv (void *buf,
- size_t n,
- ACE_Addr &addr,
- int flags,
- ACE_OVERLAPPED *overlapped,
- ACE_OVERLAPPED_COMPLETION_FUNC func) const
-{
- ACE_TRACE ("ACE_SOCK_Dgram::recv");
-
- iovec buffer[1];
- buffer[0].iov_len = static_cast<u_long> (n); // Betting on < 4G
- buffer[0].iov_base = (char *) buf;
- size_t number_of_bytes_recvd = 0;
- return this->recv (buffer,
- 1,
- number_of_bytes_recvd,
- flags,
- addr,
- overlapped,
- func);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SOCK_Dgram_Bcast.h b/dep/include/ace/SOCK_Dgram_Bcast.h
deleted file mode 100644
index 0590b79d608..00000000000
--- a/dep/include/ace/SOCK_Dgram_Bcast.h
+++ /dev/null
@@ -1,140 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SOCK_Dgram_Bcast.h
- *
- * $Id: SOCK_Dgram_Bcast.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_SOCK_DGRAM_BCAST_H
-#define ACE_SOCK_DGRAM_BCAST_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SOCK_Dgram.h"
-#include "ace/INET_Addr.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Bcast_Node
- *
- * @brief Linked list of broadcast interfaces.
- */
-class ACE_Export ACE_Bcast_Node
-{
-public:
- /// Default constructor.
- ACE_Bcast_Node (ACE_INET_Addr &,
- ACE_Bcast_Node *);
-
- /// Destructor.
- ~ACE_Bcast_Node (void);
-
- /// Broadcast address for the interface.
- ACE_INET_Addr bcast_addr_;
-
- /// Pointer to the next interface in the chain.
- ACE_Bcast_Node *next_;
-};
-
-/**
- * @class ACE_SOCK_Dgram_Bcast
- *
- * @brief Defines the member functions for the ACE_SOCK datagram
- * abstraction.
- */
-class ACE_Export ACE_SOCK_Dgram_Bcast : public ACE_SOCK_Dgram
-{
-public:
- // = Initialization and termination methods.
- /// Default constructor.
- ACE_SOCK_Dgram_Bcast (void);
-
- ACE_SOCK_Dgram_Bcast (const ACE_Addr &local,
- int protocol_family = PF_INET,
- int protocol = 0,
- int reuse_addr = 0,
- const ACE_TCHAR *host_name = 0);
-
- /// Default dtor.
- ~ACE_SOCK_Dgram_Bcast (void);
-
- // Initiate a connectionless datagram broadcast endpoint.
-
- /// Initiate a connectionless datagram broadcast endpoint.
- int open (const ACE_Addr &local,
- int protocol_family = PF_INET,
- int protocol = 0,
- int reuse_addr = 0,
- const ACE_TCHAR *host_name = 0);
-
- /// Close up and release dynamically allocated resources.
- int close (void);
-
- /// Broadcast the datagram to every interface. Returns the average
- /// number of bytes sent.
- ssize_t send (const void *buf,
- size_t n,
- u_short portnum,
- int flags = 0) const;
-
- /// Broadcast the @c iov datagrams to every interface. Returns the
- /// average number of bytes sent.
- ssize_t send (const iovec iov[],
- int n,
- u_short portnum,
- int flags = 0) const;
-
- /// Broadcast an N byte datagram to ADDR (note that addr must be
- /// preassigned to the broadcast address of the subnet...).
- ssize_t send (const void *buf,
- size_t n,
- const ACE_Addr &addr,
- int flags = 0) const;
-
- /**
- * Broadcast an @a iovec of size @a n to @a addr as a datagram (note
- * that addr must be preassigned to the broadcast address of the
- * subnet...)
- */
- ssize_t send (const iovec iov[],
- int n,
- const ACE_Addr &addr,
- int flags = 0) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Make broadcast available for Datagram socket.
- int mk_broadcast (const ACE_TCHAR *host_name);
-
- /// Points to the head of the list of broadcast interfaces.
- ACE_Bcast_Node *if_list_;
-
- /// Do not allow this function to percolate up to this interface...
- int get_remote_addr (ACE_Addr &) const;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SOCK_Dgram_Bcast.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SOCK_DGRAM_BCAST_H */
-
diff --git a/dep/include/ace/SOCK_Dgram_Bcast.inl b/dep/include/ace/SOCK_Dgram_Bcast.inl
deleted file mode 100644
index 16597248829..00000000000
--- a/dep/include/ace/SOCK_Dgram_Bcast.inl
+++ /dev/null
@@ -1,37 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SOCK_Dgram_Bcast.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_sys_socket.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Bcast_Node::~ACE_Bcast_Node (void)
-{
-}
-
-ACE_INLINE
-ACE_SOCK_Dgram_Bcast::~ACE_SOCK_Dgram_Bcast (void)
-{
- ACE_TRACE ("ACE_SOCK_Dgram_Bcast::~ACE_SOCK_Dgram_Bcast");
-}
-
-// Broadcast an N byte datagram to ADDR (note that addr must be
-// preassigned to the broadcast address of the subnet...)
-
-ACE_INLINE ssize_t
-ACE_SOCK_Dgram_Bcast::send (const void *buf,
- size_t n,
- const ACE_Addr &addr,
- int flags) const
-{
- ACE_TRACE ("ACE_SOCK_Dgram_Bcast::send");
-
- sockaddr *saddr = (sockaddr *) addr.get_addr ();
- int len = addr.get_size ();
- return ACE_OS::sendto (this->get_handle (), (const char *) buf, n, flags,
- (struct sockaddr *) saddr, len);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SOCK_Dgram_Mcast.h b/dep/include/ace/SOCK_Dgram_Mcast.h
deleted file mode 100644
index 093e9fc8558..00000000000
--- a/dep/include/ace/SOCK_Dgram_Mcast.h
+++ /dev/null
@@ -1,384 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SOCK_Dgram_Mcast.h
- *
- * $Id: SOCK_Dgram_Mcast.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Irfan Pyrali <irfan@cs.wustl.edu>
- * @author Tim Harrison <harrison@cs.wustl.edu>
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Bill Fulton <bill_a_fulton@raytheon.com>
- * @author Don Hinton <dhinton@objectsciences.com>
- */
-//=============================================================================
-
-#ifndef ACE_SOCK_DGRAM_MCAST_H
-#define ACE_SOCK_DGRAM_MCAST_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SOCK_Dgram.h"
-#include "ace/INET_Addr.h"
-
-#if defined (ACE_SOCK_DGRAM_MCAST_DUMPABLE)
-# include "ace/Containers_T.h"
-# include "ace/Synch_Traits.h"
-# include "ace/Thread_Mutex.h"
-# if !defined (ACE_SDM_LOCK)
-# define ACE_SDM_LOCK ACE_SYNCH_MUTEX
-# endif /* ACE_SDM_LOCK */
-#endif /* ACE_SOCK_DGRAM_MCAST_DUMPABLE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SOCK_Dgram_Mcast
- *
- * @brief Defines the ACE socket wrapper for UDP/IP multicast.
- *
- * Supports multiple simultaneous subscriptions, unsubscription from one or
- * all subscriptions, and independent send/recv address and interface
- * specifications. Template parameters and/or ctor arguments determine
- * per-instance optional functionality.
- *
- * Note that multicast semantics and implementation details are _very_
- * environment-specific; this class is just a wrapper around the underlying
- * implementation and does not try to normalize the concept of multicast
- * communications.
- *
- * Usage Notes:
- * - Send and Recv addresses and network interfaces, but not port#, are
- * independent. While this instance is open, 1 send interface (and a default
- * send address) is in effect and 0, 1, or multiple recv addresses/interfaces
- * are in effect.
- * - The first <open>/<subscribe> invocation defines the network interface
- * and default address used for all sends by this instance, defines the
- * port# and optionally the multicast address bound to the underlying
- * socket, and defines the (one) port# that is used for all subscribes
- * (subsequent subscribes must pass the same port# or '0').
- * - The default loopback state is not explicitly set; the environment will
- * determine the default state. Note that some environments (e.g. some Win32)
- * do not allow the default to be changed, and that the semantics of
- * loopback control are environment dependent (e.g. sender vs receiver
- * control).
- * - In general, due to multicast design and implementation quirks/bugs, it is
- * difficult to tell which address a received message was sent to or which
- * interface it was received on (even if only one subscription is active).
- * However; there are filtering options that can be applied, to narrow it
- * down considerably.
- *
- * Interface specification notes (for <subscribe> and <unsubscribe>):
- * - If net_if == 0, the null_iface_opt option determines whether only the
- * system "default" interface or all interfaces is affected. Specifying
- * "all" interfaces is supported only for environments for which
- * <ACE_Sock_Connect::get_ip_interfaces> is properly implemented.
- * - Multiple subscriptions for the same address but different interfaces is
- * normally supported, but re-subscription to an address/interface that is
- * already subscribed is normally not allowed.
- * - The <net_if> interface specification syntax is environment-specific.
- * UNIX systems will normally use device specifications such as "le0" or
- * "elxl1", while other systems will use the IP address of the interface.
- * Some platforms, such as pSoS, support only cardinal numbers as network
- * interface specifications; for these platforms, just give these numbers in
- * alphanumeric form and <subscribe> will convert them into numbers via
- * <ACE_OS::atoi>.
- */
-class ACE_Export ACE_SOCK_Dgram_Mcast : public ACE_SOCK_Dgram
-{
-public:
-
- /**
- * @brief Option parameters.
- *
- * These control per-instance optional functionality. They are set via
- * optional constructor arguments.
- * @note Certain option values are not valid for all environments (see
- * comments in source file for environment-specific restrictions). Default
- * values are always valid values for the compilation environment.
- */
- enum options
- {
- // Define whether a specific (multicast) address (in addition to the port#)
- // is bound to the socket.
- // Notes:
- // - Effect of doing this is stack/environment dependent, but in most
- // environments can be used to filter out unwanted unicast, broadcast, and
- // (other) multicast messages sent to the same port#.
- // - Some IP stacks (e.g. some Win32) do not support binding multicast
- // addresses. Using this option will always cause an <open> error.
- // - It's not strictly possible for user code to do this level of filtering
- // w/out the bind; some environments support ways to determine which address
- // a message was sent _to_, but this class interface does not support access
- // to that info.
- // - The address (and port#) passed to <open> (or the first <subscribe>, if
- // <open> is not explicitly invoked) is the one that is bound.
- //
- /// Disable address bind. (Bind only port.)
- // Note that this might seem odd, but we need a way to distinquish between
- // default behavior, which might or might not be to bind, and explicitely
- // choosing to bind or not to bind--which "is the question." ;-)
- OPT_BINDADDR_NO = 0,
- /// Enable address bind. (Bind port and address.)
- OPT_BINDADDR_YES = 1,
- /// Default value for BINDADDR option. (Environment-dependent.)
-#if defined (ACE_LACKS_PERFECT_MULTICAST_FILTERING) \
- && (ACE_LACKS_PERFECT_MULTICAST_FILTERING == 1)
- // Platforms that don't support perfect filtering. Note that perfect
- // filtering only really applies to multicast traffic, not unicast
- // or broadcast.
- DEFOPT_BINDADDR = OPT_BINDADDR_YES,
-# else
- // At least some Win32 OS's can not bind mcast addr, so disable it.
- // General-purpose default behavior is 'disabled', since effect is
- // environment-specific and side-effects might be surprising.
- DEFOPT_BINDADDR = OPT_BINDADDR_NO,
-#endif /* ACE_LACKS_PERFECT_MULTICAST_FILTERING = 1) */
- //
- /// Define the interpretation of 'NULL' as a recv interface specification.
- // If the interface part of a multicast address specification is NULL, it
- // will be interpreted to mean either "the default interface" or "all
- // interfaces", depending on the setting of this option.
- // Notes:
- // - The 'nulliface_all' option can not be used in environments which do
- // not fully support the <ACE_Sock_Connect::get_ip_interfaces> method
- // (e.g. non-Windows).
- // If it is, using NULL for iface will _always_ fail.
- // - The default behavior in most IP stacks is to use the 'default' interface,
- // where 'default' has rather ad-hoc semantics.
- // - This applies only to receives, not sends (which always use only one
- // interface; NULL means use the "system default" interface).
- // Supported values:
- /// If (net_if==NULL), use default interface.
- // Note that this might seem odd, but we need a way to distinquish between
- // default behavior, which might or might not be to bind, and explicitely
- // choosing to bind or not to bind--which "is the question." ;-)
- OPT_NULLIFACE_ONE = 0,
- /// If (net_if==NULL), use all mcast interfaces.
- OPT_NULLIFACE_ALL = 2,
- /// Default value for NULLIFACE option. (Environment-dependent.)
-#ifdef ACE_WIN32
- // This is the (ad-hoc) legacy behavior for Win32/WinSock.
- // Notice: Older version of WinSock/MSVC may not get all multicast-capable
- // interfaces (e.g. PPP interfaces).
- DEFOPT_NULLIFACE = OPT_NULLIFACE_ALL,
-#else
- // General-purpose default behavior (as per legacy behavior).
- DEFOPT_NULLIFACE = OPT_NULLIFACE_ONE,
-#endif /* ACE_WIN32 */
- /// All default options.
- DEFOPTS = DEFOPT_BINDADDR | DEFOPT_NULLIFACE
- };
-
- // = Initialization routines.
-
- /// Ctor - Create an unitialized instance and define per-instance optional
- /// functionality.
- /**
- * You must invoke <open> or <subscribe>, to create/bind a socket and define
- * operational parameters, before performing any I/O with this instance.
- */
- ACE_SOCK_Dgram_Mcast (options opts = DEFOPTS);
-
- /// Dtor - Release all resources and implicitly or explicitly unsubscribe
- /// from all currently subscribed groups.
- /**
- * The OPT_DTORUNSUB_YES_ option defines whether an explicit <unsusbcribe> is
- * done by the destructor. If not, most systems will automatically
- * unsubscribe upon the close of the socket.
- */
- ~ACE_SOCK_Dgram_Mcast (void);
-
- /// Explicitly open/bind the socket and define the network interface
- /// and default multicast address used for sending messages.
- /**
- * This method is optional; if not explicitly invoked, it is invoked by
- * the first <subscribe>, using the subscribed address/port# and network
- * interface paramters.
- * The <mcast_addr> parameter defines the default send address/port# and
- * also the port# and, if the OPT_BINDADDR_YES option is used,
- * the multicast address that is bound to this socket.
- * If the <send_net_if> parameter != 0, it defines the network interface
- * used for all sends by this instance, otherwise the system "default"
- * interface is used. (The <send_net_if> parameter is ignored if this
- * feature is not supported by the envriornment.)
- * The port# in <mcast_addr> may be 0, in which case a system-assigned
- * (ephemeral) port# is used for sending and receiving.
- * If @a reuse_addr != 0, the SO_REUSEADDR option and, if it is supported,
- * the SO_REUSEPORT option are enabled.
- *
- * Returns: -1 if the call fails. Failure can occur due to problems with
- * the address, port#, and/or interface parameters or during system open()
- * or socket option processing.
- */
- int open (const ACE_INET_Addr &mcast_addr, // Bound & sendto address.
- const ACE_TCHAR *net_if = 0, // Net interface for sends.
- int reuse_addr = 1); // Reuse addr/port sock opt.
-
- // = Multicast group subscribe/unsubscribe routines.
-
- /// Join a multicast group on a given interface (or all interfaces, if
- /// supported).
- /**
- * The given group is joined on the specified interface. If option
- * OPT_NULLIFACE_ALL is used and <net_if> is = 0, the group is joined on
- * all multicast capable interfaces (IFF supported). Multiple subscriptions
- * to various address and interface combinations are supported and tracked.
- * If this is the first invocation of <subscribe>, and <open> was not
- * previously invoked, <open> will be invoked using <mcast_addr> for binding
- * the socket and <net_if> as the interface for <send>.
- *
- * Returns: -1 if the call fails. Failure can occur due to problems with
- * the address, port#, and/or interface parameters or during the subscription
- * attempt. Once bind() has been invoked (by the first <open> or
- * <subscribe>), returns errno of ENXIO if the port# is not 0 and does not
- * match the bound port#, or if OPT_BINDADDR_YES option is used
- * and the address does not match the bound address. Returns errno of
- * ENODEV if the addr/port#/interface parameters appeared valid, but no
- * subscription(s) succeeded. An error is unconditionally returned if
- * option OPT_NULLIFACE_ALL is used, <net_if> is NULL, and
- * <ACE_Sock_Connect::get_ip_interfaces> is not implemented in this
- * environment.
- *
- * Note that the optional @a reuse_addr parameter does not apply to
- * subscriptions; it is only used if <open> is implicitly invoked (see above).
- *
- * Uses the mcast_addr to determine protocol_family, and protocol which
- * we always pass as 0 anyway.
- */
- int join (const ACE_INET_Addr &mcast_addr,
- int reuse_addr = 1, // (see above)
- const ACE_TCHAR *net_if = 0);
-
- /// Leave a multicast group on a given interface (or all interfaces, if
- /// supported).
- /**
- * The specified group/interface combination is unsubscribed. If option
- * OPT_NULLIFACE_ALL is used and <net_if> is = 0, the group is unsubscribed
- * from all interfaces (IFF supported).
- *
- * Returns: -1 if the unsubscribe failed. Most environments will return -1
- * if there was no active subscription for this address/interface combination.
- * An error is unconditionally returned if option OPT_NULLIFACE_ALL is used,
- * <net_if> is = 0, and <ACE_Sock_Connect::get_ip_interfaces> is not
- * implemented in this environment (_even if_ the <subscribe> specifies a
- * non- NULL <net_if>).
- *
- * leave() replaces unsubscribe() and uses mcast_addr to determine
- * protocol_family, and protocol which we always pass as 0 anyway.
- */
- int leave (const ACE_INET_Addr &mcast_addr,
- const ACE_TCHAR *net_if = 0);
-
- // = Data transfer routines.
-
- /// Send @a n bytes in @a buf, using the multicast address and network interface
- /// defined by the first <open> or <subscribe>.
- ssize_t send (const void *buf,
- size_t n,
- int flags = 0) const;
-
- /// Send @a n <iovecs>, using the multicast address and network interface
- /// defined by the first <open> or <subscribe>.
- ssize_t send (const iovec iov[],
- int n,
- int flags = 0) const;
-
- // = Options.
-
- /// Set a socket option.
- /**
- * Set an IP option that takes a char as input, such as IP_MULTICAST_LOOP
- * or IP_MULTICAST_TTL. This is just a more concise, nice interface to a
- * subset of possible ACE_SOCK::set_option calls, but only works for
- * IPPROTO_IP or IPPROTO_IPV6 level options.
- *
- * Returns 0 on success, -1 on failure.
- *
- * @deprecated This method has been deprecated since it cannot be used
- * easily with with IPv6 options. Use ACE_SOCK::set_option instead.
- */
- int set_option (int option, char optval);
-
- /// Dump the state of an object.
- /**
- * Logs the setting of all options, the bound address, the send address and
- * interface, and the list of current subscriptions.
- */
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-
- /// Subscribe to a multicast address on one or more network interface(s).
- /// (No QoS support.)
- int subscribe_ifs (const ACE_INET_Addr &mcast_addr,
- const ACE_TCHAR *net_if,
- int reuse_addr);
-
- /// Do subscription processing w/out updating the subscription list.
- // (Layered method for <subscribe> processing).
- int subscribe_i (const ACE_INET_Addr &mcast_addr,
- int reuse_addr = 1,
- const ACE_TCHAR *net_if = 0);
-
- /// Unsubscribe from a multicast address on one or more network interface(s).
- int unsubscribe_ifs (const ACE_INET_Addr &mcast_addr,
- const ACE_TCHAR *net_if = 0);
-
- /// Do unsubscription processing w/out udpating subscription list.
- // (Layered method for <unsubscribe> processing).
- int unsubscribe_i (const ACE_INET_Addr &mcast_addr,
- const ACE_TCHAR *net_if = 0);
-
-protected:
-
- /// Contains common open functionality so that inheriting classes can
- /// reuse it.
- int open_i (const ACE_INET_Addr &mcast_addr, // Bound & sendto address.
- const ACE_TCHAR *net_if = 0, // Net interface for sends.
- int reuse_addr = 1);
-
- /// Empty the dynamic subscription list.
- int clear_subs_list (void);
-
-private:
-
- /// Per-instance options..
- int opts_;
-
- /// Multicast address to which local <send> methods send datagrams.
- ACE_INET_Addr send_addr_;
- /// Network interface to which all <send> methods send multicast datagrams.
- ACE_TCHAR *send_net_if_;
-
-#if defined (ACE_SOCK_DGRAM_MCAST_DUMPABLE)
- typedef ACE_DLList<ip_mreq> subscription_list_t;
- typedef ACE_DLList_Iterator<ip_mreq> subscription_list_iter_t;
- /// List of currently subscribed addr/iface pairs (and assc. types).
- mutable subscription_list_t subscription_list_;
- /// Lock used to protect subscription list.
- mutable ACE_SDM_LOCK subscription_list_lock_;
- // (Lock type does not need to support recursive locking.)
-#endif /* ACE_SOCK_DGRAM_MCAST_DUMPABLE */
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SOCK_Dgram_Mcast.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SOCK_DGRAM_MCAST_H */
-
diff --git a/dep/include/ace/SOCK_Dgram_Mcast.inl b/dep/include/ace/SOCK_Dgram_Mcast.inl
deleted file mode 100644
index 75457d32d92..00000000000
--- a/dep/include/ace/SOCK_Dgram_Mcast.inl
+++ /dev/null
@@ -1,52 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SOCK_Dgram_Mcast.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_SOCK_Dgram_Mcast::set_option (int option,
- char optval)
-{
- ACE_TRACE ("ACE_SOCK_Dgram_Mcast::set_option");
-
- if (this->get_handle () == ACE_INVALID_HANDLE)
- return -1;
-
- int level = IPPROTO_IP;
-#if defined (IPPROTO_IPV6) && ! defined (INTEGRITY)
- if (this->send_addr_.get_type () == PF_INET6)
- level = IPPROTO_IPV6;
-#endif /* IPPROTO_IPV6 */
-
- return this->ACE_SOCK::set_option (level,
- option,
- &optval,
- sizeof (optval));
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_Dgram_Mcast::send (const void *buf,
- size_t n,
- int flags) const
-{
- ACE_TRACE ("ACE_SOCK_Dgram_Mcast::send");
- return this->ACE_SOCK_Dgram::send (buf,
- n,
- this->send_addr_,
- flags);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_Dgram_Mcast::send (const iovec iov[],
- int n,
- int flags) const
-{
- ACE_TRACE ("ACE_SOCK_Dgram_Mcast::send");
- return this->ACE_SOCK_Dgram::send (iov,
- n,
- this->send_addr_,
- flags);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SOCK_IO.h b/dep/include/ace/SOCK_IO.h
deleted file mode 100644
index ce14f87544b..00000000000
--- a/dep/include/ace/SOCK_IO.h
+++ /dev/null
@@ -1,137 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file SOCK_IO.h
- *
- * $Id: SOCK_IO.h 81014 2008-03-19 11:41:31Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_SOCK_IO_H
-#define ACE_SOCK_IO_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/SOCK.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/ACE.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SOCK_IO
- *
- * @brief Defines the methods for the ACE socket wrapper I/O routines
- * (e.g., send/recv).
- *
- * If @a timeout == 0, then the call behaves as a normal
- * send/recv call, i.e., for blocking sockets, the call will
- * block until action is possible; for non-blocking sockets,
- * -1 will be returned with errno == EWOULDBLOCK if no action is
- * immediately possible.
- * If @a timeout != 0, the call will wait until the relative time
- * specified in *@a timeout elapses.
- * Errors are reported by -1 and 0 return values. If the
- * operation times out, -1 is returned with @c errno == ETIME.
- * If it succeeds the number of bytes transferred is returned.
- * Methods with the extra @a flags argument will always result in
- * @c send getting called. Methods without the extra @a flags
- * argument will result in @c send getting called on Win32
- * platforms, and @c write getting called on non-Win32 platforms.
- */
-class ACE_Export ACE_SOCK_IO : public ACE_SOCK
-{
-public:
- // = Initialization and termination methods.
-
- /// Constructor.
- ACE_SOCK_IO (void);
-
- /// Destructor.
- ~ACE_SOCK_IO (void);
-
- /// Recv an @a n byte buffer from the connected socket.
- ssize_t recv (void *buf,
- size_t n,
- int flags,
- const ACE_Time_Value *timeout = 0) const;
-
- /// Recv an @a n byte buffer from the connected socket.
- ssize_t recv (void *buf,
- size_t n,
- const ACE_Time_Value *timeout = 0) const;
-
- /// Recv an <iovec> of size @a n from the connected socket.
- ssize_t recvv (iovec iov[],
- int n,
- const ACE_Time_Value *timeout = 0) const;
-
- /**
- * Allows a client to read from a socket without having to provide a
- * buffer to read. This method determines how much data is in the
- * socket, allocates a buffer of this size, reads in the data, and
- * returns the number of bytes read. The caller is responsible for
- * deleting the member in the <iov_base> field of @a io_vec using
- * delete [] io_vec->iov_base.
- */
- ssize_t recvv (iovec *io_vec,
- const ACE_Time_Value *timeout = 0) const;
-
- /// Recv @a n varargs messages to the connected socket.
- ssize_t recv (size_t n,
- ...) const;
-
- /// Recv @a n bytes via Win32 @c ReadFile using overlapped I/O.
- ssize_t recv (void *buf,
- size_t n,
- ACE_OVERLAPPED *overlapped) const;
-
- /// Send an @a n byte buffer to the connected socket.
- ssize_t send (const void *buf,
- size_t n,
- int flags,
- const ACE_Time_Value *timeout = 0) const;
-
- /// Send an @a n byte buffer to the connected socket.
- ssize_t send (const void *buf,
- size_t n,
- const ACE_Time_Value *timeout = 0) const;
-
- /// Send an @c iovec of size @a n to the connected socket.
- ssize_t sendv (const iovec iov[],
- int n,
- const ACE_Time_Value *timeout = 0) const;
-
- /// Send @a n varargs messages to the connected socket.
- ssize_t send (size_t n,
- ...) const;
-
- /// Send @a n bytes via Win32 <WriteFile> using overlapped I/O.
- ssize_t send (const void *buf,
- size_t n,
- ACE_OVERLAPPED *overlapped) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SOCK_IO.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SOCK_IO_H */
-
diff --git a/dep/include/ace/SOCK_IO.inl b/dep/include/ace/SOCK_IO.inl
deleted file mode 100644
index 55716921dc5..00000000000
--- a/dep/include/ace/SOCK_IO.inl
+++ /dev/null
@@ -1,123 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SOCK_IO.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_unistd.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Send an n byte message to the connected socket.
-
-ACE_INLINE
-ACE_SOCK_IO::ACE_SOCK_IO (void)
-{
- // ACE_TRACE ("ACE_SOCK_IO::ACE_SOCK_IO");
-}
-
-ACE_INLINE
-ACE_SOCK_IO::~ACE_SOCK_IO (void)
-{
- // ACE_TRACE ("ACE_SOCK_IO::~ACE_SOCK_IO");
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_IO::recv (void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_SOCK_IO::recv");
- return ACE::recv (this->get_handle (),
- buf,
- len,
- flags,
- timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_IO::recv (void *buf,
- size_t len,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_SOCK_IO::recv");
- return ACE::recv (this->get_handle (),
- buf,
- len,
- timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_IO::recvv (iovec iov[],
- int n,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_SOCK_IO::recvv");
- return ACE::recvv (this->get_handle (),
- iov,
- n,
- timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_IO::recv (void *buf,
- size_t n,
- ACE_OVERLAPPED *overlapped) const
-{
- ACE_TRACE ("ACE_SOCK_IO::recv");
- return ACE_OS::read (this->get_handle (),
- (char *) buf,
- n,
- overlapped);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_IO::send (const void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_SOCK_IO::send");
- return ACE::send (this->get_handle (),
- buf,
- len,
- flags,
- timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_IO::send (const void *buf,
- size_t len,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_SOCK_IO::send");
- return ACE::send (this->get_handle (),
- buf,
- len,
- timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_IO::sendv (const iovec iov[],
- int n,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_SOCK_IO::sendv");
- return ACE::sendv (this->get_handle (),
- iov,
- n,
- timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_IO::send (const void *buf,
- size_t n,
- ACE_OVERLAPPED *overlapped) const
-{
- ACE_TRACE ("ACE_SOCK_IO::send");
- return ACE_OS::write (this->get_handle (),
- buf,
- n,
- overlapped);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SOCK_Netlink.h b/dep/include/ace/SOCK_Netlink.h
deleted file mode 100644
index 99d1198fa66..00000000000
--- a/dep/include/ace/SOCK_Netlink.h
+++ /dev/null
@@ -1,107 +0,0 @@
-// $Id: SOCK_Netlink.h 80826 2008-03-04 14:51:23Z wotte $
-//=============================================================================
-/**
- * @file SOCK_Netlink.h
- *
- * $Id: SOCK_Netlink.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Robert Iakobashvilli <coroberti@gmail.com>
- * @author Raz Ben Yehuda <raziebe@013.net.il>
- */
-//=============================================================================
-
-#ifndef ACE_SOCK_NETLINK_H
-#define ACE_SOCK_NETLINK_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
- #pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#ifdef ACE_HAS_NETLINK
-
-#include "ace/SOCK.h"
-#include "ace/Netlink_Addr.h"
-#include "ace/Addr.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SOCK_Netlink
- *
- * @brief Defines the member functions for the ACE_SOCK Netlink
- * abstraction.
-
- * Netlink sockets are used in Linux as a communication facilty of kernel to user
- * and user to kernel.
- * This code was created so one could use ACE reactor
- * as a gateway to a linux kernel.
- *
- */
-class ACE_Export ACE_SOCK_Netlink : public ACE_SOCK {
-public:
- // = Initialization and termination methods.
- /// Default constructor.
- ACE_SOCK_Netlink(void);
- ~ACE_SOCK_Netlink(void);
- ACE_SOCK_Netlink (ACE_Netlink_Addr &local,
- int protocol_family,
- int protocol);
- /**
- * opens a RAW socket over an ACE_SOCK and binds it
- *
- **/
- int open (ACE_Netlink_Addr &local,
- int protocol_family,
- int protocol);
-
- /**
- * receives abuffer with the size n
- */
- ssize_t recv (void *buf,
- size_t n,
- int flags) const;
- /**
- * send a buffer of size n bytes
- *
- */
- ssize_t send (void *buf,
- size_t n,
- int flags) const;
-
- /**
- * Recieves an iovec of size @a n to the netlink socket
- */
- ssize_t recv (iovec iov[],
- int n,
- ACE_Addr &addr,
- int flags = 0) const;
-
- /**
- * Sends an iovec of size @a n to the netlink socket
- */
- ssize_t send (const iovec iov[],
- int n,
- const ACE_Addr &addr,
- int flags = 0) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SOCK_Netlink.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_NETLINK */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SOCK_NETLINK_H */
-
-
diff --git a/dep/include/ace/SOCK_Netlink.inl b/dep/include/ace/SOCK_Netlink.inl
deleted file mode 100644
index 0a0504ce16c..00000000000
--- a/dep/include/ace/SOCK_Netlink.inl
+++ /dev/null
@@ -1,37 +0,0 @@
-// $Id: SOCK_Netlink.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#ifdef ACE_HAS_NETLINK
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_SOCK_Netlink::ACE_SOCK_Netlink (void)
-{
- ACE_TRACE ("ACE_SOCK_Netlink::ACE_SOCK_Netlink");
-}
-
-ACE_INLINE
-ACE_SOCK_Netlink::~ACE_SOCK_Netlink (void)
-{
- ACE_TRACE ("ACE_SOCK_Netlink::~ACE_SOCK_Netlink");
-}
-
-ACE_INLINE ssize_t ACE_SOCK_Netlink::recv ( void *buf,
- size_t n,
- int flags) const
-{
- ACE_TRACE ("ACE_SOCK_Netlink::recv");
- return ACE_OS::recv (this->get_handle (),(char *) buf,n,flags);
-}
-
-ACE_INLINE ssize_t ACE_SOCK_Netlink::send (void *buf,
- size_t n,
- int flags) const
-{
- ACE_TRACE ("ACE_SOCK_Netlink::send");
- return ACE_OS::send (this->get_handle (),(char *) buf,n,flags);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_NETLINK */
diff --git a/dep/include/ace/SOCK_SEQPACK_Acceptor.h b/dep/include/ace/SOCK_SEQPACK_Acceptor.h
deleted file mode 100644
index 526b374f3fd..00000000000
--- a/dep/include/ace/SOCK_SEQPACK_Acceptor.h
+++ /dev/null
@@ -1,189 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SOCK_SEQPACK_Acceptor.h
- *
- * $Id: SOCK_SEQPACK_Acceptor.h 80826 2008-03-04 14:51:23Z wotte $
- * @author Patrick J. Lardieri <plardier@atl.lmco.com>
- * @author Gaurav Naik, Lockheed Martin ATL
- * @author based on SOCK_STREAM_Acceptor
- * by Douglas C. Schmidt <schmidt@cs.wustl.edu>
- *
- */
-//=============================================================================
-
-#ifndef ACE_SOCK_SEQ_ACCEPTOR_H
-#define ACE_SOCK_SEQ_ACCEPTOR_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SOCK_SEQPACK_Association.h"
-#include "ace/Multihomed_INET_Addr.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-/**
- * @class ACE_SOCK_SEQPACK_Acceptor
- *
- * @brief Defines a factory that creates new ACE_Associations passively.
- *
- * The <ACE_SOCK_SEQPACK_Acceptor> has its own "passive-mode" socket.
- * This serves as a factory to create so-called "data-mode"
- * sockets, which are what the ACE_SOCK_SEQPACK_Association encapsulates.
- * Therefore, by inheriting from <ACE_SOCK>, <ACE_SOCK_SEQPACK_Acceptor>
- * gets its very own socket.
- */
-class ACE_Export ACE_SOCK_SEQPACK_Acceptor : public ACE_SOCK
-{
-public:
- // = Initialization and termination methods.
- /// Default constructor.
- ACE_SOCK_SEQPACK_Acceptor (void);
-
- /**
- * Initialize a passive-mode BSD-style acceptor socket (no QoS).
- * @a local_sap is the address that we're going to listen for
- * connections on. If @a reuse_addr is 1 then we'll use the
- * @c SO_REUSEADDR to reuse this address.
- */
- ACE_SOCK_SEQPACK_Acceptor (const ACE_Addr &local_sap,
- int reuse_addr = 0,
- int protocol_family = PF_UNSPEC,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 132);
-
- /// Multihomed version of same
-
- ACE_SOCK_SEQPACK_Acceptor (const ACE_Multihomed_INET_Addr &local_sap,
- int reuse_addr = 0,
- int protocol_family = PF_UNSPEC,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 132);
-
- /// Initialize a passive-mode QoS-enabled acceptor socket. Returns 0
- /// on success and -1 on failure.
- ACE_SOCK_SEQPACK_Acceptor (const ACE_Addr &local_sap,
- ACE_Protocol_Info *protocolinfo,
- ACE_SOCK_GROUP g,
- u_long flags,
- int reuse_addr,
- int protocol_family = PF_UNSPEC,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 132);
-
- /**
- * Initialize a passive-mode BSD-style acceptor socket (no QoS).
- * @a local_sap is the address that we're going to listen for
- * connections on. If @a reuse_addr is 1 then we'll use the
- * @c SO_REUSEADDR to reuse this address. Returns 0 on success and
- * -1 on failure.
- */
- int open (const ACE_Addr &local_sap,
- int reuse_addr = 0,
- int protocol_family = PF_UNSPEC,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 132);
-
- /// Multihomed version of same
-
- int open (const ACE_Multihomed_INET_Addr &local_sap,
- int reuse_addr = 0,
- int protocol_family = PF_UNSPEC,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 132);
-
- /// Initialize a passive-mode QoS-enabled acceptor socket. Returns 0
- /// on success and -1 on failure.
- int open (const ACE_Addr &local_sap,
- ACE_Protocol_Info *protocolinfo,
- ACE_SOCK_GROUP g,
- u_long flags,
- int reuse_addr,
- int protocol_family = PF_UNSPEC,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 132);
-
- /// Close the socket. Returns 0 on success and -1 on failure.
- int close (void);
-
- /// Default dtor.
- ~ACE_SOCK_SEQPACK_Acceptor (void);
-
- // = Passive connection <accept> methods.
- /**
- * Accept a new ACE_SOCK_SEQPACK_Association connection. A @a timeout of 0
- * means block forever, a @a timeout of {0, 0} means poll. <restart>
- * == 1 means "restart if interrupted," i.e., if errno == EINTR.
- * Note that <new_association> inherits the "blocking mode" of @c this
- * <ACE_SOCK_SEQPACK_Acceptor>, i.e., if @c this acceptor factory is in
- * non-blocking mode, the <net_association> will be in non-blocking mode
- * and vice versa.
- */
- int accept (ACE_SOCK_SEQPACK_Association &new_association,
- ACE_Addr *remote_addr = 0,
- ACE_Time_Value *timeout = 0,
- int restart = 1,
- int reset_new_handle = 0) const;
-
- // = Meta-type info
- typedef ACE_Multihomed_INET_Addr PEER_ADDR;
- typedef ACE_SOCK_SEQPACK_Association PEER_STREAM;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Perform operations that must occur before <ACE_OS::accept> is
- /// called.
- int shared_accept_start (ACE_Time_Value *timeout,
- int restart,
- int &in_blocking_mode) const;
-
- /// Perform operations that must occur after <ACE_OS::accept> is
- /// called.
- int shared_accept_finish (ACE_SOCK_SEQPACK_Association new_association,
- int in_blocking_mode,
- int reset_new_handle) const;
-
- /**
- * This method factors out the common <open> code and is called by
- * both the QoS-enabled <open> method and the BSD-style <open>
- * method.
- */
- int shared_open (const ACE_Addr &local_sap,
- int protocol_family,
- int backlog);
-
- /// Multihomed version of same.
-
- int shared_open (const ACE_Multihomed_INET_Addr &local_sap,
- int protocol_family,
- int backlog);
-
-private:
- /// Do not allow this function to percolate up to this interface...
- int get_remote_addr (ACE_Addr &) const;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SOCK_SEQPACK_Acceptor.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SOCK_SEQ_ACCEPTOR_H */
-
diff --git a/dep/include/ace/SOCK_SEQPACK_Acceptor.inl b/dep/include/ace/SOCK_SEQPACK_Acceptor.inl
deleted file mode 100644
index 00bfe399df3..00000000000
--- a/dep/include/ace/SOCK_SEQPACK_Acceptor.inl
+++ /dev/null
@@ -1,13 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SOCK_SEQPACK_Acceptor.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_SOCK_SEQPACK_Acceptor::~ACE_SOCK_SEQPACK_Acceptor (void)
-{
- ACE_TRACE ("ACE_SOCK_SEQPACK_Acceptor::~ACE_SOCK_SEQPACK_Acceptor");
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SOCK_SEQPACK_Association.h b/dep/include/ace/SOCK_SEQPACK_Association.h
deleted file mode 100644
index 76cb3527a13..00000000000
--- a/dep/include/ace/SOCK_SEQPACK_Association.h
+++ /dev/null
@@ -1,203 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- *
- * @file SOCK_SEQPACK_Association.h
- *
- * $Id: SOCK_SEQPACK_Association.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Patrick J. Lardieri <plardier@atl.lmco.com>
- * @author Gaurav Naik, Lockheed Martin ATL
- * @author based on SOCK_Stream
- * by Douglas C. Schmidt <schmidt@cs.wustl.edu>
- *
- */
-//=============================================================================
-
-#ifndef ACE_SOCK_SEQPACK_ASSOCIATION_H
-#define ACE_SOCK_SEQPACK_ASSOCIATION_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SOCK_IO.h"
-#include "ace/Multihomed_INET_Addr.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declarations.
-class ACE_Message_Block;
-
-/**
- * @class ACE_SOCK_SEQPACK_Association
- *
- * @brief Defines the methods in the ACE_SOCK_SEQPACK_Association abstraction.
- *
- * This adds additional wrapper methods atop the <ACE_SOCK_IO>
- * class.
- *
- * @a buf is the buffer to write from or receive into.
- * @a len is the number of bytes to transfer.
- * The @a timeout parameter in the following methods indicates how
- * long to blocking trying to transfer data. If @a timeout == 0,
- * then the call behaves as a normal send/recv call, i.e., for
- * blocking sockets, the call will block until action is possible;
- * for non-blocking sockets, EWOULDBLOCK will be returned if no
- * action is immediately possible.
- * If @a timeout != 0, the call will wait for data to arrive no longer
- * than the relative time specified in *@a timeout.
- * The "_n()" I/O methods keep looping until all the data has been
- * transferred. These methods also work for sockets in non-blocking
- * mode i.e., they keep looping on EWOULDBLOCK. @a timeout is used
- * to make sure we keep making progress, i.e., the same timeout
- * value is used for every I/O operation in the loop and the timeout
- * is not counted down.
- * The return values for the "*_n()" methods match the return values
- * from the non "_n()" methods and are specified as follows:
- * - On complete transfer, the number of bytes transferred is returned.
- * - On timeout, -1 is returned, errno == ETIME.
- * - On error, -1 is returned, errno is set to appropriate error.
- * - On EOF, 0 is returned, errno is irrelevant.
- *
- * On partial transfers, i.e., if any data is transferred before
- * timeout/error/EOF, <bytes_transferred> will contain the number of
- * bytes transferred.
- * Methods with <iovec> parameter are I/O vector variants of the I/O
- * operations.
- * Methods with the extra @a flags argument will always result in
- * <send> getting called. Methods without the extra @a flags argument
- * will result in <send> getting called on Win32 platforms, and
- * <write> getting called on non-Win32 platforms.
- */
-class ACE_Export ACE_SOCK_SEQPACK_Association : public ACE_SOCK_IO
-{
-public:
- // Initialization and termination methods.
- /// Constructor.
- ACE_SOCK_SEQPACK_Association (void);
-
- /// Constructor (sets the underlying ACE_HANDLE with <h>).
- ACE_SOCK_SEQPACK_Association (ACE_HANDLE h);
-
- /// Destructor.
- ~ACE_SOCK_SEQPACK_Association (void);
-
- /**
- * Return local endpoint addresses in the referenced array of
- * ACE_INET_Addr, which should have the specified @a size. If the
- * number of local endpoint addresses is less than @a size, then
- * @a size will be set to this number. If successful, the method
- * returns 0, otherwise returns -1.
- */
- int get_local_addrs (ACE_INET_Addr *addrs, size_t &size) const;
-
- /**
- * Return remote endpoint addresses in the referenced array of
- * ACE_INET_Addr, which should have the specified @a size. If the
- * number of remote endpoint addresses is less than @a size, then
- * @a size will be set to this number. If successful, the method
- * returns 0, otherwise returns -1.
- */
- int get_remote_addrs (ACE_INET_Addr *addrs, size_t &size) const;
-
- // = I/O functions.
-
- /// Try to recv exactly @a len bytes into @a buf from the connected socket.
- ssize_t recv_n (void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
- /// Try to recv exactly @a len bytes into @a buf from the connected socket.
- ssize_t recv_n (void *buf,
- size_t len,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
- /// Receive an <iovec> of size <iovcnt> from the connected socket.
- ssize_t recvv_n (iovec iov[],
- int iovcnt,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
- /// Try to send exactly @a len bytes from @a buf to the connection socket.
- ssize_t send_n (const void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
- /// Try to send exactly @a len bytes from @a buf to the connected socket.
- ssize_t send_n (const void *buf,
- size_t len,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
- /// Send all the @a message_blocks chained through their <next> and
- /// <cont> pointers. This call uses the underlying OS gather-write
- /// operation to reduce the domain-crossing penalty.
- ssize_t send_n (const ACE_Message_Block *message_block,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
- /// Send an <iovec> of size <iovcnt> to the connected socket.
- ssize_t sendv_n (const iovec iov[],
- int iovcnt,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
- // = Send/receive ``urgent'' data (see TCP specs...).
- ssize_t send_urg (const void *ptr,
- size_t len = sizeof (char),
- const ACE_Time_Value *timeout = 0) const;
-
- ssize_t recv_urg (void *ptr,
- size_t len = sizeof (char),
- const ACE_Time_Value *timeout = 0) const;
-
- // = Selectively close endpoints.
- /// Close down the reader.
- int close_reader (void);
-
- /// Close down the writer.
- int close_writer (void);
-
- /**
- * Close down the socket (we need this to make things work correctly
- * on Win32, which requires use to do a <close_writer> before doing
- * the close to avoid losing data). */
- int close (void);
-
- /**
- * Abort the association according to RFC 2960 9.1 through the API
- * in draft-ietf-tsvwg-sctpsocket-09 7.1.4.
- */
- int abort (void);
-
- // = Meta-type info
- typedef ACE_Multihomed_INET_Addr PEER_ADDR;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SOCK_SEQPACK_Association.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SOCK_SEQPACK_ASSOCIATION_H */
-
diff --git a/dep/include/ace/SOCK_SEQPACK_Association.inl b/dep/include/ace/SOCK_SEQPACK_Association.inl
deleted file mode 100644
index 2aed02d0282..00000000000
--- a/dep/include/ace/SOCK_SEQPACK_Association.inl
+++ /dev/null
@@ -1,177 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SOCK_SEQPACK_Association.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/SOCK_SEQPACK_Association.h"
-#include "ace/OS_NS_sys_socket.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_SOCK_SEQPACK_Association::ACE_SOCK_SEQPACK_Association (void)
-{
- // ACE_TRACE ("ACE_SOCK_SEQPACK_Association::ACE_SOCK_SEQPACK_Association");
-}
-
-ACE_INLINE
-ACE_SOCK_SEQPACK_Association::ACE_SOCK_SEQPACK_Association (ACE_HANDLE h)
-{
- // ACE_TRACE ("ACE_SOCK_SEQPACK_Association::ACE_SOCK_SEQPACK_Association");
- this->set_handle (h);
-}
-
-ACE_INLINE
-ACE_SOCK_SEQPACK_Association::~ACE_SOCK_SEQPACK_Association (void)
-{
- // ACE_TRACE ("ACE_SOCK_SEQPACK_Association::~ACE_SOCK_SEQPACK_Association");
-}
-
-ACE_INLINE int
-ACE_SOCK_SEQPACK_Association::close_reader (void)
-{
- ACE_TRACE ("ACE_SOCK_SEQPACK_Association::close_reader");
- if (this->get_handle () != ACE_INVALID_HANDLE)
- return ACE_OS::shutdown (this->get_handle (), ACE_SHUTDOWN_READ);
- else
- return 0;
-}
-
-// Shut down just the writing end of a ACE_SOCK.
-
-ACE_INLINE int
-ACE_SOCK_SEQPACK_Association::close_writer (void)
-{
- ACE_TRACE ("ACE_SOCK_SEQPACK_Association::close_writer");
- if (this->get_handle () != ACE_INVALID_HANDLE)
- return ACE_OS::shutdown (this->get_handle (), ACE_SHUTDOWN_WRITE);
- else
- return 0;
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_SEQPACK_Association::recv_n (void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred) const
-{
- ACE_TRACE ("ACE_SOCK_SEQPACK_Association::recv_n");
- return ACE::recv_n (this->get_handle (),
- buf,
- len,
- flags,
- timeout,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_SEQPACK_Association::recv_n (void *buf,
- size_t len,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred) const
-{
- ACE_TRACE ("ACE_SOCK_SEQPACK_Association::recv_n");
- return ACE::recv_n (this->get_handle (),
- buf,
- len,
- timeout,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_SEQPACK_Association::recvv_n (iovec iov[],
- int n,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred) const
-{
- ACE_TRACE ("ACE_SOCK_SEQPACK_Association::recvv_n");
- return ACE::recvv_n (this->get_handle (),
- iov,
- n,
- timeout,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_SEQPACK_Association::send_n (const void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred) const
-{
- ACE_TRACE ("ACE_SOCK_SEQPACK_Association::send_n");
- return ACE::send_n (this->get_handle (),
- buf,
- len,
- flags,
- timeout,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_SEQPACK_Association::send_n (const void *buf,
- size_t len,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred) const
-{
- ACE_TRACE ("ACE_SOCK_SEQPACK_Association::send_n");
- return ACE::send_n (this->get_handle (),
- buf,
- len,
- timeout,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_SEQPACK_Association::sendv_n (const iovec iov[],
- int n,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred) const
-{
- ACE_TRACE ("ACE_SOCK_SEQPACK_Association::sendv_n");
- return ACE::sendv_n (this->get_handle (),
- iov,
- n,
- timeout,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_SEQPACK_Association::send_n (const ACE_Message_Block *message_block,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred) const
-{
- ACE_TRACE ("ACE_SOCK_SEQPACK_Association::send_n");
- return ACE::send_n (this->get_handle (),
- message_block,
- timeout,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_SEQPACK_Association::send_urg (const void *ptr,
- size_t len,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_SOCK_SEQPACK_Association::send_urg");
- return ACE::send (this->get_handle (),
- ptr,
- len,
- MSG_OOB,
- timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_SEQPACK_Association::recv_urg (void *ptr,
- size_t len,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_SOCK_SEQPACK_Association::recv_urg");
- return ACE::recv (this->get_handle (),
- ptr,
- len,
- MSG_OOB,
- timeout);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SOCK_SEQPACK_Connector.h b/dep/include/ace/SOCK_SEQPACK_Connector.h
deleted file mode 100644
index 400161660e0..00000000000
--- a/dep/include/ace/SOCK_SEQPACK_Connector.h
+++ /dev/null
@@ -1,332 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SOCK_SEQPACK_Connector.h
- *
- * $Id: SOCK_SEQPACK_Connector.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Patrick J. Lardieri <plardier@atl.lmco.com>
- * @author Gaurav Naik, Lockheed Martin ATL
- * @author based on SOCK_STREAM_Connector
- * by Douglas C. Schmidt <schmidt@dre.vanderbilt.edu>
- *
- */
-//=============================================================================
-
-#ifndef ACE_SOCK_SEQPACK_CONNECTOR_H
-#define ACE_SOCK_SEQPACK_CONNECTOR_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#include "ace/SOCK_SEQPACK_Association.h"
-#include "ace/Multihomed_INET_Addr.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declarations.
-class ACE_Time_Value;
-
-/**
- * @class ACE_SOCK_SEQPACK_Connector
- *
- * @brief Defines a factory that actively connects to a remote IP
- * address and TCP port, creating a new @c ACE_SOCK_SEQPACK_Association object.
- *
- * The @c ACE_SOCK_SEQPACK_Connector doesn't have a socket of its own,
- * i.e., it simply "borrows" the one from the @c ACE_SOCK_SEQPACK_Association
- * that's being connected. The reason for this is that the
- * underlying socket API doesn't use a factory socket to connect
- * data mode sockets. Therefore, there's no need to inherit
- * @c ACE_SOCK_SEQPACK_Connector from @c ACE_SOCK. A nice side-effect of
- * this is that @c ACE_SOCK_SEQPACK_Connector objects do not store state so
- * they can be used reentrantly in multithreaded programs.
- */
-class ACE_Export ACE_SOCK_SEQPACK_Connector
-{
-public:
- // = Initialization and termination methods.
- /// Default constructor.
- ACE_SOCK_SEQPACK_Connector (void);
-
- /**
- * Actively connect to a peer, producing a connected @c ACE_SOCK_SEQPACK_Association
- * object if the connection succeeds.
- *
- * @param new_association The @c ACE_SOCK_SEQPACK_Association object that will be connected
- * to the peer.
- * @param remote_sap The address that we are trying to connect to.
- * The protocol family of @c remote_sap is used for
- * the connected socket. That is, if @c remote_sap
- * contains an IPv6 address, a socket with family
- * PF_INET6 will be used, else it will be PF_INET.
- * @param timeout Pointer to an @c ACE_Time_Value object with amount
- * of time to wait to connect. If the pointer is 0
- * then the call blocks until the connection attempt
- * is complete, whether it succeeds or fails. If
- * *timeout == {0, 0} then the connection is done
- * using nonblocking mode. In this case, if the
- * connection can't be made immediately, this method
- * returns -1 and errno == EWOULDBLOCK.
- * If *timeout > {0, 0} then this is the maximum amount
- * of time to wait before timing out; if the specified
- * amount of time passes before the connection is made,
- * this method returns -1 and errno == ETIME. Note
- * the difference between this case and when a blocking
- * connect is attmpted that TCP times out - in the latter
- * case, errno will be ETIMEDOUT.
- * @param local_sap (optional) The local address to bind to. If it's
- * the default value of @c ACE_Addr::sap_any then the
- * OS will choose an unused port.
- * @param reuse_addr (optional) If the value is 1, the local address
- * (@c local_sap) is reused, even if it hasn't been
- * cleaned up yet.
- * @param flags Ignored.
- * @param perms Ignored.
- * @param protocol (optional) If value is 0, default SOCK_STREAM
- * protocol is selected by kernel (typically TCP).
- *
- * @return Returns 0 if the connection succeeds. If it fails,
- * -1 is returned and errno contains a specific error
- * code.
- */
- ACE_SOCK_SEQPACK_Connector (ACE_SOCK_SEQPACK_Association &new_association,
- const ACE_Addr &remote_sap,
- const ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = 0,
- int perms = 0,
- int protocol = 132);
-
- /**
- * Actively connect to a peer, producing a connected @c ACE_SOCK_SEQPACK_Association
- * object if the connection succeeds.
- *
- * @param new_association The @c ACE_SOCK_SEQPACK_Association object that will be connected
- * to the peer.
- * @param remote_sap The address that we are trying to connect to.
- * The protocol family of @c remote_sap is used for
- * the connected socket. That is, if @c remote_sap
- * contains an IPv6 address, a socket with family
- * PF_INET6 will be used, else it will be PF_INET.
- * @param timeout Pointer to an @c ACE_Time_Value object with amount
- * of time to wait to connect. If the pointer is 0
- * then the call blocks until the connection attempt
- * is complete, whether it succeeds or fails. If
- * *timeout == {0, 0} then the connection is done
- * using nonblocking mode. In this case, if the
- * connection can't be made immediately, this method
- * returns -1 and errno == EWOULDBLOCK.
- * If *timeout > {0, 0} then this is the maximum amount
- * of time to wait before timing out; if the specified
- * amount of time passes before the connection is made,
- * this method returns -1 and errno == ETIME. Note
- * the difference between this case and when a blocking
- * connect is attmpted that TCP times out - in the latter
- * case, errno will be ETIMEDOUT.
- * @param local_sap (optional) The set of local addresses for SCTP to
- * bind to.
- * @param reuse_addr (optional) If the value is 1, the local address
- * (@c local_sap) is reused, even if it hasn't been
- * cleaned up yet.
- * @param flags Ignored.
- * @param perms Ignored.
- * @param protocol (optional) If value is 0, default SOCK_STREAM
- * protocol is selected by kernel (typically TCP).
- *
- * @return Returns 0 if the connection succeeds. If it fails,
- * -1 is returned and errno contains a specific error
- * code.
- */
- ACE_SOCK_SEQPACK_Connector (ACE_SOCK_SEQPACK_Association &new_association,
- const ACE_Addr &remote_sap,
- const ACE_Time_Value *timeout,
- const ACE_Multihomed_INET_Addr &local_sap,
- int reuse_addr = 0,
- int flags = 0,
- int perms = 0,
- int protocol = 132);
-
- /**
- * Actively connect to a peer, producing a connected @c ACE_SOCK_SEQPACK_Association
- * object if the connection succeeds.
- *
- * @param new_association The @c ACE_SOCK_SEQPACK_Association object that will be connected
- * to the peer.
- * @param remote_sap The address that we are trying to connect to.
- * The protocol family of @c remote_sap is used for
- * the connected socket. That is, if @c remote_sap
- * contains an IPv6 address, a socket with family
- * PF_INET6 will be used, else it will be PF_INET.
- * @param timeout Pointer to an @c ACE_Time_Value object with amount
- * of time to wait to connect. If the pointer is 0
- * then the call blocks until the connection attempt
- * is complete, whether it succeeds or fails. If
- * *timeout == {0, 0} then the connection is done
- * using nonblocking mode. In this case, if the
- * connection can't be made immediately, this method
- * returns -1 and errno == EWOULDBLOCK.
- * If *timeout > {0, 0} then this is the maximum amount
- * of time to wait before timing out; if the specified
- * amount of time passes before the connection is made,
- * this method returns -1 and errno == ETIME. Note
- * the difference between this case and when a blocking
- * connect is attmpted that TCP times out - in the latter
- * case, errno will be ETIMEDOUT.
- * @param local_sap (optional) The local address to bind to. If it's
- * the default value of @c ACE_Addr::sap_any then the
- * OS will choose an unused port.
- * @param reuse_addr (optional) If the value is 1, the local address
- * (@c local_sap) is reused, even if it hasn't been
- * cleaned up yet.
- * @param flags Ignored.
- * @param perms Ignored.
- * @param protocol (optional) If value is 0, default SOCK_STREAM
- * protocol is selected by kernel (typically TCP).
- *
- * @return Returns 0 if the connection succeeds. If it fails,
- * -1 is returned and errno contains a specific error
- * code.
- */
- int connect (ACE_SOCK_SEQPACK_Association &new_association,
- const ACE_Addr &remote_sap,
- const ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = 0,
- int perms = 0,
- int protocol = 132);
-
- /**
- * Actively connect to a peer, producing a connected @c ACE_SOCK_SEQPACK_Association
- * object if the connection succeeds.
- *
- * @param new_association The @c ACE_SOCK_SEQPACK_Association object that will be connected
- * to the peer.
- * @param remote_sap The address that we are trying to connect to.
- * The protocol family of @c remote_sap is used for
- * the connected socket. That is, if @c remote_sap
- * contains an IPv6 address, a socket with family
- * PF_INET6 will be used, else it will be PF_INET.
- * @param timeout Pointer to an @c ACE_Time_Value object with amount
- * of time to wait to connect. If the pointer is 0
- * then the call blocks until the connection attempt
- * is complete, whether it succeeds or fails. If
- * *timeout == {0, 0} then the connection is done
- * using nonblocking mode. In this case, if the
- * connection can't be made immediately, this method
- * returns -1 and errno == EWOULDBLOCK.
- * If *timeout > {0, 0} then this is the maximum amount
- * of time to wait before timing out; if the specified
- * amount of time passes before the connection is made,
- * this method returns -1 and errno == ETIME. Note
- * the difference between this case and when a blocking
- * connect is attmpted that TCP times out - in the latter
- * case, errno will be ETIMEDOUT.
- * @param local_sap (optional) The set of local addresses for SCTP to
- * bind to.
- * @param reuse_addr (optional) If the value is 1, the local address
- * (@c local_sap) is reused, even if it hasn't been
- * cleaned up yet.
- * @param flags Ignored.
- * @param perms Ignored.
- * @param protocol (optional) If value is 0, default SOCK_STREAM
- * protocol is selected by kernel (typically TCP).
- *
- * @return Returns 0 if the connection succeeds. If it fails,
- * -1 is returned and errno contains a specific error
- * code.
- */
-
- int connect (ACE_SOCK_SEQPACK_Association &new_association,
- const ACE_Addr &remote_sap,
- const ACE_Time_Value *timeout,
- const ACE_Multihomed_INET_Addr &local_sap,
- int reuse_addr = 0,
- int flags = 0,
- int perms = 0,
- int protocol = 132);
-
- /// Default dtor.
- ~ACE_SOCK_SEQPACK_Connector (void);
-
- // = Completion routine.
- /**
- * Try to complete a nonblocking connection that was begun by a
- * previous call to connect with a {0, 0} ACE_Time_Value timeout.
- * @see connect().
- *
- * @param new_association The @c ACE_SOCK_SEQPACK_Association object that will be connected
- * to the peer.
- * @param remote_sap If non-0, it points to the @c ACE_INET_Addr object
- * that will contain the address of the connected peer.
- * @param timeout Same values and return value possibilites as for
- * connect(). @see connect().
- */
- int complete (ACE_SOCK_SEQPACK_Association &new_association,
- ACE_Addr *remote_sap = 0,
- const ACE_Time_Value *timeout = 0);
-
- /// Resets any event associations on this handle
- int reset_new_handle (ACE_HANDLE handle);
-
- // = Meta-type info
- typedef ACE_Multihomed_INET_Addr PEER_ADDR;
- typedef ACE_SOCK_SEQPACK_Association PEER_STREAM;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Perform operations that ensure the socket is opened using
- /// BSD-style semantics (no QoS).
- int shared_open (ACE_SOCK_SEQPACK_Association &new_association,
- int protocol_family,
- int protocol,
- int reuse_addr);
-
- /// Perform operations that ensure the socket is opened using
- /// QoS-enabled semantics.
- int shared_open (ACE_SOCK_SEQPACK_Association &new_association,
- int protocol_family,
- int protocol,
- ACE_Protocol_Info *protocolinfo,
- ACE_SOCK_GROUP g,
- u_long flags,
- int reuse_addr);
-
- /// Perform operations that must be called before <ACE_OS::connect>.
- int shared_connect_start (ACE_SOCK_SEQPACK_Association &new_association,
- const ACE_Time_Value *timeout,
- const ACE_Addr &local_sap);
-
- int shared_connect_start (ACE_SOCK_SEQPACK_Association &new_association,
- const ACE_Time_Value *timeout,
- const ACE_Multihomed_INET_Addr &local_sap);
-
- /// Perform operations that must be called after <ACE_OS::connect>.
- int shared_connect_finish (ACE_SOCK_SEQPACK_Association &new_association,
- const ACE_Time_Value *timeout,
- int result);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SOCK_SEQPACK_Connector.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SOCK_SEQPACK_CONNECTOR_H */
-
diff --git a/dep/include/ace/SOCK_SEQPACK_Connector.inl b/dep/include/ace/SOCK_SEQPACK_Connector.inl
deleted file mode 100644
index d11a69d31af..00000000000
--- a/dep/include/ace/SOCK_SEQPACK_Connector.inl
+++ /dev/null
@@ -1,38 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SOCK_SEQPACK_Connector.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// This constructor is used by a client when it wants to connect to
-// the specified REMOTE_SAP address using a blocking open.
-
-ACE_INLINE
-ACE_SOCK_SEQPACK_Connector::~ACE_SOCK_SEQPACK_Connector (void)
-{
- ACE_TRACE ("ACE_SOCK_SEQPACK_Connector::~ACE_SOCK_SEQPACK_Connector");
-}
-
-// Do-nothing constructor...
-
-ACE_INLINE
-ACE_SOCK_SEQPACK_Connector::ACE_SOCK_SEQPACK_Connector (void)
-{
- ACE_TRACE ("ACE_SOCK_SEQPACK_Connector::ACE_SOCK_SEQPACK_Connector");
-}
-
-ACE_INLINE int
-ACE_SOCK_SEQPACK_Connector::reset_new_handle (ACE_HANDLE handle)
-{
-#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
- // Reset the event association
- return ::WSAEventSelect ((SOCKET) handle,
- 0,
- 0);
-#else /* !defined ACE_HAS_WINSOCK2 */
- ACE_UNUSED_ARG (handle);
- return 0;
-#endif /* ACE_WIN32 */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SOCK_Stream.h b/dep/include/ace/SOCK_Stream.h
deleted file mode 100644
index d717d4f3eab..00000000000
--- a/dep/include/ace/SOCK_Stream.h
+++ /dev/null
@@ -1,185 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SOCK_Stream.h
- *
- * $Id: SOCK_Stream.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SOCK_STREAM_H
-#define ACE_SOCK_STREAM_H
-#include /**/ "ace/pre.h"
-
-#include "ace/SOCK_IO.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/INET_Addr.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declarations.
-class ACE_Message_Block;
-
-/**
- * @class ACE_SOCK_Stream
- *
- * @brief Defines the methods in the ACE_SOCK_Stream abstraction.
- *
- * This adds additional wrapper methods atop the ACE_SOCK_IO
- * class.
- *
- * @sa ACE_SOCK_IO
- */
-class ACE_Export ACE_SOCK_Stream : public ACE_SOCK_IO
-{
-public:
- // Initialization and termination methods.
- /// Constructor.
- ACE_SOCK_Stream (void);
-
- /// Constructor (sets the underlying ACE_HANDLE with @a h).
- ACE_SOCK_Stream (ACE_HANDLE h);
-
- /// Destructor.
- ~ACE_SOCK_Stream (void);
-
- /** @name Counted send/receive methods
- *
- * The counted send/receive methods attempt to transfer a specified number
- * of bytes even if they must block and retry the operation in order to
- * transfer the entire amount. The time spent blocking for the entire
- * transfer can be limited by a specified ACE_Time_Value object which is
- * a relative time (i.e., a fixed amount of time, not an absolute time
- * of day). These methods return the count of transferred bytes, or -1
- * if an error occurs or the operation times out before the entire requested
- * amount of data has been transferred. In error or timeout situations it's
- * possible that some data was transferred before the error
- * or timeout. The @c bytes_transferred parameter is used to obtain the
- * count of bytes transferred before the error or timeout occurred. If the
- * total specified number of bytes is transferred without error, the
- * method return value should equal the value of @c bytes_transferred.
- *
- * @param buf The buffer to write from or receive into.
- * @param iov An I/O vector containing a specified number of
- * count/pointer pairs directing the data to be transferred.
- * @param iovcnt The number of I/O vectors to be used from @a iov.
- * @param len The number of bytes to transfer.
- * @param flags Flags that will be passed through to the @c recv()
- * system call.
- * @param timeout Indicates how long to blocking trying to transfer data.
- * If no timeout is supplied (timeout == 0) the method will
- * wait indefinitely or until an error occurs for the
- * specified number of bytes to be transferred.
- * To avoid any waiting, specify a timeout value with
- * 0 seconds.
- * @param bytes_transferred If non-0, points to a location which receives
- * the total number of bytes transferred before the method
- * returns, even if it's less than the number requested.
- *
- * @retval len, the complete number of bytes transferred.
- * @retval 0 EOF, i.e., the peer closed the connection.
- * @retval -1 an error occurred before the entire amount was
- * transferred. Check @c errno for more information.
- * If the @a timeout period is reached, errno is ETIME.
- *
- * On partial transfers, i.e., if any data is transferred before
- * timeout/error/EOF, *@a bytes_transferred will contain the number of
- * bytes transferred.
- */
- //@{
- /// Try to recv exactly @a len bytes into @a buf from the connected socket.
- ssize_t recv_n (void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
- /// Try to recv exactly @a len bytes into @a buf from the connected socket.
- ssize_t recv_n (void *buf,
- size_t len,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
- /// Receive an @c iovec of size @a iovcnt from the connected socket.
- ssize_t recvv_n (iovec iov[],
- int iovcnt,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
- /// Try to send exactly @a len bytes from @a buf to the connection socket.
- ssize_t send_n (const void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
- /// Try to send exactly @a len bytes from @a buf to the connected socket.
- ssize_t send_n (const void *buf,
- size_t len,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
- /// Send all the message blocks chained through their @c next and
- /// @c cont pointers. This call uses the underlying OS gather-write
- /// operation to reduce the domain-crossing penalty.
- ssize_t send_n (const ACE_Message_Block *message_block,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
- /// Send an @c iovec of size @a iovcnt to the connected socket.
- ssize_t sendv_n (const iovec iov[],
- int iovcnt,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
- //@}
-
- // = Send/receive ``urgent'' data (see TCP specs...).
- ssize_t send_urg (const void *ptr,
- size_t len = sizeof (char),
- const ACE_Time_Value *timeout = 0) const;
-
- ssize_t recv_urg (void *ptr,
- size_t len = sizeof (char),
- const ACE_Time_Value *timeout = 0) const;
-
- // = Selectively close endpoints.
- /// Close down the reader.
- int close_reader (void);
-
- /// Close down the writer.
- int close_writer (void);
-
- /**
- * Close down the socket (we need this to make things work correctly
- * on Win32, which requires use to do a close_writer() before doing
- * the close to avoid losing data).
- */
- int close (void);
-
- // = Meta-type info
- typedef ACE_INET_Addr PEER_ADDR;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SOCK_Stream.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SOCK_STREAM_H */
-
diff --git a/dep/include/ace/SOCK_Stream.inl b/dep/include/ace/SOCK_Stream.inl
deleted file mode 100644
index cbe6cd3d9ce..00000000000
--- a/dep/include/ace/SOCK_Stream.inl
+++ /dev/null
@@ -1,177 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SOCK_Stream.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/SOCK_Stream.h"
-#include "ace/OS_NS_sys_socket.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_SOCK_Stream::ACE_SOCK_Stream (void)
-{
- // ACE_TRACE ("ACE_SOCK_Stream::ACE_SOCK_Stream");
-}
-
-ACE_INLINE
-ACE_SOCK_Stream::ACE_SOCK_Stream (ACE_HANDLE h)
-{
- // ACE_TRACE ("ACE_SOCK_Stream::ACE_SOCK_Stream");
- this->set_handle (h);
-}
-
-ACE_INLINE
-ACE_SOCK_Stream::~ACE_SOCK_Stream (void)
-{
- // ACE_TRACE ("ACE_SOCK_Stream::~ACE_SOCK_Stream");
-}
-
-ACE_INLINE int
-ACE_SOCK_Stream::close_reader (void)
-{
- ACE_TRACE ("ACE_SOCK_Stream::close_reader");
- if (this->get_handle () != ACE_INVALID_HANDLE)
- return ACE_OS::shutdown (this->get_handle (), ACE_SHUTDOWN_READ);
- else
- return 0;
-}
-
-// Shut down just the writing end of a ACE_SOCK.
-
-ACE_INLINE int
-ACE_SOCK_Stream::close_writer (void)
-{
- ACE_TRACE ("ACE_SOCK_Stream::close_writer");
- if (this->get_handle () != ACE_INVALID_HANDLE)
- return ACE_OS::shutdown (this->get_handle (), ACE_SHUTDOWN_WRITE);
- else
- return 0;
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_Stream::recv_n (void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred) const
-{
- ACE_TRACE ("ACE_SOCK_Stream::recv_n");
- return ACE::recv_n (this->get_handle (),
- buf,
- len,
- flags,
- timeout,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_Stream::recv_n (void *buf,
- size_t len,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred) const
-{
- ACE_TRACE ("ACE_SOCK_Stream::recv_n");
- return ACE::recv_n (this->get_handle (),
- buf,
- len,
- timeout,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_Stream::recvv_n (iovec iov[],
- int n,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred) const
-{
- ACE_TRACE ("ACE_SOCK_Stream::recvv_n");
- return ACE::recvv_n (this->get_handle (),
- iov,
- n,
- timeout,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_Stream::send_n (const void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred) const
-{
- ACE_TRACE ("ACE_SOCK_Stream::send_n");
- return ACE::send_n (this->get_handle (),
- buf,
- len,
- flags,
- timeout,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_Stream::send_n (const void *buf,
- size_t len,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred) const
-{
- ACE_TRACE ("ACE_SOCK_Stream::send_n");
- return ACE::send_n (this->get_handle (),
- buf,
- len,
- timeout,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_Stream::sendv_n (const iovec iov[],
- int n,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred) const
-{
- ACE_TRACE ("ACE_SOCK_Stream::sendv_n");
- return ACE::sendv_n (this->get_handle (),
- iov,
- n,
- timeout,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_Stream::send_n (const ACE_Message_Block *message_block,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred) const
-{
- ACE_TRACE ("ACE_SOCK_Stream::send_n");
- return ACE::send_n (this->get_handle (),
- message_block,
- timeout,
- bytes_transferred);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_Stream::send_urg (const void *ptr,
- size_t len,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_SOCK_Stream::send_urg");
- return ACE::send (this->get_handle (),
- ptr,
- len,
- MSG_OOB,
- timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_SOCK_Stream::recv_urg (void *ptr,
- size_t len,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_SOCK_Stream::recv_urg");
- return ACE::recv (this->get_handle (),
- ptr,
- len,
- MSG_OOB,
- timeout);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SPIPE.h b/dep/include/ace/SPIPE.h
deleted file mode 100644
index d561a1575a5..00000000000
--- a/dep/include/ace/SPIPE.h
+++ /dev/null
@@ -1,116 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file SPIPE.h
- *
- * $Id: SPIPE.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_SPIPE_H
-#define ACE_SPIPE_H
-#include /**/ "ace/pre.h"
-
-#include "ace/IPC_SAP.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SPIPE_Addr.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SPIPE
- *
- * @brief Defines the member functions for the base class of the
- * ACE_SPIPE abstraction.
- *
- * ACE_SPIPE was designed as a wrapper facade for STREAM pipes. On
- * Windows, however, ACE_SPIPE is a wrapper for Named Pipes. Therefore,
- * on Windows, it is better to use the ACE_Proactor or blocking operations
- * in lieu of using the ACE_Reactor.
- *
- * @sa ACE_SPIPE_Acceptor for additional notes on use with ACE_Reactor
- * on Windows.
- *
- * @warning Windows: Works only on Windows NT 4 and higher.
- * @warning Works on non-Windows platforms only when @c ACE_HAS_STREAM_PIPES
- * is defined.
- */
-class ACE_Export ACE_SPIPE : public ACE_IPC_SAP
-{
-public:
- /// Close down the SPIPE without removing the rendezvous point.
- /**
- * Closes the underlying pipe handle and sets this object's handle value
- * to @c ACE_INVALID_HANDLE.
- * @return 0 for success; -1 for failure. If a failure occurs, further
- * error information is available from ACE_OS::last_error().
- */
- int close (void);
-
- /// Close down the SPIPE and remove the rendezvous point from
- /// the file system.
- /**
- * @return 0 for success; -1 for failure. If a failure occurs, further
- * error information is available from ACE_OS::last_error().
- */
- int remove (void);
-
- /// Return the local address of this endpoint.
- /**
- * Returns the local address of the SPIPE's endpoint in @arg addr.
- * @return 0 for success; -1 for failure. If a failure occurs, further
- * error information is available from ACE_OS::last_error().
- */
- int get_local_addr (ACE_SPIPE_Addr &) const;
-
- /**
- * Disable signal @arg signum.
- * @note This reimplements the inherited method from
- * ACE_IPC_SAP. Since the signal actions do not make any sense on
- * Windows, this method intercepts the call and NOPs it. On non-Windows,
- * it is passed through to ACE_IPC_SAP::disable().
- */
- int disable (int signum) const ;
-
- /// Dump the state of an object.
- void dump (void) const;
-
-#if defined (ACE_HAS_STREAM_PIPES)
- /// Temporary store of duplex pipe handle.
- void set_duplex_handle (ACE_HANDLE handle);
-#endif /* ACE_HAS_STREAM_PIPES */
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-#if defined (ACE_HAS_STREAM_PIPES)
- /// Duplex to the pipe I/O handle.
- /// Stored here for latter cleaning.
- ACE_HANDLE duplex_pipe_handle_;
-#endif /* ACE_HAS_STREAM_PIPES */
-
-protected:
- /// Ensure that this class is an abstract base class
- ACE_SPIPE (void);
-
- /// Our local address.
- ACE_SPIPE_Addr local_addr_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SPIPE.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SPIPE_H */
-
diff --git a/dep/include/ace/SPIPE.inl b/dep/include/ace/SPIPE.inl
deleted file mode 100644
index 6e4c7ed47be..00000000000
--- a/dep/include/ace/SPIPE.inl
+++ /dev/null
@@ -1,18 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SPIPE.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_SPIPE::disable (int signum) const
-{
-#if defined (ACE_WIN32)
- ACE_UNUSED_ARG (signum) ;
- return 0 ;
-#else /* ACE_WIN32 */
- return ACE_IPC_SAP::disable (signum) ;
-#endif /* ACE_WIN32 */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SPIPE_Acceptor.h b/dep/include/ace/SPIPE_Acceptor.h
deleted file mode 100644
index 44b049763d5..00000000000
--- a/dep/include/ace/SPIPE_Acceptor.h
+++ /dev/null
@@ -1,168 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SPIPE_Acceptor.h
- *
- * $Id: SPIPE_Acceptor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Prashant Jain <pjain@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SPIPE_ACCEPTOR_H
-#define ACE_SPIPE_ACCEPTOR_H
-#include /**/ "ace/pre.h"
-
-#include "ace/SPIPE_Stream.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_WIN32_NAMED_PIPES)
-#include "ace/Manual_Event.h"
-#endif /* ACE_HAS_WIN32_NAMED_PIPES */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SPIPE_Acceptor
- *
- * @brief A factory class that produces ACE_SPIPE_Stream objects.
- *
- * ACE_SPIPE_Acceptor is a factory class that accepts SPIPE connections.
- * Each accepted connection produces an ACE_SPIPE_Stream object.
- *
- * @warning Windows: Works only on Windows NT 4 and higher. To use this
- * class with the ACE_Reactor framework, note that the handle to
- * demultiplex on is an event handle and should be registered with the
- * ACE_Reactor::register_handler (ACE_Event_Handler *, ACE_HANDLE) method.
- *
- * @warning Works on non-Windows platforms only when @c ACE_HAS_STREAM_PIPES
- * is defined.
- *
- */
-class ACE_Export ACE_SPIPE_Acceptor : public ACE_SPIPE
-{
-public:
- // = Initialization and termination methods.
- /// Default constructor.
- ACE_SPIPE_Acceptor (void);
-
- /// Initiate a passive-mode STREAM pipe listener.
- /**
- * @param local_sap The name of the pipe instance to open and listen on.
- * @param reuse_addr Optional, and ignored. Needed for API compatibility
- * with other acceptor classes.
- * @param perms Optional, the protection mask to create the pipe
- * with. Ignored on Windows.
- * @param sa Optional, ignored on non-Windows. The
- * SECURITY_ATTRIBUTES to create the named pipe
- * instances with. This pointer is remembered and
- * reused on each new named pipe instance, so only
- * pass a value that remains valid as long as this
- * object does.
- * @param pipe_mode Optional, ignored on non-Windows. The NT pipe
- * mode used when creating the pipe.
- */
- ACE_SPIPE_Acceptor (const ACE_SPIPE_Addr &local_sap,
- int reuse_addr = 1,
- int perms = ACE_DEFAULT_FILE_PERMS,
- LPSECURITY_ATTRIBUTES sa = 0,
- int pipe_mode = PIPE_TYPE_MESSAGE | PIPE_READMODE_MESSAGE);
-
- /// Initiate a passive-mode STREAM pipe listener.
- /**
- * @param local_sap The name of the pipe instance to open and listen on.
- * @param reuse_addr Optional, and ignored. Needed for API compatibility
- * with other acceptor classes.
- * @param perms Optional, the protection mask to create the pipe
- * with. Ignored on Windows.
- * @param sa Optional, ignored on non-Windows. The
- * SECURITY_ATTRIBUTES to create the named pipe
- * instances with. This pointer is remembered and
- * reused on each new named pipe instance, so only
- * pass a value that remains valid as long as this
- * object does.
- * @param pipe_mode Optional, ignored on non-Windows. The NT pipe
- * mode used when creating the pipe.
- *
- * @retval 0 for success.
- * @retval -1 for failure.
- */
- int open (const ACE_SPIPE_Addr &local_sap,
- int reuse_addr = 1,
- int perms = ACE_DEFAULT_FILE_PERMS,
- LPSECURITY_ATTRIBUTES sa = 0,
- int pipe_mode = PIPE_TYPE_MESSAGE | PIPE_READMODE_MESSAGE);
-
- /// Close down the passive-mode STREAM pipe listener.
- int close (void);
-
- /// Remove the underlying mounted pipe from the file system.
- int remove (void);
-
- // = Passive connection acceptance method.
- /**
- * Accept a new data transfer connection.
- *
- * @param ipc_sap_spipe The ACE_SPIPE_Stream to initialize with the
- * newly-accepted pipe.
- * @param remote_addr Optional, accepts the address of the peer.
- * @param timeout 0 means block forever, {0, 0} means poll.
- * @param restart 1 means "restart if interrupted."
- *
- * @retval 0 for success.
- * @retval -1 for failure.
- */
- int accept (ACE_SPIPE_Stream &ipc_sap_spipe,
- ACE_SPIPE_Addr *remote_addr = 0,
- ACE_Time_Value *timeout = 0,
- int restart = 1,
- int reset_new_handle = 0);
-
- // = Meta-type info
- typedef ACE_SPIPE_Addr PEER_ADDR;
- typedef ACE_SPIPE_Stream PEER_STREAM;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Create a new instance of an SPIPE.
- int create_new_instance (int perms = 0);
-
-#if defined (ACE_HAS_WIN32_NAMED_PIPES)
- // On Windows, the SECURITY_ATTRIBUTES specified for the initial accept
- // operation is reused on all subsequent pipe instances as well.
- LPSECURITY_ATTRIBUTES sa_;
-
- // On Windows, the pipe mode to create the pipe in. This can be in
- // either a bytestream-oriented mode or a message-oriented mode.
- DWORD pipe_mode_;
-
- // On Windows, the handle maintained in the ACE_IPC_SAP class is the
- // event handle from event_. The pipe handle is useless for telling
- // when a pipe connect is done/ready, and it changes on each pipe
- // acceptance, quite unlike other acceptor-type classes in ACE.
- // This allows the get_handle()-obtained handle to be used for
- // registering with the reactor (albeit for signal, not input)
- // to tell when a pipe accept is done.
- ACE_OVERLAPPED overlapped_;
- ACE_Manual_Event event_;
- ACE_HANDLE pipe_handle_;
- int already_connected_;
-#endif /* ACE_HAS_WIN32_NAMED_PIPES */
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SPIPE_ACCEPTOR_H */
-
diff --git a/dep/include/ace/SPIPE_Addr.h b/dep/include/ace/SPIPE_Addr.h
deleted file mode 100644
index 46834b74727..00000000000
--- a/dep/include/ace/SPIPE_Addr.h
+++ /dev/null
@@ -1,123 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file SPIPE_Addr.h
- *
- * $Id: SPIPE_Addr.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_SPIPE_ADDR_H
-#define ACE_SPIPE_ADDR_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Addr.h"
-#include "ace/os_include/sys/os_types.h"
-#include "ace/os_include/os_dirent.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SPIPE_Addr
- *
- * @brief Defines the SVR4 STREAM pipe address family address format.
- */
-class ACE_Export ACE_SPIPE_Addr : public ACE_Addr
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_SPIPE_Addr (void);
-
- /// Copy constructor.
- ACE_SPIPE_Addr (const ACE_SPIPE_Addr &sa);
-
- /// Create a ACE_SPIPE_Addr from a rendezvous point in the file
- /// system.
- ACE_SPIPE_Addr (const ACE_TCHAR *rendezvous_point, gid_t = 0, uid_t = 0);
-
- /// Acts like a copy constructor...
- int set (const ACE_SPIPE_Addr &sa);
-
- /// Create a ACE_SPIPE_Addr from a rendezvous point in the file
- /// system.
- int set (const ACE_TCHAR *rendezvous_point, gid_t = 0, uid_t = 0);
-
- /// Return a pointer to the address.
- virtual void *get_addr (void) const;
-
- /// Set a pointer to the underlying network address.
- virtual void set_addr (void *addr, int len);
-
- /// Transform the current address into string format.
- virtual int addr_to_string (ACE_TCHAR *addr, size_t) const;
-
- /// Transform the string into the current addressing format.
- virtual int string_to_addr (const ACE_TCHAR *addr);
-
- // = Equality/inequality tests
- /// Check for equality.
- bool operator == (const ACE_SPIPE_Addr &SAP) const;
-
- /// Check for inequality
- bool operator != (const ACE_SPIPE_Addr &SAP) const;
-
- // = SPIPE-specific address operations
- /// Pathname of rendezvous point in file system.
- const ACE_TCHAR *get_path_name (void) const;
-
- /// Get user id.
- uid_t user_id (void) const;
-
- /// Set user id.
- void user_id (uid_t uid);
-
- /// Set group ids.
- void group_id (gid_t gid);
-
- /// Get group ids.
- gid_t group_id (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Contains security attributes.
- struct SPIPE_Addr
- {
- /// Group id.
- gid_t gid_;
-
- /// User id.
- uid_t uid_;
-
- /// Pathname in the file system.
- ACE_TCHAR rendezvous_[MAXPATHLEN + 1];
-
- } SPIPE_addr_;
- // Contents of an SPIPE address.
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SPIPE_Addr.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SPIPE_ADDR_H */
-
diff --git a/dep/include/ace/SPIPE_Addr.inl b/dep/include/ace/SPIPE_Addr.inl
deleted file mode 100644
index e84b2f0bb2e..00000000000
--- a/dep/include/ace/SPIPE_Addr.inl
+++ /dev/null
@@ -1,58 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SPIPE_Addr.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/SString.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Compare two addresses for equality.
-
-ACE_INLINE bool
-ACE_SPIPE_Addr::operator == (const ACE_SPIPE_Addr &sap) const
-{
- return ACE_OS::strcmp (this->SPIPE_addr_.rendezvous_,
- sap.SPIPE_addr_.rendezvous_ ) == 0;
-}
-
-// Compare two addresses for inequality.
-
-ACE_INLINE bool
-ACE_SPIPE_Addr::operator != (const ACE_SPIPE_Addr &sap) const
-{
- return !((*this) == sap); // This is lazy, of course... ;-)
-}
-
-// Return the path name used for the rendezvous point.
-
-ACE_INLINE const ACE_TCHAR *
-ACE_SPIPE_Addr::get_path_name (void) const
-{
- return this->SPIPE_addr_.rendezvous_;
-}
-
-ACE_INLINE uid_t
-ACE_SPIPE_Addr::user_id (void) const
-{
- return this->SPIPE_addr_.uid_;
-}
-
-ACE_INLINE void
-ACE_SPIPE_Addr::user_id (uid_t uid)
-{
- this->SPIPE_addr_.uid_ = uid;
-}
-
-ACE_INLINE gid_t
-ACE_SPIPE_Addr::group_id (void) const
-{
- return this->SPIPE_addr_.gid_;
-}
-
-ACE_INLINE void
-ACE_SPIPE_Addr::group_id (gid_t gid)
-{
- this->SPIPE_addr_.gid_ = gid;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SPIPE_Connector.h b/dep/include/ace/SPIPE_Connector.h
deleted file mode 100644
index 576cabaa073..00000000000
--- a/dep/include/ace/SPIPE_Connector.h
+++ /dev/null
@@ -1,119 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SPIPE_Connector.h
- *
- * $Id: SPIPE_Connector.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt <schmidt@cs.wustl.edu>
- * @author Prashant Jain <pjain@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SPIPE_CONNECTOR_H
-#define ACE_SPIPE_CONNECTOR_H
-#include /**/ "ace/pre.h"
-
-#include "ace/SPIPE_Stream.h"
-#include "ace/os_include/os_fcntl.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SPIPE_Connector
- *
- * @brief Defines an active connection factory for ACE_SPIPE_Stream.
- * On Windows this is mapped to Named Pipes, whereas on UNIX it is
- * mapped to STREAM pipes.
- */
-class ACE_Export ACE_SPIPE_Connector
-{
-public:
- // = Initialization method.
- /// Default constructor.
- ACE_SPIPE_Connector (void);
-
- /**
- * Actively connect and produce a <new_stream> if things go well.
- * The @a remote_sap is the address that we are trying to connect
- * with. The @a timeout is the amount of time to wait to connect.
- * If it's 0 then we block indefinitely. If *timeout == {0, 0} then
- * the connection is done using non-blocking mode. In this case, if
- * the connection can't be made immediately the value of -1 is
- * returned with @c errno == EWOULDBLOCK. If *timeout > {0, 0} then
- * this is the maximum amount of time to wait before timing out. If the
- * time expires before the connection is made @c errno == ETIME. The
- * @a local_sap is the value of local address to bind to. If it's
- * the default value of ACE_Addr::sap_any then the user is letting
- * the OS do the binding. If @a reuse_addr == 1 then the
- * <local_addr> is reused, even if it hasn't been cleanedup yet.
- * The @a flags and @a perms arguments are passed down to the <open>
- * method. The @a pipe_mode argument is only used in NT and is used to
- * establish the NT pipe mode.
- */
- ACE_SPIPE_Connector (ACE_SPIPE_Stream &new_io,
- const ACE_SPIPE_Addr &remote_sap,
- ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = O_RDWR,
- int perms = 0,
- LPSECURITY_ATTRIBUTES sa = 0,
- int pipe_mode = PIPE_READMODE_MESSAGE | PIPE_WAIT);
-
- /**
- * Actively connect and produce a <new_stream> if things go well.
- * The @a remote_sap is the address that we are trying to connect
- * with. The @a timeout is the amount of time to wait to connect.
- * If it's 0 then we block indefinitely. If *timeout == {0, 0} then
- * the connection is done using non-blocking mode. In this case, if
- * the connection can't be made immediately the value of -1 is
- * returned with @c errno == EWOULDBLOCK. If *timeout > {0, 0} then
- * this is the maximum amount of time to wait before timing out. If the
- * time expires before the connection is made @c errno == ETIME. The
- * @a local_sap is the value of local address to bind to. If it's
- * the default value of ACE_Addr::sap_any then the user is letting
- * the OS do the binding. If @a reuse_addr == 1 then the
- * <local_addr> is reused, even if it hasn't been cleanedup yet.
- * The @a flags and @a perms arguments are passed down to the <open>
- * method. The @a pipe_mode argument is only used in NT and is used to
- * establish the NT pipe mode.
- */
- int connect (ACE_SPIPE_Stream &new_io,
- const ACE_SPIPE_Addr &remote_sap,
- ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = O_RDWR,
- int perms = 0,
- LPSECURITY_ATTRIBUTES sa = 0,
- int pipe_mode = PIPE_READMODE_MESSAGE | PIPE_WAIT);
-
- /// Resets any event associations on this handle
- int reset_new_handle (ACE_HANDLE handle);
-
- // = Meta-type info
- typedef ACE_SPIPE_Addr PEER_ADDR;
- typedef ACE_SPIPE_Stream PEER_STREAM;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SPIPE_Connector.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SPIPE_CONNECTOR_H */
-
diff --git a/dep/include/ace/SPIPE_Connector.inl b/dep/include/ace/SPIPE_Connector.inl
deleted file mode 100644
index f61dd72d5a0..00000000000
--- a/dep/include/ace/SPIPE_Connector.inl
+++ /dev/null
@@ -1,15 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SPIPE_Connector.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_SPIPE_Connector::reset_new_handle (ACE_HANDLE handle)
-{
- ACE_UNUSED_ARG (handle);
- // Nothing to do here since the handle is not a socket
- return 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SPIPE_Stream.h b/dep/include/ace/SPIPE_Stream.h
deleted file mode 100644
index 39a57a33126..00000000000
--- a/dep/include/ace/SPIPE_Stream.h
+++ /dev/null
@@ -1,172 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file SPIPE_Stream.h
- *
- * $Id: SPIPE_Stream.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SPIPE_STREAM_H
-#define ACE_SPIPE_STREAM_H
-#include /**/ "ace/pre.h"
-
-#include "ace/SPIPE.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SPIPE_Addr.h"
-#include "ace/ACE.h"
-#include "ace/OS_NS_stropts.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SPIPE_Stream
- *
- * @brief Defines the methods in the ACE_SPIPE_Stream abstraction.
- *
- * @a buf is the buffer to write from or receive into.
- * @a len is the number of bytes to transfer.
- *
- * The "_n()" I/O methods keep looping until all the data has been
- * transferred. These methods also work for sockets in non-blocking
- * mode i.e., they keep looping on EWOULDBLOCK.
- *
- * The return values for the "*_n()" methods match the return values
- * from the non "_n()" methods and are specified as follows:
- * - The number of bytes transferred is returned.
- * - On error, -1 is returned, errno is set to appropriate error.
- * - On EOF, 0 is returned, errno is irrelevant.
- *
- * Methods with <iovec> parameter are I/O vector variants of the I/O
- * operations.
- *
- * The <send> and <revc> operations use "message" semantics rather
- * than "bytestream" semantics.
- */
-class ACE_Export ACE_SPIPE_Stream : public ACE_SPIPE
-{
-public:
- friend class ACE_SPIPE_Acceptor;
- friend class ACE_SPIPE_Connector;
-
- // = Initialization method.
- /// Default constructor.
- ACE_SPIPE_Stream (void);
-
- /// Obtain the address of whom we are connected with.
- int get_remote_addr (ACE_SPIPE_Addr &remote_sap) const;
-
- /// Send an open FD to another process.
- int send_handle (ACE_HANDLE handle) const;
-
- /// Recv an open FD from another process.
- int recv_handle (ACE_HANDLE &handle) const;
-
- /// Recv an open FD from another process.
- int recv_handle (strrecvfd &recvfd) const;
-
- /// Send @a len bytes, keep trying until @a len are sent.
- ssize_t send_n (const void *buf, size_t len) const;
-
- /// Recv @a len bytes, keep trying until @a len are received.
- ssize_t recv_n (void *buf, size_t len) const;
-
- /// Send bytes via STREAM pipes using "band" mode.
- ssize_t send (const void *buf, size_t len) const;
-
- /// Recv bytes via STREAM pipes using "band" mode.
- ssize_t recv (void *buf, size_t len) const;
-
- /// Send <cntl> and <data> via STREAM pipes.
- ssize_t send (const ACE_Str_Buf *cntl,
- const ACE_Str_Buf *data,
- int flags = 0) const;
-
- /// Recv <cntl> and <data> via STREAM pipes.
- ssize_t recv (ACE_Str_Buf *cntl,
- ACE_Str_Buf *data,
- int *flags) const;
-
- /// Send bytes via STREAM pipes using "band" mode.
- ssize_t send (const ACE_Str_Buf *cntl,
- const ACE_Str_Buf *data,
- int band,
- int flags) const;
-
- /// Recv bytes via STREAM pipes using "band" mode.
- ssize_t recv (ACE_Str_Buf *cntl,
- ACE_Str_Buf *data,
- int *band,
- int *flags) const;
-
- /// Send iovecs via the OS "gather-write" operation.
- ssize_t send (const iovec iov[], int len) const;
-
- /// Recv iovecs via the OS "scatter-read" operation.
- ssize_t recv (iovec iov[], int len) const;
-
- /**
- * Send N char *ptrs and int lengths. Note that the char *'s
- * precede the ints (basically, an varargs version of writev). The
- * count N is the *total* number of trailing arguments, *not* a
- * couple of the number of tuple pairs!
- */
- ssize_t send (size_t len, ...) const;
-
- /**
- * This is an interface to ::readv, that doesn't use the struct
- * iovec explicitly. The ... can be passed as an arbitrary number
- * of (char *ptr, int len) tuples. However, the count N is the
- * *total* number of trailing arguments, *not* a couple of the
- * number of tuple pairs!
- */
- ssize_t recv (size_t len, ...) const;
-
- /// Send @a len bytes via Win32 <WriteFile> using overlapped I/O.
- ssize_t send (const void *buf, size_t len, ACE_OVERLAPPED *overlapped) const;
-
- /// Recv @a len bytes via Win32 <ReadFile> using overlapped I/O.
- ssize_t recv (void *buf, size_t len, ACE_OVERLAPPED *overlapped) const;
-
- /// Send an <iovec> of size @a len to the stream.
- ssize_t sendv (const iovec iov[],
- int len) const;
-
- /// Send an <iovec> of size @a len to the stream. Will block until all
- /// bytes are sent or an error occurs.
- ssize_t sendv_n (const iovec iov[],
- int len) const;
-
- /// Receive an <iovec> of size @a len to the stream.
- ssize_t recvv_n (iovec iov[],
- int len) const;
-
- // = Meta-type info
- typedef ACE_SPIPE_Addr PEER_ADDR;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- ACE_SPIPE_Addr remote_addr_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SPIPE_Stream.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SPIPE_STREAM_H */
-
diff --git a/dep/include/ace/SPIPE_Stream.inl b/dep/include/ace/SPIPE_Stream.inl
deleted file mode 100644
index e52600d4888..00000000000
--- a/dep/include/ace/SPIPE_Stream.inl
+++ /dev/null
@@ -1,275 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SPIPE_Stream.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_sys_uio.h"
-#include "ace/OS_NS_errno.h"
-#include "ace/OS_NS_unistd.h"
-#if defined (ACE_WIN32)
-#include "ace/OS_NS_sys_socket.h"
-#endif
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Create an ACE_SPIPE_Stream.
-
-ACE_INLINE int
-ACE_SPIPE_Stream::get_remote_addr (ACE_SPIPE_Addr &remote_sap) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::get_remote_addr");
- remote_sap = this->remote_addr_;
- return 0;
-}
-
-// Send exactly N bytes from BUF to this socket. Keeping trying until
-// this many bytes are sent.
-
-ACE_INLINE ssize_t
-ACE_SPIPE_Stream::send_n (const void *buf, size_t n) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::send_n");
- return ACE::write_n (this->get_handle (), buf, n);
-}
-
-// Receive exactly N bytes from this socket into BUF. Keep trying
-// until this many bytes are received.
-
-ACE_INLINE ssize_t
-ACE_SPIPE_Stream::recv_n (void *buf, size_t n) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::recv_n");
- return ACE::read_n (this->get_handle (), buf, n);
-}
-
-ACE_INLINE ssize_t
-ACE_SPIPE_Stream::send (const void *buf, size_t n) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::send");
- return ACE_OS::write (this->get_handle (), (const char *) buf, n);
-}
-
-ACE_INLINE ssize_t
-ACE_SPIPE_Stream::recv (void *buf, size_t n) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::recv");
- return ACE_OS::read (this->get_handle (), (char *) buf, n);
-}
-
-ACE_INLINE ssize_t
-ACE_SPIPE_Stream::send (const ACE_Str_Buf *cntl, const ACE_Str_Buf *data, int flags) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::send");
- return ACE_OS::putmsg (this->get_handle (), (strbuf *) cntl, (strbuf *) data, flags);
-}
-
-ACE_INLINE ssize_t
-ACE_SPIPE_Stream::recv (ACE_Str_Buf *cntl, ACE_Str_Buf *data, int *flags) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::recv");
- return ACE_OS::getmsg (this->get_handle (), (strbuf *) cntl, (strbuf *) data, flags);
-}
-
-ACE_INLINE ssize_t
-ACE_SPIPE_Stream::send (const ACE_Str_Buf *cntl, const ACE_Str_Buf *data, int band, int flags) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::send");
- return ACE_OS::putpmsg (this->get_handle (), (strbuf *) cntl, (strbuf *) data, band, flags);
-}
-
-ACE_INLINE ssize_t
-ACE_SPIPE_Stream::recv (ACE_Str_Buf *cntl, ACE_Str_Buf *data, int *band, int *flags) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::recv");
- return ACE_OS::getpmsg (this->get_handle (), (strbuf *) cntl, (strbuf *) data, band, flags);
-}
-
-ACE_INLINE ssize_t
-ACE_SPIPE_Stream::send (const iovec iov[], int n) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::send");
- return ACE_OS::writev (this->get_handle (), iov, n);
-}
-
-ACE_INLINE ssize_t
-ACE_SPIPE_Stream::recv (iovec iov[], int n) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::recv");
- return ACE_OS::readv (this->get_handle (), iov, n);
-}
-
-// This routine sends an open file descriptor to this socket.
-
-ACE_INLINE int
-ACE_SPIPE_Stream::send_handle (ACE_HANDLE handle) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::send_handle");
-#if defined (ACE_HAS_STREAM_PIPES)
- return ACE_OS::ioctl (this->get_handle (), I_SENDFD, (void *) handle);
-#elif defined (ACE_WIN32) && \
- (defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)) && \
- !defined (ACE_HAS_WINCE) /* CE4 has WS2 but not WSADuplicateSocket */
- DWORD procID;
- WSAPROTOCOL_INFO protInfo;
- ssize_t res = this->recv(&procID, sizeof(procID));
- if (res != sizeof(procID))
- {
- if(res != -1)
- errno = ENXIO;
- return -1;
- }
- if (::WSADuplicateSocket ((SOCKET)handle, procID, &protInfo) == -1)
- {
- ACE_OS::set_errno_to_wsa_last_error();
- return -1;
- }
- res = this->send(&protInfo, sizeof(protInfo));
- if (res != sizeof(protInfo))
- {
- if(res != -1)
- errno = ENXIO;
- return -1;
- }
- // This is just for synchronization, we will ignore the data
- res = this->recv(&procID, sizeof(procID));
- if (res != sizeof(procID))
- {
- if(res != -1)
- errno = ENXIO;
- return -1;
- }
- return 0;
-#else
- handle = handle;
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_STREAM_PIPES */
-}
-
-// This file receives an open file descriptor from this socket.
-
-ACE_INLINE int
-ACE_SPIPE_Stream::recv_handle (ACE_HANDLE &handle) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::recv_handle");
-#if defined (ACE_HAS_STREAM_PIPES)
- strrecvfd recvfd;
-
- if (ACE_OS::ioctl (this->get_handle (), I_RECVFD, (void *) &recvfd) == -1)
- return -1;
- else
- {
- handle = recvfd.fd;
- return 0;
- }
-#elif defined (ACE_WIN32) && \
- (defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0))
- pid_t procID = ACE_OS::getpid();
- WSAPROTOCOL_INFO protInfo;
- ssize_t res = this->send(&procID, sizeof(procID));
- if (res != sizeof(procID))
- {
- if(res != -1)
- errno = ENXIO;
- return -1;
- }
- res = this->recv(&protInfo, sizeof(protInfo));
- if (res != sizeof(protInfo))
- {
- if(res != -1)
- errno = ENXIO;
- return -1;
- }
- handle = ACE_OS::socket (FROM_PROTOCOL_INFO, FROM_PROTOCOL_INFO, FROM_PROTOCOL_INFO,
- &protInfo, 0, 0);
- if (handle == ACE_INVALID_HANDLE)
- {
- return -1;
- }
- // Since it does not matter what the data is, just send something to
- // synchronize the end of the exchange
- res = this->send(&procID, sizeof(procID));
- if (res != sizeof(procID))
- {
- if(res != -1)
- errno = ENXIO;
- return -1;
- }
- return 0;
-#else
- handle = handle;
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_STREAM_PIPES */
-}
-
-// This file receives an open file descriptor from this socket and
-// also passes back the information about the address...
-
-ACE_INLINE int
-ACE_SPIPE_Stream::recv_handle (strrecvfd &recvfd) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::recv_handle");
-#if defined (ACE_HAS_STREAM_PIPES)
- return ACE_OS::ioctl (this->get_handle (), I_RECVFD, (void *) &recvfd);
-#else
- ACE_UNUSED_ARG (recvfd);
- ACE_NOTSUP_RETURN (-1);
-#endif /* ACE_HAS_STREAM_PIPES */
-}
-
-ACE_INLINE ssize_t
-ACE_SPIPE_Stream::send (const void *buf, size_t n,
- ACE_OVERLAPPED *overlapped) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::send");
- return ACE_OS::write (this->get_handle (),
- (const char *) buf, n,
- overlapped);
-}
-
-ACE_INLINE ssize_t
-ACE_SPIPE_Stream::recv (void *buf, size_t n,
- ACE_OVERLAPPED *overlapped) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::recv");
- return ACE_OS::read (this->get_handle (),
- (char *) buf, n,
- overlapped);
-}
-
-ACE_INLINE ssize_t
-ACE_SPIPE_Stream::sendv_n (const iovec iov[],
- int n) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::sendv_n");
- return ACE::writev_n (this->get_handle (),
- iov,
- n);
-}
-
-// Recv an n byte message from the Stream.
-
-ACE_INLINE ssize_t
-ACE_SPIPE_Stream::recvv_n (iovec iov[],
- int n) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::recvv_n");
- // @@ Carlos, can you please update this to call the
- // new ACE::recvv_n() method that you write?
- return ACE_OS::readv (this->get_handle (),
- iov,
- n);
-}
-
-// Send an <iovec> of size <n> to the Stream.
-
-ACE_INLINE ssize_t
-ACE_SPIPE_Stream::sendv (const iovec iov[],
- int n) const
-{
- ACE_TRACE ("ACE_SPIPE_Stream::sendv");
- return ACE_OS::writev (this->get_handle (),
- iov,
- n);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
diff --git a/dep/include/ace/SSL/SSL_Asynch_BIO.h b/dep/include/ace/SSL/SSL_Asynch_BIO.h
deleted file mode 100644
index b406321777c..00000000000
--- a/dep/include/ace/SSL/SSL_Asynch_BIO.h
+++ /dev/null
@@ -1,42 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SSL_Asynch_BIO.h
- *
- * $Id: SSL_Asynch_BIO.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Alexander Libman <alibman@baltimore.com>
- * @author Ossama Othman <ossama@uci.edu>
- *
- */
-//=============================================================================
-
-#ifndef ACE_SSL_ASYNCH_BIO_H
-#define ACE_SSL_ASYNCH_BIO_H
-
-#include /**/ "ace/pre.h"
-
-#include "SSL_Export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// This must be included before any <openssl> include on LynxOS
-#include "ace/os_include/os_stdio.h"
-
-#include <openssl/bio.h>
-
-#if OPENSSL_VERSION_NUMBER > 0x0090581fL && ((defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)) || (defined (ACE_HAS_AIO_CALLS)))
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-extern BIO * ACE_SSL_make_BIO (void * ssl_asynch_stream);
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* OPENSSL_VERSION_NUMBER > 0x0090581fL (ACE_WIN32 ||
- ACE_HAS_AIO_CALLS) */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SSL_ASYNCH_BIO_H */
diff --git a/dep/include/ace/SSL/SSL_Asynch_Stream.h b/dep/include/ace/SSL/SSL_Asynch_Stream.h
deleted file mode 100644
index faae6112cdb..00000000000
--- a/dep/include/ace/SSL/SSL_Asynch_Stream.h
+++ /dev/null
@@ -1,425 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SSL_Asynch_Stream.h
- *
- * $Id: SSL_Asynch_Stream.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Alexander Libman <alibman@baltimore.com>
- */
-//=============================================================================
-
-#ifndef ACE_SSL_ASYNCH_STREAM_H
-#define ACE_SSL_ASYNCH_STREAM_H
-
-#include /**/ "ace/pre.h"
-#include "SSL_Context.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if OPENSSL_VERSION_NUMBER > 0x0090581fL && ((defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)) || (defined (ACE_HAS_AIO_CALLS)))
-
-#include "SSL_Asynch_BIO.h"
-
-#include "ace/Asynch_IO_Impl.h"
-#include "ace/Message_Block.h"
-#include "ace/Synch_Traits.h"
-#include "ace/Thread_Mutex.h"
-
-/*
- * This facility doesn't follow the normal ACE asynch I/O support classes'
- * interface/implementation arrangement. It's not needed because rather than
- * branching off to platform-specific APIs, all platforms use the OpenSSL
- * API. Thus, you can think of this class as the implementation class (for
- * OpenSSL) and there's no separate interface class.
- * Also, since both read and write operations are defined in one I/O
- * factory, there's no single Result class defined as there is for
- * ACE_Asynch_Read_Stream, et al. There are separate result classes defined
- * for read and write operations.
- */
-
-#if defined (ACE_WIN32)
-# include "ace/WIN32_Asynch_IO.h"
-typedef ACE_WIN32_Asynch_Result A_RESULT;
-typedef ACE_WIN32_Asynch_Read_Stream_Result ARS_RESULT;
-typedef ACE_WIN32_Asynch_Write_Stream_Result AWS_RESULT;
-
-# define ERR_CANCELED ERROR_OPERATION_ABORTED
-
-#else
-# include "ace/POSIX_Asynch_IO.h"
-typedef ACE_POSIX_Asynch_Result A_RESULT;
-typedef ACE_POSIX_Asynch_Read_Stream_Result ARS_RESULT;
-typedef ACE_POSIX_Asynch_Write_Stream_Result AWS_RESULT;
-
-# define ERR_CANCELED ECANCELED
-
-#endif /* ACE_WIN32 */
-
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_SSL_Asynch_Stream; // Forward decl for use in result class def.
-
-/**
- * @class ACE_SSL_Asynch_Read_Stream_Result
- *
- * Result class that communicates result of read operations initiated on
- * an ACE_SSL_Asynch_Stream object.
- */
-class ACE_SSL_Asynch_Read_Stream_Result : public ARS_RESULT
-{
- /// Factory class will have special permissions.
- friend class ACE_SSL_Asynch_Stream;
-
-protected:
- ACE_SSL_Asynch_Read_Stream_Result (ACE_Handler &handler,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number);
-};
-
-/**
- * @class ACE_SSL_Asynch_Write_Stream_Result
- *
- * Result class that communicates result of write operations initiated on
- * an ACE_SSL_Asynch_Stream object.
- */
-class ACE_SSL_Asynch_Write_Stream_Result : public AWS_RESULT
-{
- /// Factory class will have special permissions.
- friend class ACE_SSL_Asynch_Stream;
-
-protected:
- ACE_SSL_Asynch_Write_Stream_Result (ACE_Handler &handler,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number);
-};
-
-
-/**
- * @class ACE_SSL_Asynch_Result
- *
- * Result class that is used internally for socket close notifications.
- */
-class ACE_SSL_Asynch_Result : public A_RESULT
-{
-public:
- ACE_SSL_Asynch_Result (ACE_Handler &handler);
-
- void complete (size_t bytes_transferred,
- int success,
- const void * completion_key,
- u_long error);
-};
-
-
-// Only provide forward declarations to prevent possible abuse of the
-// friend declarations in ACE_SSL_Asynch_Stream.
-struct ACE_SSL_Asynch_Stream_Accessor;
-
-/**
- * @class ACE_SSL_Asynch_Stream
- *
- * @brief This class is a factory for initiating asynchronous reads
- * and writes on an SSL stream.
- *
- * Once open() is called, multiple asynchronous read and write operations
- * can be started using this class. The handler object (derived from
- * ACE_Handler) specified in open() will receive completion events for the
- * operations initiated via this class.
- */
-class ACE_SSL_Export ACE_SSL_Asynch_Stream
- : public ACE_Asynch_Operation,
- public ACE_Handler
-{
-public:
-
- // Use a class/struct to work around scoping
- // problems for extern "C" free functions with some compilers. For
- // example, some can't handle
- //
- // friend ::some_extern_c_free_function (...)
- //
- // Note that we could use a straight C++ (i.e. not extern "C") free
- // function, but using a class or struct allows us to hide the
- // interface from the user, which prevents abuse of this friend
- // relationship.
- friend struct ACE_SSL_Asynch_Stream_Accessor;
-
- enum Stream_Type
- {
- ST_CLIENT = 0x0001,
- ST_SERVER = 0x0002
- };
-
- /// Constructor.
- /**
- * @arg context Pointer to an ACE_SSL_Context instance containing
- * the OpenSSL information to be associated with this
- * ACE_SSL_Asynch_Stream. The needed SSL data will be
- * copied before return. Therefore, this object can be
- * reused, modified, or deleted upon return. If a 0 pointer
- * is passed, the ACE_SSL_Context::instance() method will
- * be called to get access to a singleton.
- */
- ACE_SSL_Asynch_Stream (Stream_Type s_type = ST_SERVER,
- ACE_SSL_Context * context = 0);
-
- /// Destructor
- virtual ~ACE_SSL_Asynch_Stream (void);
-
- int cancel (void);
-
- int close (void);
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call.
- *
- * @arg handler The ACE_Handler that will be called to handle completions
- * for operations initiated using this factory.
- * @arg handle The handle that future read/write operations will use.
- *
- * @retval 0 for success.
- * @retval -1 for failure; consult @c errno for further information.
- */
- int open (ACE_Handler &handler,
- ACE_HANDLE handle = ACE_INVALID_HANDLE,
- const void *completion_key = 0,
- ACE_Proactor *proactor = 0);
-
- /**
- * Initiates an asynchronous read. If the operation is successfully
- * initiated, the handle_read_stream() method will be called on the
- * ACE_Handler object passed to open() when the operation completes.
- * Data is read into the specified ACE_Message_Block beginning at its
- * write pointer; the block's write pointer is updated to reflect any
- * added data when the operation completes.
- *
- * @arg message_block The specified ACE_Message_Block will receive any
- * data that is read. Data will be read into the
- * block beginning at the block's write pointer.
- * @arg num_bytes_to_read The maximum number of bytes to read. The actual
- * amount read may be less.
- * @arg act ACT which is passed to the completion handler in
- * the result object.
- * @arg priority Specifies the operation priority. This has an
- * affect on POSIX only. Works like @i nice in Unix.
- * Negative values are not allowed. 0 means priority
- * of the operation same as the process priority.
- * 1 means priority of the operation is one less than
- * process, and so forth. This parameter has no
- * affect on Win32.
- * @arg signal_number The POSIX4 real-time signal number to be used
- * for the operation. signal_number ranges from
- * ACE_SIGRTMIN to ACE_SIGRTMAX. This argument is
- * unused on non-POSIX4 systems.
- *
- * @retval 0 for success.
- * @retval -1 for failure; consult @c errno for further information.
- */
- int read (ACE_Message_Block &message_block,
- size_t num_bytes_to_read,
- const void *act = 0,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
- /**
- * Initiates an asynchronous write. If the operation is successfully
- * initiated, the handle_write_stream() method will be called on the
- * ACE_Handler object passed to open() when the operation completes.
- * Data is taken from the specified ACE_Message_Block beginning at its
- * read pointer; the block's read pointer is updated to reflect any
- * data successfully sent when the operation completes.
- *
- * @arg message_block The specified ACE_Message_Block is the source of
- * data that is written. Data will be taken from the
- * block beginning at the block's read pointer.
- * @arg bytes_to_write The maximum number of bytes to write. The actual
- * amount written may be less.
- * @arg act ACT which is passed to the completion handler in
- * the result object.
- * @arg priority Specifies the operation priority. This has an
- * affect on POSIX only. Works like @i nice in Unix.
- * Negative values are not allowed. 0 means priority
- * of the operation same as the process priority.
- * 1 means priority of the operation is one less than
- * process, and so forth. This parameter has no
- * affect on Win32.
- * @arg signal_number The POSIX4 real-time signal number to be used
- * for the operation. signal_number ranges from
- * ACE_SIGRTMIN to ACE_SIGRTMAX. This argument is
- * unused on non-POSIX4 systems.
- *
- * @retval 0 for success.
- * @retval -1 for failure; consult @c errno for further information.
- */
- int write (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void *act = 0,
- int priority = 0,
- int signal_number = ACE_SIGRTMIN);
-
-protected:
- /// Virtual from ACE_Asynch_Operation. Since this class is essentially an
- /// implementation class, simply return 0.
- virtual ACE_Asynch_Operation_Impl *implementation (void) const { return 0; }
-
- /// virtual from ACE_Handler
-
- /// This method is called when BIO write request is completed. It
- /// processes the IO completion and calls do_SSL_state_machine().
- virtual void handle_write_stream
- (const ACE_Asynch_Write_Stream::Result &result);
-
- /// This method is called when BIO read request is completed. It
- /// processes the IO completion and calls do_SSL_state_machine().
- virtual void handle_read_stream
- (const ACE_Asynch_Read_Stream::Result &result);
-
- /// This method is called when all SSL sessions are closed and no
- /// more pending AIOs exist. It also calls users handle_wakeup().
- virtual void handle_wakeup (void);
-
- /**
- * @name SSL State Machine
- */
- //@{
- int do_SSL_state_machine (void);
- int do_SSL_handshake (void);
- int do_SSL_read (void);
- int do_SSL_write(void);
- int do_SSL_shutdown(void);
- //@}
-
- void print_error (int err_ssl,
- const ACE_TCHAR *pText);
-
- int pending_BIO_count (void);
-
- /// This method is called to notify user handler when user's read in
- /// done.
- int notify_read (int bytes_transferred, int error);
-
- /// This method is called to notify user handler when user's write
- /// in done.
- int notify_write (int bytes_transferred, int error);
-
- /// This method is called to notify ourself that SSL session is
- /// shutdown and that there is no more I/O activity now and in the
- /// future.
- int notify_close(void);
-
- /**
- * @name BIO Helpers
- */
- //@{
- int ssl_bio_read (char * buf, size_t len, int & errval);
- int ssl_bio_write (const char * buf, size_t len, int & errval);
- //@}
-
-private:
-
- // Preventing copying through construction or assignment.
- ACE_SSL_Asynch_Stream (ACE_SSL_Asynch_Stream const &);
- ACE_SSL_Asynch_Stream & operator= (ACE_SSL_Asynch_Stream const &);
-
-protected:
-
- /// Stream Type ST_CLIENT/ST_SERVER
- Stream_Type type_;
-
- /// The real file/socket handle
- ACE_HANDLE handle_;
-
- /// The proactor
- ACE_Proactor * proactor_;
-
- /// External,i.e user handler
- ACE_Handler * ext_handler_;
-
- /// External, i.e. read result faked for user
- ACE_SSL_Asynch_Read_Stream_Result * ext_read_result_ ;
-
- /// External, i.e. write result faked for user
- ACE_SSL_Asynch_Write_Stream_Result * ext_write_result_ ;
-
- /// Stream state/flags
- enum Stream_Flag
- {
- /// istream_ open OK
- SF_STREAM_OPEN = 0x0001,
- /// request to SSL shutdown
- SF_REQ_SHUTDOWN = 0x0002,
- /// SSL shutdown finished
- SF_SHUTDOWN_DONE = 0x0004,
- /// Close notification sent
- SF_CLOSE_NTF_SENT = 0x0008,
- /// Stream can be safely destroyed
- SF_DELETE_ENABLE = 0x0010
- };
-
- int flags_;
-
- /// The SSL session.
- SSL * ssl_;
-
- /// The BIO implementation
- BIO * bio_;
-
- /// The real streams which work under the ssl connection.
- /// BIO performs I/O via this streams
- enum BIO_Flag // internal IO flags
- {
- /// End of stream
- BF_EOS = 0x01,
- /// Real AIO in progress
- BF_AIO = 0x02
- };
-
- /**
- * @name Internal stream, buffer and info for BIO read
- */
- //@{
- ACE_Asynch_Read_Stream bio_istream_;
- ACE_Message_Block bio_inp_msg_;
- int bio_inp_errno_;
- int bio_inp_flag_;
- //@}
-
- /**
- * @name Internal stream, buffer and info for BIO write
- */
- //@{
- ACE_Asynch_Write_Stream bio_ostream_;
- ACE_Message_Block bio_out_msg_;
- int bio_out_errno_;
- int bio_out_flag_;
- //@}
-
- /// Mutex to protect work
- ACE_SYNCH_MUTEX mutex_;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* OPENSSL_VERSION_NUMBER > 0x0090581fL && (ACE_WIN32 ||
- ACE_HAS_AIO_CALLS) */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SSL_ASYNCH_STREAM_H */
diff --git a/dep/include/ace/SSL/SSL_Context.h b/dep/include/ace/SSL/SSL_Context.h
deleted file mode 100644
index bc3cb329042..00000000000
--- a/dep/include/ace/SSL/SSL_Context.h
+++ /dev/null
@@ -1,384 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SSL_Context.h
- *
- * $Id: SSL_Context.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Carlos O'Ryan <coryan@ece.uci.edu>
- * @author Ossama Othman <ossama@dre.vanderbilt.edu>
- */
-//=============================================================================
-
-
-#ifndef ACE_SSL_CONTEXT_H
-#define ACE_SSL_CONTEXT_H
-
-#include /**/ "ace/pre.h"
-
-#include "SSL_Export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SString.h"
-
-#ifdef ACE_HAS_THREADS
-# include "ace/Synch_Traits.h"
-#endif /* ACE_HAS_THREADS */
-
-#include <openssl/ssl.h>
-
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_SSL_Export ACE_SSL_Data_File
-{
-public:
-
- /// Default constructor
- ACE_SSL_Data_File (void);
-
- /// Contructor from a file name and the file type.
- ACE_SSL_Data_File (const char *file_name,
- int type = SSL_FILETYPE_PEM);
-
- /// The file name
- const char *file_name (void) const;
-
- /// The type
- int type (void) const;
-
-private:
-
- /// The file name
- ACE_CString file_name_;
-
- /// The type, used by the SSL library to parse the file contents.
- int type_;
-};
-
-// ****************************************************************
-
-
-/**
- * @class ACE_SSL_Context
- *
- * @brief A wrapper for the OpenSSL SSL_CTX related functions.
- *
- * This class provides a wrapper for the SSL_CTX data structure.
- * Since most applications have a single SSL_CTX structure, this class
- * can be used as a singleton.
- */
-class ACE_SSL_Export ACE_SSL_Context
-{
-public:
-
-#ifdef ACE_HAS_THREADS
- typedef ACE_SYNCH_MUTEX lock_type;
-#endif /* ACE_HAS_THREADS */
-
- enum {
- INVALID_METHOD = -1,
- SSLv2_client = 1,
- SSLv2_server,
- SSLv2,
- SSLv3_client,
- SSLv3_server,
- SSLv3,
- SSLv23_client,
- SSLv23_server,
- SSLv23,
- TLSv1_client,
- TLSv1_server,
- TLSv1
- };
-
- /// Constructor
- ACE_SSL_Context (void);
-
- /// Destructor
- ~ACE_SSL_Context (void);
-
- /// The Singleton context, the SSL components use the singleton if
- /// nothing else is available.
- static ACE_SSL_Context *instance (void);
-
- /**
- * Set the CTX mode. The mode can be set only once, afterwards the
- * function has no effect and returns -1.
- * Once the mode is set the underlying SSL_CTX is initialized and
- * the class can be used.
- * If the mode is not set, then the class automatically initializes
- * itself to the default mode.
- */
- int set_mode (int mode = ACE_SSL_Context::SSLv23);
-
- int get_mode (void) const;
-
- /// Get the SSL context
- SSL_CTX *context (void);
-
- /// Get the file name and file format used for the private key
- int private_key_type (void) const;
- const char *private_key_file_name (void) const;
-
- /// Set the private key file.
- /**
- * @note This method should only be called after a certificate has
- * been set since key verification is performed against the
- * certificate, among other things.
- */
- int private_key (const char *file_name, int type = SSL_FILETYPE_PEM);
-
- /// Verify that the private key is valid.
- /**
- * @note This method should only be called after a certificate has
- * been set since key verification is performed against the
- * certificate, among other things.
- */
- int verify_private_key (void);
-
- /// Get the file name and file format used for the certificate file
- int certificate_type (void) const;
- const char *certificate_file_name (void) const;
-
- /// Set the certificate file.
- int certificate (const char *file_name,
- int type = SSL_FILETYPE_PEM);
-
- /// Load certificate from memory rather than a file.
- int certificate (X509* cert);
-
- /**
- * Load the location of the trusted certification authority
- * certificates. Note that CA certificates are stored in PEM format
- * as a sequence of certificates in @a ca_file or as a set of
- * individual certificates in @a ca_dir (or both).
- *
- * Note this method is called by set_mode() to load the default
- * environment settings for @a ca_file and @a ca_dir, if any. This
- * allows for automatic service configuration (and backward
- * compatibility with previous versions).
- *
- * Note that the underlying SSL function will add valid file and
- * directory names to the load location lists maintained as part of
- * the SSL_CTX table. It therefore doesn't make sense to keep a
- * copy of the file and path name of the most recently added
- * @a ca_file or @a ca_path.
- *
- * @param[in] ca_file CA file pathname. Passed to
- * @c SSL_CTX_load_verify_locations() if not
- * 0. If 0, behavior depends on the value of
- * @a use_env_defaults.
- * @param[in] ca_dir CA directory pathname. Passed to
- * @c SSL_CTX_load_verify_locations() if not
- * 0. If 0, behavior depends on the value of
- * @a use_env_defaults.
- * @param[in] use_env_defaults If false, the specified @a ca_file argument
- * is passed to
- * @c SSL_CTX_load_verify_locations(),
- * regardless of its value.
- * If true (the default), additional defaults
- * can be applied to either @a ca_file,
- * @a ca_dir, or both. The following
- * additional defaults are applied when the
- * @a ca_file argument is 0:
- * - The @c SSL_CERT_FILE environment variable
- * will be queried for a file name to use as
- * the @a ca_file argument. The environment
- * variable name to query can be changed by
- * supplying a @c ACE_SSL_CERT_FILE_ENV
- * configuration item when building ACE.
- * - If there is no @c SSL_CERT_FILE in the
- * current environment, the file specified
- * by the @c ACE_DEFAULT_SSL_CERT_FILE ACE
- * configuration item will be used. The
- * default value is "cert.pem" on Windows
- * and "/etc/ssl/cert.pem" on all other
- * platforms.
- * The following additional defaults are
- * applied when the @a ca_dir argument is 0:
- * - The @c SSL_CERT_DIR environment variable
- * will be queried for a file name to use as
- * the @a ca_dir argument. The environment
- * variable name to query can be changed by
- * supplying a @c ACE_SSL_CERT_DIR_ENV
- * configuration item when building ACE.
- * - If there is no @c SSL_CERT_DIR in the
- * current environment, the directory
- * specified by the @c
- * ACE_DEFAULT_SSL_CERT_DIR ACE
- * configuration item will be used. The
- * default value is "certs" on Windows
- * and "/etc/ssl/certs" on all other
- * platforms.
- *
- * @return 0 for success or -1 on error.
- *
- * @see OpenSSL manual SSL_CTX_load_verify_locations(3) for a
- * detailed description of the CA file and directory requirements
- * and processing.
- */
- int load_trusted_ca (const char* ca_file = 0,
- const char* ca_dir = 0,
- bool use_env_defaults = true);
-
- /**
- * Test whether any CA locations have been successfully loaded and
- * return the number of successful attempts.
- *
- * @retval >0 The number of successful CA load attempts.
- * @retval 0 If all CA load attempts have failed.
- */
- int have_trusted_ca (void) const;
-
-
- /**
- * @todo Complete this documentation where elipses(...) are used
- *
- * @doc Use this method when certificate chain verification is
- * required. The default server behaviour is SSL_VERIFY_NONE
- * i.e. client certicates are requested for verified. This method
- * can be used to configure server to request client certificates
- * and perform the certificate verification. If <strict> is set
- * true the client connection is rejected when certificate
- * verification fails. Otherwise the session is accepted with a
- * warning, which is the default behaviour. If <once> is set true
- * (default), certificates are requested only once per session.
- * The last parameter <depth> can be used to set the verification
- * depth.
- *
- * Note for verification to work correctly there should be a valid
- * CA name list set using load_trusted_ca().
- *
- * @see OpenSSL documentation of SSL_CTX_set_verify(3) for details of
- * the verification process.
- *
- * @see OpenSSL documentation ... set_verify_depth(3) ...
- *
- * Note that this method overrides the use of the
- * default_verify_mode() method.
- */
- void set_verify_peer (int strict = 0, int once = 1, int depth = 0);
-
-
- /// TODO: a implementation that will lookup the CTX table for the list
- /// of files and paths etc.
- /// Query the location of trusted certification authority
- /// certificates.
- // const char* ca_file_name(void) const;
- // const char* ca_dir_name(void) const;
-
- /**
- * Set and query the default verify mode for this context, it is
- * inherited by all the ACE_SSL objects created using the context.
- * It can be overriden on a per-ACE_SSL object.
- */
- void default_verify_mode (int mode);
- int default_verify_mode (void) const;
-
- /**
- * @name OpenSSL Random Number Generator Seed Related Methods
- *
- * These are methods that can be used to seed OpenSSL's
- * pseudo-random number generator. These methods can be called more
- * than once.
- */
- //@{
- /// Seed the underlying random number generator. This value should
- /// have at least 128 bits of entropy.
- static int random_seed (const char * seed);
-
- /// Set the Entropy Gathering Daemon (EGD) UNIX domain socket file to
- /// read random seed values from.
- static int egd_file (const char * socket_file);
-
- /**
- * Set the file that contains the random seed value state, and the
- * amount of bytes to read. "-1" bytes causes the entire file to be
- * read.
- */
- static int seed_file (const char * seed_file, long bytes = -1);
- //@}
-
- /// Print SSL error corresponding to the given error code.
- static void report_error (unsigned long error_code);
-
- /// Print the last SSL error for the current thread.
- static void report_error (void);
-
- /**
- * @name Diffie-Hellman (DH) Parameters
- *
- * When using DSS-based certificates, Diffie-Hellman keys need to be
- * exchanged. These must be provided in the form of DH key
- * generation parameters loaded in, or as fixed keys hardcoded into
- * the code itself. ACE_SSL supports loaded parameters.
- *
- */
- //@{
- /**
- * Load Diffie-Hellman parameters from file_name. The specified file can be
- * a standalone file containing only DH parameters (e.g., as created
- * by <code>openssl dhparam</code>), or it can be a certificate which has
- * a PEM-encoded set of DH params concatenated on to i.
- */
- int dh_params (const char *file_name, int type = SSL_FILETYPE_PEM);
- const char *dh_params_file_name () const;
- int dh_params_file_type () const;
- //@}
-
-private:
-
- /// Verify if the context has been initialized or not.
- void check_context (void);
-
- /// @@ More to document
- void ssl_library_init ();
- void ssl_library_fini ();
-
- // = Prevent assignment and copy initialization.
- //@{
- ACE_SSL_Context (const ACE_SSL_Context &);
- ACE_SSL_Context & operator= (const ACE_SSL_Context &);
- //@}
-
-private:
-
- /// The SSL_CTX structure
- SSL_CTX *context_;
-
- /// Cache the mode so we can answer fast
- int mode_;
-
- /// The private key, certificate, and Diffie-Hellman paramters files
- ACE_SSL_Data_File private_key_;
- ACE_SSL_Data_File certificate_;
- ACE_SSL_Data_File dh_params_;
-
- /// The default verify mode.
- int default_verify_mode_;
-
- /// count of successful CA load attempts
- int have_ca_;
-
-#ifdef ACE_HAS_THREADS
- /// Array of mutexes used internally by OpenSSL when the SSL
- /// application is multithreaded.
- static lock_type * locks_;
-#endif /* ACE_HAS_THREADS */
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined(__ACE_INLINE__)
-#include "SSL_Context.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SSL_CONTEXT_H */
diff --git a/dep/include/ace/SSL/SSL_Context.inl b/dep/include/ace/SSL/SSL_Context.inl
deleted file mode 100644
index 990eab38293..00000000000
--- a/dep/include/ace/SSL/SSL_Context.inl
+++ /dev/null
@@ -1,113 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SSL_Context.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_SSL_Data_File::ACE_SSL_Data_File (void)
- : type_ (-1)
-{
-}
-
-ACE_INLINE
-ACE_SSL_Data_File::ACE_SSL_Data_File (const char *file_name,
- int type)
- : file_name_ (file_name),
- type_ (type)
-{
-}
-
-ACE_INLINE const char *
-ACE_SSL_Data_File::file_name (void) const
-{
- return this->file_name_.c_str ();
-}
-
-ACE_INLINE int
-ACE_SSL_Data_File::type (void) const
-{
- return this->type_;
-}
-
-// ****************************************************************
-
-ACE_INLINE void
-ACE_SSL_Context::check_context (void)
-{
- if (this->context_ == 0)
- {
- this->set_mode ();
- }
-
- ::SSL_CTX_set_verify (this->context_, this->default_verify_mode (), 0);
-}
-
-ACE_INLINE SSL_CTX *
-ACE_SSL_Context::context (void)
-{
- this->check_context ();
- return this->context_;
-}
-
-ACE_INLINE int
-ACE_SSL_Context::private_key_type (void) const
-{
- return this->private_key_.type ();
-}
-
-ACE_INLINE const char*
-ACE_SSL_Context::private_key_file_name (void) const
-{
- return this->private_key_.file_name ();
-}
-
-ACE_INLINE int
-ACE_SSL_Context::certificate_type (void) const
-{
- return this->certificate_.type ();
-}
-
-ACE_INLINE const char*
-ACE_SSL_Context::certificate_file_name (void) const
-{
- return this->certificate_.file_name ();
-}
-
-ACE_INLINE int
-ACE_SSL_Context::dh_params_file_type (void) const
-{
- return this->dh_params_.type ();
-}
-
-ACE_INLINE const char*
-ACE_SSL_Context::dh_params_file_name (void) const
-{
- return this->dh_params_.file_name ();
-}
-
-ACE_INLINE void
-ACE_SSL_Context::default_verify_mode (int mode)
-{
- this->default_verify_mode_ = mode;
-}
-
-ACE_INLINE int
-ACE_SSL_Context::default_verify_mode (void) const
-{
- return this->default_verify_mode_;
-}
-
-ACE_INLINE int
-ACE_SSL_Context::get_mode (void) const
-{
- return this->mode_;
-}
-
-ACE_INLINE int
-ACE_SSL_Context::have_trusted_ca (void) const
-{
- return this->have_ca_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SSL/SSL_Export.h b/dep/include/ace/SSL/SSL_Export.h
deleted file mode 100644
index 59bd892e7fd..00000000000
--- a/dep/include/ace/SSL/SSL_Export.h
+++ /dev/null
@@ -1,45 +0,0 @@
-// -*- C++ -*-
-// $Id: SSL_Export.h 80826 2008-03-04 14:51:23Z wotte $
-// Definition for Win32 Export directives.
-// This file is generated automatically by
-// generate_export_file.pl
-// ------------------------------
-#if !defined (ACE_SSL_EXPORT_H)
-#define ACE_SSL_EXPORT_H
-#define ACE_SSL_BUILD_DLL
-
-#include /**/ "ace/config-all.h"
-
-#if defined (ACE_AS_STATIC_LIBS) && !defined (ACE_SSL_HAS_DLL)
-# define ACE_SSL_HAS_DLL 0
-#endif /* ACE_AS_STATIC_LIBS && ACE_SSL_HAS_DLL */
-
-#if !defined (ACE_SSL_HAS_DLL)
-#define ACE_SSL_HAS_DLL 1
-#endif /* ! ACE_SSL_HAS_DLL */
-
-#if defined (ACE_SSL_HAS_DLL)
-# if (ACE_SSL_HAS_DLL == 1)
-# if defined (ACE_SSL_BUILD_DLL)
-# define ACE_SSL_Export ACE_Proper_Export_Flag
-# define ACE_SSL_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
-# define ACE_SSL_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-# else
-# define ACE_SSL_Export ACE_Proper_Import_Flag
-# define ACE_SSL_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
-# define ACE_SSL_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-# endif /* ACE_SSL_BUILD_DLL */
-# else
-# define ACE_SSL_Export
-# define ACE_SSL_SINGLETON_DECLARATION(T)
-# define ACE_SSL_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-# endif /* ! ACE_SSL_HAS_DLL == 1 */
-#else
-# define ACE_SSL_Export
-# define ACE_SSL_SINGLETON_DECLARATION(T)
-# define ACE_SSL_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-#endif /* ACE_SSL_HAS_DLL */
-
-#endif /* ACE_SSL_EXPORT_H */
-
-// End of auto generated file.
diff --git a/dep/include/ace/SSL/SSL_SOCK.h b/dep/include/ace/SSL/SSL_SOCK.h
deleted file mode 100644
index c07a4ecfda3..00000000000
--- a/dep/include/ace/SSL/SSL_SOCK.h
+++ /dev/null
@@ -1,103 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SSL_SOCK.h
- *
- * $Id: SSL_SOCK.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Ossama Othman <ossama@ece.uci.edu>
- */
-//=============================================================================
-
-
-#ifndef ACE_SSL_SOCK_H
-#define ACE_SSL_SOCK_H
-
-#include /**/ "ace/pre.h"
-
-#include "SSL_Export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SOCK.h"
-
-#if defined (ACE_HAS_TEMPLATE_TYPEDEFS)
-# define ACE_SSL_SOCK_ACCEPTOR ACE_SSL_SOCK_Acceptor
-# define ACE_SSL_SOCK_CONNECTOR ACE_SSL_SOCK_Connector
-# define ACE_SSL_SOCK_STREAM ACE_SSL_SOCK_Stream
-#else
-# define ACE_SSL_SOCK_ACCEPTOR ACE_SSL_SOCK_Acceptor, ACE_INET_Addr
-# define ACE_SSL_SOCK_CONNECTOR ACE_SSL_SOCK_Connector, ACE_INET_Addr
-# define ACE_SSL_SOCK_STREAM ACE_SSL_SOCK_Stream, ACE_INET_Addr
-#endif /* ACE_HAS_TEMPLATE_TYPEDEFS */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SSL_SOCK
- *
- * @brief An abstract class that forms the basis for more specific
- * classes, such as "ACE_SSL_SOCK_Acceptor" and
- * "ACE_SSL_SOCK_Stream". Do not instantiate this class.
- *
- * This class provides functions that are common to all of the
- * ACE_SSL_SOCK_* classes. ACE_SSL_SOCK provides the ability
- * to get and set socket options, get the local and remote
- * addresses, and close the socket.
- */
-class ACE_SSL_Export ACE_SSL_SOCK : public ACE_SOCK
-{
-public:
-
- /**
- * Override ACE_SOCK base class implementations with these SSL
- * specific ones.
- */
- //@{
- int set_option (int level,
- int option,
- void *optval,
- int optlen) const;
- int get_option (int level,
- int option,
- void *optval,
- int *optlen) const;
- int enable (int value) const;
- int disable (int value) const;
- void set_handle (ACE_HANDLE);
- ACE_HANDLE get_handle (void) const;
- int control (int cmd, void *arg) const;
- //@}
-
-protected:
-
- /// Default constructor is private to prevent instances of this class
- /// from being defined.
- ACE_SSL_SOCK (void);
-
- /// Destructor
- /**
- * Not a virtual destructor. Protected destructor to prevent
- * operator delete() from being called through a base class
- * ACE_SSL_SOCK pointer/reference.
- */
- ~ACE_SSL_SOCK (void);
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "SSL_SOCK.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SSL_SOCK_H */
-
-
-
-
diff --git a/dep/include/ace/SSL/SSL_SOCK.inl b/dep/include/ace/SSL/SSL_SOCK.inl
deleted file mode 100644
index e24e12b9258..00000000000
--- a/dep/include/ace/SSL/SSL_SOCK.inl
+++ /dev/null
@@ -1,71 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SSL_SOCK.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_sys_socket.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE void
-ACE_SSL_SOCK::set_handle (ACE_HANDLE fd)
-{
- this->ACE_SOCK::set_handle (fd);
-}
-
-ACE_INLINE ACE_HANDLE
-ACE_SSL_SOCK::get_handle (void) const
-{
- // return this->ssl_ ? (ACE_HANDLE) ::SSL_get_fd (this->ssl_) : ACE_INVALID_HANDLE;
- return this->ACE_SOCK::get_handle ();
-}
-
-
-ACE_INLINE int
-ACE_SSL_SOCK::control (int cmd, void *arg) const
-{
- return ACE_OS::ioctl (this->get_handle (), cmd, arg);
-}
-
-ACE_INLINE int
-ACE_SSL_SOCK::set_option (int level,
- int option,
- void *optval,
- int optlen) const
-{
-// switch (option)
-// {
-// case SO_SNDBUF:
-// return ::BIO_set_write_buffer_size (this->io_bio_, *((int *) optval));
-// case SO_RCVCBUF:
-// return ::BIO_set_read_buffer_size (this->io_bio_, *((int *) optval));
-// default:
- return ACE_OS::setsockopt (this->get_handle (),
- level,
- option, (char *) optval,
- optlen);
-// }
-}
-
-// Provides access to the ACE_OS::getsockopt system call.
-
-ACE_INLINE int
-ACE_SSL_SOCK::get_option (int level,
- int option,
- void *optval,
- int *optlen) const
-{
-// switch (option)
-// {
-// case SO_SNDBUF:
-// return ::BIO_get_write_buffer_size (this->io_bio_, *((int *) optval));
-// case SO_RCVCBUF:
-// return ::BIO_get_read_buffer_size (this->io_bio_, *((int *) optval));
-// default:
- return ACE_OS::getsockopt (this->get_handle (),
- level,
- option, (char *) optval,
- optlen);
-// }
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SSL/SSL_SOCK_Acceptor.h b/dep/include/ace/SSL/SSL_SOCK_Acceptor.h
deleted file mode 100644
index 997378bf329..00000000000
--- a/dep/include/ace/SSL/SSL_SOCK_Acceptor.h
+++ /dev/null
@@ -1,197 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SSL_SOCK_Acceptor.h
- *
- * $Id: SSL_SOCK_Acceptor.h 81826 2008-06-02 15:29:53Z schmidt $
- *
- * @author John Heitmann
- * @author Chris Zimman
- * @author Ossama Othman <ossama@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SSL_SOCK_ACCEPTOR_H
-#define ACE_SSL_SOCK_ACCEPTOR_H
-
-#include /**/ "ace/pre.h"
-
-#include "SSL_Export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "SSL_SOCK_Stream.h"
-
-#include "ace/SOCK_Acceptor.h"
-#include "ace/OS_QoS.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SSL_SOCK_Acceptor
- *
- * @brief Defines a factory that creates new @c ACE_SSL_SOCK_Stream
- * objects passively.
- *
- * The ACE_SSL_SOCK_Acceptor has its own @c ACE_SOCK_Acceptor
- * which handles the basic socket acceptance. This class is a
- * wrapper which adds the SSL acceptance handshake handling.
- * Since SSL is record oriented, some additional steps must be taken
- * after the basic socket acceptance to complete the SSL handshake that
- * takes place at session establishment.
- *
- * @note The user must currently ensure that only one thread services
- * a given SSL session at any given time since some underlying
- * SSL implementations, such as OpenSSL, are not entirely
- * thread-safe or reentrant.
- */
-class ACE_SSL_Export ACE_SSL_SOCK_Acceptor : public ACE_SSL_SOCK
-{
-public:
-
- /// Default constructor.
- ACE_SSL_SOCK_Acceptor (void);
-
- /// Default destructor.
- ~ACE_SSL_SOCK_Acceptor (void);
-
- /**
- * Initiate a passive mode SSL/BSD-style acceptor socket.
- * @param local_sap The address that we're going to listen for
- * connections on. If this is @c ACE_Addr::sap_any,
- * this socket listens on an the "any" IP address
- * and selects an unused port. To find out what port
- * was selected, call this object's
- * @c ACE_SOCK::get_local_addr(ACE_Addr&) method
- * upon return.
- */
- ACE_SSL_SOCK_Acceptor (const ACE_Addr &local_sap,
- int reuse_addr = 0,
- int protocol_family = PF_UNSPEC,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 0);
-
- /**
- * Initiate a passive-mode QoS-enabled acceptor socket.
- * @param local_sap The address that we're going to listen for
- * connections on. If this is @c ACE_Addr::sap_any,
- * this socket listens on an the "any" IP address
- * and selects an unused port. To find out what port
- * was selected, call this object's
- * @c ACE_SOCK::get_local_addr(ACE_Addr&) method
- * upon return.
- */
- ACE_SSL_SOCK_Acceptor (const ACE_Addr &local_sap,
- ACE_Protocol_Info *protocolinfo,
- ACE_SOCK_GROUP g,
- u_long flags,
- int reuse_addr,
- int protocol_family = PF_UNSPEC,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 0);
-
- /**
- * Initiate a passive mode SSL/BSD-style acceptor socket.
- * @param local_sap The address that we're going to listen for
- * connections on. If this is @c ACE_Addr::sap_any,
- * this socket listens on an the "any" IP address
- * and selects an unused port. To find out what port
- * was selected, call this object's
- * @c ACE_SOCK::get_local_addr(ACE_Addr&) method
- * upon return.
- *
- * @return 0 if success; -1 for failure (errno contains error code).
- */
- int open (const ACE_Addr &local_sap,
- int reuse_addr = 0,
- int protocol_family = PF_UNSPEC,
- int backlog = ACE_DEFAULT_BACKLOG,
- int protocol = 0);
-
- /// Close the listening socket.
- int close (void);
-
- /**
- * @name Passive Connection "accept" Methods
- *
- * These are the canonical methods exposed by the Acceptor pattern.
- */
- //@{
- /**
- * Accept a new ACE_SSL_SOCK_Stream connection. On successful return,
- * the socket has been accepted and the SSL handshake has been completed.
- * @param new_stream The @c ACE_SSL_SOCK_Stream object that will receive
- * the new SSL socket.
- * @param remote_addr Pointer to an @c ACE_INET_Addr object that will
- * receive the address of the peer that connected.
- * @param timeout The maximum time to wait for the combined socket
- * acceptance and handshake completion. 0 means
- * block forever, a timeout of {0, 0} means poll.
- * @param restart 1 means "restart if interrupted," that is,
- * if errno == EINTR.
- *
- * @return 0 if success; -1 for failure (errno contains error code).
- */
- int accept (ACE_SSL_SOCK_Stream &new_stream,
- ACE_Addr *remote_addr = 0,
- ACE_Time_Value *timeout = 0,
- int restart = 1,
- int reset_new_handle = 0) const;
-
- /**
- * Accept a new ACE_SSL_SOCK_Stream connection using the RVSP QoS
- * information in qos_params.
- * @param new_stream The @c ACE_SSL_SOCK_Stream object that will receive
- * the new SSL socket.
- * @param remote_addr Pointer to an @c ACE_INET_Addr object that will
- * receive the address of the peer that connected.
- * @param timeout The maximum time to wait for the combined socket
- * acceptance and handshake completion. 0 means
- * block forever, a timeout of {0, 0} means poll.
- * @param restart 1 means "restart if interrupted," that is,
- * if errno == EINTR.
- *
- * @return 0 if success; -1 for failure (errno contains error code).
- */
- int accept (ACE_SSL_SOCK_Stream &new_stream,
- ACE_Accept_QoS_Params qos_params,
- ACE_Addr *remote_addr = 0,
- ACE_Time_Value *timeout = 0,
- int restart = 1,
- int reset_new_handle = 0) const;
- //@}
-
- /// Meta-type info
- //@{
- typedef ACE_INET_Addr PEER_ADDR;
- typedef ACE_SSL_SOCK_Stream PEER_STREAM;
- //@}
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
-
- /// Complete SSL passive connection establishment.
- int ssl_accept (ACE_SSL_SOCK_Stream &new_stream,
- ACE_Time_Value *timeout) const;
-
-private:
-
- /// The BSD-socket workhorse
- ACE_SOCK_Acceptor acceptor_;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "SSL_SOCK_Acceptor.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SSL_SOCK_ACCEPTOR_H */
diff --git a/dep/include/ace/SSL/SSL_SOCK_Acceptor.inl b/dep/include/ace/SSL/SSL_SOCK_Acceptor.inl
deleted file mode 100644
index 318d66d5c25..00000000000
--- a/dep/include/ace/SSL/SSL_SOCK_Acceptor.inl
+++ /dev/null
@@ -1,85 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SSL_SOCK_Acceptor.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_SSL_SOCK_Acceptor::ACE_SSL_SOCK_Acceptor (void)
- : acceptor_ ()
-{
- ACE_TRACE ("ACE_SSL_SOCK_Acceptor::ACE_SSL_SOCK_Acceptor");
-}
-
-ACE_INLINE
-ACE_SSL_SOCK_Acceptor::ACE_SSL_SOCK_Acceptor (const ACE_Addr &local_sap,
- int reuse_addr,
- int protocol_family,
- int backlog,
- int protocol)
- : acceptor_ (local_sap,
- reuse_addr,
- protocol_family,
- backlog,
- protocol)
-{
- ACE_TRACE ("ACE_SSL_SOCK_Acceptor::ACE_SSL_SOCK_Acceptor");
-
- this->set_handle (this->acceptor_.get_handle ());
-}
-
-ACE_INLINE
-ACE_SSL_SOCK_Acceptor::ACE_SSL_SOCK_Acceptor (const ACE_Addr &local_sap,
- ACE_Protocol_Info *protocolinfo,
- ACE_SOCK_GROUP g,
- u_long flags,
- int reuse_addr,
- int protocol_family,
- int backlog,
- int protocol)
- : acceptor_ (local_sap,
- protocolinfo,
- g,
- flags,
- reuse_addr,
- protocol_family,
- backlog,
- protocol)
-{
- ACE_TRACE ("ACE_SSL_SOCK_Acceptor::ACE_SSL_SOCK_Acceptor");
-
- this->set_handle (this->acceptor_.get_handle ());
-}
-
-ACE_INLINE int
-ACE_SSL_SOCK_Acceptor::open (const ACE_Addr &local_sap,
- int reuse_addr,
- int protocol_family,
- int backlog,
- int protocol)
-{
- ACE_TRACE ("ACE_SSL_SOCK_Acceptor::open");
- if (this->acceptor_.open (local_sap,
- reuse_addr,
- protocol_family,
- backlog,
- protocol) != 0)
- return -1;
- else
- this->set_handle (this->acceptor_.get_handle ());
-
- return 0;
-}
-
-ACE_INLINE int
-ACE_SSL_SOCK_Acceptor::close (void)
-{
- ACE_TRACE ("ACE_SSL_SOCK_Acceptor::close ()");
-
- int result = this->acceptor_.close ();
- this->set_handle (ACE_INVALID_HANDLE);
-
- return result;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SSL/SSL_SOCK_Connector.h b/dep/include/ace/SSL/SSL_SOCK_Connector.h
deleted file mode 100644
index f1708bf127d..00000000000
--- a/dep/include/ace/SSL/SSL_SOCK_Connector.h
+++ /dev/null
@@ -1,318 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SSL_SOCK_Connector.h
- *
- * $Id: SSL_SOCK_Connector.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Ossama Othman <ossama@uci.edu>
- * @author Carlos O'Ryan <coryan@uci.edu>
- * @author John Heitmann
- * @author Chris Zimman
- */
-//=============================================================================
-
-
-#ifndef ACE_SSL_SOCK_CONNECTOR_H
-#define ACE_SSL_SOCK_CONNECTOR_H
-
-#include /**/ "ace/pre.h"
-
-#include "SSL_Export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "SSL_SOCK_Stream.h"
-
-#include "ace/SOCK_Connector.h"
-#include "ace/OS_QoS.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SSL_SOCK_Connector
- *
- * @brief Defines a factory that creates new <ACE_SSL_SOCK_Stream>s
- * actively.
- *
- * The ACE_SSL_SOCK_Connector doesn't have a socket of its own,
- * i.e., it simply "borrows" the one from the ACE_SSL_SOCK_Stream
- * that's being connected. The reason for this is that the
- * underlying socket API doesn't use a "factory" socket to connect
- * "data-mode" sockets. Therefore, there's no need to inherit
- * ACE_SSL_SOCK_Connector from ACE_SSL_SOCK.
- *
- * Since SSL is record-oriented, some additional work is done after
- * the plain socket is connected.
- *
- * @note The user must currently ensure that only one thread services
- * a given SSL session at any given time since some underlying
- * SSL implementations, such as OpenSSL, are not entirely
- * thread-safe or reentrant.
- */
-class ACE_SSL_Export ACE_SSL_SOCK_Connector
-{
-
-public:
-
- /// Default constructor.
- ACE_SSL_SOCK_Connector (void);
-
- /**
- * Actively connect to a peer, producing a connected @c ACE_SSL_SOCK_Stream
- * object if the connection succeeds. This method performs both the
- * initial socket connect and the SSL handshake.
- *
- * @param new_stream The @c ACE_SSL_SOCK_Stream object that will be
- * connected to the peer.
- * @param remote_sap The address that we are trying to connect to.
- * The protocol family of @c remote_sap is used for
- * the connected socket. That is, if @c remote_sap
- * contains an IPv6 address, a socket with family
- * PF_INET6 will be used, else it will be PF_INET.
- * @param timeout Pointer to an @c ACE_Time_Value object with amount
- * of time to wait to connect. If the pointer is 0
- * then the call blocks until the connection attempt
- * is complete, whether it succeeds or fails. If
- * *timeout == {0, 0} then the connection is done
- * using nonblocking mode. In this case, if the
- * connection can't be made immediately, this method
- * returns -1 and errno == EWOULDBLOCK.
- * If *timeout > {0, 0} then this is the maximum amount
- * of time to wait before timing out; if the specified
- * amount of time passes before the connection is made,
- * this method returns -1 and errno == ETIME. Note
- * the difference between this case and when a blocking
- * connect is attmpted that TCP times out - in the latter
- * case, errno will be ETIMEDOUT.
- * @param local_sap (optional) The local address to bind to. If it's
- * the default value of @c ACE_Addr::sap_any then the
- * OS will choose an unused port.
- * @param reuse_addr (optional) If the value is 1, the local address
- * (@c local_sap) is reused, even if it hasn't been
- * cleaned up yet.
- * @param flags Ignored.
- * @param perms Ignored.
- *
- * @return Returns 0 if the connection succeeds. If it fails,
- * -1 is returned and errno contains a specific error
- * code.
- */
- ACE_SSL_SOCK_Connector (ACE_SSL_SOCK_Stream &new_stream,
- const ACE_Addr &remote_sap,
- const ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = 0,
- int perms = 0);
-
- /**
- * Actively connect to a peer, producing a connected @c ACE_SSL_SOCK_Stream
- * object if the connection succeeds. This method performs both the
- * initial socket connect and the SSL handshake.
- *
- * @param new_stream The @c ACE_SSL_SOCK_Stream object that will be
- * connected to the peer.
- * @param remote_sap The address that we are trying to connect to.
- * The protocol family of @c remote_sap is used for
- * the connected socket. That is, if @c remote_sap
- * contains an IPv6 address, a socket with family
- * PF_INET6 will be used, else it will be PF_INET.
- * @param qos_params Contains QoS parameters that are passed to the
- * IntServ (RSVP) and DiffServ protocols.
- * @see ACE_QoS_Params.
- * @param timeout Pointer to an @c ACE_Time_Value object with amount
- * of time to wait to connect. If the pointer is 0
- * then the call blocks until the connection attempt
- * is complete, whether it succeeds or fails. If
- * *timeout == {0, 0} then the connection is done
- * using nonblocking mode. In this case, if the
- * connection can't be made immediately, this method
- * returns -1 and errno == EWOULDBLOCK.
- * If *timeout > {0, 0} then this is the maximum amount
- * of time to wait before timing out; if the specified
- * amount of time passes before the connection is made,
- * this method returns -1 and errno == ETIME. Note
- * the difference between this case and when a blocking
- * connect is attmpted that TCP times out - in the latter
- * case, errno will be ETIMEDOUT.
- * @param local_sap (optional) The local address to bind to. If it's
- * the default value of @c ACE_Addr::sap_any then the
- * OS will choose an unused port.
- * @param reuse_addr (optional) If the value is 1, the local address
- * (@c local_sap) is reused, even if it hasn't been
- * cleaned up yet.
- * @param flags Ignored.
- * @param perms Ignored.
- *
- * @return Returns 0 if the connection succeeds. If it fails,
- * -1 is returned and errno contains a specific error
- * code.
- */
- ACE_SSL_SOCK_Connector (ACE_SSL_SOCK_Stream &new_stream,
- const ACE_Addr &remote_sap,
- ACE_QoS_Params qos_params,
- const ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- ACE_Protocol_Info *protocolinfo = 0,
- ACE_SOCK_GROUP g = 0,
- u_long flags = 0,
- int reuse_addr = 0,
- int perms = 0);
-
- /// Default dtor.
- ~ACE_SSL_SOCK_Connector (void);
-
- /**
- * Actively connect to a peer, producing a connected @c ACE_SSL_SOCK_Stream
- * object if the connection succeeds. This method performs both the
- * initial socket connect and the SSL handshake.
- *
- * @param new_stream The @c ACE_SSL_SOCK_Stream object that will be
- * connected to the peer.
- * @param remote_sap The address that we are trying to connect to.
- * The protocol family of @c remote_sap is used for
- * the connected socket. That is, if @c remote_sap
- * contains an IPv6 address, a socket with family
- * PF_INET6 will be used, else it will be PF_INET.
- * @param timeout Pointer to an @c ACE_Time_Value object with amount
- * of time to wait to connect. If the pointer is 0
- * then the call blocks until the connection attempt
- * is complete, whether it succeeds or fails. If
- * *timeout == {0, 0} then the connection is done
- * using nonblocking mode. In this case, if the
- * connection can't be made immediately, this method
- * returns -1 and errno == EWOULDBLOCK.
- * If *timeout > {0, 0} then this is the maximum amount
- * of time to wait before timing out; if the specified
- * amount of time passes before the connection is made,
- * this method returns -1 and errno == ETIME. Note
- * the difference between this case and when a blocking
- * connect is attmpted that TCP times out - in the latter
- * case, errno will be ETIMEDOUT.
- * @param local_sap (optional) The local address to bind to. If it's
- * the default value of @c ACE_Addr::sap_any then the
- * OS will choose an unused port.
- * @param reuse_addr (optional) If the value is 1, the local address
- * (@c local_sap) is reused, even if it hasn't been
- * cleaned up yet.
- * @param flags Ignored.
- * @param perms Ignored.
- *
- * @return Returns 0 if the connection succeeds. If it fails,
- * -1 is returned and errno contains a specific error
- * code.
- */
- int connect (ACE_SSL_SOCK_Stream &new_stream,
- const ACE_Addr &remote_sap,
- const ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = 0,
- int perms = 0);
-
- /**
- * Actively connect to a peer, producing a connected @c ACE_SSL_SOCK_Stream
- * object if the connection succeeds. This method performs both the
- * initial socket connect and the SSL handshake.
- *
- * @param new_stream The @c ACE_SSL_SOCK_Stream object that will be
- * connected to the peer.
- * @param remote_sap The address that we are trying to connect to.
- * The protocol family of @c remote_sap is used for
- * the connected socket. That is, if @c remote_sap
- * contains an IPv6 address, a socket with family
- * PF_INET6 will be used, else it will be PF_INET.
- * @param qos_params Contains QoS parameters that are passed to the
- * IntServ (RSVP) and DiffServ protocols.
- * @see ACE_QoS_Params.
- * @param timeout Pointer to an @c ACE_Time_Value object with amount
- * of time to wait to connect. If the pointer is 0
- * then the call blocks until the connection attempt
- * is complete, whether it succeeds or fails. If
- * *timeout == {0, 0} then the connection is done
- * using nonblocking mode. In this case, if the
- * connection can't be made immediately, this method
- * returns -1 and errno == EWOULDBLOCK.
- * If *timeout > {0, 0} then this is the maximum amount
- * of time to wait before timing out; if the specified
- * amount of time passes before the connection is made,
- * this method returns -1 and errno == ETIME. Note
- * the difference between this case and when a blocking
- * connect is attmpted that TCP times out - in the latter
- * case, errno will be ETIMEDOUT.
- * @param local_sap (optional) The local address to bind to. If it's
- * the default value of @c ACE_Addr::sap_any then the
- * OS will choose an unused port.
- * @param reuse_addr (optional) If the value is 1, the local address
- * (@c local_sap) is reused, even if it hasn't been
- * cleaned up yet.
- * @param flags Ignored.
- * @param perms Ignored.
- *
- * @return Returns 0 if the connection succeeds. If it fails,
- * -1 is returned and errno contains a specific error
- * code.
- */
- int connect (ACE_SSL_SOCK_Stream &new_stream,
- const ACE_Addr &remote_sap,
- ACE_QoS_Params qos_params,
- const ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- ACE_Protocol_Info *protocolinfo = 0,
- ACE_SOCK_GROUP g = 0,
- u_long flags = 0,
- int reuse_addr = 0,
- int perms = 0);
-
- /**
- * Try to complete a non-blocking connection.
- * If connection completion is successful then <new_stream> contains
- * the connected ACE_SSL_SOCK_Stream. If <remote_sap> is non-NULL
- * then it will contain the address of the connected peer.
- */
- int complete (ACE_SSL_SOCK_Stream &new_stream,
- ACE_Addr *remote_sap = 0,
- const ACE_Time_Value *timeout = 0);
-
- /// Resets any event associations on this handle
- int reset_new_handle (ACE_HANDLE handle);
-
- /// Meta-type info
- //@{
- typedef ACE_INET_Addr PEER_ADDR;
- typedef ACE_SSL_SOCK_Stream PEER_STREAM;
- //@}
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
-
- /// Complete non-blocking SSL active connection.
- int ssl_connect (ACE_SSL_SOCK_Stream &new_stream,
- const ACE_Time_Value *timeout);
-
-private:
-
- /// The class that does all of the non-secure socket connection.
- /// It is default contructed, and subsequently used by connect().
- ACE_SOCK_Connector connector_;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "SSL_SOCK_Connector.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SSL_SOCK_CONNECTOR_H */
diff --git a/dep/include/ace/SSL/SSL_SOCK_Connector.inl b/dep/include/ace/SSL/SSL_SOCK_Connector.inl
deleted file mode 100644
index 58978966dcf..00000000000
--- a/dep/include/ace/SSL/SSL_SOCK_Connector.inl
+++ /dev/null
@@ -1,28 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SSL_SOCK_Connector.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_SSL_SOCK_Connector::ACE_SSL_SOCK_Connector (void)
- : connector_ ()
-{
- ACE_TRACE ("ACE_SSL_SOCK_Connector::ACE_SSL_SOCK_Connector");
-}
-
-ACE_INLINE int
-ACE_SSL_SOCK_Connector::reset_new_handle (ACE_HANDLE handle)
-{
- ACE_TRACE ("ACE_SSL_SOCK_Connector::reset_new_handle");
- return this->connector_.reset_new_handle (handle);
-}
-
-ACE_INLINE void
-ACE_SSL_SOCK_Connector::dump (void) const
-{
- ACE_TRACE ("ACE_SSL_SOCK_Connector::dump");
- this->connector_.dump ();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SSL/SSL_SOCK_Stream.h b/dep/include/ace/SSL/SSL_SOCK_Stream.h
deleted file mode 100644
index be78b924299..00000000000
--- a/dep/include/ace/SSL/SSL_SOCK_Stream.h
+++ /dev/null
@@ -1,321 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SSL_SOCK_Stream.h
- *
- * $Id: SSL_SOCK_Stream.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Ossama Othman <ossama@uci.edu>
- * @author Carlos O'Ryan <coryan@uci.edu>
- * @author John Heitmann
- */
-//=============================================================================
-
-
-#ifndef ACE_SSL_SOCK_STREAM_H
-#define ACE_SSL_SOCK_STREAM_H
-
-#include /**/ "ace/pre.h"
-
-#include "SSL_Export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// This must be included before any <openssl> include on LynxOS
-#include "ace/os_include/os_stdio.h"
-
-#include <openssl/err.h>
-
-#include "SSL_SOCK.h"
-#include "SSL_Context.h"
-
-#include "ace/SOCK_Stream.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SSL_SOCK_Stream
- *
- * @brief Defines methods in the ACE_SSL_SOCK_Stream abstraction.
- *
- * This class encapsulates the methods and functionality necessary to
- * send and receive data over TLS/SSL.
- * @par
- * Since SSL is record-oriented, some additional steps must be taken
- * to make the ACE_SSL_SOCK_Stream interact properly with the
- * Reactor (if one is used) when performing non-blocking IO. In
- * particular, if ::SSL_pending (ssl), where "ssl" is a pointer to the
- * SSL data structure returned from ACE_SSL_SOCK_Stream::ssl(),
- * returns a non-zero value then the event handler that calls the IO
- * methods in this class should return a value greater than zero to
- * force the Reactor to invoke the event handler before polling for
- * additional events (e.g. blocking on select()).
- *
- * @note The user must currently ensure that only one thread services
- * a given SSL session at any given time since underlying SSL
- * implementations, such as OpenSSL, are not entirely
- * thread-safe or reentrant.
- */
-class ACE_SSL_Export ACE_SSL_SOCK_Stream : public ACE_SSL_SOCK
-{
-public:
-
- /// Constructor
- /**
- * @param context Pointer to @c ACE_SSL_Context instance containing
- * the OpenSSL @c SSL data structure to be associated
- * with this @c ACE_SSL_SOCK_Stream. The @c SSL data
- * structure will be copied to make it at least
- * logically independent of the supplied @a context.
- */
- ACE_SSL_SOCK_Stream (ACE_SSL_Context *context =
- ACE_SSL_Context::instance ());
-
- /// Destructor
- ~ACE_SSL_SOCK_Stream (void);
-
- /// Send an n byte buffer to the ssl socket using the semantics of
- /// send(3n).
- /**
- * ACE_SSL supports no flags for sending at this time.
- */
- ssize_t send (const void *buf,
- size_t n,
- int flags) const;
-
- /// Recv an n byte buffer from the ssl socket using the semantics of
- /// recv(3n).
- /**
- * ACE_SSL supports MSG_PEEK, but no other flags at this time.
- */
- ssize_t recv (void *buf,
- size_t n,
- int flags) const;
-
- /// Send an n byte buffer to the ssl socket using the semantics of
- /// write(2).
- ssize_t send (const void *buf,
- size_t n) const;
-
- /// Recv an n byte buffer from the ssl socket using the semantics of
- /// read(2).
- ssize_t recv (void *buf,
- size_t n) const;
-
- /// Send an iovec of size n to the ssl socket.
- /**
- * Note that it is not possible to perform a "scattered" write with
- * the underlying OpenSSL implementation. As such, the expected
- * semantics are not fully reproduced with this implementation.
- */
- ssize_t sendv (const iovec iov[],
- size_t n,
- const ACE_Time_Value *timeout = 0) const;
-
- /**
- * Allows a client to read from a socket without having to provide a
- * buffer to read. This method determines how much data is in the
- * socket, allocates a buffer of this size, reads in the data, and
- * returns the number of bytes read. The caller is responsible for
- * deleting the member in the iov_base field of io_vec using
- * delete [] io_vec->iov_base.
- */
- ssize_t recvv (iovec *io_vec,
- const ACE_Time_Value *timeout = 0) const;
-
- /**
- * Wait to timeout amount of time to send up to n bytes into buf
- * (uses the send() call). If send() times out -1 is returned with
- * errno == ETIME. If it succeeds the number of bytes sent is
- * returned. No flags are supported.
- */
- ssize_t send (const void *buf,
- size_t n,
- int flags,
- const ACE_Time_Value *timeout) const;
-
- /**
- * Wait up to timeout amount of time to receive up to n bytes into
- * buf (uses the recv() call). If recv() times out -1 is returned
- * with errno == ETIME. If it succeeds the number of bytes received
- * is returned. MSG_PEEK is the only supported flag.
- */
- ssize_t recv (void *buf,
- size_t n,
- int flags,
- const ACE_Time_Value *timeout) const;
-
- /**
- * Wait to to timeout amount of time to send up to n bytes into
- * buf (uses the send() call). If send() times out
- * a -1 is returned with errno == ETIME. If it succeeds the
- * number of bytes sent is returned.
- */
- ssize_t send (const void *buf,
- size_t n,
- const ACE_Time_Value *timeout) const;
-
- /**
- * Wait up to timeout amount of time to receive up to n bytes
- * into buf (uses the recv() call). If recv() times
- * out a -1 is returned with @c errno == ETIME. If it succeeds the
- * number of bytes received is returned.
- */
- ssize_t recv (void *buf,
- size_t n,
- const ACE_Time_Value *timeout) const;
-
- /// Send n varargs messages to the connected ssl socket.
- ssize_t send (size_t n,
- ...) const;
-
- /// Recv n varargs messages to the connected ssl socket.
- ssize_t recv (size_t n,
- ...) const;
-
- /// Send n bytes, keep trying until n are sent.
- ssize_t send_n (const void *buf, int n) const;
-
- /// Recv n bytes, keep trying until n are received.
- ssize_t recv_n (void *buf, int n) const;
-
- /**
- * @note In the following four methods, only MSG_PEEK is supported
- * for recv_n(), and no flags are supported for send_n().
- */
- //@{
- /// Send n bytes, keep trying until n are sent.
- ssize_t send_n (const void *buf, int n, int flags) const;
-
- /// Recv n bytes, keep trying until n are sent.
- ssize_t recv_n (void *buf, int n, int flags) const;
-
- /**
- * Try to send exactly len bytes into buf (uses the send() call).
- * If send() blocks for longer than timeout the number of bytes
- * actually sent is returned with errno == ETIME. If a timeout does
- * not occur, send_n() return len (i.e., the number of bytes
- * requested to be sent).
- */
- ssize_t send_n (const void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred = 0) const;
-
- /**
- * Try to receive exactly len bytes into buf (uses the recv() call).
- * The ACE_Time_Value indicates how long to blocking trying to
- * receive. If timeout == 0, the caller will block until action is
- * possible, else will wait until the relative time specified in
- * timeout elapses). If recv() blocks for longer than timeout the
- * number of bytes actually read is returned with errno == ETIME.
- * If a timeout does not occur, recv_n return len (i.e., the number
- * of bytes requested to be read).
- */
- ssize_t recv_n (void *buf,
- size_t len,
- int flags,
- const ACE_Time_Value *timeout,
- size_t *bytes_transferred = 0) const;
- //@}
-
- /**
- * Send an iovec of size n to the connected socket. Will block
- * until all bytes are sent or an error occurs.
- */
- ssize_t sendv_n (const iovec iov[],
- size_t n) const;
-
- /// Receive an iovec of size n to the connected socket.
- ssize_t recvv_n (iovec iov[],
- size_t n) const;
-
-
- /**
- * Selectively close endpoints.
- */
- //@{
- /// Close down the reader.
- int close_reader (void);
-
- /// Close down the writer.
- int close_writer (void);
- //@}
-
- ///Close down the socket.
- int close (void);
-
- /// Meta-type info
- typedef ACE_INET_Addr PEER_ADDR;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /// Overridden set_handle() method.
- /**
- * Only an ACE_SSL_SOCK_Acceptor or ACE_SSL_SOCK_Connector should
- * access this method since some state in the underlying "ssl_" data
- * structure is set during SSL connection establishment.
- */
- void set_handle (ACE_HANDLE fd);
-
- /// Return a pointer to the underlying SSL structure.
- SSL *ssl (void) const;
-
- /**
- * Return the address of the remotely connected peer (if there is
- * one), in the referenced <ACE_Addr>. Returns 0 if successful, else
- * -1.
- *
- * @note If the TCP connection has been completed but the SSL
- * connection has not been completed yet, -1 will be
- * returned.
- */
- int get_remote_addr (ACE_Addr &) const;
-
- /// Return the underlying ACE_SOCK_Stream which ACE_SSL runs atop of.
- ACE_SOCK_Stream & peer (void);
-
-protected:
-
- /// Underlying send() helper method common to all public send()
- /// methods.
- ssize_t send_i (const void *buf,
- size_t n,
- int flags) const;
-
- /// Underlying send() helper method common to all public send()
- /// methods.
- ssize_t recv_i (void *buf,
- size_t n,
- int flags,
- const ACE_Time_Value *timeout) const;
-
-private:
-
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_SSL_SOCK_Stream &))
- ACE_UNIMPLEMENTED_FUNC (ACE_SSL_SOCK_Stream (const ACE_SSL_SOCK_Stream &))
-
-protected:
-
- /// The SSL session.
- SSL *ssl_;
-
- /// The stream which works under the ssl connection.
- ACE_SOCK_Stream stream_;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "SSL_SOCK_Stream.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SSL_SOCK_STREAM_H */
diff --git a/dep/include/ace/SSL/SSL_SOCK_Stream.inl b/dep/include/ace/SSL/SSL_SOCK_Stream.inl
deleted file mode 100644
index 71661308f61..00000000000
--- a/dep/include/ace/SSL/SSL_SOCK_Stream.inl
+++ /dev/null
@@ -1,330 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SSL_SOCK_Stream.inl 82579 2008-08-10 23:03:06Z mitza $
-
-#include "ace/OS_NS_errno.h"
-#include "ace/Truncate.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE void
-ACE_SSL_SOCK_Stream::set_handle (ACE_HANDLE fd)
-{
- if (this->ssl_ == 0 || fd == ACE_INVALID_HANDLE)
- {
- this->ACE_SSL_SOCK::set_handle (ACE_INVALID_HANDLE);
- return;
- }
- else
- {
- (void) ::SSL_set_fd (this->ssl_, (int) fd);
- this->ACE_SSL_SOCK::set_handle (fd);
- this->stream_.set_handle (fd);
- }
-}
-
-ACE_INLINE ssize_t
-ACE_SSL_SOCK_Stream::send_i (const void *buf,
- size_t n,
- int flags) const
-{
- ACE_TRACE ("ACE_SSL_SOCK_Stream::send_i");
-
- // NOTE: Caller must provide thread-synchronization.
-
- // No send flags are supported in SSL.
- if (flags != 0)
- {
- ACE_NOTSUP_RETURN (-1);
- }
-
- int const bytes_sent = ::SSL_write (this->ssl_,
- static_cast<const char *> (buf),
- ACE_Utils::truncate_cast<int> (n));
-
- switch (::SSL_get_error (this->ssl_, bytes_sent))
- {
- case SSL_ERROR_NONE:
- return bytes_sent;
-
- case SSL_ERROR_WANT_READ:
- case SSL_ERROR_WANT_WRITE:
- errno = EWOULDBLOCK;
-
- return -1;
-
- case SSL_ERROR_ZERO_RETURN:
- // The peer has notified us that it is shutting down via the SSL
- // "close_notify" message so we need to shutdown, too.
- (void) ::SSL_shutdown (this->ssl_);
-
- return bytes_sent;
-
- case SSL_ERROR_SYSCALL:
- if (bytes_sent == 0)
- // An EOF occured but the SSL "close_notify" message was not
- // sent. This is a protocol error, but we ignore it.
- return 0;
-
- // If not an EOF, then fall through to "default" case.
-
- // On some platforms (e.g. MS Windows) OpenSSL does not store
- // the last error in errno so explicitly do so.
- ACE_OS::set_errno_to_last_error ();
-
- break;
-
- default:
- // Reset errno to prevent previous values (e.g. EWOULDBLOCK)
- // from being associated with fatal SSL errors.
- errno = 0;
-
- ACE_SSL_Context::report_error ();
-
- break;
- }
-
- return -1;
-}
-
-ACE_INLINE ssize_t
-ACE_SSL_SOCK_Stream::send (const void *buf,
- size_t n,
- int flags) const
-{
- return this->send_i (buf, n, flags);
-}
-
-ACE_INLINE ssize_t
-ACE_SSL_SOCK_Stream::recv_i (void *buf,
- size_t n,
- int flags,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_SSL_SOCK_Stream::recv_i");
-
- // NOTE: Caller must provide thread-synchronization.
-
- int bytes_read = 0;
- ACE_HANDLE const handle = this->get_handle ();
-
- // Value for current I/O mode (blocking/non-blocking)
- int val = 0;
-
- if (timeout != 0)
- ACE::record_and_set_non_blocking_mode (handle,
- val);
-
- // Only block on select() with a timeout if no data in the
- // internal OpenSSL buffer is pending read completion for
- // the same reasons stated above, i.e. all data must be read
- // before blocking on select().
- if (timeout != 0
- && !::SSL_pending (this->ssl_))
- {
- if (ACE::enter_recv_timedwait (handle,
- timeout,
- val) == -1)
- return -1;
- }
-
- if (flags)
- {
- if (ACE_BIT_ENABLED (flags, MSG_PEEK))
- {
- bytes_read = ::SSL_peek (this->ssl_,
- static_cast<char *> (buf),
- ACE_Utils::truncate_cast<int> (n));
- }
- else
- {
- ACE_NOTSUP_RETURN (-1);
- }
- }
- else
- {
- bytes_read = ::SSL_read (this->ssl_,
- static_cast<char *> (buf),
- ACE_Utils::truncate_cast<int> (n));
- }
-
- int const status = ::SSL_get_error (this->ssl_, bytes_read);
- switch (status)
- {
- case SSL_ERROR_NONE:
- if (timeout != 0)
- ACE::restore_non_blocking_mode (handle, val);
-
- return bytes_read;
-
- case SSL_ERROR_WANT_READ:
- case SSL_ERROR_WANT_WRITE:
- errno = EWOULDBLOCK;
-
- return -1;
-
- case SSL_ERROR_ZERO_RETURN:
- if (timeout != 0)
- ACE::restore_non_blocking_mode (handle, val);
-
- // The peer has notified us that it is shutting down via the SSL
- // "close_notify" message so we need to shutdown, too.
- (void) ::SSL_shutdown (this->ssl_);
-
- return bytes_read;
-
- case SSL_ERROR_SYSCALL:
- if (bytes_read == 0)
- // An EOF occured but the SSL "close_notify" message was not
- // sent. This is a protocol error, but we ignore it.
- return 0;
-
- // If not an EOF, then fall through to "default" case.
-
- // On some platforms (e.g. MS Windows) OpenSSL does not store
- // the last error in errno so explicitly do so.
- ACE_OS::set_errno_to_last_error ();
-
- break;
-
- default:
- // Reset errno to prevent previous values (e.g. EWOULDBLOCK)
- // from being associated with a fatal SSL error.
- errno = 0;
-
- ACE_SSL_Context::report_error ();
-
- break;
- }
-
- return -1;
-}
-
-ACE_INLINE ssize_t
-ACE_SSL_SOCK_Stream::recv (void *buf,
- size_t n,
- int flags) const
-{
- return this->recv_i (buf, n, flags, 0);
-}
-
-ACE_INLINE ssize_t
-ACE_SSL_SOCK_Stream::send (const void *buf,
- size_t n) const
-{
- ACE_TRACE ("ACE_SSL_SOCK_Stream::send");
-
- return this->send_i (buf, n, 0);
-}
-
-ACE_INLINE ssize_t
-ACE_SSL_SOCK_Stream::recv (void *buf,
- size_t n) const
-{
- ACE_TRACE ("ACE_SSL_SOCK_Stream::recv");
-
- return this->recv_i (buf, n, 0, 0);
-}
-
-ACE_INLINE ssize_t
-ACE_SSL_SOCK_Stream::send (const void *buf,
- size_t len,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_SSL_SOCK_Stream::send");
- return this->send (buf, len, 0, timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_SSL_SOCK_Stream::recv (void *buf,
- size_t n,
- const ACE_Time_Value *timeout) const
-{
- ACE_TRACE ("ACE_SSL_SOCK_Stream::recv");
- return this->recv (buf, n, 0, timeout);
-}
-
-ACE_INLINE ssize_t
-ACE_SSL_SOCK_Stream::recv_n (void *buf, int buf_size) const
-{
- ACE_TRACE ("ACE_SSL_SOCK_Stream::recv_n");
- return this->recv_n (buf, buf_size, 0);
-}
-
-ACE_INLINE ssize_t
-ACE_SSL_SOCK_Stream::send_n (const void *buf, int len) const
-{
- ACE_TRACE ("ACE_SSL_SOCK_Stream::send_n");
- return this->send_n (buf, len, 0);
-}
-
-ACE_INLINE int
-ACE_SSL_SOCK_Stream::close_reader (void)
-{
- ACE_TRACE ("ACE_SSL_SOCK_Stream::close_reader");
- return this->stream_.close_reader ();
-}
-
-ACE_INLINE int
-ACE_SSL_SOCK_Stream::close_writer (void)
-{
- ACE_TRACE ("ACE_SSL_SOCK_Stream::close_writer");
- return this->stream_.close_writer ();
-}
-
-ACE_INLINE int
-ACE_SSL_SOCK_Stream::close (void)
-{
- ACE_TRACE ("ACE_SSL_SOCK_Stream::close");
-
- if (this->ssl_ == 0 || this->get_handle () == ACE_INVALID_HANDLE)
- return 0; // SSL_SOCK_Stream was never opened.
-
- // SSL_shutdown() returns 1 on successful shutdown of the SSL
- // connection, not 0.
- int const status = ::SSL_shutdown (this->ssl_);
-
- switch (::SSL_get_error (this->ssl_, status))
- {
- case SSL_ERROR_NONE:
- case SSL_ERROR_SYSCALL: // Ignore this error condition.
-
- // Reset the SSL object to allow another connection to be made
- // using this ACE_SSL_SOCK_Stream instance. This prevents the
- // previous SSL session state from being associated with the new
- // SSL session/connection.
- (void) ::SSL_clear (this->ssl_);
- this->set_handle (ACE_INVALID_HANDLE);
- return this->stream_.close ();
-
- case SSL_ERROR_WANT_READ:
- case SSL_ERROR_WANT_WRITE:
- errno = EWOULDBLOCK;
- break;
-
- default:
- ACE_SSL_Context::report_error ();
-
- ACE_Errno_Guard error (errno); // Save/restore errno
- (void) this->stream_.close ();
-
- return -1;
- }
-
- return -1;
-}
-
-ACE_INLINE ACE_SOCK_Stream &
-ACE_SSL_SOCK_Stream::peer (void)
-{
- ACE_TRACE ("ACE_SSL_SOCK_Stream::peer");
- return this->stream_;
-}
-
-ACE_INLINE SSL *
-ACE_SSL_SOCK_Stream::ssl (void) const
-{
- return this->ssl_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SSL/sslconf.h b/dep/include/ace/SSL/sslconf.h
deleted file mode 100644
index c4ba34797c4..00000000000
--- a/dep/include/ace/SSL/sslconf.h
+++ /dev/null
@@ -1,55 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file sslconf.h
- *
- * $Id: sslconf.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Carlos O'Ryan <coryan@ece.uci.edu>
- */
-//=============================================================================
-
-
-#ifndef ACE_SSLCONF_H
-#define ACE_SSLCONF_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_DEFAULT_SSL_CERT_FILE)
-# ifdef WIN32
-# define ACE_DEFAULT_SSL_CERT_FILE "cert.pem"
-# else
-# define ACE_DEFAULT_SSL_CERT_FILE "/etc/ssl/cert.pem"
-# endif /* WIN32 */
-#endif /* ACE_DEFAULT_SSL_CERT_FILE */
-
-#if !defined (ACE_DEFAULT_SSL_CERT_DIR)
-# ifdef WIN32
-# define ACE_DEFAULT_SSL_CERT_DIR "certs"
-# else
-# define ACE_DEFAULT_SSL_CERT_DIR "/etc/ssl/certs"
-# endif /* WIN32 */
-#endif /* ACE_DEFAULT_SSL_CERT_DIR */
-
-#if !defined (ACE_SSL_CERT_FILE_ENV)
-#define ACE_SSL_CERT_FILE_ENV "SSL_CERT_FILE"
-#endif /* ACE_SSL_CERT_FILE_ENV */
-
-#if !defined (ACE_SSL_CERT_DIR_ENV)
-#define ACE_SSL_CERT_DIR_ENV "SSL_CERT_DIR"
-#endif /* ACE_SSL_CERT_DIR_ENV */
-
-#if !defined (ACE_SSL_EGD_FILE_ENV)
-#define ACE_SSL_EGD_FILE_ENV "SSL_EGD_FILE"
-#endif /* ACE_SSL_EGD_FILE_ENV */
-
-#if !defined (ACE_SSL_RAND_FILE_ENV)
-#define ACE_SSL_RAND_FILE_ENV "SSL_RAND_FILE"
-#endif /* ACE_SSL_RAND_FILE_ENV */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SSLCONF_H */
diff --git a/dep/include/ace/SString.h b/dep/include/ace/SString.h
deleted file mode 100644
index dc37be1d871..00000000000
--- a/dep/include/ace/SString.h
+++ /dev/null
@@ -1,499 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SString.h
- *
- * $Id: SString.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt (schmidt@cs.wustl.edu)
- */
-//=============================================================================
-
-#ifndef ACE_SSTRING_H
-#define ACE_SSTRING_H
-#include /**/ "ace/pre.h"
-
-#include "ace/SStringfwd.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/String_Base.h"
-
-#if !defined (ACE_DEFAULT_GROWSIZE)
-#define ACE_DEFAULT_GROWSIZE 32
-#endif /* ACE_DEFAULT_GROWSIZE */
-
-#if !defined (ACE_LACKS_IOSTREAM_TOTALLY)
-#include "ace/iosfwd.h"
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-ACE_Export ACE_OSTREAM_TYPE &operator << (ACE_OSTREAM_TYPE &, const ACE_CString &);
-ACE_Export ACE_OSTREAM_TYPE &operator << (ACE_OSTREAM_TYPE &, const ACE_WString &);
-ACE_END_VERSIONED_NAMESPACE_DECL
-#endif /* ! ACE_LACKS_IOSTREAM_TOTALLY */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION_EXPORT
-template class ACE_Export ACE_String_Base<char>;
-template class ACE_Export ACE_String_Base<ACE_WSTRING_TYPE>;
-#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION_EXPORT */
-
-/**
- * @class ACE_NS_WString
- *
- * @brief This class retain the backward compatibility for
- * ACE_Naming_Context and related classes. The only addition to
- * ACE_WString is a very naive "wchar" to "char" conversion
- * function.
- */
-class ACE_Export ACE_NS_WString : public ACE_WString
-{
-public:
-
- using ACE_WString::size_type;
-
- /// Default constructor.
- ACE_NS_WString (ACE_Allocator *alloc = 0);
-
- /// Constructor that copies @a s into dynamically allocated memory.
- ACE_NS_WString (const char *s,
- ACE_Allocator *alloc = 0);
-
- /// Constructor that copies @a s into dynamically allocated memory.
- ACE_NS_WString (const ACE_WSTRING_TYPE *s,
- ACE_Allocator *alloc = 0);
-
-#if defined (ACE_WSTRING_HAS_USHORT_SUPPORT)
- /// Constructor that takes in a ushort16 string (mainly used by the
- /// ACE Name_Space classes)
- ACE_NS_WString (const ACE_USHORT16 *s,
- size_type len,
- ACE_Allocator *alloc = 0);
-#endif /* ACE_WSTRING_HAS_USHORT_SUPPORT */
-
- /// Constructor that copies @a len ACE_WSTRING_TYPE's of @a s into dynamically
- /// allocated memory (will NUL terminate the result).
- ACE_NS_WString (const ACE_WSTRING_TYPE *s,
- size_type len,
- ACE_Allocator *alloc = 0);
-
- /// Constructor that dynamically allocates memory for @a len + 1
- /// ACE_WSTRING_TYPE characters. The newly created memory is set memset to 0.
- ACE_NS_WString (size_type len, ACE_Allocator *alloc = 0);
-
- /// Copy constructor.
- ACE_NS_WString (const ACE_NS_WString &s);
-
- /// Constructor that copies @a c into dynamically allocated memory.
- ACE_NS_WString (ACE_WSTRING_TYPE c, ACE_Allocator *alloc = 0);
-
- /// Transform into a copy of the ASCII character representation.
- /// (caller must delete)
- char *char_rep (void) const;
-
- /// Transform into a copy of a USHORT16 representation (caller must
- /// delete). Note, behavior is undefined when sizeof (wchar_t) != 2.
- ACE_USHORT16 *ushort_rep (void) const;
-};
-
-ACE_Export
-ACE_NS_WString operator + (const ACE_NS_WString &,
- const ACE_NS_WString &);
-
-// -----------------------------------------------------------------
-
-/**
- * @class ACE_SString
- *
- * @brief A very Simple String ACE_SString class. This is not a
- * general-purpose string class, and you should probably consider
- * using ACE_CString is you don't understand why this class
- * exists...
- *
- * This class is optimized for efficiency, so it doesn't provide
- * any internal locking.
- * CAUTION: This class is only intended for use with applications
- * that understand how it works. In particular, its destructor
- * does not deallocate its memory when it is destroyed... We need
- * this class since the ACE_Map_Manager requires an object that
- * supports the operator == and operator !=. This class uses an
- * ACE_Allocator to allocate memory. The user can make this a
- * persistant class by providing an ACE_Allocator with a
- * persistable memory pool.
- */
-class ACE_Export ACE_SString
-{
-public:
-
- typedef ACE_Allocator::size_type size_type;
-
- /// No position constant
- static const size_type npos;
-
- /// Default constructor.
- ACE_SString (ACE_Allocator *alloc = 0);
-
- /// Constructor that copies @a s into dynamically allocated memory.
- ACE_SString (const char *s, ACE_Allocator *alloc = 0);
-
- /// Constructor that copies @a len chars of @s into dynamically
- /// allocated memory (will NUL terminate the result).
- ACE_SString (const char *s, size_type len, ACE_Allocator *alloc = 0);
-
- /// Copy constructor.
- ACE_SString (const ACE_SString &);
-
- /// Constructor that copies @a c into dynamically allocated memory.
- ACE_SString (char c, ACE_Allocator *alloc = 0);
-
- /// Default destructor.
- ~ACE_SString (void);
-
- /// Return the <slot'th> character in the string (doesn't perform
- /// bounds checking).
- char operator [] (size_type slot) const;
-
- /// Return the <slot'th> character by reference in the string
- /// (doesn't perform bounds checking).
- char &operator [] (size_type slot);
-
- /// Assignment operator (does copy memory).
- ACE_SString &operator = (const ACE_SString &);
-
- /**
- * Return a substring given an offset and length, if length == npos
- * use rest of str return empty substring if offset or offset/length
- * are invalid
- */
- ACE_SString substring (size_type offset, size_type length = npos) const;
-
- /// Same as substring
- ACE_SString substr (size_type offset, size_type length = npos) const;
-
- /// Returns a hash value for this string.
- u_long hash (void) const;
-
- /// Return the length of the string.
- size_type length (void) const;
-
- /// Set the underlying pointer. Since this does not copy memory or
- /// delete existing memory use with extreme caution!!!
- void rep (char *s);
-
- /// Get the underlying pointer.
- const char *rep (void) const;
-
- /// Get the underlying pointer.
- const char *fast_rep (void) const;
-
- /// Same as STL String's <c_str> and <fast_rep>.
- const char *c_str (void) const;
-
- /// Comparison operator that will match substrings. Returns the
- /// slot of the first location that matches, else @c npos.
- size_type strstr (const ACE_SString &s) const;
-
- /// Find <str> starting at pos. Returns the slot of the first
- /// location that matches (will be >= pos), else npos.
- size_type find (const ACE_SString &str, size_type pos = 0) const;
-
- /// Find <s> starting at pos. Returns the slot of the first
- /// location that matches (will be >= pos), else npos.
- size_type find (const char *s, size_type pos = 0) const;
-
- /// Find <c> starting at pos. Returns the slot of the first
- /// location that matches (will be >= pos), else npos.
- size_type find (char c, size_type pos = 0) const;
-
- /// Find <c> starting at pos (counting from the end). Returns the
- /// slot of the first location that matches, else npos.
- size_type rfind (char c, size_type pos = npos) const;
-
- /// Equality comparison operator (must match entire string).
- bool operator == (const ACE_SString &s) const;
-
- /// Less than comparison operator.
- bool operator < (const ACE_SString &s) const;
-
- /// Greater than comparison operator.
- bool operator > (const ACE_SString &s) const;
-
- /// Inequality comparison operator.
- bool operator != (const ACE_SString &s) const;
-
- /// Performs a <strcmp>-style comparison.
- int compare (const ACE_SString &s) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Pointer to a memory allocator.
- ACE_Allocator *allocator_;
-
- /// Length of the ACE_SString (not counting the trailing '\0').
- size_type len_;
-
- /// Pointer to data.
- char *rep_;
-};
-
-#if !defined (ACE_LACKS_IOSTREAM_TOTALLY)
-ACE_Export ACE_OSTREAM_TYPE &operator << (ACE_OSTREAM_TYPE &, const ACE_SString &);
-#endif /* ! ACE_LACKS_IOSTREAM_TOTALLY */
-
-// This allows one to use W or C String based on the Unicode
-// setting
-#if defined (ACE_USES_WCHAR)
-typedef ACE_WString ACE_TString;
-#else /* ACE_USES_WCHAR */
-typedef ACE_CString ACE_TString;
-#endif /* ACE_USES_WCHAR */
-
-// ************************************************************
-
-/**
- * @class ACE_Tokenizer
- *
- * @brief Tokenizer
- *
- * Tokenizes a buffer. Allows application to set delimiters and
- * preserve designators. Does not allow special characters, yet
- * (e.g., printf ("\"like a quoted string\"")).
- */
-class ACE_Export ACE_Tokenizer
-{
-public:
- /**
- * \a buffer will be parsed. Notice that ACE_Tokenizer will modify
- * \a buffer if you use <code> delimiter_replace </code> or <code>
- * preserve_designators </code> to do character substitution.
- * @note You should NOT pass a constant string or string literal
- * to this constructor, since ACE_Tokenizer will try to modify
- * the string.
- * \sa preserve_designators
- * \sa preserve_designators
- */
- ACE_Tokenizer (ACE_TCHAR *buffer);
-
- /**
- * \a d is a delimiter.
- * \return Returns 0 on success, -1 if there is no memory left.
- *
- * <B>Example:</B>
- * \verbatim
- char buf[30];
- ACE_OS::strcpy(buf, "William/Joseph/Hagins");
-
- ACE_Tokenizer tok (buf);
- tok.delimiter ('/');
- for (char *p = tok.next (); p; p = tok.next ())
- cout << p << endl;
- \endverbatim
- *
- * This will print out:
- * \verbatim
- William/Joseph/Hagins
- Joseph/Hagins
- Hagins \endverbatim
- */
- int delimiter (ACE_TCHAR d);
-
- /**
- * \a d is a delimiter and, when found, will be replaced by
- * \a replacement.
- * \return 0 on success, -1 if there is no memory left.
- *
- * <B>Example:</B>
- * \verbatim
- char buf[30];
- ACE_OS::strcpy(buf, "William/Joseph/Hagins");
-
- ACE_Tokenizer tok (buf);
- tok.delimiter_replace ('/', 0);
- for (char *p = tok.next (); p; p = tok.next ())
- cout << p << endl;
- \endverbatim
- *
- * This will print out:
- * \verbatim
- William
- Joseph
- Hagins \endverbatim
- */
- int delimiter_replace (ACE_TCHAR d, ACE_TCHAR replacement);
-
- /**
- * Extract string between a pair of designator characters.
- * For instance, quotes, or '(' and ')'.
- * \a start specifies the begin designator.
- * \a stop specifies the end designator.
- * \a strip If \a strip == 1, then the preserve
- * designators will be stripped from the tokens returned by next.
- * \return 0 on success, -1 if there is no memory left.
- *
- * <B>Example with strip = 0:</B>
- * \verbatim
- char buf[30];
- ACE_OS::strcpy(buf, "William(Joseph)Hagins");
-
- ACE_Tokenizer tok (buf);
- tok.preserve_designators ('(', ')', 0);
- for (char *p = tok.next (); p; p = tok.next ())
- cout << p << endl;
- \endverbatim
- *
- * This will print out:
- * \verbatim
- William(Joseph)Hagins
- (Joseph)Hagins
- )Hagins \endverbatim
- *
- * <B>Example with strip = 1:</B>
- * \verbatim
- char buf[30];
- ACE_OS::strcpy(buf, "William(Joseph)Hagins");
-
- ACE_Tokenizer tok (buf);
- tok.preserve_designators ('(', ')', 1);
- for (char *p = tok.next (); p; p = tok.next ())
- cout << p << endl;
- \endverbatim
- *
- * This will print out:
- * \verbatim
- William
- Joseph
- Hagins \endverbatim
- */
- int preserve_designators (ACE_TCHAR start, ACE_TCHAR stop, int strip=1);
-
- /// Returns the next token.
- ACE_TCHAR *next (void);
-
- enum {
- MAX_DELIMITERS=16,
- MAX_PRESERVES=16
- };
-
-protected:
- /// Returns 1 if <d> is a delimiter, 0 otherwise. If <d> should be
- /// replaced with @a r, <replace> is set to 1, otherwise 0.
- int is_delimiter (ACE_TCHAR d, int &replace, ACE_TCHAR &r);
-
- /**
- * If <start> is a start preserve designator, returns 1 and sets
- * <stop> to the stop designator. Returns 0 if <start> is not a
- * preserve designator.
- */
- int is_preserve_designator (ACE_TCHAR start, ACE_TCHAR &stop, int &strip);
-
- ACE_TCHAR *buffer_;
- int index_;
-
- /**
- * @class Preserve_Entry
- *
- * @brief Preserve Entry
- *
- * Defines a set of characters that designate an area that
- * should not be parsed, but should be treated as a complete
- * token. For instance, in: (this is a preserve region), start
- * would be a left paren -(- and stop would be a right paren
- * -)-. The strip determines whether the designators should be
- * removed from the token.
- */
- class Preserve_Entry
- {
- public:
- /**
- * E.g., "(".
- * E.g., ")".
- * Whether the designators should be removed from the token.
- */
- ACE_TCHAR start_;
- ACE_TCHAR stop_;
- int strip_;
- };
-
- /// The application can specify MAX_PRESERVES preserve designators.
- Preserve_Entry preserves_[MAX_PRESERVES];
-
- /// Pointer to the next free spot in preserves_.
- int preserves_index_;
-
- /**
- * @class Delimiter_Entry
- *
- * @brief Delimiter Entry
- *
- * Describes a delimiter for the tokenizer.
- */
- class Delimiter_Entry
- {
- public:
- /**
- * Most commonly a space ' '.
- * What occurrences of delimiter_ should be replaced with.
- * Whether replacement_ should be used. This should be replaced
- * with a technique that sets replacement_ = delimiter by
- * default. I'll do that next iteration.
- */
- ACE_TCHAR delimiter_;
- ACE_TCHAR replacement_;
- int replace_;
- };
-
- /// The tokenizer allows MAX_DELIMITERS number of delimiters.
- Delimiter_Entry delimiters_[MAX_DELIMITERS];
-
- /// Pointer to the next free space in delimiters_.
- int delimiter_index_;
-};
-
-// ****************************************************************
-
-/**
- * @class ACE_Auto_String_Free
- *
- * @brief Simple class to automatically de-allocate strings
- *
- * Keeps a pointer to a string and deallocates it (using
- * <ACE_OS::free>) on its destructor.
- * If you need to delete using "delete[]" the
- * ACE_Auto_Array_Ptr<char> is your choice.
- * The class plays the same role as auto_ptr<>
- */
-class ACE_Export ACE_Auto_String_Free
-{
-public:
- explicit ACE_Auto_String_Free (char* p = 0);
- ACE_Auto_String_Free (ACE_Auto_String_Free &rhs);
- ACE_Auto_String_Free& operator= (ACE_Auto_String_Free &rhs);
- ~ACE_Auto_String_Free (void);
-
- char* operator* () const;
- char operator[] (size_t i) const;
- char* get (void) const;
- char* release (void);
- void reset (char* p = 0);
-
-private:
- char* p_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SString.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SSTRING_H */
-
diff --git a/dep/include/ace/SString.inl b/dep/include/ace/SString.inl
deleted file mode 100644
index 9bdc1bb96a6..00000000000
--- a/dep/include/ace/SString.inl
+++ /dev/null
@@ -1,299 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SString.inl 80826 2008-03-04 14:51:23Z wotte $
-
-// Include ACE.h only if it hasn't already been included, e.g., if
-// ACE_TEMPLATES_REQUIRE_SOURCE, ACE.h won't have been pulled in by
-// String_Base.cpp.
-#ifndef ACE_ACE_H
-# include "ace/ACE.h"
-#endif /* !ACE_ACE_H */
-
-#include "ace/OS_NS_stdlib.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_NS_WString::ACE_NS_WString (ACE_Allocator *alloc)
- : ACE_WString (alloc)
-{
-}
-
-ACE_INLINE
-ACE_NS_WString::ACE_NS_WString (const ACE_WSTRING_TYPE *s,
- size_type len,
- ACE_Allocator *alloc)
- : ACE_WString (s, len, alloc)
-{
-}
-
-ACE_INLINE
-ACE_NS_WString::ACE_NS_WString (const ACE_WSTRING_TYPE *s,
- ACE_Allocator *alloc)
- : ACE_WString (s, alloc)
-{
-}
-
-ACE_INLINE
-ACE_NS_WString::ACE_NS_WString (size_type len, ACE_Allocator *alloc)
- : ACE_WString (len, 0, alloc)
-{
-}
-
-ACE_INLINE
-ACE_NS_WString::ACE_NS_WString (const ACE_NS_WString &s)
- : ACE_WString (s)
-{
-}
-
-ACE_INLINE
-ACE_NS_WString::ACE_NS_WString (ACE_WSTRING_TYPE c, ACE_Allocator *alloc)
- : ACE_WString (c, alloc)
-{
-}
-
-ACE_INLINE ACE_NS_WString
-operator+ (const ACE_NS_WString &s, const ACE_NS_WString &t)
-{
- ACE_NS_WString temp (s);
- temp += t;
- return temp;
-}
-
-// -------------------------------------------------------
-
-ACE_INLINE
-ACE_SString::~ACE_SString (void)
-{
-}
-
-ACE_INLINE ACE_SString
-ACE_SString::substr (size_type offset,
- size_type length) const
-{
- return this->substring (offset, length);
-}
-
-// Return the <slot'th> character in the string.
-
-ACE_INLINE char
-ACE_SString::operator[] (size_type slot) const
-{
- ACE_TRACE ("ACE_SString::operator[]");
- return this->rep_[slot];
-}
-
-// Return the <slot'th> character in the string by reference.
-
-ACE_INLINE char &
-ACE_SString::operator[] (size_type slot)
-{
- ACE_TRACE ("ACE_SString::operator[]");
- return this->rep_[slot];
-}
-
-// Get the underlying pointer (does not make a copy, so beware!).
-
-ACE_INLINE const char *
-ACE_SString::rep (void) const
-{
- ACE_TRACE ("ACE_SString::rep");
- return this->rep_;
-}
-
-// Get the underlying pointer (does not make a copy, so beware!).
-
-ACE_INLINE const char *
-ACE_SString::fast_rep (void) const
-{
- ACE_TRACE ("ACE_SString::fast_rep");
- return this->rep_;
-}
-
-// Get the underlying pointer (does not make a copy, so beware!).
-
-ACE_INLINE const char *
-ACE_SString::c_str (void) const
-{
- ACE_TRACE ("ACE_SString::c_str");
- return this->rep_;
-}
-
-// Comparison operator.
-
-ACE_INLINE bool
-ACE_SString::operator== (const ACE_SString &s) const
-{
- ACE_TRACE ("ACE_SString::operator==");
- return this->len_ == s.len_
- && ACE_OS::strcmp (this->rep_, s.rep_) == 0;
-}
-
-// Less than comparison operator.
-
-ACE_INLINE bool
-ACE_SString::operator < (const ACE_SString &s) const
-{
- ACE_TRACE ("ACE_SString::operator <");
-
- return (this->rep_ && s.rep_)
- ? ACE_OS::strcmp (this->rep_, s.rep_) < 0
- : ((s.rep_) ? true : false);
-}
-
-// Greater than comparison operator.
-
-ACE_INLINE bool
-ACE_SString::operator > (const ACE_SString &s) const
-{
- ACE_TRACE ("ACE_SString::operator >");
-
- return (this->rep_ && s.rep_)
- ? ACE_OS::strcmp (this->rep_, s.rep_) > 0
- : ((this->rep_) ? true : false );
-}
-
-// Comparison operator.
-
-ACE_INLINE bool
-ACE_SString::operator!= (const ACE_SString &s) const
-{
- ACE_TRACE ("ACE_SString::operator!=");
- return !(*this == s);
-}
-
-ACE_INLINE int
-ACE_SString::compare (const ACE_SString &s) const
-{
- ACE_TRACE ("ACE_SString::compare");
- return ACE_OS::strcmp (this->rep_, s.rep_);
-}
-
-ACE_INLINE ACE_SString::size_type
-ACE_SString::find (const char *s, size_type pos) const
-{
- char *substr = this->rep_ + pos;
- char *pointer = ACE_OS::strstr (substr, s);
- if (pointer == 0)
- return ACE_SString::npos;
- else
- return pointer - this->rep_;
-}
-
-ACE_INLINE ACE_SString::size_type
-ACE_SString::find (char c, size_type pos) const
-{
- char *substr = this->rep_ + pos;
- char *pointer = ACE_OS::strchr (substr, c);
- if (pointer == 0)
- return ACE_SString::npos;
- else
- return pointer - this->rep_;
-}
-
-ACE_INLINE ACE_SString::size_type
-ACE_SString::strstr (const ACE_SString &s) const
-{
- ACE_TRACE ("ACE_SString::strstr");
-
- return this->find (s.rep_);
-}
-
-ACE_INLINE ACE_SString::size_type
-ACE_SString::find (const ACE_SString &str, size_type pos) const
-{
- return this->find (str.rep_, pos);
-}
-
-ACE_INLINE ACE_SString::size_type
-ACE_SString::rfind (char c, size_type pos) const
-{
- if (pos == ACE_SString::npos)
- pos = this->len_;
-
- // Do not change to prefix operator! Proper operation of this loop
- // depends on postfix decrement behavior.
- for (size_type i = pos; i-- != 0;)
- if (this->rep_[i] == c)
- return i;
-
- return ACE_SString::npos;
-}
-
-ACE_INLINE u_long
-ACE_SString::hash (void) const
-{
- return ACE::hash_pjw (this->rep_);
-}
-
-ACE_INLINE ACE_SString::size_type
-ACE_SString::length (void) const
-{
- ACE_TRACE ("ACE_SString::length");
- return this->len_;
-}
-
-ACE_INLINE
-ACE_Auto_String_Free::ACE_Auto_String_Free (char* p)
- : p_ (p)
-{
-}
-
-ACE_INLINE
-ACE_Auto_String_Free::ACE_Auto_String_Free (ACE_Auto_String_Free& rhs)
- : p_ (rhs.p_)
-{
- rhs.p_ = 0;
-}
-
-ACE_INLINE void
-ACE_Auto_String_Free::reset (char* p)
-{
- ACE_OS::free (this->p_);
- this->p_ = p;
-}
-
-ACE_INLINE ACE_Auto_String_Free&
-ACE_Auto_String_Free::operator= (ACE_Auto_String_Free& rhs)
-{
- if (this != &rhs)
- {
- this->reset (rhs.p_);
- rhs.p_ = 0;
- }
- return *this;
-}
-
-ACE_INLINE
-ACE_Auto_String_Free::~ACE_Auto_String_Free (void)
-{
- this->reset (0);
-}
-
-ACE_INLINE char*
-ACE_Auto_String_Free::operator* (void) const
-{
- return this->p_;
-}
-
-ACE_INLINE char
-ACE_Auto_String_Free::operator[] (size_t i) const
-{
- return this->p_[i];
-}
-
-ACE_INLINE char*
-ACE_Auto_String_Free::get (void) const
-{
- return this->p_;
-}
-
-ACE_INLINE char*
-ACE_Auto_String_Free::release (void)
-{
- char* p = this->p_;
- this->p_ = 0;
- return p;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SStringfwd.h b/dep/include/ace/SStringfwd.h
deleted file mode 100644
index f73a39d023b..00000000000
--- a/dep/include/ace/SStringfwd.h
+++ /dev/null
@@ -1,56 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SStringfwd.h
- *
- * $Id: SStringfwd.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Forward declarations and typedefs of ACE string types.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Nanbor Wang <nanbor@cs.wustl.edu>
- * @author Ossama Othman <ossama@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SSTRINGFWD_H
-#define ACE_SSTRINGFWD_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Basic_Types.h" /* ACE_WCHAR_T definition */
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if (defined (__HP_aCC) && (36300 <= __HP_aCC) && (__HP_aCC <= 37300))
-// Due to a bug in the aCC 3.xx compiler need to define the ACE_String_Base
-// template before we can typedef ACE_CString
-# include "ace/String_Base.h"
-#endif /* __HP_aCC */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class CHAR> class ACE_String_Base; // Forward declaration.
-
-typedef ACE_WCHAR_T ACE_WSTRING_TYPE;
-
-typedef ACE_String_Base<char> ACE_CString;
-typedef ACE_String_Base<ACE_WSTRING_TYPE> ACE_WString;
-
-// This allows one to use W or C String based on the Unicode
-// setting
-#if defined (ACE_USES_WCHAR)
-typedef ACE_WString ACE_TString;
-#else /* ACE_USES_WCHAR */
-typedef ACE_CString ACE_TString;
-#endif /* ACE_USES_WCHAR */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SSTRINGFWD_H */
-
diff --git a/dep/include/ace/SUN_Proactor.h b/dep/include/ace/SUN_Proactor.h
deleted file mode 100644
index 135b0f0e8ff..00000000000
--- a/dep/include/ace/SUN_Proactor.h
+++ /dev/null
@@ -1,127 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SUN_Proactor.h
- *
- * $Id: SUN_Proactor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Alexander Libman <alibman@baltimore.com>
- */
-//=============================================================================
-
-#ifndef ACE_SUN_PROACTOR_H
-#define ACE_SUN_PROACTOR_H
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_AIO_CALLS) && defined (sun)
-
-#include "ace/POSIX_Proactor.h"
-#include /**/ <sys/asynch.h> // Sun native aio calls
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SUN_Proactor
- *
- * @brief Implementation of the fast and reliable Proactor
- * for SunOS 5.6, 5.7, etc.
- *
- * This proactor, based on ACE_POSIX_AIOCB_Proactor,
- * works with Sun native interface for aio calls.
- * POSIX_API Native SUN_API
- * aio_read aioread
- * aio_write aiowrite
- * aio_suspend aiowait
- * aio_error aio_result_t.errno
- * aio_return aio_result_t.return
- * On Solaris, the Sun <aio*()> native implementation is more
- * reliable and efficient than POSIX <aio_*()> implementation.
- * There is a problem of lost RT signals with POSIX, if we start
- * more than SIGQUEUEMAX asynchronous operations at the same
- * time.
- * The Sun <aiocb> it is not the standard POSX <aiocb>, instead,
- * it has the following structure:
- * typedef struct aiocb
- * {
- * int aio_fildes; File descriptor
- * void *aio_buf; buffer location
- * size_t aio_nbytes; length of transfer
- * off_t aio_offset; file offset
- * int aio_reqprio; request priority offset
- * sigevent aio_sigevent; signal number and offset
- * int aio_lio_opcode; listio operation
- * aio_result_t aio_resultp; results
- * int aio_state; state flag for List I/O
- * int aio__pad[1]; extension padding
- * };
- */
-class ACE_Export ACE_SUN_Proactor : public ACE_POSIX_AIOCB_Proactor
-{
-
-public:
- virtual Proactor_Type get_impl_type (void);
-
- /// Destructor.
- virtual ~ACE_SUN_Proactor (void);
-
- /// Constructor defines max number asynchronous operations that can
- /// be started at the same time.
- ACE_SUN_Proactor (size_t max_aio_operations = ACE_AIO_DEFAULT_SIZE);
-
-protected:
- /**
- * Dispatch a single set of events. If @a wait_time elapses before
- * any events occur, return 0. Return 1 on success i.e., when a
- * completion is dispatched, non-zero (-1) on errors and errno is
- * set accordingly.
- */
- virtual int handle_events (ACE_Time_Value &wait_time);
-
- /**
- * Block indefinitely until at least one event is dispatched.
- * Dispatch a single set of events. Return 1 on success i.e., when a
- * completion is dispatched, non-zero (-1) on errors and errno is
- * set accordingly.
- */
- virtual int handle_events (void);
-
- /// Internal completion detection and dispatching.
- int handle_events_i (ACE_Time_Value *delta);
-
- /// Initiate an aio operation.
- virtual int start_aio_i (ACE_POSIX_Asynch_Result *result);
-
- /// Check AIO for completion, error and result status
- /// Return: 1 - AIO completed , 0 - not completed yet
- virtual int get_result_status (ACE_POSIX_Asynch_Result* asynch_result,
- int &error_status,
- size_t &transfer_count);
-
- /// Extract the results of aio.
- ACE_POSIX_Asynch_Result *find_completed_aio (aio_result_t *result,
- int &error_status,
- size_t &transfer_count);
-
- /// From ACE_POSIX_AIOCB_Proactor.
- /// Attempt to cancel running request
- virtual int cancel_aiocb (ACE_POSIX_Asynch_Result *result);
-
- /// Specific Sun aiowait
- int wait_for_start (ACE_Time_Value * abstime);
-
- /// Condition variable .
- /// used to wait the first AIO start
- ACE_SYNCH_CONDITION condition_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_AIO_CALLS && sun */
-#endif /* ACE_SUN_PROACTOR_H*/
-
diff --git a/dep/include/ace/SV_Message.h b/dep/include/ace/SV_Message.h
deleted file mode 100644
index 26a0d45c975..00000000000
--- a/dep/include/ace/SV_Message.h
+++ /dev/null
@@ -1,66 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file SV_Message.h
- *
- * $Id: SV_Message.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//==========================================================================
-
-#ifndef ACE_SV_MESSAGE_H
-#define ACE_SV_MESSAGE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SV_Message
- *
- * @brief Defines the header file for the C++ wrapper for message queues.
- */
-class ACE_Export ACE_SV_Message
-{
-public:
- /// Constructor
- ACE_SV_Message (long type = 0);
-
- /// Destructor
- ~ACE_SV_Message (void);
-
- /// Get the message type.
- long type (void) const;
-
- /// Set the message type.
- void type (long);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Type of the message.
- long type_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SV_Message.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SV_MESSAGE_H */
-
diff --git a/dep/include/ace/SV_Message.inl b/dep/include/ace/SV_Message.inl
deleted file mode 100644
index 4f43c170ace..00000000000
--- a/dep/include/ace/SV_Message.inl
+++ /dev/null
@@ -1,37 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SV_Message.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Global_Macros.h"
-#include "ace/config-all.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_SV_Message::ACE_SV_Message (long t)
- : type_ (t)
-{
- ACE_TRACE ("ACE_SV_Message::ACE_SV_Message");
-}
-
-ACE_INLINE
-ACE_SV_Message::~ACE_SV_Message (void)
-{
- ACE_TRACE ("ACE_SV_Message::~ACE_SV_Message");
-}
-
-ACE_INLINE long
-ACE_SV_Message::type (void) const
-{
- ACE_TRACE ("ACE_SV_Message::type");
- return this->type_;
-}
-
-ACE_INLINE void
-ACE_SV_Message::type (long t)
-{
- ACE_TRACE ("ACE_SV_Message::type");
- this->type_ = t;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SV_Message_Queue.h b/dep/include/ace/SV_Message_Queue.h
deleted file mode 100644
index 660fc9efb7a..00000000000
--- a/dep/include/ace/SV_Message_Queue.h
+++ /dev/null
@@ -1,106 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file SV_Message_Queue.h
- *
- * $Id: SV_Message_Queue.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@uci.edu>
- */
-//===========================================================================
-
-#ifndef ACE_SV_MESSAGE_QUEUE_H
-#define ACE_SV_MESSAGE_QUEUE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SV_Message.h"
-#include "ace/os_include/sys/os_stat.h"
-#include "ace/os_include/sys/os_ipc.h"
-#include "ace/Default_Constants.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SV_Message_Queue
- *
- * @brief Defines the header file for the C++ wrapper for System V IPC
- * message queues.
- */
-class ACE_Export ACE_SV_Message_Queue
-{
-public:
- // = Useful symbolic constants.
- enum
- {
- ACE_CREATE = IPC_CREAT,
- ACE_OPEN = 0,
- ACE_NOWAIT = IPC_NOWAIT
- };
-
- // = Initialization and termination methods.
- /// Open a message queue using the <external_id>.
- ACE_SV_Message_Queue (void);
- ACE_SV_Message_Queue (key_t external_id,
- int create = ACE_SV_Message_Queue::ACE_OPEN,
- int perms = ACE_DEFAULT_FILE_PERMS);
- int open (key_t external_id,
- int create = ACE_SV_Message_Queue::ACE_OPEN,
- int perms = ACE_DEFAULT_FILE_PERMS);
-
- ~ACE_SV_Message_Queue (void);
-
- /// Close down this instance of the message queue without removing it
- /// from the system.
- int close (void);
-
- /// Close down and remove the message queue from the system.
- int remove (void);
-
- // = Message transfer methods.
- ssize_t recv (ACE_SV_Message &mb,
- int length,
- long mtype = 0,
- int mflags = 0);
-
- int send (const ACE_SV_Message &mb,
- int length,
- int mflags = 0);
-
- /// Access the underlying control operations.
- int control (int option, void *arg = 0);
-
- /// Get the underly internal id.
- int get_id (void) const;
-
- /// Set the underly internal id.
- void set_id (int);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Returned from the underlying <msgget> system call.
- int internal_id_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SV_Message_Queue.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SV_MESSAGE_QUEUE_H */
-
diff --git a/dep/include/ace/SV_Message_Queue.inl b/dep/include/ace/SV_Message_Queue.inl
deleted file mode 100644
index f8118bd7604..00000000000
--- a/dep/include/ace/SV_Message_Queue.inl
+++ /dev/null
@@ -1,81 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SV_Message_Queue.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Global_Macros.h"
-#include "ace/OS_NS_sys_msg.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Open a message queue using the <external_id>.
-
-ACE_INLINE int
-ACE_SV_Message_Queue::open (key_t external_id, int create, int perms)
-{
- ACE_TRACE ("ACE_SV_Message_Queue::open");
- return this->internal_id_ = ACE_OS::msgget (external_id, create | perms);
-}
-
-// What does it mean to close a message queue?!
-
-ACE_INLINE int
-ACE_SV_Message_Queue::close (void)
-{
- ACE_TRACE ("ACE_SV_Message_Queue::close");
- this->internal_id_ = -1;
- return 1;
-}
-
-ACE_INLINE int
-ACE_SV_Message_Queue::control (int option, void *arg)
-{
- ACE_TRACE ("ACE_SV_Message_Queue::control");
- return ACE_OS::msgctl (this->internal_id_, option,
- (struct msqid_ds *) arg);
-}
-
-ACE_INLINE int
-ACE_SV_Message_Queue::remove (void)
-{
- ACE_TRACE ("ACE_SV_Message_Queue::remove");
- int result = this->control (IPC_RMID);
- this->internal_id_ = -1;
- return result;
-}
-
-ACE_INLINE int
-ACE_SV_Message_Queue::get_id (void) const
-{
- ACE_TRACE ("ACE_SV_Message_Queue::get_id");
- return this->internal_id_;
-}
-
-ACE_INLINE void
-ACE_SV_Message_Queue::set_id (int id)
-{
- ACE_TRACE ("ACE_SV_Message_Queue::set_id");
- this->internal_id_ = id;
-}
-
-ACE_INLINE ssize_t
-ACE_SV_Message_Queue::recv (ACE_SV_Message &mb,
- int length,
- long type,
- int mflags)
-{
- ACE_TRACE ("ACE_SV_Message_Queue::recv");
- return ACE_OS::msgrcv (this->internal_id_, (void *) &mb,
- length, type, mflags);
-}
-
-ACE_INLINE int
-ACE_SV_Message_Queue::send (const ACE_SV_Message &mb,
- int length,
- int mflags)
-{
- ACE_TRACE ("ACE_SV_Message_Queue::send");
- return ACE_OS::msgsnd (this->internal_id_, (void *) &mb,
- length, mflags);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SV_Semaphore_Complex.h b/dep/include/ace/SV_Semaphore_Complex.h
deleted file mode 100644
index c4805a577e3..00000000000
--- a/dep/include/ace/SV_Semaphore_Complex.h
+++ /dev/null
@@ -1,160 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file SV_Semaphore_Complex.h
- *
- * $Id: SV_Semaphore_Complex.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SV_SEMAPHORE_COMPLEX_H
-#define ACE_SV_SEMAPHORE_COMPLEX_H
-#include /**/ "ace/pre.h"
-
-#include "ace/SV_Semaphore_Simple.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SV_Semaphore_Complex
- *
- * @brief This is a more complex semaphore wrapper that handles race
- * conditions for initialization correctly...
- *
- * This code is a port to C++, inspired by: W. Richard Stevens
- * from his book: UNIX Network Programming (Prentice Hall, ISBN
- * 0-13-949876-1 - 1990). We provide a simpler and easier to
- * understand interface to the System V Semaphore system calls.
- * We create and use a 2 + n-member set for the requested
- * <ACE_SV_Semaphore_Complex>. The first member, [0], is a
- * counter used to know when all processes have finished with
- * the <ACE_SV_Semaphore_Complex>. The counter is initialized
- * to a large number, decremented on every create or open and
- * incremented on every close. This way we can use the "adjust"
- * feature provided by System V so that any process that exit's
- * without calling <close> is accounted for. It doesn't help us
- * if the last process does this (as we have no way of getting
- * control to remove the <ACE_SV_Semaphore_Complex>) but it
- * will work if any process other than the last does an exit
- * (intentional or unintentional).
- * The second member, [1], of the semaphore is used as a lock
- * variable to avoid any race conditions in the <create> and
- * <close> functions.
- * The members beyond [1] are actual semaphore values in the
- * array of semaphores, which may be sized by the user in the
- * constructor.
- */
-class ACE_Export ACE_SV_Semaphore_Complex : private ACE_SV_Semaphore_Simple
-{
-public:
- enum
- {
- ACE_CREATE = IPC_CREAT,
- ACE_OPEN = 0
- };
-
- // = Initialization and termination methods.
- ACE_SV_Semaphore_Complex (void);
- ACE_SV_Semaphore_Complex (key_t key,
- short create = ACE_SV_Semaphore_Complex::ACE_CREATE,
- int initial_value = 1,
- u_short nsems = 1,
- mode_t perms = ACE_DEFAULT_FILE_PERMS);
- ACE_SV_Semaphore_Complex (const char *name,
- short create = ACE_SV_Semaphore_Complex::ACE_CREATE,
- int initial_value = 1,
- u_short nsems = 1,
- mode_t perms = ACE_DEFAULT_FILE_PERMS);
- ~ACE_SV_Semaphore_Complex (void);
-
- /// Open or create an array of SV_Semaphores. We return 0 if all is
- /// OK, else -1.
- int open (const char *name,
- short flags = ACE_SV_Semaphore_Simple::ACE_CREATE,
- int initial_value = 1,
- u_short nsems = 1,
- mode_t perms = ACE_DEFAULT_FILE_PERMS);
-
- /// Open or create an array of SV_Semaphores. We return 0 if all is
- /// OK, else -1.
- int open (key_t key,
- short flags = ACE_SV_Semaphore_Simple::ACE_CREATE,
- int initial_value = 1,
- u_short nsems = 1,
- mode_t perms = ACE_DEFAULT_FILE_PERMS);
-
- /**
- * Close an ACE_SV_Semaphore. Unlike the <remove> method, this
- * method is for a process to call before it exits, when it is done
- * with the ACE_SV_Semaphore. We "decrement" the counter of
- * processes using the ACE_SV_Semaphore, and if this was the last
- * one, we can remove the ACE_SV_Semaphore.
- */
- int close (void);
-
- // = Semaphore acquire and release methods.
-
- /// Acquire the semaphore.
- int acquire (u_short n = 0, short flags = 0) const;
-
- /// Acquire a semaphore for reading.
- int acquire_read (u_short n = 0, short flags = 0) const;
-
- /// Acquire a semaphore for writing
- int acquire_write (u_short n = 0, short flags = 0) const;
-
- /// Try to acquire the semaphore.
- int tryacquire (u_short n = 0, short flags = 0) const;
-
- /// Try to acquire the semaphore for reading.
- int tryacquire_read (u_short n = 0, short flags = 0) const;
-
- /// Try to acquire the semaphore for writing.
- int tryacquire_write (u_short n = 0, short flags = 0) const;
-
- /// Release the semaphore.
- int release (u_short n = 0, short flags = 0) const;
-
- // = Semaphore operation methods.
- int op (short val, u_short n = 0, short flags = 0) const;
- int op (sembuf op_vec[], u_short n) const;
-
- // = Semaphore control methods.
- int control (int cmd, semun arg, u_short n = 0) const;
- int control (int cmd, int value = 0, u_short n = 0) const;
-
- // = Upgrade access control...
- using ACE_SV_Semaphore_Simple::get_id;
- using ACE_SV_Semaphore_Simple::remove;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- static const int BIGCOUNT_;
- static sembuf op_lock_[2];
- static sembuf op_endcreate_[2];
- static sembuf op_open_[1];
- static sembuf op_close_[3];
- static sembuf op_unlock_[1];
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SV_Semaphore_Complex.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SV_SEMAPHORE_COMPLEX_H */
-
diff --git a/dep/include/ace/SV_Semaphore_Complex.inl b/dep/include/ace/SV_Semaphore_Complex.inl
deleted file mode 100644
index a1b6659feeb..00000000000
--- a/dep/include/ace/SV_Semaphore_Complex.inl
+++ /dev/null
@@ -1,84 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SV_Semaphore_Complex.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_SV_Semaphore_Complex::acquire (u_short n, short flags) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Complex::acquire");
- return ACE_SV_Semaphore_Simple::acquire ((u_short) n + 2, flags);
-}
-
-ACE_INLINE int
-ACE_SV_Semaphore_Complex::acquire_read (u_short n, short flags) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Complex::acquire_read");
- return this->acquire (n, flags);
-}
-
-ACE_INLINE int
-ACE_SV_Semaphore_Complex::acquire_write (u_short n, short flags) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Complex::acquire_write");
- return this->acquire (n, flags);
-}
-
-ACE_INLINE int
-ACE_SV_Semaphore_Complex::tryacquire (u_short n, short flags) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Complex::tryacquire");
- return ACE_SV_Semaphore_Simple::tryacquire ((u_short) n + 2, flags);
-}
-
-ACE_INLINE int
-ACE_SV_Semaphore_Complex::tryacquire_read (u_short n, short flags) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Complex::tryacquire_read");
- return this->tryacquire (n, flags);
-}
-
-ACE_INLINE int
-ACE_SV_Semaphore_Complex::tryacquire_write (u_short n, short flags) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Complex::tryacquire_write");
- return this->tryacquire (n, flags);
-}
-
-ACE_INLINE int
-ACE_SV_Semaphore_Complex::release (u_short n, short flags) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Complex::release");
- return ACE_SV_Semaphore_Simple::release ((u_short) n + 2, flags);
-}
-
-ACE_INLINE int
-ACE_SV_Semaphore_Complex::op (short val, u_short n, short flags) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Complex::op");
- return ACE_SV_Semaphore_Simple::op (val, (u_short) n + 2, flags);
-}
-
-ACE_INLINE int
-ACE_SV_Semaphore_Complex::op (sembuf op_vec[], u_short n) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Complex::op");
- return ACE_SV_Semaphore_Simple::op (op_vec, (u_short) n + 2);
-}
-
-ACE_INLINE int
-ACE_SV_Semaphore_Complex::control (int cmd, semun arg, u_short n) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Complex::control");
- return ACE_SV_Semaphore_Simple::control (cmd, arg, (u_short) n + 2);
-}
-
-ACE_INLINE int
-ACE_SV_Semaphore_Complex::control (int cmd, int value, u_short n) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Complex::control");
- return ACE_SV_Semaphore_Simple::control (cmd, value, (u_short) n + 2);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SV_Semaphore_Simple.h b/dep/include/ace/SV_Semaphore_Simple.h
deleted file mode 100644
index d51034e59e4..00000000000
--- a/dep/include/ace/SV_Semaphore_Simple.h
+++ /dev/null
@@ -1,198 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file SV_Semaphore_Simple.h
- *
- * $Id: SV_Semaphore_Simple.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_SV_SEMAPHORE_SIMPLE_H
-#define ACE_SV_SEMAPHORE_SIMPLE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_stat.h"
-#include "ace/os_include/sys/os_ipc.h"
-#include "ace/os_include/sys/os_sem.h"
-#include "ace/Default_Constants.h"
-
-#if defined (ACE_WIN32)
- // Default semaphore key and mutex name
-# if !defined (ACE_DEFAULT_SEM_KEY)
-# define ACE_DEFAULT_SEM_KEY "ACE_SEM_KEY"
-# endif /* ACE_DEFAULT_SEM_KEY */
-#else /* !defined (ACE_WIN32) */
- // Default semaphore key
-# if !defined (ACE_DEFAULT_SEM_KEY)
-# define ACE_DEFAULT_SEM_KEY 1234
-# endif /* ACE_DEFAULT_SEM_KEY */
-#endif /* ACE_WIN32 */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SV_Semaphore_Simple
- *
- * @brief This is a simple semaphore package that assumes there are
- * no race conditions for initialization (i.e., the order of
- * process startup must be well defined).
- */
-class ACE_Export ACE_SV_Semaphore_Simple
-{
-public:
- enum
- {
- ACE_CREATE = IPC_CREAT,
- ACE_EXCL = IPC_EXCL,
- ACE_OPEN = 0
- };
-
- // = Initialization and termination methods.
- ACE_SV_Semaphore_Simple (void);
- ACE_SV_Semaphore_Simple (key_t key,
- short flags = ACE_SV_Semaphore_Simple::ACE_CREATE,
- int initial_value = 1,
- u_short nsems = 1,
- mode_t perms = ACE_DEFAULT_FILE_PERMS);
- ACE_SV_Semaphore_Simple (const char *name,
- short flags = ACE_SV_Semaphore_Simple::ACE_CREATE,
- int initial_value = 1,
- u_short nsems = 1,
- mode_t perms = ACE_DEFAULT_FILE_PERMS);
-#if defined (ACE_HAS_WCHAR)
- ACE_SV_Semaphore_Simple (const wchar_t *name,
- short flags = ACE_SV_Semaphore_Simple::ACE_CREATE,
- int initial_value = 1,
- u_short nsems = 1,
- mode_t perms = ACE_DEFAULT_FILE_PERMS);
-#endif /* ACE_HAS_WCHAR */
-
- ~ACE_SV_Semaphore_Simple (void);
-
- int open (const char *name,
- short flags = ACE_SV_Semaphore_Simple::ACE_CREATE,
- int initial_value = 1,
- u_short nsems = 1,
- mode_t perms = ACE_DEFAULT_FILE_PERMS);
-
-#if defined (ACE_HAS_WCHAR)
- int open (const wchar_t *name,
- short flags = ACE_SV_Semaphore_Simple::ACE_CREATE,
- int initial_value = 1,
- u_short nsems = 1,
- mode_t perms = ACE_DEFAULT_FILE_PERMS);
-#endif /* ACE_HAS_WCHAR */
-
- /// Open or create one or more SV_Semaphores. We return 0 if all is
- /// OK, else -1.
- int open (key_t key,
- short flags = ACE_SV_Semaphore_Simple::ACE_CREATE,
- int initial_value = 1,
- u_short nsems = 1,
- mode_t perms = ACE_DEFAULT_FILE_PERMS);
-
- /// Close a ACE_SV_Semaphore, marking it as invalid for subsequent
- /// operations...
- int close (void);
-
- /**
- * Remove all SV_Semaphores associated with a particular key. This
- * call is intended to be called from a server, for example, when it
- * is being shut down, as we do an IPC_RMID on the ACE_SV_Semaphore,
- * regardless of whether other processes may be using it or not.
- * Most other processes should use <close> below.
- */
- int remove (void) const;
-
- // = Semaphore acquire and release methods.
- /**
- * Wait until a ACE_SV_Semaphore's value is greater than 0, the
- * decrement it by 1 and return. Dijkstra's P operation, Tannenbaums
- * DOWN operation.
- */
- int acquire (u_short n = 0, short flags = 0) const;
-
- /// Acquire a semaphore for reading.
- int acquire_read (u_short n = 0, short flags = 0) const;
-
- /// Acquire a semaphore for writing
- int acquire_write (u_short n = 0, short flags = 0) const;
-
- /// Non-blocking version of <acquire>.
- int tryacquire (u_short n = 0, short flags = 0) const;
-
- /// Try to acquire the semaphore for reading.
- int tryacquire_read (u_short n = 0, short flags = 0) const;
-
- /// Try to acquire the semaphore for writing.
- int tryacquire_write (u_short n = 0, short flags = 0) const;
-
- /// Increment ACE_SV_Semaphore by one. Dijkstra's V operation,
- /// Tannenbaums UP operation.
- int release (u_short n = 0, short flags = 0) const;
-
- // = Semaphore operation methods.
- /// General ACE_SV_Semaphore operation. Increment or decrement by a
- /// specific amount (positive or negative; amount can`t be zero).
- int op (short val, u_short semnum = 0, short flags = SEM_UNDO) const;
-
- /// General ACE_SV_Semaphore operation on an array of SV_Semaphores.
- int op (sembuf op_vec[], u_short nsems) const;
-
- // = Semaphore control methods.
- int control (int cmd, semun arg, u_short n = 0) const;
- int control (int cmd, int value = 0, u_short n = 0) const;
-
- /// Get underlying internal id.
- int get_id (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Semaphore key.
- key_t key_;
-
- /// Internal ID to identify the semaphore group within this process.
- int internal_id_;
-
- /// Number of semaphores we're creating.
- int sem_number_;
-
- /**
- * Convert name to key This function is used internally to create
- * keys for the semaphores. A valid name contains letters and
- * digits only and MUST start with a letter.
- *
- * The method for generating names is not very sophisticated, so
- * caller should not pass strings which match each other for the first
- * LUSED characters when he wants to get a different key.
- */
- int init (key_t k = static_cast<key_t> (ACE_INVALID_SEM_KEY),
- int i = -1);
- key_t name_2_key (const char *name);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SV_Semaphore_Simple.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* _SV_SEMAPHORE_SIMPLE_H */
-
diff --git a/dep/include/ace/SV_Semaphore_Simple.inl b/dep/include/ace/SV_Semaphore_Simple.inl
deleted file mode 100644
index 777e85fbf43..00000000000
--- a/dep/include/ace/SV_Semaphore_Simple.inl
+++ /dev/null
@@ -1,128 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SV_Semaphore_Simple.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Global_Macros.h"
-#include "ace/OS_NS_Thread.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_HAS_WCHAR)
-// Semaphores don't offer wide-char names, so convert the name and forward
-// to the narrow-char open().
-ACE_INLINE int
-ACE_SV_Semaphore_Simple::open (const wchar_t *name,
- short flags,
- int initial_value,
- u_short nsems,
- mode_t perms)
-{
- ACE_TRACE ("ACE_SV_Semaphore_Simple::open (wchar_t)");
- return this->open (ACE_Wide_To_Ascii (name).char_rep (),
- flags,
- initial_value,
- nsems,
- perms);
-}
-#endif /* ACE_HAS_WCHAR */
-
-ACE_INLINE int
-ACE_SV_Semaphore_Simple::control (int cmd,
- semun arg,
- u_short n) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Simple::control");
- return this->internal_id_ == -1 ?
- -1 : ACE_OS::semctl (this->internal_id_, n, cmd, arg);
-}
-
-// Close a ACE_SV_Semaphore, marking it as invalid for subsequent
-// operations...
-
-ACE_INLINE int
-ACE_SV_Semaphore_Simple::close (void)
-{
- ACE_TRACE ("ACE_SV_Semaphore_Simple::close");
- return this->init ();
-}
-
-// General ACE_SV_Semaphore operation on an array of SV_Semaphores.
-
-ACE_INLINE int
-ACE_SV_Semaphore_Simple::op (sembuf op_vec[], u_short n) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Simple::op");
- return this->internal_id_ == -1
- ? -1 : ACE_OS::semop (this->internal_id_, op_vec, n);
-}
-
-// Wait until a ACE_SV_Semaphore's value is greater than 0, the
-// decrement it by 1 and return. Dijkstra's P operation, Tannenbaums
-// DOWN operation.
-
-ACE_INLINE int
-ACE_SV_Semaphore_Simple::acquire (u_short n, short flags) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Simple::acquire");
- return this->op (-1, n, flags);
-}
-
-ACE_INLINE int
-ACE_SV_Semaphore_Simple::acquire_read (u_short n, short flags) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Simple::acquire_read");
- return this->acquire (n, flags);
-}
-
-ACE_INLINE int
-ACE_SV_Semaphore_Simple::acquire_write (u_short n, short flags) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Simple::acquire_write");
- return this->acquire (n, flags);
-}
-
-// Non-blocking version of acquire().
-
-ACE_INLINE int
-ACE_SV_Semaphore_Simple::tryacquire (u_short n, short flags) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Simple::tryacquire");
- return this->op (-1, n, flags | IPC_NOWAIT);
-}
-
-// Non-blocking version of acquire().
-
-ACE_INLINE int
-ACE_SV_Semaphore_Simple::tryacquire_read (u_short n, short flags) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Simple::tryacquire_read");
- return this->tryacquire (n, flags);
-}
-
-// Non-blocking version of acquire().
-
-ACE_INLINE int
-ACE_SV_Semaphore_Simple::tryacquire_write (u_short n, short flags) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Simple::tryacquire_write");
- return this->tryacquire (n, flags);
-}
-
-// Increment ACE_SV_Semaphore by one. Dijkstra's V operation,
-// Tannenbaums UP operation.
-
-ACE_INLINE int
-ACE_SV_Semaphore_Simple::release (u_short n, short flags) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Simple::release");
- return this->op (1, n, flags);
-}
-
-ACE_INLINE int
-ACE_SV_Semaphore_Simple::get_id (void) const
-{
- ACE_TRACE ("ACE_SV_Semaphore_Simple::get_id");
- return this->internal_id_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/SV_Shared_Memory.h b/dep/include/ace/SV_Shared_Memory.h
deleted file mode 100644
index f4bc944efa2..00000000000
--- a/dep/include/ace/SV_Shared_Memory.h
+++ /dev/null
@@ -1,122 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file SV_Shared_Memory.h
- *
- * $Id: SV_Shared_Memory.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_SV_SHARED_MEMORY_H
-#define ACE_SV_SHARED_MEMORY_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_stat.h"
-#include "ace/os_include/sys/os_ipc.h"
-#include "ace/Default_Constants.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_SV_Shared_Memory
- *
- * @brief This is a wrapper for System V shared memory.
- */
-class ACE_Export ACE_SV_Shared_Memory
-{
-public:
- enum
- {
- ACE_CREATE = IPC_CREAT,
- ACE_OPEN = 0
- };
-
- // = Initialization and termination methods.
- ACE_SV_Shared_Memory (void);
- ACE_SV_Shared_Memory (key_t external_id,
- size_t size,
- int create,
- int perms = ACE_DEFAULT_FILE_PERMS,
- void *virtual_addr = 0,
- int flags = 0);
-
- ACE_SV_Shared_Memory (ACE_HANDLE internal_id,
- int flags = 0);
-
- int open (key_t external_id,
- size_t size,
- int create = ACE_SV_Shared_Memory::ACE_OPEN,
- int perms = ACE_DEFAULT_FILE_PERMS);
-
- int open_and_attach (key_t external_id,
- size_t size,
- int create = ACE_SV_Shared_Memory::ACE_OPEN,
- int perms = ACE_DEFAULT_FILE_PERMS,
- void *virtual_addr = 0,
- int flags = 0);
-
- /// Attach this shared memory segment.
- int attach (void *virtual_addr = 0, int flags = 0);
-
- /// Detach this shared memory segment.
- int detach (void);
-
- /// Remove this shared memory segment.
- int remove (void);
-
- /// Forward to underlying System V <shmctl>.
- int control (int cmd, void *buf);
-
- // = Segment-related info.
- void *get_segment_ptr (void) const;
- size_t get_segment_size (void) const;
-
- /// Return the ID of the shared memory segment (i.e., an ACE_HANDLE).
- ACE_HANDLE get_id (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- enum
- {
- /// Most restrictive alignment.
- ALIGN_WORDB = 8
- };
-
- /// Internal identifier.
- ACE_HANDLE internal_id_;
-
- /// Size of the mapped segment.
- size_t size_;
-
- /// Pointer to the beginning of the segment.
- void *segment_ptr_;
-
- /// Round up to an appropriate page size.
- size_t round_up (size_t len);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/SV_Shared_Memory.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SV_SHARED_MEMORY_H */
-
diff --git a/dep/include/ace/SV_Shared_Memory.inl b/dep/include/ace/SV_Shared_Memory.inl
deleted file mode 100644
index e6a61948da8..00000000000
--- a/dep/include/ace/SV_Shared_Memory.inl
+++ /dev/null
@@ -1,118 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: SV_Shared_Memory.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_sys_shm.h"
-#include "ace/Global_Macros.h"
-#include "ace/OS_NS_errno.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE size_t
-ACE_SV_Shared_Memory::round_up (size_t len)
-{
- ACE_TRACE ("ACE_SV_Shared_Memory::round_up");
- return (len + ACE_SV_Shared_Memory::ALIGN_WORDB - 1) & ~(ACE_SV_Shared_Memory::ALIGN_WORDB - 1);
-}
-
-// Creates a shared memory segment of SIZE bytes. Does *not* attach
-// this memory segment...
-
-ACE_INLINE int
-ACE_SV_Shared_Memory::open (key_t external_id, size_t sz, int create, int perms)
-{
- ACE_TRACE ("ACE_SV_Shared_Memory::open");
-#if defined (ACE_WIN32)
- ACE_UNUSED_ARG(perms);
- ACE_UNUSED_ARG(create);
- ACE_UNUSED_ARG(sz);
- ACE_UNUSED_ARG(external_id);
- ACE_NOTSUP_RETURN (-1);
-#else
- this->segment_ptr_ = 0;
- this->size_ = sz;
-
- this->internal_id_ = ACE_OS::shmget (external_id, sz, create | perms);
-
- return this->internal_id_ == -1 ? -1 : 0;
-#endif /* ACE_WIN32 */
-}
-
-// Attachs to the shared memory segment.
-
-ACE_INLINE int
-ACE_SV_Shared_Memory::attach (void *virtual_addr, int flags)
-{
- ACE_TRACE ("ACE_SV_Shared_Memory::attach");
-#if defined (ACE_WIN32)
- ACE_UNUSED_ARG(flags);
- ACE_UNUSED_ARG(virtual_addr);
- ACE_NOTSUP_RETURN (-1);
-#else
- this->segment_ptr_ = ACE_OS::shmat (this->internal_id_, virtual_addr, flags);
- return this->segment_ptr_ == (void *) -1 ? -1 : 0;
-#endif /* ACE_WIN32 */
-}
-
-// Interface to the underlying shared memory control function.
-
-ACE_INLINE int
-ACE_SV_Shared_Memory::control (int cmd, void *buf)
-{
- ACE_TRACE ("ACE_SV_Shared_Memory::control");
-#if defined (ACE_WIN32)
- ACE_UNUSED_ARG(cmd);
- ACE_UNUSED_ARG(buf);
- ACE_NOTSUP_RETURN (-1);
-#else
- return ACE_OS::shmctl (this->internal_id_, cmd, (struct shmid_ds *) buf);
-#endif /* ACE_WIN32 */
-}
-
-// The overall size of the segment.
-
-ACE_INLINE size_t
-ACE_SV_Shared_Memory::get_segment_size (void) const
-{
- ACE_TRACE ("ACE_SV_Shared_Memory::get_segment_size");
- return this->size_;
-}
-
-// Removes the shared memory segment.
-
-ACE_INLINE int
-ACE_SV_Shared_Memory::remove (void)
-{
- ACE_TRACE ("ACE_SV_Shared_Memory::remove");
-#if defined (ACE_WIN32)
- ACE_NOTSUP_RETURN (-1);
-#else
- return ACE_OS::shmctl (this->internal_id_, IPC_RMID, 0);
-#endif /* ACE_WIN32 */
-}
-
-// Detach the current binding between this->segment_ptr and the shared
-// memory segment.
-
-ACE_INLINE int
-ACE_SV_Shared_Memory::detach (void)
-{
- ACE_TRACE ("ACE_SV_Shared_Memory::detach");
- return ACE_OS::shmdt (this->segment_ptr_);
-}
-
-ACE_INLINE void *
-ACE_SV_Shared_Memory::get_segment_ptr (void) const
-{
- ACE_TRACE ("ACE_SV_Shared_Memory::get_segment_ptr");
- return this->segment_ptr_;
-}
-
-ACE_INLINE ACE_HANDLE
-ACE_SV_Shared_Memory::get_id (void) const
-{
- ACE_TRACE ("ACE_SV_Shared_Memory::get_id");
- return this->internal_id_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Sample_History.h b/dep/include/ace/Sample_History.h
deleted file mode 100644
index 9e4d39b6a27..00000000000
--- a/dep/include/ace/Sample_History.h
+++ /dev/null
@@ -1,91 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Sample_History.h
- *
- * $Id: Sample_History.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Carlos O'Ryan <coryan@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SAMPLE_HISTORY_H
-#define ACE_SAMPLE_HISTORY_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-#include "ace/Basic_Types.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Basic_Stats;
-
-/// Save multiple samples in an array
-/**
- * Save multiple samples (usually latency numbers), into an array, and
- * later print them in several formats.
- */
-class ACE_Export ACE_Sample_History
-{
-public:
- /// Constructor
- /**
- * The number of samples is pre-allocated, and cannot changes once
- * the class is initialized.
- */
- ACE_Sample_History (size_t max_samples);
-
- /// Destructor
- ~ACE_Sample_History (void);
-
- /// Record one sample.
- /**
- * Return 0 on success, -1 if the sample could not be stored
- */
- int sample (ACE_UINT64 value);
-
- /// Returns the maximum number of samples
- size_t max_samples (void) const;
-
- /// Returns the current number of samples
- size_t sample_count (void) const;
-
- /// Dump all the samples
- /**
- * Prints out all the samples, using @a msg as a prefix for each
- * message.
- */
- void dump_samples (const ACE_TCHAR *msg,
- ACE_UINT32 scale_factor) const;
-
- /// Collect the summary for all the samples
- void collect_basic_stats (ACE_Basic_Stats &) const;
-
- /// Get a sample
- ACE_UINT64 get_sample (size_t i) const;
-
-private:
- /// The maximum number of samples
- size_t max_samples_;
-
- /// The current number of samples
- size_t sample_count_;
-
- /// The samples
- ACE_UINT64 *samples_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Sample_History.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SAMPLE_HISTORY_H */
-
diff --git a/dep/include/ace/Sample_History.inl b/dep/include/ace/Sample_History.inl
deleted file mode 100644
index 9945bfe14ec..00000000000
--- a/dep/include/ace/Sample_History.inl
+++ /dev/null
@@ -1,26 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Sample_History.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_Sample_History::sample (ACE_UINT64 value)
-{
- if (this->sample_count_ >= this->max_samples_)
- return -1;
-
- this->samples_[this->sample_count_++] = value;
- return 0;
-}
-
-ACE_INLINE ACE_UINT64
-ACE_Sample_History::get_sample (size_t i) const
-{
- if (this->sample_count_ <= i)
- return 0;
-
- return this->samples_[i];
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Sbrk_Memory_Pool.h b/dep/include/ace/Sbrk_Memory_Pool.h
deleted file mode 100644
index 0eace0f3fe3..00000000000
--- a/dep/include/ace/Sbrk_Memory_Pool.h
+++ /dev/null
@@ -1,118 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Sbrk_Memory_Pool.h
- *
- * $Id: Sbrk_Memory_Pool.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Dougls C. Schmidt <schmidt@cs.wustl.edu>
- * @author Prashant Jain <pjain@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SBRK_MEMORY_POOL_H
-#define ACE_SBRK_MEMORY_POOL_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_SBRK)
-
-#include "ace/ACE.h"
-#include "ace/os_include/sys/os_mman.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Sbrk_Memory_Pool_Options
- *
- * @brief Helper class for Sbrk Memory Pool constructor options.
- *
- * This should be a nested class, but that breaks too many
- * compilers.
- */
-class ACE_Export ACE_Sbrk_Memory_Pool_Options
-{
-};
-
-/**
- * @class ACE_Sbrk_Memory_Pool
- *
- * @brief Make a memory pool that is based on <sbrk(2)>.
- */
-class ACE_Export ACE_Sbrk_Memory_Pool
-{
-public:
- typedef ACE_Sbrk_Memory_Pool_Options OPTIONS;
-
- /// Initialize the pool.
- ACE_Sbrk_Memory_Pool (const ACE_TCHAR *backing_store_name = 0,
- const OPTIONS *options = 0);
-
- virtual ~ACE_Sbrk_Memory_Pool (void);
-
- // = Implementor operations.
- /// Ask system for initial chunk of local memory.
- virtual void *init_acquire (size_t nbytes,
- size_t &rounded_bytes,
- int &first_time);
-
- /// Acquire at least @a nbytes from the memory pool. @a rounded_bytes is
- /// the actual number of bytes allocated.
- virtual void *acquire (size_t nbytes,
- size_t &rounded_bytes);
-
- /// Instruct the memory pool to release all of its resources.
- virtual int release (int destroy = 1);
-
- /**
- * Sync @a len bytes of the memory region to the backing store
- * starting at @c this->base_addr_. If @a len == -1 then sync the
- * whole region.
- */
- virtual int sync (ssize_t len = -1, int flags = MS_SYNC);
-
- /// Sync @a len bytes of the memory region to the backing store
- /// starting at @a addr.
- virtual int sync (void *addr, size_t len, int flags = MS_SYNC);
-
- /**
- * Change the protection of the pages of the mapped region to @a prot
- * starting at @c this->base_addr_ up to @a len bytes. If @a len == -1
- * then change protection of all pages in the mapped region.
- */
- virtual int protect (ssize_t len = -1, int prot = PROT_RDWR);
-
- /// Change the protection of the pages of the mapped region to @a prot
- /// starting at @a addr up to @a len bytes.
- virtual int protect (void *addr, size_t len, int prot = PROT_RDWR);
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Return the base address of this memory pool, 0 if base_addr
- /// never changes.
- virtual void *base_addr (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Implement the algorithm for rounding up the request to an
- /// appropriate chunksize.
- virtual size_t round_up (size_t nbytes);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* !ACE_LACKS_SBRK */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SBRK_MEMORY_POOL_H */
-
diff --git a/dep/include/ace/Sched_Params.h b/dep/include/ace/Sched_Params.h
deleted file mode 100644
index 29983a36a92..00000000000
--- a/dep/include/ace/Sched_Params.h
+++ /dev/null
@@ -1,233 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Sched_Params.h
- *
- * $Id: Sched_Params.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author David Levine <levine@cs.wustl.edu>
- * @author Carlos O'Ryan <coryan@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SCHED_PARAMS_H
-#define ACE_SCHED_PARAMS_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Time_Value.h"
-#include "ace/OS_NS_Thread.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Sched_Params
- *
- * @brief Container for scheduling-related parameters.
- *
- * ACE_Sched_Params are passed via <ACE_OS::sched_params> to the
- * OS to specify scheduling parameters. These parameters include
- * scheduling policy, such as FIFO (ACE_SCHED_FIFO), round-robin
- * (ACE_SCHED_RR), or an implementation-defined "OTHER"
- * (ACE_SCHED_OTHER), to which many systems default; priority;
- * and a time-slice quantum for round-robin scheduling. A
- * "scope" parameter specifies whether the ACE_Sched_Params
- * applies to the current process, current lightweight process
- * (LWP) (on Solaris), or current thread. Please see the "NOTE"
- * below about not all combinations of parameters being legal on
- * a particular platform.
- * For the case of thread priorities, it is intended that
- * <ACE_OS::sched_params> usually be called from <main> before
- * any threads have been spawned. If spawned threads inherit
- * their parent's priority (I think that's the default behavior
- * for all of our platforms), then this sets the default base
- * priority. Individual thread priorities can be adjusted as
- * usual using <ACE_OS::thr_prio> or via the ACE_Thread
- * interface. See the parameter descriptions in the private:
- * section below.
- * @note This class does not do any checking of parameters. It
- * is just a container class. If it is constructed with values
- * that are not supported on a platform, the call to
- * <ACE_OS::sched_params> will fail by returning -1 with EINVAL
- * (available through <ACE_OS::last_error>).
- */
-class ACE_Export ACE_Sched_Params
-{
- // NOTE: Solaris 2.5.x threads in the RT class must set the
- // priority of their LWP. The only way to do that through ACE is
- // for the RT thread itself to call <ACE_OS::thr_setprio> with
- // it's own priority.
-
- // OS Scheduling parameters are complicated and often confusing.
- // Many thanks to Thilo Kielmann
- // <kielmann@informatik.uni-siegen.de> for his careful review of
- // this class design, thoughtful comments, and assistance with
- // implementation, especially for PTHREADS platforms. Please
- // send any comments or corrections to the ACE developers.
-public:
- typedef int Policy;
-
- // = Initialization and termination methods.
- /// Constructor.
- ACE_Sched_Params (const Policy policy,
- const ACE_Sched_Priority priority,
- const int scope = ACE_SCOPE_THREAD,
- const ACE_Time_Value &quantum = ACE_Time_Value::zero);
-
- /// Termination.
- ~ACE_Sched_Params (void);
-
- // = Get/Set methods:
-
- // = Get/Set policy
- Policy policy (void) const;
- void policy (const Policy);
-
- // = Get/Set priority.
- ACE_Sched_Priority priority (void) const;
- void priority (const ACE_Sched_Priority);
-
- // = Get/Set scope.
- int scope (void) const;
- void scope(const int);
-
- // = Get/Set quantum.
- const ACE_Time_Value &quantum (void) const;
- void quantum (const ACE_Time_Value &);
-
- // = Accessors for OS-specific priorities.
- // These return priority values for ACE_SCHED_OTHER if the Policy value
- // is invalid.
- static int priority_min (const Policy,
- const int scope = ACE_SCOPE_THREAD);
- static int priority_max (const Policy,
- const int scope = ACE_SCOPE_THREAD);
-
- /**
- * The next higher priority. "Higher" refers to scheduling priority,
- * not to the priority value itself. (On some platforms, higher scheduling
- * priority is indicated by a lower priority value.) If "priority" is
- * already the highest priority (for the specified policy), then it is
- * returned.
- */
- static int next_priority (const Policy,
- const int priority,
- const int scope = ACE_SCOPE_THREAD);
-
- /**
- * The previous, lower priority. "Lower" refers to scheduling priority,
- * not to the priority value itself. (On some platforms, lower scheduling
- * priority is indicated by a higher priority value.) If "priority" is
- * already the lowest priority (for the specified policy), then it is
- * returned.
- */
- static int previous_priority (const Policy,
- const int priority,
- const int scope = ACE_SCOPE_THREAD);
-
-private:
- /// Scheduling policy.
- Policy policy_;
-
- /// Default <priority_>: for setting the priority for the process, LWP,
- /// or thread, as indicated by the scope_ parameter.
- ACE_Sched_Priority priority_;
-
- /**
- * <scope_> must be one of the following:
- * ACE_SCOPE_PROCESS: sets the scheduling policy for the
- * process, and the process priority. On some platforms,
- * such as Win32, the scheduling policy can _only_ be
- * set at process scope.
- * ACE_SCOPE_LWP: lightweight process scope, only used with
- * Solaris threads.
- * ACE_SCOPE_THREAD: sets the scheduling policy for the thread,
- * if the OS supports it, such as with Posix threads, and the
- * thread priority.
- * NOTE: I don't think that these are the same as POSIX
- * contention scope. POSIX users who are interested in,
- * and understand, contention scope will have to set it
- * by using system calls outside of ACE.
- */
- int scope_;
-
- /**
- * The <quantum_> is for time slicing. An ACE_Time_Value of 0 has
- * special significance: it means time-slicing is disabled; with
- * that, a thread that is running on a CPU will continue to run
- * until it blocks or is preempted. Currently ignored if the OS
- * doesn't directly support time slicing, such as on VxWorks, or
- * setting the quantum (can that be done on Win32?).
- */
- ACE_Time_Value quantum_;
-};
-
-/**
- * @class ACE_Sched_Priority_Iterator
- *
- * @brief An iterator over the OS-defined scheduling priorities.
- *
- * The order of priorities (numeric value vs. importance) is OS
- * dependant, it can be the case that the priorities are not even
- * contigous. This class permits iteration over priorities using
- * the iterator pattern.
- */
-class ACE_Export ACE_Sched_Priority_Iterator
-{
-public:
- /// Initialize the iterator, the arguments define the scheduling
- /// policy and scope for the priorities (see ACE_Sched_Param).
- ACE_Sched_Priority_Iterator (const ACE_Sched_Params::Policy &policy,
- int scope = ACE_SCOPE_THREAD);
-
- /// Default dtor.
- ~ACE_Sched_Priority_Iterator (void);
-
- /// Check if there are more priorities.
- int more (void) const;
-
- /// Return the current priority.
- int priority (void) const;
-
- /// Move to the next priority.
- /// The iteration is from lowest to highest importance.
- void next (void);
-
- /// Accessor for the scheduling policy over which we are iterating.
- const ACE_Sched_Params::Policy &policy (void) const;
-
- /// Accessor for the scheduling
- int scope (void) const;
-
-private:
- /// The Scheduling policy (FIFO, RR, etc.) and scheduling scope
- /// (PROCESS, SYSTEM) we are iterating on.
- ACE_Sched_Params::Policy policy_;
- int scope_;
-
- /// The current priority.
- int priority_;
-
- /**
- * This is set to 1 when there are no more priorities. Cannot easily
- * compare against the highest priority on platforms were priorities
- * are non-contigous or descending.
- */
- int done_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Sched_Params.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SCHED_PARAMS_H */
-
diff --git a/dep/include/ace/Sched_Params.inl b/dep/include/ace/Sched_Params.inl
deleted file mode 100644
index ef4416e30ec..00000000000
--- a/dep/include/ace/Sched_Params.inl
+++ /dev/null
@@ -1,133 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Sched_Params.inl
- *
- * $Id: Sched_Params.inl 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author David Levine
- */
-//=============================================================================
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Sched_Params::ACE_Sched_Params (
- const Policy policy,
- const ACE_Sched_Priority priority,
- const int scope,
- const ACE_Time_Value &quantum)
- : policy_ (policy),
- priority_ (priority),
- scope_ (scope),
- quantum_ (quantum)
-{
-}
-
-ACE_INLINE ACE_Sched_Params::~ACE_Sched_Params (void)
-{
-}
-
-ACE_INLINE ACE_Sched_Params::Policy
-ACE_Sched_Params::policy (void) const
-{
- return this->policy_;
-}
-
-ACE_INLINE void
-ACE_Sched_Params::policy (const ACE_Sched_Params::Policy policy)
-{
- this->policy_ = policy;
-}
-
-ACE_INLINE ACE_Sched_Priority
-ACE_Sched_Params::priority (void) const
-{
- return this->priority_;
-}
-
-ACE_INLINE void
-ACE_Sched_Params::priority (const ACE_Sched_Priority priority)
-{
- this->priority_ = priority;
-}
-
-ACE_INLINE int
-ACE_Sched_Params::scope (void) const
-{
- return this->scope_;
-}
-
-ACE_INLINE void
-ACE_Sched_Params::scope (const int scope)
-{
- this->scope_ = scope;
-}
-
-ACE_INLINE const ACE_Time_Value &
-ACE_Sched_Params::quantum (void) const
-{
- return this->quantum_;
-}
-
-ACE_INLINE void
-ACE_Sched_Params::quantum (const ACE_Time_Value &quant)
-{
- this->quantum_ = quant;
-}
-
-ACE_INLINE const ACE_Sched_Params::Policy &
-ACE_Sched_Priority_Iterator::policy (void) const
-{
- return this->policy_;
-}
-
-ACE_INLINE int
-ACE_Sched_Priority_Iterator::scope (void) const
-{
- return this->scope_;
-}
-
-ACE_INLINE
-ACE_Sched_Priority_Iterator::ACE_Sched_Priority_Iterator (const ACE_Sched_Params::Policy &policy,
- int scope)
- : policy_ (policy),
- scope_ (scope),
- priority_ (0),
- done_ (0)
-{
- priority_ = ACE_Sched_Params::priority_min (this->policy (), this->scope ());
-}
-
-ACE_INLINE
-ACE_Sched_Priority_Iterator::~ACE_Sched_Priority_Iterator (void)
-{
-}
-
-ACE_INLINE int
-ACE_Sched_Priority_Iterator::more (void) const
-{
- return !this->done_;
-}
-
-ACE_INLINE int
-ACE_Sched_Priority_Iterator::priority (void) const
-{
- return this->priority_;
-}
-
-ACE_INLINE void
-ACE_Sched_Priority_Iterator::next (void)
-{
- if (this->done_)
- return;
-
- int old_priority = this->priority_;
- priority_ = ACE_Sched_Params::next_priority (this->policy (),
- this->priority (),
- this->scope ());
- this->done_ = old_priority == priority_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Select_Reactor.h b/dep/include/ace/Select_Reactor.h
deleted file mode 100644
index f3595e0474f..00000000000
--- a/dep/include/ace/Select_Reactor.h
+++ /dev/null
@@ -1,70 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Select_Reactor.h
- *
- * $Id: Select_Reactor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SELECT_REACTOR_H
-#define ACE_SELECT_REACTOR_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Select_Reactor_T.h"
-#include "ace/Reactor_Token_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-//@@ TAO_REACTOR_SPL_COMMENT_HOOK_START
-typedef ACE_Reactor_Token_T<ACE_SELECT_TOKEN> ACE_Select_Reactor_Token;
-
-typedef ACE_Select_Reactor_T<ACE_Select_Reactor_Token> ACE_Select_Reactor;
-//@@ TAO_REACTOR_SPL_COMMENT_HOOK_END
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE == 0)
-/**
- * @class ACE_Guard< ACE_Reactor_Token_T<ACE_Noop_Token> >
- *
- * @brief Template specialization of ACE_Guard for the
- * ACE_Null_Mutex.
- *
- * This specialization is useful since it helps to speedup
- * performance of the "Null_Mutex" considerably.
- */
-template<>
-class ACE_Export ACE_Guard< ACE_Reactor_Token_T<ACE_Noop_Token> >
-{
-public:
- // = Initialization and termination methods.
- ACE_Guard (ACE_Reactor_Token_T<ACE_Noop_Token> &) {}
- ACE_Guard (ACE_Reactor_Token_T<ACE_Noop_Token> &, int) {}
- ~ACE_Guard (void) {}
-
- int acquire (void) { return 0; }
- int tryacquire (void) { return 0; }
- int release (void) { return 0; }
- int locked (void) { return 1; }
- int remove (void) { return 0; }
- void dump (void) const {}
-
-private:
- // Disallow copying and assignment.
- ACE_Guard (const ACE_Guard< ACE_Reactor_Token_T<ACE_Noop_Token> > &);
- void operator= (const ACE_Guard< ACE_Reactor_Token_T<ACE_Noop_Token> > &);
-
-};
-#endif /* ACE_MT_SAFE && ACE_MT_SAFE == 0 */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SELECT_REACTOR_H */
-
diff --git a/dep/include/ace/Select_Reactor_Base.h b/dep/include/ace/Select_Reactor_Base.h
deleted file mode 100644
index 65b24cd5f23..00000000000
--- a/dep/include/ace/Select_Reactor_Base.h
+++ /dev/null
@@ -1,612 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Select_Reactor_Base.h
- *
- * $Id: Select_Reactor_Base.h 82393 2008-07-23 10:52:34Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SELECT_REACTOR_BASE_H
-#define ACE_SELECT_REACTOR_BASE_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Timer_Queuefwd.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Event_Handler.h"
-#include "ace/Handle_Set.h"
-#include "ace/Pipe.h"
-#include "ace/Reactor_Impl.h"
-
-#if defined (ACE_HAS_REACTOR_NOTIFICATION_QUEUE)
-# include "ace/Notification_Queue.h"
-#endif /* ACE_HAS_REACTOR_NOTIFICATION_QUEUE */
-
-#ifdef ACE_WIN32
-# include "ace/Null_Mutex.h"
-# include "ace/Hash_Map_Manager_T.h"
-# include "ace/Functor.h" /* For ACE_Hash<void *> */
-# include <functional> /* For std::equal_to<> */
-#else
-# include "ace/Array_Base.h"
-#endif /* ACE_WIN32 */
-
-#if !defined (ACE_DISABLE_NOTIFY_PIPE_DEFAULT)
-# define ACE_DISABLE_NOTIFY_PIPE_DEFAULT 0
-#endif /* ACE_DISABLE_NOTIFY_PIPE_DEFAULT */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Add useful typedefs to simplify the following code.
-typedef void (ACE_Handle_Set::*ACE_FDS_PTMF) (ACE_HANDLE);
-typedef int (ACE_Event_Handler::*ACE_EH_PTMF) (ACE_HANDLE);
-
-// Forward declaration.
-class ACE_Select_Reactor_Impl;
-class ACE_Sig_Handler;
-
-/*
- * Hook to specialize the Select_Reactor_Base implementation
- * with the concrete reactor, e.g., select or tp reactor
- * specified at build/compilation time.
- */
-//@@ REACTOR_SPL_INCLUDE_FORWARD_DECL_ADD_HOOK
-
-/**
- * @class ACE_Select_Reactor_Handle_Set
- *
- * @brief Track handles we are interested for various events.
- */
-class ACE_Export ACE_Select_Reactor_Handle_Set
-{
-public:
- /// Read events (e.g., input pending, accept pending).
- ACE_Handle_Set rd_mask_;
-
- /// Write events (e.g., flow control abated, non-blocking connection
- /// complete).
- ACE_Handle_Set wr_mask_;
-
- /// Exception events (e.g., SIG_URG).
- ACE_Handle_Set ex_mask_;
-};
-
-/**
- * @class ACE_Event_Tuple
- *
- * @brief An ACE_Event_Handler and its associated ACE_HANDLE.
- *
- * One ACE_Event_Handler is registered for one or more
- * ACE_HANDLE. At various points, this information must be
- * stored explicitly. This class provides a lightweight
- * mechanism to do so.
- */
-class ACE_Event_Tuple
-{
-public:
-
- /// Default constructor.
- ACE_Event_Tuple (void);
-
- /// Constructor.
- ACE_Event_Tuple (ACE_Event_Handler *eh, ACE_HANDLE h);
-
- /// Equality operator.
- bool operator== (const ACE_Event_Tuple &rhs) const;
-
- /// Inequality operator.
- bool operator!= (const ACE_Event_Tuple &rhs) const;
-
-public:
-
- /// Handle.
- ACE_HANDLE handle_;
-
- /// ACE_Event_Handler associated with the ACE_HANDLE.
- ACE_Event_Handler *event_handler_;
-
-};
-
-/**
- * @class ACE_Select_Reactor_Notify
- *
- * @brief Unblock the ACE_Select_Reactor from its event loop.
- *
- * This implementation is necessary for cases where the
- * ACE_Select_Reactor is run in a multi-threaded program. In
- * this case, we need to be able to unblock @c select or @c poll
- * when updates occur other than in the main
- * ACE_Select_Reactor thread. To do this, we signal an
- * auto-reset event the ACE_Select_Reactor is listening on.
- * If an ACE_Event_Handler and ACE_Select_Reactor_Mask is
- * passed to @c notify, the appropriate @c handle_* method is
- * dispatched in the context of the ACE_Select_Reactor thread.
- */
-class ACE_Export ACE_Select_Reactor_Notify : public ACE_Reactor_Notify
-{
-public:
- /// Constructor.
- ACE_Select_Reactor_Notify (void);
-
- /// Destructor.
- virtual ~ACE_Select_Reactor_Notify (void);
-
- // = Initialization and termination methods.
- /// Initialize.
- virtual int open (ACE_Reactor_Impl *,
- ACE_Timer_Queue * = 0,
- int disable_notify_pipe = ACE_DISABLE_NOTIFY_PIPE_DEFAULT);
-
- /// Destroy.
- virtual int close (void);
-
- /**
- * Called by a thread when it wants to unblock the
- * ACE_Select_Reactor. This wakeups the ACE_Select_Reactor if
- * currently blocked in @c select/poll. Pass over both the
- * @c Event_Handler *and* the @c mask to allow the caller to dictate
- * which @c Event_Handler method the ACE_Select_Reactor will
- * invoke. The ACE_Time_Value indicates how long to blocking
- * trying to notify the ACE_Select_Reactor. If @a timeout == 0,
- * the caller will block until action is possible, else will wait
- * until the relative time specified in @c *timeout elapses).
- */
- virtual int notify (ACE_Event_Handler * = 0,
- ACE_Reactor_Mask = ACE_Event_Handler::EXCEPT_MASK,
- ACE_Time_Value * timeout = 0);
-
- /// Handles pending threads (if any) that are waiting to unblock the
- /// ACE_Select_Reactor.
- virtual int dispatch_notifications (int &number_of_active_handles,
- ACE_Handle_Set &rd_mask);
-
- /// Returns the ACE_HANDLE of the notify pipe on which the reactor
- /// is listening for notifications so that other threads can unblock
- /// the Select_Reactor
- virtual ACE_HANDLE notify_handle (void);
-
- /// Handle one of the notify call on the @c handle. This could be
- /// because of a thread trying to unblock the Reactor_Impl
- virtual int dispatch_notify (ACE_Notification_Buffer &buffer);
-
- /// Read one of the notify call on the @a handle into the
- /// @a buffer. This could be because of a thread trying to unblock
- /// the Reactor_Impl
- virtual int read_notify_pipe (ACE_HANDLE handle,
- ACE_Notification_Buffer &buffer);
-
- /// Verify whether the buffer has dispatchable info or not.
- virtual int is_dispatchable (ACE_Notification_Buffer &buffer);
-
- /// Called back by the ACE_Select_Reactor when a thread wants to
- /// unblock us.
- virtual int handle_input (ACE_HANDLE handle);
-
- /**
- * Set the maximum number of times that the
- * ACE_Select_Reactor_Notify::handle_input() method will iterate and
- * dispatch the ACE_Event_Handlers that are passed in via the
- * notify pipe before breaking out of its @c recv loop. By default,
- * this is set to -1, which means "iterate until the pipe is empty."
- * Setting this to a value like "1 or 2" will increase "fairness"
- * (and thus prevent starvation) at the expense of slightly higher
- * dispatching overhead.
- */
- virtual void max_notify_iterations (int);
-
- /**
- * Get the maximum number of times that the
- * ACE_Select_Reactor_Notify::handle_input() method will iterate and
- * dispatch the ACE_Event_Handlers that are passed in via the
- * notify pipe before breaking out of its recv loop.
- */
- virtual int max_notify_iterations (void);
-
- /**
- * Purge any notifications pending in this reactor for the specified
- * ACE_Event_Handler object. If @a eh == 0, all notifications for all
- * handlers are removed (but not any notifications posted just to wake up
- * the reactor itself). Returns the number of notifications purged.
- * Returns -1 on error.
- */
- virtual int purge_pending_notifications (
- ACE_Event_Handler *sh,
- ACE_Reactor_Mask mask = ACE_Event_Handler::ALL_EVENTS_MASK);
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /**
- * Keep a back pointer to the ACE_Select_Reactor. If this value
- * if NULL then the ACE_Select_Reactor has been initialized with
- * disable_notify_pipe.
- */
- ACE_Select_Reactor_Impl *select_reactor_;
-
- /**
- * Contains the ACE_HANDLE the ACE_Select_Reactor is listening
- * on, as well as the ACE_HANDLE that threads wanting the
- * attention of the ACE_Select_Reactor will write to.
- */
- ACE_Pipe notification_pipe_;
-
- /**
- * Keeps track of the maximum number of times that the
- * ACE_Select_Reactor_Notify::handle_input() method will iterate and
- * dispatch the ACE_Event_Handlers that are passed in via the
- * notify pipe before breaking out of its recv loop. By default,
- * this is set to -1, which means "iterate until the pipe is empty."
- */
- int max_notify_iterations_;
-
-#if defined (ACE_HAS_REACTOR_NOTIFICATION_QUEUE)
- /**
- * @brief A user-space queue to store the notifications.
- *
- * The notification pipe has OS-specific size restrictions. That
- * is, no more than a certain number of bytes may be stored in the
- * pipe without blocking. This limit may be too small for certain
- * applications. In this case, ACE can be configured to store all
- * the events in user-space. The pipe is still needed to wake up
- * the reactor thread, but only one event is sent through the pipe
- * at a time.
- */
- ACE_Notification_Queue notification_queue_;
-#endif /* ACE_HAS_REACTOR_NOTIFICATION_QUEUE */
-};
-
-/**
- * @class ACE_Select_Reactor_Handler_Repository
- *
- * @brief Used to map ACE_HANDLEs onto the appropriate
- * ACE_Event_Handler *.
- *
- * This class is necessary to shield differences between UNIX
- * and Win32. In UNIX, ACE_HANDLE is an int, whereas in Win32
- * it's a void *. This class hides all these details from the
- * bulk of the ACE_Select_Reactor code. All of these methods
- * are called with the main <Select_Reactor> token lock held.
- */
-class ACE_Export ACE_Select_Reactor_Handler_Repository
-{
-public:
- friend class ACE_Select_Reactor_Handler_Repository_Iterator;
-
- typedef ACE_HANDLE key_type;
- typedef ACE_Event_Handler * value_type;
-
- // = The mapping from <HANDLES> to <Event_Handlers>.
-#ifdef ACE_WIN32
- /**
- * The NT version implements this via a hash map
- * @c ACE_Event_Handler*. Since NT implements @c ACE_HANDLE
- * as a void * we can't directly index into this array. Therefore,
- * we must explicitly map @c ACE_HANDLE to @c ACE_Event_Handler.
- */
- typedef ACE_Hash_Map_Manager_Ex<key_type,
- value_type,
- ACE_Hash<key_type>,
- std::equal_to<key_type>,
- ACE_Null_Mutex> map_type;
-
- typedef map_type::size_type max_handlep1_type;
-#else
- /**
- * The UNIX version implements this via a dynamically allocated
- * array of @c ACE_Event_Handler* that is indexed directly using
- * the @c ACE_HANDLE value.
- */
- typedef ACE_Array_Base<value_type> map_type;
- typedef ACE_HANDLE max_handlep1_type;
-#endif /* ACE_WIN32 */
-
- typedef map_type::size_type size_type;
-
- // = Initialization and termination methods.
- /// Default "do-nothing" constructor.
- ACE_Select_Reactor_Handler_Repository (ACE_Select_Reactor_Impl &);
-
- /// Initialize a repository of the appropriate @a size.
- /**
- * On Unix platforms, the size parameter should be as large as the
- * maximum number of file descriptors allowed for a given process.
- * This is necessary since a file descriptor is used to directly
- * index the array of event handlers maintained by the Reactor's
- * handler repository. Direct indexing is used for efficiency
- * reasons.
- */
- int open (size_type size);
-
- /// Close down the repository.
- int close (void);
-
- // = Search structure operations.
-
- /**
- * Return the @c ACE_Event_Handler* associated with @c ACE_HANDLE.
- */
- ACE_Event_Handler * find (ACE_HANDLE handle);
-
- /// Bind the ACE_Event_Handler * to the ACE_HANDLE with the
- /// appropriate ACE_Reactor_Mask settings.
- int bind (ACE_HANDLE,
- ACE_Event_Handler *,
- ACE_Reactor_Mask);
-
- /// Remove the binding of ACE_HANDLE in accordance with the @a mask.
- int unbind (ACE_HANDLE,
- ACE_Reactor_Mask mask);
-
- /// Remove all the <ACE_HANDLE, ACE_Event_Handler> tuples.
- int unbind_all (void);
-
- // = Sanity checking.
-
- // Check the @a handle to make sure it's a valid @c ACE_HANDLE that
- // is within the range of legal handles (i.e., >= 0 && < max_size_).
- bool invalid_handle (ACE_HANDLE handle);
-
- // Check the @a handle to make sure it's a valid @c ACE_HANDLE that
- // within the range of currently registered handles (i.e., >= 0 && <
- // @c max_handlep1_).
- bool handle_in_range (ACE_HANDLE handle);
-
- // = Accessors.
- /// Returns the current table size.
- size_type size (void) const;
-
- /// Maximum ACE_HANDLE value, plus 1.
- max_handlep1_type max_handlep1 (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-
- /// Remove the binding of @a handle corresponding to position @a pos
- /// in accordance with the @a mask.
- int unbind (ACE_HANDLE handle,
- map_type::iterator pos,
- ACE_Reactor_Mask mask);
-
- /**
- * @return @c iterator corresponding @c ACE_Event_Handler*
- * associated with @c ACE_HANDLE.
- */
- map_type::iterator find_eh (ACE_HANDLE handle);
-
-private:
- /// Reference to our @c Select_Reactor.
- ACE_Select_Reactor_Impl &select_reactor_;
-
-#ifndef ACE_WIN32
- /// The highest currently active handle, plus 1 (ranges between 0 and
- /// @c max_size_.
- max_handlep1_type max_handlep1_;
-#endif /* !ACE_WIN32 */
-
- /// Underlying table of event handlers.
- map_type event_handlers_;
-};
-
-/**
- * @class ACE_Select_Reactor_Handler_Repository_Iterator
- *
- * @brief Iterate through the ACE_Select_Reactor_Handler_Repository.
- */
-class ACE_Export ACE_Select_Reactor_Handler_Repository_Iterator
-{
-public:
-
- typedef
- ACE_Select_Reactor_Handler_Repository::map_type::const_iterator const_base_iterator;
-
- // = Initialization method.
- explicit ACE_Select_Reactor_Handler_Repository_Iterator (
- ACE_Select_Reactor_Handler_Repository const * s);
-
- // = Iteration methods.
-
- /// Pass back the @a next_item that hasn't been seen in the Set.
- /// Returns @c false when all items have been seen, else @c true.
- bool next (ACE_Event_Handler* & next_item);
-
- /// Returns @c true when all items have been seen, else @c false.
- bool done (void) const;
-
- /// Move forward by one element in the set. Returns @c false when
- /// all the items in the set have been seen, else @c true.
- bool advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-
- /// Reference to the Handler_Repository we are iterating over.
- ACE_Select_Reactor_Handler_Repository const * const rep_;
-
- /// Pointer to the current iteration level.
- const_base_iterator current_;
-};
-
-/**
- * @class ACE_Select_Reactor_Impl
- *
- * @brief This class simply defines how Select_Reactor's basic interface
- * functions should look like and provides a common base class for
- * @c Select_Reactor using various locking mechanism.
- */
-class ACE_Export ACE_Select_Reactor_Impl : public ACE_Reactor_Impl
-{
-public:
- enum
- {
- /// Default size of the Select_Reactor's handle table.
- DEFAULT_SIZE = ACE_DEFAULT_SELECT_REACTOR_SIZE
- };
-
- /// Constructor.
- ACE_Select_Reactor_Impl (bool mask_signals = true);
-
- friend class ACE_Select_Reactor_Notify;
- friend class ACE_Select_Reactor_Handler_Repository;
-
- /**
- * Purge any notifications pending in this reactor for the specified
- * ACE_Event_Handler object. Returns the number of notifications
- * purged. Returns -1 on error.
- */
- virtual int purge_pending_notifications (ACE_Event_Handler * = 0,
- ACE_Reactor_Mask = ACE_Event_Handler::ALL_EVENTS_MASK);
-
- /// Does the reactor allow the application to resume the handle on
- /// its own ie. can it pass on the control of handle resumption to
- /// the application. The select reactor has no handlers that can be
- /// resumed by the application. So return 0;
- virtual int resumable_handler (void);
-
- /*
- * Hook to add concrete methods required to specialize the
- * implementation with concrete methods required for the concrete
- * reactor implementation, for example, select, tp reactors.
- */
- //@@ REACTOR_SPL_PUBLIC_METHODS_ADD_HOOK
-
-protected:
- /// Allow manipulation of the <wait_set_> mask and <ready_set_> mask.
- virtual int bit_ops (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- ACE_Select_Reactor_Handle_Set &handle_set,
- int ops);
-
- /// Enqueue ourselves into the list of waiting threads at the
- /// appropriate point specified by <requeue_position_>.
- virtual void renew (void) = 0;
-
- /// Check to see if the <Event_Handler> associated with @a handle is
- /// suspended. Returns 0 if not, 1 if so.
- virtual int is_suspended_i (ACE_HANDLE handle) = 0;
-
- /// When register/unregister occur, then we need to re-eval our
- /// wait/suspend/dispatch set.
- virtual void clear_dispatch_mask (ACE_HANDLE handle,
- ACE_Reactor_Mask mask);
-
- /// Table that maps <ACE_HANDLEs> to <ACE_Event_Handler *>'s.
- ACE_Select_Reactor_Handler_Repository handler_rep_;
-
- /// Tracks handles that are ready for dispatch from <select>
- ACE_Select_Reactor_Handle_Set dispatch_set_;
-
- /// Tracks handles that are waited for by <select>.
- ACE_Select_Reactor_Handle_Set wait_set_;
-
- /// Tracks handles that are currently suspended.
- ACE_Select_Reactor_Handle_Set suspend_set_;
-
- /// Track HANDLES we are interested in for various events that must
- /// be dispatched *without* going through <select>.
- ACE_Select_Reactor_Handle_Set ready_set_;
-
- /// Defined as a pointer to allow overriding by derived classes...
- ACE_Timer_Queue *timer_queue_;
-
- /// Handle signals without requiring global/static variables.
- ACE_Sig_Handler *signal_handler_;
-
- /// Callback object that unblocks the ACE_Select_Reactor if it's
- /// sleeping.
- ACE_Reactor_Notify *notify_handler_;
-
- /// Keeps track of whether we should delete the timer queue (if we
- /// didn't create it, then we don't delete it).
- bool delete_timer_queue_;
-
- /// Keeps track of whether we should delete the signal handler (if we
- /// didn't create it, then we don't delete it).
- bool delete_signal_handler_;
-
- /// Keeps track of whether we need to delete the notify handler (if
- /// we didn't create it, then we don't delete it).
- bool delete_notify_handler_;
-
- /// True if we've been initialized yet...
- bool initialized_;
-
- /// Restart the <handle_events> event-loop method automatically when
- /// <select> is interrupted via <EINTR>.
- int restart_;
-
- /**
- * Position that the main ACE_Select_Reactor thread is requeued in
- * the list of waiters during a <notify> callback. If this value ==
- * -1 we are requeued at the end of the list. Else if it's 0 then
- * we are requeued at the front of the list. Else if it's > 1 then
- * that indicates the number of waiters to skip over.
- */
- int requeue_position_;
-
- /// The original thread that created this Select_Reactor.
- ACE_thread_t owner_;
-
- /**
- * True if state has changed during dispatching of
- * <ACE_Event_Handlers>, else false. This is used to determine
- * whether we need to make another trip through the
- * <Select_Reactor>'s <wait_for_multiple_events> loop.
- */
- bool state_changed_;
-
- /**
- * If false then the Reactor will not mask the signals during the event
- * dispatching. This is useful for applications that do not
- * register any signal handlers and want to reduce the overhead
- * introduce by the kernel level locks required to change the mask.
- */
- bool mask_signals_;
-
- /// Controls/access whether the notify handler should renew the
- /// Select_Reactor's token or not.
- int supress_notify_renew (void);
- void supress_notify_renew (int sr);
-
-private:
-
- /// Determine whether we should renew Select_Reactor's token after handling
- /// the notification message.
- int supress_renew_;
-
- /// Deny access since member-wise won't work...
- ACE_Select_Reactor_Impl (const ACE_Select_Reactor_Impl &);
- ACE_Select_Reactor_Impl &operator = (const ACE_Select_Reactor_Impl &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Select_Reactor_Base.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SELECT_REACTOR_BASE_H */
-
diff --git a/dep/include/ace/Select_Reactor_Base.inl b/dep/include/ace/Select_Reactor_Base.inl
deleted file mode 100644
index d91492b3734..00000000000
--- a/dep/include/ace/Select_Reactor_Base.inl
+++ /dev/null
@@ -1,152 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Select_Reactor_Base.inl 81138 2008-03-28 09:18:15Z johnnyw $
-
-#include "ace/Reactor.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ACE_Select_Reactor_Handler_Repository::size_type
-ACE_Select_Reactor_Handler_Repository::size (void) const
-{
-#ifdef ACE_WIN32
- return this->event_handlers_.total_size ();
-#else
- return this->event_handlers_.size ();
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE ACE_Select_Reactor_Handler_Repository::max_handlep1_type
-ACE_Select_Reactor_Handler_Repository::max_handlep1 (void) const
-{
-#ifdef ACE_WIN32
- return this->event_handlers_.current_size ();
-#else
- return this->max_handlep1_;
-#endif /* ACE_WIN32 */
-}
-
-ACE_INLINE int
-ACE_Select_Reactor_Handler_Repository::unbind (ACE_HANDLE handle,
- ACE_Reactor_Mask mask)
-{
- // Do not refactor this code to optimize the call to the unbind impl.
- // To resolve bug 2653, unbind must be called even when find_eh returns
- // event_handlers_.end().
-
- return !this->handle_in_range (handle) ? -1
- : this->unbind (handle,
- this->find_eh (handle),
- mask);
-}
-
-ACE_INLINE ACE_Event_Handler *
-ACE_Select_Reactor_Handler_Repository::find (ACE_HANDLE handle)
-{
- ACE_TRACE ("ACE_Select_Reactor_Handler_Repository::find");
-
- ACE_Event_Handler * eh = 0;
-
- if (this->handle_in_range (handle))
- {
- map_type::iterator const pos = this->find_eh (handle);
-
- if (pos != this->event_handlers_.end ())
- {
-#ifdef ACE_WIN32
- eh = (*pos).item ();
-#else
- eh = *pos;
-#endif /* ACE_WIN32 */
- }
- }
- // Don't bother setting errno. It isn't used in the select()-based
- // reactors and incurs a TSS access.
- // else
- // {
- // errno = ENOENT;
- // }
-
- return eh;
-}
-
-// ------------------------------------------------------------------
-
-ACE_INLINE bool
-ACE_Select_Reactor_Handler_Repository_Iterator::done (void) const
-{
-#ifdef ACE_WIN32
- return this->current_ == this->rep_->event_handlers_.end ();
-#else
- return this->current_ == (this->rep_->event_handlers_.begin ()
- + this->rep_->max_handlep1 ());
-#endif /* ACE_WIN32 */
-}
-
-// ------------------------------------------------------------------
-
-ACE_INLINE
-ACE_Event_Tuple::ACE_Event_Tuple (void)
- : handle_ (ACE_INVALID_HANDLE),
- event_handler_ (0)
-{
-}
-
-ACE_INLINE
-ACE_Event_Tuple::ACE_Event_Tuple (ACE_Event_Handler* eh,
- ACE_HANDLE h)
- : handle_ (h),
- event_handler_ (eh)
-{
-}
-
-ACE_INLINE bool
-ACE_Event_Tuple::operator== (const ACE_Event_Tuple &rhs) const
-{
- return this->handle_ == rhs.handle_;
-}
-
-ACE_INLINE bool
-ACE_Event_Tuple::operator!= (const ACE_Event_Tuple &rhs) const
-{
- return !(*this == rhs);
-}
-
-#if defined (ACE_WIN32_VC8) || defined (ACE_WIN32_VC9)
-# pragma warning (push)
-# pragma warning (disable:4355) /* Use of 'this' in initializer list */
-#endif
-ACE_INLINE
-ACE_Select_Reactor_Impl::ACE_Select_Reactor_Impl (bool ms)
- : handler_rep_ (*this)
- , timer_queue_ (0)
- , signal_handler_ (0)
- , notify_handler_ (0)
- , delete_timer_queue_ (false)
- , delete_signal_handler_ (false)
- , delete_notify_handler_ (false)
- , initialized_ (false)
- , restart_ (0)
- , requeue_position_ (-1) // Requeue at end of waiters by default.
- , state_changed_ (0)
- , mask_signals_ (ms)
- , supress_renew_ (0)
-{
-}
-#if defined (ACE_WIN32_VC8) || defined (ACE_WIN32_VC9)
-# pragma warning (pop)
-#endif
-
-ACE_INLINE int
-ACE_Select_Reactor_Impl::supress_notify_renew (void)
-{
- return this->supress_renew_;
-}
-
-ACE_INLINE void
-ACE_Select_Reactor_Impl::supress_notify_renew (int sr)
-{
- this->supress_renew_ = sr;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Select_Reactor_T.h b/dep/include/ace/Select_Reactor_T.h
deleted file mode 100644
index e3d8fe299ce..00000000000
--- a/dep/include/ace/Select_Reactor_T.h
+++ /dev/null
@@ -1,719 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Select_Reactor_T.h
- *
- * $Id: Select_Reactor_T.h 82393 2008-07-23 10:52:34Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SELECT_REACTOR_T_H
-#define ACE_SELECT_REACTOR_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Select_Reactor_Base.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Lock_Adapter_T.h"
-#include "ace/Token.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/*
- * Hook for specializing the reactor with the concrete
- * type, for example, select, or thread pool.
- */
-//@@ REACTOR_SPL_INCLUDE_FORWARD_DECL_ADD_HOOK
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
-typedef ACE_Token ACE_SELECT_TOKEN;
-#else
-typedef ACE_Noop_Token ACE_SELECT_TOKEN;
-#endif /* ACE_MT_SAFE && ACE_MT_SAFE != 0 */
-
-/**
- * @class ACE_Select_Reactor_T
- *
- * @brief An object oriented event demultiplexor and event handler
- * dispatcher.
- *
- * The ACE_Select_Reactor is an object-oriented event
- * demultiplexor and event handler dispatcher. The sources of
- * events that the ACE_Select_Reactor waits for and dispatches
- * includes I/O events, signals, and timer events. All public
- * methods acquire the main ACE_Reactor_Token lock and
- * call down to private or protected methods, which assume that
- * the lock is held and so therefore don't (re)acquire the lock.
- */
-template <class ACE_SELECT_REACTOR_TOKEN>
-class ACE_Select_Reactor_T : public ACE_Select_Reactor_Impl
-{
-public:
-
- // = Initialization and termination methods.
-
- /// If @a disable_notify_pipe is non-0 then the reactor will
- /// not create a notification pipe, which will save two I/O handles
- /// but will elide the <notify()> feature. If @a mask_signals is
- /// true the reactor is "signal-safe" when dispatching handlers to
- /// signal events, whereas if @a mask_signals is false the reactor will
- /// be more efficient, but not signal-safe (which may be perfectly
- /// fine if your application doesn't use the reactor to handle signals).
- ACE_Select_Reactor_T (ACE_Sig_Handler * = 0,
- ACE_Timer_Queue * = 0,
- int disable_notify_pipe = ACE_DISABLE_NOTIFY_PIPE_DEFAULT,
- ACE_Reactor_Notify *notify = 0,
- bool mask_signals = true,
- int s_queue = ACE_SELECT_TOKEN::FIFO);
-
- /// Initialize @c ACE_Select_Reactor with size @arg size.
- /// If @arg disable_notify_pipe is non-0 then the reactor will
- /// not create a notification pipe, which will save two I/O handles
- /// but will elide the notification feature. If @arg mask_signals is
- /// true the reactor is "signal-safe" when dispatching handlers to
- /// signal events, whereas if @arg mask_signals is false the reactor will
- /// be more efficient, but not signal-safe (which may be perfectly
- /// fine if your application doesn't use the reactor to handle signals).
- /**
- * @note On Unix platforms, the size parameter should be as large as
- * the maximum number of file descriptors allowed for a given
- * process. This is necessary since a file descriptor is used
- * to directly index the array of event handlers maintained by
- * the Reactor's handler repository. Direct indexing is used
- * for efficiency reasons.
- */
- ACE_Select_Reactor_T (size_t size,
- int restart = 0,
- ACE_Sig_Handler * = 0,
- ACE_Timer_Queue * = 0,
- int disable_notify_pipe = ACE_DISABLE_NOTIFY_PIPE_DEFAULT,
- ACE_Reactor_Notify *notify = 0,
- bool mask_signals = true,
- int s_queue = ACE_SELECT_TOKEN::FIFO);
-
- /**
- * Initialize the @c ACE_Select_Reactor to manage
- * @arg max_number_of_handles. If @arg restart is non-0 then the
- * @c ACE_Reactor's @c handle_events method will be restarted
- * automatically when @c EINTR occurs. If @arg signal_handler or
- * @arg timer_queue are non-0 they are used as the signal handler and
- * timer queue, respectively. If @arg disable_notify_pipe is non-0 the
- * notification pipe is not created, thereby saving two I/O handles.
- *
- * @note On Unix platforms, the maximum_number_of_handles parameter
- * should be as large as the maximum number of file
- * descriptors allowed for a given process. This is necessary
- * since a file descriptor is used to directly index the array
- * of event handlers maintained by the Reactor's handler
- * repository. Direct indexing is used for efficiency
- * reasons.
- */
- virtual int open (size_t max_number_of_handles = DEFAULT_SIZE,
- int restart = 0,
- ACE_Sig_Handler * = 0,
- ACE_Timer_Queue * = 0,
- int disable_notify_pipe = ACE_DISABLE_NOTIFY_PIPE_DEFAULT,
- ACE_Reactor_Notify * = 0);
-
- /// Returns -1 (not used in this implementation);
- virtual int current_info (ACE_HANDLE, size_t &size);
-
- /// Use a user specified signal handler instead.
- virtual int set_sig_handler (ACE_Sig_Handler *signal_handler);
-
- /// Set a user-specified timer queue.
- virtual int timer_queue (ACE_Timer_Queue *tq);
-
- /// Return the current ACE_Timer_Queue.
- virtual ACE_Timer_Queue *timer_queue (void) const;
-
- /// Close down the select_reactor and release all of its resources.
- virtual int close (void);
-
- /// Close down the select_reactor and release all of its resources.
- virtual ~ACE_Select_Reactor_T (void);
-
- // = Event loop drivers.
-
- /**
- * Returns non-zero if there are I/O events "ready" for dispatching,
- * but does not actually dispatch the event handlers. By default,
- * don't block while checking this, i.e., "poll".
- */
- virtual int work_pending (const ACE_Time_Value &max_wait_time = ACE_Time_Value::zero);
-
- /**
- * This event loop driver that blocks for @a max_wait_time before
- * returning. It will return earlier if timer events, I/O events,
- * or signal events occur. Note that @a max_wait_time can be 0, in
- * which case this method blocks indefinitely until events occur.
- *
- * @a max_wait_time is decremented to reflect how much time this call
- * took. For instance, if a time value of 3 seconds is passed to
- * handle_events and an event occurs after 2 seconds,
- * @a max_wait_time will equal 1 second. This can be used if an
- * application wishes to handle events for some fixed amount of
- * time.
- *
- * Returns the total number of I/O and Timer ACE_Event_Handler's
- * that were dispatched, 0 if the @a max_wait_time elapsed without
- * dispatching any handlers, or -1 if something goes wrong.
- *
- * Current <alertable_handle_events> is identical to
- * <handle_events>.
- */
- virtual int handle_events (ACE_Time_Value *max_wait_time = 0);
- virtual int alertable_handle_events (ACE_Time_Value *max_wait_time = 0);
-
- /**
- * This method is just like the one above, except the
- * @a max_wait_time value is a reference and can therefore never be
- * NULL.
- *
- * Current <alertable_handle_events> is identical to
- * <handle_events>.
- */
- virtual int handle_events (ACE_Time_Value &max_wait_time);
- virtual int alertable_handle_events (ACE_Time_Value &max_wait_time);
-
- // = Event handling control.
-
- /**
- * Return the status of Reactor. If this function returns 0, the reactor is
- * actively handling events. If it returns non-zero, <handling_events> and
- * <handle_alertable_events> return -1 immediately.
- */
- virtual int deactivated (void);
-
- /**
- * Control whether the Reactor will handle any more incoming events or not.
- * If @a do_stop == 1, the Reactor will be disabled. By default, a reactor
- * is in active state and can be deactivated/reactived as wish.
- */
- virtual void deactivate (int do_stop);
-
- // = Register and remove ACE_Event_Handlers.
- /**
- * Register a @a eh with a particular @a mask. Note that the
- * <Select_Reactor> will call ACE_Event_Handler::get_handle() to
- * extract the underlying I/O handle.
- */
- virtual int register_handler (ACE_Event_Handler *eh,
- ACE_Reactor_Mask mask);
-
- /**
- * Register a @a eh with a particular @a mask. Note that since the
- * @a handle is given the Select_Reactor will *not* call
- * ACE_Event_Handler::get_handle() to extract the underlying I/O
- * handle.
- */
- virtual int register_handler (ACE_HANDLE handle,
- ACE_Event_Handler *eh,
- ACE_Reactor_Mask mask);
-
-#if defined (ACE_WIN32)
-
- // Originally this interface was available for all platforms, but
- // because ACE_HANDLE is an int on non-Win32 platforms, compilers
- // are not able to tell the difference between
- // register_handler(ACE_Event_Handler*,ACE_Reactor_Mask) and
- // register_handler(ACE_Event_Handler*,ACE_HANDLE). Therefore, we
- // have restricted this method to Win32 only.
-
- /// Not implemented.
- virtual int register_handler (ACE_Event_Handler *event_handler,
- ACE_HANDLE event_handle = ACE_INVALID_HANDLE);
-
-#endif /* ACE_WIN32 */
-
- /// Not implemented.
- virtual int register_handler (ACE_HANDLE event_handle,
- ACE_HANDLE io_handle,
- ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask);
-
- /// Register @a eh with all the @a handles in the <Handle_Set>.
- virtual int register_handler (const ACE_Handle_Set &handles,
- ACE_Event_Handler *eh,
- ACE_Reactor_Mask mask);
-
- /**
- * Register @a new_sh to handle the signal @a signum using the
- * @a new_disp. Returns the @a old_sh that was previously registered
- * (if any), along with the @a old_disp of the signal handler.
- */
- virtual int register_handler (int signum,
- ACE_Event_Handler *new_sh,
- ACE_Sig_Action *new_disp = 0,
- ACE_Event_Handler **old_sh = 0,
- ACE_Sig_Action *old_disp = 0);
-
- /// Registers @a new_sh to handle a set of signals @a sigset using the
- /// @a new_disp.
- virtual int register_handler (const ACE_Sig_Set &sigset,
- ACE_Event_Handler *new_sh,
- ACE_Sig_Action *new_disp = 0);
-
- /**
- * Removes the @a mask binding of <eh> from the Select_Reactor. If
- * there are no more bindings for this <eh> then it is removed from
- * the Select_Reactor. Note that the Select_Reactor will call
- * <ACE_Event_Handler::get_handle> to extract the underlying I/O
- * handle.
- */
- virtual int remove_handler (ACE_Event_Handler *eh,
- ACE_Reactor_Mask mask);
-
- /**
- * Removes the @a mask bind of <Event_Handler> whose handle is
- * <handle> from the Select_Reactor. If there are no more bindings
- * for this <eh> then it is removed from the Select_Reactor.
- */
- virtual int remove_handler (ACE_HANDLE handle,
- ACE_Reactor_Mask);
-
- /**
- * Removes all the @a mask bindings for handles in the <handle_set>
- * bind of <Event_Handler>. If there are no more bindings for any
- * of these handlers then they are removed from the Select_Reactor.
- */
- virtual int remove_handler (const ACE_Handle_Set &handle_set,
- ACE_Reactor_Mask);
-
- /**
- * Remove the ACE_Event_Handler currently associated with @a signum.
- * <sigkey> is ignored in this implementation since there is only
- * one instance of a signal handler. Install the new disposition
- * (if given) and return the previous disposition (if desired by the
- * caller). Returns 0 on success and -1 if @a signum is invalid.
- */
- virtual int remove_handler (int signum,
- ACE_Sig_Action *new_disp,
- ACE_Sig_Action *old_disp = 0,
- int sigkey = -1);
-
- /// Calls <remove_handler> for every signal in <sigset>.
- virtual int remove_handler (const ACE_Sig_Set &sigset);
-
- // = Suspend and resume Handlers.
-
- /// Temporarily suspend the <Event_Handler> associated with <eh>.
- virtual int suspend_handler (ACE_Event_Handler *eh);
-
- /// Temporarily suspend the <Event_Handler> associated with <handle>.
- virtual int suspend_handler (ACE_HANDLE handle);
-
- /// Suspend all <handles> in handle set temporarily.
- virtual int suspend_handler (const ACE_Handle_Set &handles);
-
- /// Suspend all the <Event_Handlers> in the Select_Reactor.
- virtual int suspend_handlers (void);
-
- /// Resume a temporarily suspend <Event_Handler> associated with
- /// <eh>.
- virtual int resume_handler (ACE_Event_Handler *eh);
-
- /// Resume a temporarily suspended <Event_Handler> associated with
- /// <handle>.
- virtual int resume_handler (ACE_HANDLE handle);
-
- /// Resume all <handles> in handle set.
- virtual int resume_handler (const ACE_Handle_Set &handles);
-
- /// Resume all the <Event_Handlers> in the Select_Reactor.
- virtual int resume_handlers (void);
-
- /**
- * Return 1 if we any event associations were made by the reactor
- * for the handles that it waits on, 0 otherwise. Since the
- * Select_Reactor does not do any event associations, this function
- * always return 0.
- */
- virtual int uses_event_associations (void);
-
- // = Timer management.
- /**
- * Schedule an ACE_Event_Handler that will expire after an amount
- * of time. The return value of this method, a timer_id value,
- * uniquely identifies the event_handler in the ACE_Reactor's
- * internal list of timers.
- * This timer_id value can be used to cancel the timer
- * with the cancel_timer() call.
- *
- * @see cancel_timer()
- * @see reset_timer_interval()
- *
- * @param event_handler Event handler to schedule on reactor
- * @param arg Argument passed to the handle_timeout() method of event_handler
- * @param delay Time interval after which the timer will expire
- * @param interval Time interval after which the timer will be automatically
- * rescheduled
- * @return -1 on failure, a timer_id value on success
- */
- virtual long schedule_timer (ACE_Event_Handler * event_handler,
- const void *arg,
- const ACE_Time_Value &delay,
- const ACE_Time_Value &interval = ACE_Time_Value::zero);
-
- /**
- * Resets the interval of the timer represented by @a timer_id to
- * @a interval, which is specified in relative time to the current
- * <gettimeofday>. If @a interval is equal to
- * ACE_Time_Value::zero, the timer will become a non-rescheduling
- * timer. Returns 0 if successful, -1 if not.
- */
- virtual int reset_timer_interval (long timer_id,
- const ACE_Time_Value &interval);
-
- /**
- * Cancel all <event_handlers> that match the address of
- * <event_handler>. If @a dont_call_handle_close is 0 then the
- * <handle_close> method of <event_handler> will be invoked.
- * Returns number of handler's cancelled.
- */
- virtual int cancel_timer (ACE_Event_Handler *event_handler,
- int dont_call_handle_close = 1);
-
- /**
- * Cancel the single ACE_Event_Handler that matches the @a timer_id
- * value (which was returned from the <schedule> method). If arg is
- * non-NULL then it will be set to point to the ``magic cookie''
- * argument passed in when the <Event_Handler> was registered. This
- * makes it possible to free up the memory and avoid memory leaks.
- * If @a dont_call_handle_close is 0 then the <handle_close> method
- * of <event_handler> will be invoked. Returns 1 if cancellation
- * succeeded and 0 if the @a timer_id wasn't found.
- */
- virtual int cancel_timer (long timer_id,
- const void **arg = 0,
- int dont_call_handle_close = 1);
-
- // = High-level Event_Handler scheduling operations
-
- /// ADD the dispatch MASK "bit" bound with the <eh> and the @a mask.
- virtual int schedule_wakeup (ACE_Event_Handler *eh,
- ACE_Reactor_Mask mask);
-
- /// ADD the dispatch MASK "bit" bound with the <handle> and the @a mask.
- virtual int schedule_wakeup (ACE_HANDLE handle,
- ACE_Reactor_Mask mask);
-
- /// CLR the dispatch MASK "bit" bound with the <eh> and the @a mask.
- virtual int cancel_wakeup (ACE_Event_Handler *eh,
- ACE_Reactor_Mask mask);
-
- /// CLR the dispatch MASK "bit" bound with the <handle> and the @a mask.
- virtual int cancel_wakeup (ACE_HANDLE handle,
- ACE_Reactor_Mask mask);
-
- // = Notification methods.
- /**
- * Called by a thread when it wants to unblock the Select_Reactor.
- * This wakeups the <ACE_Select_Reactor> if currently blocked in
- * <select>/<poll>. Pass over both the <Event_Handler> *and* the
- * @a mask to allow the caller to dictate which <Event_Handler>
- * method the <Select_Reactor> will invoke. The ACE_Time_Value
- * indicates how long to blocking trying to notify the
- * <Select_Reactor>. If @a timeout == 0, the caller will block until
- * action is possible, else will wait until the relative time
- * specified in *@a timeout elapses).
- */
- virtual int notify (ACE_Event_Handler * = 0,
- ACE_Reactor_Mask = ACE_Event_Handler::EXCEPT_MASK,
- ACE_Time_Value * = 0);
-
- /**
- * Set the maximum number of times that the
- * <ACE_Select_Reactor_Notify::handle_input> method will iterate and
- * dispatch the <ACE_Event_Handlers> that are passed in via the
- * notify pipe before breaking out of its <recv> loop. By default,
- * this is set to -1, which means "iterate until the pipe is empty."
- * Setting this to a value like "1 or 2" will increase "fairness"
- * (and thus prevent starvation) at the expense of slightly higher
- * dispatching overhead.
- */
- virtual void max_notify_iterations (int);
-
- /**
- * Get the maximum number of times that the
- * <ACE_Select_Reactor_Notify::handle_input> method will iterate and
- * dispatch the <ACE_Event_Handlers> that are passed in via the
- * notify pipe before breaking out of its <recv> loop.
- */
- virtual int max_notify_iterations (void);
-
- /// Get the existing restart value.
- virtual int restart (void);
-
- /// Set a new value for restart and return the original value.
- virtual int restart (int r);
-
- /// Set position that the main ACE_Select_Reactor thread is requeued in the
- /// list of waiters during a <notify> callback.
- virtual void requeue_position (int);
-
- /// Get position that the main ACE_Select_Reactor thread is requeued in the
- /// list of waiters during a <notify> callback.
- virtual int requeue_position (void);
-
- // = Low-level wait_set mask manipulation methods.
- /// GET/SET/ADD/CLR the dispatch mask "bit" bound with the <eh> and
- /// @a mask.
- virtual int mask_ops (ACE_Event_Handler *eh,
- ACE_Reactor_Mask mask,
- int ops);
-
- /// GET/SET/ADD/CLR the dispatch MASK "bit" bound with the <handle>
- /// and @a mask.
- virtual int mask_ops (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- int ops);
-
- // = Low-level ready_set mask manipulation methods.
- /// GET/SET/ADD/CLR the ready "bit" bound with the <eh> and @a mask.
- virtual int ready_ops (ACE_Event_Handler *eh,
- ACE_Reactor_Mask mask,
- int ops);
-
- /// GET/SET/ADD/CLR the ready "bit" bound with the <handle> and @a mask.
- virtual int ready_ops (ACE_HANDLE handle,
- ACE_Reactor_Mask,
- int ops);
-
- /// Wake up all threads in waiting in the event loop
- virtual void wakeup_all_threads (void);
-
- // = Only the owner thread can perform a <handle_events>.
-
- /// Set the new owner of the thread and return the old owner.
- virtual int owner (ACE_thread_t n_id, ACE_thread_t *o_id = 0);
-
- /// Return the current owner of the thread.
- virtual int owner (ACE_thread_t *);
-
- // = Miscellaneous Handler operations.
-
- /**
- * Return the Event_Handler associated with <handle>. Return 0 if
- * <handle> is not registered.
- */
- virtual ACE_Event_Handler *find_handler (ACE_HANDLE handle);
-
- /**
- * Check to see if <handle> is associated with a valid Event_Handler
- * bound to @a mask. Return the @a eh associated with this @a handler
- * if <eh> != 0.
- */
- virtual int handler (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- ACE_Event_Handler **eh = 0);
-
- /**
- * Check to see if @a signum is associated with a valid Event_Handler
- * bound to a signal. Return the <eh> associated with this
- * handler if <eh> != 0.
- */
- virtual int handler (int signum,
- ACE_Event_Handler ** = 0);
-
- /// Returns true if we've been successfully initialized, else false.
- virtual bool initialized (void);
-
- /// Returns the current size of the Reactor's internal descriptor
- /// table.
- virtual size_t size (void) const;
-
- /**
- * Returns a reference to the ACE_Reactor_Token that is
- * used to serialize the internal processing logic.
- * This can be useful for situations where you need to avoid
- * deadlock efficiently when ACE_Event_Handlers are used in
- * multiple threads.
- */
- virtual ACE_Lock &lock (void);
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- // = Internal methods that do the actual work.
-
- // All of these methods assume that the token
- // lock is held by the public methods that call down to them.
-
- /// Do the work of actually binding the <handle> and <eh> with the
- /// @a mask.
- virtual int register_handler_i (ACE_HANDLE handle,
- ACE_Event_Handler *eh,
- ACE_Reactor_Mask mask);
-
- /// Register a set of <handles>.
- virtual int register_handler_i (const ACE_Handle_Set &handles,
- ACE_Event_Handler *handler,
- ACE_Reactor_Mask mask);
-
- /// Do the work of actually unbinding the <handle> and <eh> with the
- /// @a mask.
- virtual int remove_handler_i (ACE_HANDLE handle,
- ACE_Reactor_Mask);
-
- /// Remove a set of <handles>.
- virtual int remove_handler_i (const ACE_Handle_Set &handles,
- ACE_Reactor_Mask);
-
- /// Suspend the <Event_Handler> associated with <handle>
- virtual int suspend_i (ACE_HANDLE handle);
-
- /// Check to see if the <Event_Handler> associated with <handle> is
- /// suspended. Returns 0 if not, 1 if so.
- virtual int is_suspended_i (ACE_HANDLE handle);
-
- /// Resume the <Event_Handler> associated with <handle>
- virtual int resume_i (ACE_HANDLE handle);
-
- /// Implement the public handler method.
- virtual ACE_Event_Handler *find_handler_i (ACE_HANDLE handle);
-
- /// Implement the public handler method.
- virtual int handler_i (ACE_HANDLE handle,
- ACE_Reactor_Mask,
- ACE_Event_Handler ** = 0);
-
- /// Implement the public handler method.
- virtual int handler_i (int signum, ACE_Event_Handler ** = 0);
-
- /**
- * Check if there are any HANDLEs enabled in the <ready_set_>, and
- * if so, update the <handle_set> and return the number ready. If
- * there aren't any HANDLEs enabled return 0.
- */
- virtual int any_ready (ACE_Select_Reactor_Handle_Set &handle_set);
-
- /// Implement the <any_ready> method, assuming that the Sig_Guard is
- /// beign held
- virtual int any_ready_i (ACE_Select_Reactor_Handle_Set &handle_set);
-
- /// Take corrective action when errors occur.
- virtual int handle_error (void);
-
- /// Make sure the handles are all valid.
- virtual int check_handles (void);
-
- /// Wait for events to occur.
- virtual int wait_for_multiple_events (ACE_Select_Reactor_Handle_Set &,
- ACE_Time_Value *);
-
- // = Dispatching methods.
-
- /**
- * Template Method that dispatches ACE_Event_Handlers for time
- * events, I/O events, and signal events. Returns the total number
- * of ACE_Event_Handlers that were dispatched or -1 if something
- * goes wrong.
- */
- virtual int dispatch (int nfound,
- ACE_Select_Reactor_Handle_Set &);
-
- /**
- * Dispatch all timer handlers that have expired. Returns -1 if the
- * state of the <wait_set_> has changed, else 0.
- * <number_dispatched> is set to the number of timer handlers
- * dispatched.
- */
- virtual int dispatch_timer_handlers (int &number_dispatched);
-
- /**
- * Dispatch any notification handlers. Returns -1 if the state of
- * the <wait_set_> has changed, else returns number of handlers
- * notified.
- */
- virtual int dispatch_notification_handlers (ACE_Select_Reactor_Handle_Set &dispatch_set,
- int &number_of_active_handles,
- int &number_of_handlers_dispatched);
-
- /**
- * Dispatch all the input/output/except handlers that are enabled in
- * the <dispatch_set>. Updates <number_of_active_handles> and
- * <number_of_handlers_dispatched> according to the behavior of the
- * number Returns -1 if the state of the <wait_set_> has changed,
- * else 0.
- */
- virtual int dispatch_io_handlers (ACE_Select_Reactor_Handle_Set &dispatch_set,
- int &number_of_active_handles,
- int &number_of_handlers_dispatched);
-
- /**
- * Factors the dispatching of an io handle set (each WRITE, EXCEPT
- * or READ set of handles). It updates the
- * <number_of_handlers_dispatched> and invokes this->notify_handle
- * for all the handles in <dispatch_set> using the @a mask,
- * <ready_set> and <callback> parameters. Must return -1 if
- * this->state_changed otherwise it must return 0.
- */
- virtual int dispatch_io_set (int number_of_active_handles,
- int &number_of_handlers_dispatched,
- int mask,
- ACE_Handle_Set& dispatch_mask,
- ACE_Handle_Set& ready_mask,
- ACE_EH_PTMF callback);
-
- /// Notify the appropriate <callback> in the context of the <eh>
- /// associated with <handle> that a particular event has occurred.
- virtual void notify_handle (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- ACE_Handle_Set &,
- ACE_Event_Handler *eh,
- ACE_EH_PTMF callback);
-
- /// Enqueue ourselves into the list of waiting threads at the
- /// appropriate point specified by <requeue_position_>.
- virtual void renew (void);
-
- /// Synchronization token for the MT_SAFE ACE_Select_Reactor.
- ACE_SELECT_REACTOR_TOKEN token_;
-
- /// Adapter used to return internal lock to outside world.
- ACE_Lock_Adapter<ACE_SELECT_REACTOR_TOKEN> lock_adapter_;
-
- /// Release the token lock when a Win32 structured exception occurs.
- int release_token (void);
-
- /// Stops the VC++ compiler from bitching about exceptions and destructors
- int handle_events_i (ACE_Time_Value *max_wait_time = 0);
-
- /// This flag is used to keep track of whether we are actively handling
- /// events or not.
- sig_atomic_t deactivated_;
-
-private:
- /// Deny access since member-wise won't work...
- ACE_UNIMPLEMENTED_FUNC (ACE_Select_Reactor_T (const ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN> &operator= (const ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN> &) )
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Select_Reactor_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Select_Reactor_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Select_Reactor_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SELECT_REACTOR_T_H */
-
diff --git a/dep/include/ace/Select_Reactor_T.inl b/dep/include/ace/Select_Reactor_T.inl
deleted file mode 100644
index 05405a5b17b..00000000000
--- a/dep/include/ace/Select_Reactor_T.inl
+++ /dev/null
@@ -1,236 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Select_Reactor_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Reactor.h"
-#include "ace/Signal.h"
-#include "ace/Sig_Handler.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class ACE_SELECT_REACTOR_TOKEN>
-ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::resume_handler (ACE_Event_Handler *h)
-{
- ACE_TRACE ("ACE_Select_Reactor_T::resume_handler");
- return this->resume_handler (h->get_handle ());
-}
-
-template <class ACE_SELECT_REACTOR_TOKEN>
-ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::resume_handler (const ACE_Handle_Set &handles)
-{
- ACE_TRACE ("ACE_Select_Reactor_T::resume_handler");
- ACE_Handle_Set_Iterator handle_iter (handles);
- ACE_HANDLE h;
-
- ACE_MT (ACE_GUARD_RETURN (ACE_SELECT_REACTOR_TOKEN, ace_mon, this->token_, -1));
-
- while ((h = handle_iter ()) != ACE_INVALID_HANDLE)
- if (this->resume_i (h) == -1)
- return -1;
-
- return 0;
-}
-
-template <class ACE_SELECT_REACTOR_TOKEN>
-ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::suspend_handler (ACE_Event_Handler *h)
-{
- ACE_TRACE ("ACE_Select_Reactor_T::suspend_handler");
- return this->suspend_handler (h->get_handle ());
-}
-
-template <class ACE_SELECT_REACTOR_TOKEN>
-ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::suspend_handler (const ACE_Handle_Set &handles)
-{
- ACE_TRACE ("ACE_Select_Reactor_T::suspend_handler");
- ACE_Handle_Set_Iterator handle_iter (handles);
- ACE_HANDLE h;
-
- ACE_MT (ACE_GUARD_RETURN (ACE_SELECT_REACTOR_TOKEN, ace_mon, this->token_, -1));
-
- while ((h = handle_iter ()) != ACE_INVALID_HANDLE)
- if (this->suspend_i (h) == -1)
- return -1;
-
- return 0;
-}
-
-template <class ACE_SELECT_REACTOR_TOKEN>
-ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::register_handler (int signum,
- ACE_Event_Handler *new_sh,
- ACE_Sig_Action *new_disp,
- ACE_Event_Handler **old_sh,
- ACE_Sig_Action *old_disp)
-{
- ACE_TRACE ("ACE_Select_Reactor_T::register_handler");
- return this->signal_handler_->register_handler (signum,
- new_sh, new_disp,
- old_sh, old_disp);
-}
-
-#if defined (ACE_WIN32)
-
-template <class ACE_SELECT_REACTOR_TOKEN>
-ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::register_handler (ACE_Event_Handler *,
- ACE_HANDLE )
-{
- // Don't have an implementation for this yet...
- ACE_NOTSUP_RETURN (-1);
-}
-
-#endif /* ACE_WIN32 */
-
-template <class ACE_SELECT_REACTOR_TOKEN>
-ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::register_handler (ACE_HANDLE ,
- ACE_HANDLE ,
- ACE_Event_Handler *,
- ACE_Reactor_Mask )
-{
- // Don't have an implementation for this yet...
- ACE_NOTSUP_RETURN (-1);
-}
-
-template <class ACE_SELECT_REACTOR_TOKEN>
-ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::handler (int signum, ACE_Event_Handler **handler)
-{
- ACE_TRACE ("ACE_Select_Reactor_T::handler");
- return this->handler_i (signum, handler);
-}
-
-template <class ACE_SELECT_REACTOR_TOKEN>
-ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::remove_handler (int signum,
- ACE_Sig_Action *new_disp,
- ACE_Sig_Action *old_disp,
- int sigkey)
-{
- ACE_TRACE ("ACE_Select_Reactor_T::remove_handler");
- return this->signal_handler_->remove_handler (signum, new_disp, old_disp, sigkey);
-}
-
-template <class ACE_SELECT_REACTOR_TOKEN>
-ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::uses_event_associations (void)
-{
- // Since the Select_Reactor does not do any event associations, this
- // function always return 0.
- return 0;
-}
-
-// = The remaining methods in this file must be called with locks
-// held.
-
-// Performs operations on the "ready" bits.
-
-template <class ACE_SELECT_REACTOR_TOKEN> ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::ready_ops (ACE_Event_Handler *handler,
- ACE_Reactor_Mask mask,
- int ops)
-{
- ACE_TRACE ("ACE_Select_Reactor_T::ready_ops");
- return this->ready_ops (handler->get_handle (), mask, ops);
-}
-
-// Performs operations on the "dispatch" masks.
-
-template <class ACE_SELECT_REACTOR_TOKEN> ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::mask_ops (ACE_Event_Handler *handler,
- ACE_Reactor_Mask mask,
- int ops)
-{
- ACE_TRACE ("ACE_Select_Reactor_T::mask_ops");
- return this->mask_ops (handler->get_handle (), mask, ops);
-}
-
-template <class ACE_SELECT_REACTOR_TOKEN> ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::schedule_wakeup (ACE_Event_Handler *eh,
- ACE_Reactor_Mask mask)
-{
- ACE_TRACE ("ACE_Select_Reactor_T::schedule_wakeup");
- return this->mask_ops (eh->get_handle (), mask, ACE_Reactor::ADD_MASK);
-}
-
-template <class ACE_SELECT_REACTOR_TOKEN> ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::cancel_wakeup (ACE_Event_Handler *eh,
- ACE_Reactor_Mask mask)
-{
- ACE_TRACE ("ACE_Select_Reactor_T::cancel_wakeup");
- return this->mask_ops (eh->get_handle (), mask, ACE_Reactor::CLR_MASK);
-}
-
-template <class ACE_SELECT_REACTOR_TOKEN> ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::schedule_wakeup (ACE_HANDLE handle,
- ACE_Reactor_Mask mask)
-{
- ACE_TRACE ("ACE_Select_Reactor_T::schedule_wakeup");
- return this->mask_ops (handle, mask, ACE_Reactor::ADD_MASK);
-}
-
-template <class ACE_SELECT_REACTOR_TOKEN> ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::cancel_wakeup (ACE_HANDLE handle,
- ACE_Reactor_Mask mask)
-{
- ACE_TRACE ("ACE_Select_Reactor_T::cancel_wakeup");
- return this->mask_ops (handle, mask, ACE_Reactor::CLR_MASK);
-}
-
-template <class ACE_SELECT_REACTOR_TOKEN> ACE_INLINE ACE_Lock &
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::lock (void)
-{
- ACE_TRACE ("ACE_Select_Reactor_T::lock");
- return this->lock_adapter_;
-}
-
-template <class ACE_SELECT_REACTOR_TOKEN> ACE_INLINE void
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::wakeup_all_threads (void)
-{
- // Send a notification, but don't block if there's no one to receive
- // it.
- this->notify (0, ACE_Event_Handler::NULL_MASK, (ACE_Time_Value *) &ACE_Time_Value::zero);
-}
-
-template <class ACE_SELECT_REACTOR_TOKEN> ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::alertable_handle_events (ACE_Time_Value *max_wait_time)
-{
- return this->handle_events (max_wait_time);
-}
-
-template <class ACE_SELECT_REACTOR_TOKEN> ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::alertable_handle_events (ACE_Time_Value &max_wait_time)
-{
- return this->handle_events (max_wait_time);
-}
-
-template <class ACE_SELECT_REACTOR_TOKEN> ACE_INLINE int
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::deactivated (void)
-{
- return this->deactivated_;
-}
-
-template <class ACE_SELECT_REACTOR_TOKEN> ACE_INLINE void
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::deactivate (int do_stop)
-{
- {
- ACE_MT (ACE_GUARD (ACE_SELECT_REACTOR_TOKEN,
- ace_mon,
- this->token_));
- this->deactivated_ = do_stop;
- }
-
- this->wakeup_all_threads ();
-}
-
-template <class ACE_SELECT_REACTOR_TOKEN> ACE_INLINE size_t
-ACE_Select_Reactor_T<ACE_SELECT_REACTOR_TOKEN>::size (void) const
-{
- return this->handler_rep_.size ();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Semaphore.h b/dep/include/ace/Semaphore.h
deleted file mode 100644
index 82709ab6beb..00000000000
--- a/dep/include/ace/Semaphore.h
+++ /dev/null
@@ -1,184 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Semaphore.h
- *
- * $Id: Semaphore.h 81014 2008-03-19 11:41:31Z johnnyw $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_SEMAPHORE_H
-#define ACE_SEMAPHORE_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/OS_NS_Thread.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-/**
- * @class ACE_Semaphore
- *
- * @brief Wrapper for Dijkstra style general semaphores.
- */
-class ACE_Export ACE_Semaphore
-{
-public:
- // = Initialization and termination.
- /// Initialize the semaphore, with initial value of "count".
- ACE_Semaphore (unsigned int count = 1, // By default make this unlocked.
- int type = USYNC_THREAD,
- const ACE_TCHAR *name = 0,
- void * = 0,
- int max = 0x7fffffff);
-
- /// Implicitly destroy the semaphore.
- ~ACE_Semaphore (void);
-
- /**
- * Explicitly destroy the semaphore. Note that only one thread
- * should call this method since it doesn't protect against race
- * conditions.
- */
- int remove (void);
-
- /// Block the thread until the semaphore count becomes
- /// greater than 0, then decrement it.
- int acquire (void);
-
- /**
- * Block the thread until the semaphore count becomes greater than 0
- * (at which point it is decremented) or until @a tv times out (in
- * which case -1 is returned and @c errno == @c ETIME). Note that @a tv
- * is assumed to be in "absolute" rather than "relative" time. The
- * value of @a tv is updated upon return to show the actual
- * (absolute) acquisition time.
- *
- * @note Solaris threads do not support timed semaphores.
- * Therefore, if you're running on Solaris you might want to
- * consider using the ACE POSIX pthreads implementation instead,
- * which can be enabled by compiling ACE with
- * -DACE_HAS_PTHREADS, rather than -DACE_HAS_STHREADS or
- * -DACE_HAS_POSIX_SEM.
- */
- int acquire (ACE_Time_Value &tv);
-
- /**
- * If @a tv == 0 then call <acquire()> directly. Otherwise, Block
- * the thread until the semaphore count becomes greater than 0
- * (at which point it is decremented) or until @a tv times out (in
- * which case -1 is returned and @c errno == @c ETIME). Note that
- * <*tv> is assumed to be in "absolute" rather than "relative" time.
- * The value of <*tv> is updated upon return to show the actual
- * (absolute) acquisition time.
- *
- * @note Solaris threads do not support timed semaphores.
- * Therefore, if you're running on Solaris you might want to
- * consider using the ACE POSIX pthreads implementation instead,
- * which can be enabled by compiling ACE with
- * -DACE_HAS_PTHREADS, rather than -DACE_HAS_STHREADS or
- * -DACE_HAS_POSIX_SEM. */
- int acquire (ACE_Time_Value *tv);
-
- /**
- * Conditionally decrement the semaphore if count is greater than 0
- * (i.e., won't block). Returns -1 on failure. If we "failed"
- * because someone else already had the lock, @c errno is set to
- * @c EBUSY.
- */
- int tryacquire (void);
-
- /// Increment the semaphore by 1, potentially unblocking a waiting
- /// thread.
- int release (void);
-
- /// Increment the semaphore by @a release_count, potentially
- /// unblocking waiting threads.
- int release (unsigned int release_count);
-
- /**
- * Acquire semaphore ownership. This calls <acquire> and is only
- * here to make the ACE_Semaphore interface consistent with the
- * other synchronization APIs.
- */
- int acquire_read (void);
-
- /**
- * Acquire semaphore ownership. This calls <acquire> and is only
- * here to make the ACE_Semaphore interface consistent with the
- * other synchronization APIs.
- */
- int acquire_write (void);
-
- /**
- * Conditionally acquire semaphore (i.e., won't block). This calls
- * <tryacquire> and is only here to make the ACE_Semaphore
- * interface consistent with the other synchronization APIs.
- * Returns -1 on failure. If we "failed" because someone else
- * already had the lock, @c errno is set to @c EBUSY.
- */
- int tryacquire_read (void);
-
- /**
- * Conditionally acquire semaphore (i.e., won't block). This calls
- * <tryacquire> and is only here to make the ACE_Semaphore
- * interface consistent with the other synchronization APIs.
- * Returns -1 on failure. If we "failed" because someone else
- * already had the lock, @c errno is set to @c EBUSY.
- */
- int tryacquire_write (void);
-
- /**
- * This is only here to make the ACE_Semaphore
- * interface consistent with the other synchronization APIs.
- * Assumes the caller has already acquired the semaphore using one of
- * the above calls, and returns 0 (success) always.
- */
- int tryacquire_write_upgrade (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /// Return the underlying lock.
- const ACE_sema_t &lock (void) const;
-
-protected:
- ACE_sema_t semaphore_;
-
- /// Keeps track of whether remove() has been called yet to avoid
- /// multiple remove() calls, e.g., explicitly and implicitly in the
- /// destructor. This flag isn't protected by a lock, so make sure
- /// that you don't have multiple threads simultaneously calling
- /// remove () on the same object, which is a bad idea anyway...
- bool removed_;
-
-private:
- // = Prevent assignment and initialization.
- void operator= (const ACE_Semaphore &);
- ACE_Semaphore (const ACE_Semaphore &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Semaphore.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SEMAPHORE_H */
-
diff --git a/dep/include/ace/Semaphore.inl b/dep/include/ace/Semaphore.inl
deleted file mode 100644
index e0162dc247b..00000000000
--- a/dep/include/ace/Semaphore.inl
+++ /dev/null
@@ -1,119 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Semaphore.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE const ACE_sema_t &
-ACE_Semaphore::lock (void) const
-{
-// ACE_TRACE ("ACE_Semaphore::lock");
- return this->semaphore_;
-}
-
-ACE_INLINE int
-ACE_Semaphore::remove (void)
-{
-// ACE_TRACE ("ACE_Semaphore::remove");
- int result = 0;
- if (!this->removed_)
- {
- this->removed_ = true;
- result = ACE_OS::sema_destroy (&this->semaphore_);
- }
- return result;
-}
-
-ACE_INLINE int
-ACE_Semaphore::acquire (void)
-{
-// ACE_TRACE ("ACE_Semaphore::acquire");
- return ACE_OS::sema_wait (&this->semaphore_);
-}
-
-ACE_INLINE int
-ACE_Semaphore::acquire (ACE_Time_Value &tv)
-{
-// ACE_TRACE ("ACE_Semaphore::acquire");
- return ACE_OS::sema_wait (&this->semaphore_, tv);
-}
-
-ACE_INLINE int
-ACE_Semaphore::acquire (ACE_Time_Value *tv)
-{
-// ACE_TRACE ("ACE_Semaphore::acquire");
- return ACE_OS::sema_wait (&this->semaphore_, tv);
-}
-
-ACE_INLINE int
-ACE_Semaphore::tryacquire (void)
-{
-// ACE_TRACE ("ACE_Semaphore::tryacquire");
- return ACE_OS::sema_trywait (&this->semaphore_);
-}
-
-ACE_INLINE int
-ACE_Semaphore::release (void)
-{
-// ACE_TRACE ("ACE_Semaphore::release");
- return ACE_OS::sema_post (&this->semaphore_);
-}
-
-ACE_INLINE int
-ACE_Semaphore::release (unsigned int release_count)
-{
-// ACE_TRACE ("ACE_Semaphore::release");
- return ACE_OS::sema_post (&this->semaphore_, release_count);
-}
-
-// Acquire semaphore ownership. This calls <acquire> and is only
-// here to make the <ACE_Semaphore> interface consistent with the
-// other synchronization APIs.
-
-ACE_INLINE int
-ACE_Semaphore::acquire_read (void)
-{
- return this->acquire ();
-}
-
-// Acquire semaphore ownership. This calls <acquire> and is only
-// here to make the <ACE_Semaphore> interface consistent with the
-// other synchronization APIs.
-
-ACE_INLINE int
-ACE_Semaphore::acquire_write (void)
-{
- return this->acquire ();
-}
-
-// Conditionally acquire semaphore (i.e., won't block). This calls
-// <tryacquire> and is only here to make the <ACE_Semaphore>
-// interface consistent with the other synchronization APIs.
-
-ACE_INLINE int
-ACE_Semaphore::tryacquire_read (void)
-{
- return this->tryacquire ();
-}
-
-// Conditionally acquire semaphore (i.e., won't block). This calls
-// <tryacquire> and is only here to make the <ACE_Semaphore>
-// interface consistent with the other synchronization APIs.
-
-ACE_INLINE int
-ACE_Semaphore::tryacquire_write (void)
-{
- return this->tryacquire ();
-}
-
-// This is only here to make the <ACE_Semaphore> interface consistent
-// with the other synchronization APIs. Assumes the caller has
-// already acquired the semaphore using one of the above calls, and
-// returns 0 (success) always.
-ACE_INLINE int
-ACE_Semaphore::tryacquire_write_upgrade (void)
-{
- return 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Service_Config.h b/dep/include/ace/Service_Config.h
deleted file mode 100644
index 9fba207fea5..00000000000
--- a/dep/include/ace/Service_Config.h
+++ /dev/null
@@ -1,681 +0,0 @@
-// -*- C++ -*-
-
-//====================================================================
-/**
- * @file Service_Config.h
- *
- * $Id: Service_Config.h 81673 2008-05-09 19:09:43Z iliyan $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//====================================================================
-
-#ifndef ACE_SERVICE_CONFIG_H
-#define ACE_SERVICE_CONFIG_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-#include "ace/Default_Constants.h"
-#include "ace/Intrusive_Auto_Ptr.h"
-#include "ace/Service_Gestalt.h"
-#include "ace/Synch_Traits.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/OS_NS_signal.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decl.
-class ACE_Service_Object;
-class ACE_Service_Type;
-class ACE_Service_Type_Impl;
-class ACE_Service_Repository;
-class ACE_Sig_Adapter;
-class ACE_Allocator;
-class ACE_Reactor;
-class ACE_Thread_Manager;
-class ACE_DLL;
-
-#if (ACE_USES_CLASSIC_SVC_CONF == 1)
-#define ACE_STATIC_SERVICE_DIRECTIVE(ident, parameters) \
- ACE_TEXT ("static ") \
- ACE_TEXT (ident) \
- ACE_TEXT (" \"") \
- ACE_TEXT (parameters) \
- ACE_TEXT ("\"")
-#define ACE_DYNAMIC_SERVICE_DIRECTIVE(ident, libpathname, objectclass, parameters) \
- ACE_TEXT ("dynamic ") \
- ACE_TEXT (ident) \
- ACE_TEXT (" Service_Object * ") \
- ACE_TEXT (libpathname) \
- ACE_TEXT (":") \
- ACE_TEXT (objectclass) \
- ACE_TEXT ("() \"") \
- ACE_TEXT (parameters) \
- ACE_TEXT ("\"")
-#define ACE_REMOVE_SERVICE_DIRECTIVE(ident) \
- ACE_TEXT ("remove ") \
- ACE_TEXT (ident)
-class ACE_Svc_Conf_Param;
-#else
-#define ACE_STATIC_SERVICE_DIRECTIVE(ident, parameters) \
- ACE_TEXT ("<ACE_Svc_Conf><static id=\"") \
- ACE_TEXT (ident) \
- ACE_TEXT ("\" params=\"") \
- ACE_TEXT (parameters) \
- ACE_TEXT ("\"/></ACE_Svc_Conf>")
-#define ACE_DYNAMIC_SERVICE_DIRECTIVE(ident, libpathname, objectclass, parameters) \
- ACE_TEXT ("<ACE_Svc_Conf><dynamic id=\"") \
- ACE_TEXT (ident) \
- ACE_TEXT ("\" type=\"Service_Object\">") \
- ACE_TEXT ("<initializer path=\"") \
- ACE_TEXT (libpathname) \
- ACE_TEXT ("\" init=\"") \
- ACE_TEXT (objectclass) \
- ACE_TEXT ("\"") \
- ACE_TEXT (" params=\"") \
- ACE_TEXT (parameters) \
- ACE_TEXT ("\"/></dynamic></ACE_Svc_Conf>")
-#define ACE_REMOVE_SERVICE_DIRECTIVE(ident) \
- ACE_TEXT ("<ACE_Svc_Conf><remove id=\"") \
- ACE_TEXT (ident) \
- ACE_TEXT ("\"></remove></ACE_Svc_Conf>")
-class ACE_XML_Svc_Conf;
-#endif /* ACE_USES_CLASSIC_SVC_CONF == 1 */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-extern "C"
-{
- typedef ACE_Service_Object *(*ACE_SERVICE_ALLOCATOR) (ACE_Service_Object_Exterminator *);
-}
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Static_Svc_Descriptor
- *
- * @brief Holds the information necessary to describe a statically linked
- * Svc.
- */
-class ACE_Static_Svc_Descriptor
-{
-public:
- /// Name of the service.
- const ACE_TCHAR *name_;
-
- /// Type of service.
- int type_;
-
- /// Factory function that allocates the service.
- ACE_SERVICE_ALLOCATOR alloc_;
-
- /// Bitmask flags indicating how the framework should delete memory.
- u_int flags_;
-
- /// Flag indicating whether the service starts out active.
- int active_;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-public:
- /// Compare two service descriptors for equality.
- bool operator== (ACE_Static_Svc_Descriptor &) const;
-
- /// Compare two service descriptors for inequality.
- bool operator!= (ACE_Static_Svc_Descriptor &) const;
-};
-
-/**
- * @class ACE_Threading_Helper
- *
- * @brief Encapsulates responsibility for allocating, destroying and
- * manipulating the value, associated with a thread-specific
- * key. Relates to the ability of the created thread to inherit the
- * parent thread's gestalt. Designed to be used as an instance member
- * of @c ACE_Service_Config.
- *
- * Partial specialization over ACE_SYNCH_MUTEX is used to implement
- * specific behavior in both multi- and single-threaded builds.
- */
-template <typename LOCK>
-class ACE_Threading_Helper
-{
-};
-
-/*
- * Specialization for a multi threaded program
- */
-template<>
-class ACE_Export ACE_Threading_Helper<ACE_Thread_Mutex>
-{
-public:
- ACE_Threading_Helper ();
- ~ACE_Threading_Helper ();
-
- void set (void*);
- void* get (void);
-
-private:
- /// Key for the thread-specific data, which is a simple pointer to
- /// the thread's (currently-) global configuration context.
- ACE_thread_key_t key_;
-};
-
-/*
- * Specialization for a single threaded program
- */
-template<>
-class ACE_Export ACE_Threading_Helper<ACE_Null_Mutex>
-{
-public:
- ACE_Threading_Helper ();
- ~ACE_Threading_Helper ();
-
- void set (void*);
- void* get (void);
-};
-
-#define ACE_Component_Config ACE_Service_Config
-
-/**
- * @class ACE_Service_Config
- *
- * @brief Supplies common server operations for dynamic and static
- * configuration of service.
- *
- * The ACE_Service_Config uses the Monostate pattern. Therefore,
- * you can only have one of these instantiated per-process. It
- * represents the process-wide collection of services, which is
- * typicaly shared among all other configurable entities. The only
- * ACE_Service_Config instance is registered with and owned by the
- * ACE_Object_Manager.
- *
- * By contrast, the ACE_Service_Gestalt represents the collection
- * of services, pertaining to a configurable entity. Typicaly, a
- * "configurable entity" is an instance, which owns an instance of
- * ACE_Service_Gestalt in order to ensure full controll over the
- * services it needs.
- *
- * Another facet of ACE_Service_Config is that for a given thread,
- * it provides access to its current, process-global
- * ACE_Service_Gestalt instance through its curent() method.
- *
- * @note The signal_handler_ static member is allocated by the
- * ACE_Object_Manager. The ACE_Service_Config constructor
- * uses signal_handler_. Therefore, if the program has any
- * static ACE_Service_Config objects, there might be
- * initialization order problems. They can be minimized, but
- * not eliminated, by _not_ #defining
- * ACE_HAS_NONSTATIC_OBJECT_MANAGER.
- */
-class ACE_Export ACE_Service_Config
-{
-
- /// The Instance, or the global (default) configuration context.
- /// The monostate would forward the calls to that instance. The TSS
- /// will point here
- ACE_Intrusive_Auto_Ptr<ACE_Service_Gestalt> instance_;
-
- /// A helper instance to manage thread-specific key creation.
- /// Dependent on the syncronization mutex ACE uses, the corresponding
- /// partial template instantiation will perform the right services
- /// that have to do with managing thread-specific storage. Note that,
- /// for single-threaded builds they would do (next to) nothing.
- ACE_Threading_Helper<ACE_SYNCH_MUTEX> threadkey_;
-
-public:
-
- // = Initialization and termination methods.
-
- /**
- * Initialize the Service Repository. Note that initialising @a
- * signum to a negative number will prevent a signal handler being
- * registered when the repository is opened.
- */
- ACE_Service_Config (bool ignore_static_svcs = true,
- size_t size = ACE_DEFAULT_SERVICE_REPOSITORY_SIZE,
- int signum = SIGHUP);
-
- /**
- * Performs an open without parsing command-line arguments. The
- * @a logger_key indicates where to write the logging output, which
- * is typically either a STREAM pipe or a socket address.
- */
- ACE_Service_Config (const ACE_TCHAR program_name[],
- const ACE_TCHAR *logger_key = ACE_DEFAULT_LOGGER_KEY);
-
- /// Perform user-specified close activities and remove dynamic
- /// memory.
- virtual ~ACE_Service_Config (void);
-
-private:
-
- /**
- * Performs an open without parsing command-line arguments.
- * Implements whats different in the opening sequence
- * for this class, as opposed to the base class.
- *
- * The @a logger_key indicates where to write the logging output, which
- * is typically either a STREAM pipe or a socket address. If
- * @a ignore_default_svc_conf_file is non-0 then the "svc.conf" file
- * will be ignored. If @a ignore_debug_flag is non-0 then the
- * application is responsible for setting the
- * @c ACE_Log_Msg::priority_mask() appropriately. Returns number of
- * errors that occurred on failure and 0 otherwise.
- */
- virtual int open_i (const ACE_TCHAR program_name[],
- const ACE_TCHAR *logger_key,
- bool ignore_static_svcs,
- bool ignore_default_svc_conf_file,
- bool ignore_debug_flag);
-
- /**
- * Implements whats different in the command line parameter processing
- * for this class, as opposed to the base class.
- */
- virtual int parse_args_i (int argc, ACE_TCHAR *argv[]);
-
- /// = Static interfaces
-
- public:
- /**
- * Returns the process-wide global singleton instance. It would
- * have been created and will be managed by the Object Manager.
- */
- static ACE_Service_Config* singleton (void);
-
- /**
- * Mutator for the currently active configuration context instance
- * (gestalt). Intended for use by helper classes like @see
- * ACE_Service_Config_Guard. Stack-based instances can be used to
- * temporarily change which gestalt is seen as global by static
- * initializers (especially those in DLLs loaded at run-time).
- */
- static void current (ACE_Service_Gestalt*);
-
- /**
- * Accessor for the "current" service gestalt
- */
- static ACE_Service_Gestalt* current (void);
-
- /**
- * This is what the static service initializators are hard-wired to
- * use, so in order to avoid interface changes this method merely
- * forwards to @c ACE_Service_Config::current. This enables us to
- * enforce which Service Gestalt is used for services registering
- * through static initializers. Especially important for DLL-based
- * dynamic services, which can contain their own static services and
- * static initializers.
- *
- * @deprecated Use current() instead.
- */
- static ACE_Service_Gestalt* instance (void);
-
- /**
- * Returns a process-wide global singleton instance in contrast with
- * current (), which may return a different instance at different
- * times, dependent on the context. Modifying this method's return
- * value is strongly discouraged as it will circumvent the mechanism
- * for dynamically loading services. If you must, use with extreme
- * caution!
- */
- static ACE_Service_Gestalt* global (void);
-
- /**
- * Performs an open without parsing command-line arguments. The
- * @a logger_key indicates where to write the logging output, which
- * is typically either a STREAM pipe or a socket address. If
- * @a ignore_static_svcs is true then static services are not loaded,
- * otherwise, they are loaded. If @a ignore_default_svc_conf_file is
- * non-0 then the <svc.conf> configuration file will be ignored.
- * Returns zero upon success, -1 if the file is not found or cannot
- * be opened (errno is set accordingly), otherwise returns the
- * number of errors encountered loading the services in the
- * specified svc.conf configuration file. If @a ignore_debug_flag is
- * non-0 then the application is responsible for setting the
- * @c ACE_Log_Msg::priority_mask appropriately.
- */
- static int open (const ACE_TCHAR program_name[],
- const ACE_TCHAR *logger_key = ACE_DEFAULT_LOGGER_KEY,
- bool ignore_static_svcs = true,
- bool ignore_default_svc_conf_file = false,
- bool ignore_debug_flag = false);
-
- /**
- * This is the primary entry point into the ACE_Service_Config (the
- * constructor just handles simple initializations). It parses
- * arguments passed in from @a argc and @a argv parameters. The
- * arguments that are valid in a call to this method include:
- *
- * - '-b' Option to indicate that we should be a daemon. Note that when
- * this option is used, the process will be daemonized before the
- * service configuration file(s) are read. During daemonization,
- * (on POSIX systems) the current directory will be changed to "/"
- * so the caller should either fully specify the file names, or
- * execute a @c chroot() to the appropriate directory.
- * @sa ACE::daemonize().
- * - '-d' Turn on debugging mode
- * - '-f' Specifies a configuration file name other than the default
- * svc.conf. Can be specified multiple times to use multiple files.
- * - '-k' Specifies the rendezvous point to use for the ACE distributed
- * logger.
- * - '-y' Explicitly enables the use of static services. This flag
- * overrides the @a ignore_static_svcs parameter value.
- * - '-n' Explicitly disables the use of static services. This flag
- * overrides the @a ignore_static_svcs parameter value.
- * - '-p' Specifies a pathname which is used to store the process id.
- * - '-s' Specifies a signal number other than SIGHUP to trigger reprocessing
- * of the configuration file(s). Ignored for platforms that do not
- * have POSIX signals, such as Windows.
- * - '-S' Specifies a service directive string. Enclose the string in quotes
- * and escape any embedded quotes with a backslash. This option
- * specifies service directives without the need for a configuration
- * file.
- *
- * @param argc The number of commandline arguments.
- * @param argv The array with commandline arguments
- * @param logger_key Indicates where to write the logging output,
- * which is typically either a STREAM pipe or a
- * socket address.
- * @param ignore_static_svcs If true then static services are not loaded,
- * otherwise, they are loaded.
- * @param ignore_default_svc_conf_file If non-0 then the @c svc.conf
- * configuration file will be ignored.
- * @param ignore_debug_flag If true then the application is responsible
- * for setting the @c ACE_Log_Msg::priority_mask
- * appropriately.
- *
- * @retval -1 The configuration file is not found or cannot
- * be opened (errno is set accordingly).
- * @retval 0 Success.
- * @retval >0 The number of errors encountered while processing
- * the service configuration file(s).
- */
- static int open (int argc,
- ACE_TCHAR *argv[],
- const ACE_TCHAR *logger_key = ACE_DEFAULT_LOGGER_KEY,
- bool ignore_static_svcs = true,
- bool ignore_default_svc_conf_file = false,
- bool ignore_debug_flag = false);
-
- /// Tidy up and perform last rites when ACE_Service_Config is shut
- /// down. This method calls close_svcs(). Returns 0.
- static int close (void);
-
- /// Perform user-specified close hooks and possibly delete all of the
- /// configured services in the <Service_Repository>.
- static int fini_svcs (void);
-
- /// True if reconfiguration occurred.
- static int reconfig_occurred (void);
-
- /// Indicate that reconfiguration occurred.
- static void reconfig_occurred (int);
-
- /// Perform the reconfiguration process.
- static void reconfigure (void);
-
- // = The following methods are static in order to enforce Singleton
- // semantics for the Reactor, Service_Repository, Thread_Manager,
- // and Acceptor/Connector Strategy factory. Other portions of the
- // system may need to access them at some point or another...
-
- // = This is not strictly needed, anymore since the service configurator
- // has been refactored to allow multiple service configuration
- // instances (called gestalts). The interfaces, however were retained in for
- // the sake of maintaining source-code compatibility.
-
- // = Accessors and mutators for process-wide Singletons.
-
- /// Returns a pointer to the list of statically linked services.
- ///
- /// @deprecated - Same as instance(), but still useful in legacy code,
- /// (notably, one that can not be easily modified) which uses the following
- /// idiom for registering static services:
- ///
- /// ACE_Service_Config::static_svcs ()->insert (...);
- static ACE_Service_Gestalt* static_svcs (void);
-
- /// Insert a static service descriptor for processing on open_i(). The
- /// corresponding ACE_STATIC_SVC_* macros were chaged to use this method
- /// instead of obtaining a ptr to a container. See the note on static_svcs().
- /// Added to prevent exposing the internal storage representation of the
- /// services repository and provide a better way of debugging service
- /// loading and registration problems.
- static int insert (ACE_Static_Svc_Descriptor *svc);
-
- // = Utility methods.
- /// Dynamically link the shared object file and retrieve a pointer to
- /// the designated shared object in this file.
- static int initialize (const ACE_Service_Type *,
- const ACE_TCHAR *parameters);
-
- /// Initialize and activate a statically @a svc_name service.
- static int initialize (const ACE_TCHAR *svc_name,
- const ACE_TCHAR *parameters);
-
- /// Resume a @a svc_name that was previously suspended or has not yet
- /// been resumed (e.g., a static service).
- static int resume (const ACE_TCHAR svc_name[]);
-
- /**
- * Suspend @a svc_name. Note that this will not unlink the service
- * from the daemon if it was dynamically linked, it will mark it as
- * being suspended in the Service Repository and call the <suspend>
- * member function on the appropriate ACE_Service_Object. A
- * service can be resumed later on by calling the <RESUME> member
- * function...
- */
- static int suspend (const ACE_TCHAR svc_name[]);
-
- /// Totally remove @a svc_name from the daemon by removing it
- /// from the ACE_Reactor, and unlinking it if necessary.
- static int remove (const ACE_TCHAR svc_name[]);
-
-#if defined (ACE_HAS_WINCE) && defined (ACE_USES_WCHAR)
- // We must provide these function to bridge the Svc_Conf parser
- // with ACE.
- static int initialize (const ACE_Service_Type *, ACE_ANTI_TCHAR []);
- static int initialize (const char svc_name[], ACE_ANTI_TCHAR parameters[]);
- static int resume (const ACE_ANTI_TCHAR svc_name[]);
- static int suspend (const ACE_ANTI_TCHAR svc_name[]);
- static int remove (const ACE_ANTI_TCHAR svc_name[]);
-#endif /* ACE_HAS_WINCE */
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Set the signal_handler;for internal use by ACE_Object_Manager only.
- static ACE_INLINE void signal_handler (ACE_Sig_Adapter *);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /// Process a file containing a list of service configuration
- /// directives.
- static int process_file (const ACE_TCHAR file[]);
-
- /// Process one service configuration @a directive, which is passed as
- /// a string. Returns the number of errors that occurred.
- static int process_directive (const ACE_TCHAR directive[]);
-
- /**
- * Process one static service definition. Load a new static service
- * into the ACE_Service_Repository.
- *
- * @param ssd Service descriptor, see the document of
- * ACE_Static_Svc_Descriptor for more details.
- *
- * @param force_replace If set the new service descriptor replaces
- * any previous instance in the ACE_Service_Repository.
- *
- * @return Returns -1 if the service cannot be 'loaded'.
- */
- static int process_directive (const ACE_Static_Svc_Descriptor &ssd,
- bool force_replace = false);
-
- /**
- * Process (or re-process) service configuration requests that are
- * provided in the svc.conf file(s). Returns the number of errors
- * that occurred.
- */
- static int process_directives (void);
-
- /// Handles signals to trigger reconfigurations.
- static void handle_signal (int sig, siginfo_t *, ucontext_t *);
-
- /**
- * Handle the command-line options intended for the
- * ACE_Service_Config. Note that @c argv[0] is assumed to be the
- * program name.
- * The arguments that are valid in a call to this method are
- * - '-b' Option to indicate that we should be a daemon
- * - '-d' Turn on debugging mode
- * - '-f' Option to read in the list of svc.conf file names
- * - '-k' Option to read a wide string where in the logger output can
- * be written
- * - '-y' Turn on the flag for a repository of statically
- * linked services
- * - '-n' Need not have a repository of statically linked services
- * - '-S' Option to read in the list of services on the command-line
- * Please observe the difference between options '-f' that looks
- * for a list of files and here a list of services.
- */
- static int parse_args (int, ACE_TCHAR *argv[]);
-
-#if (ACE_USES_CLASSIC_SVC_CONF == 0)
- static ACE_Service_Type *create_service_type (const ACE_TCHAR *n,
- ACE_Service_Type_Impl *o,
- ACE_DLL &dll,
- int active);
-#endif /* ACE_USES_CLASSIC_SVC_CONF == 0 */
-
- static ACE_Service_Type_Impl *
- create_service_type_impl (const ACE_TCHAR *name,
- int type,
- void *symbol,
- u_int flags,
- ACE_Service_Object_Exterminator gobbler);
-
- /// @deprecated
- /// Process service configuration requests that were provided on the
- /// command-line. Returns the number of errors that occurred.
- static int process_commandline_directives (void);
-
- /// Become a daemon.
- static int start_daemon (void);
-
- // @deprecated
- // Add the default statically-linked services to the
- // ACE_Service_Repository.
- static int load_static_svcs (void);
-
-protected:
-
-#if (ACE_USES_CLASSIC_SVC_CONF == 1)
- /// @deprecated
- /// This is the implementation function that process_directives()
- /// and process_directive() both call. Returns the number of errors
- /// that occurred.
- static int process_directives_i (ACE_Svc_Conf_Param *param);
-#endif /* ACE_USES_CLASSIC_SVC_CONF == 1 */
-
- // = Process-wide state.
-
-private:
-
- /// Have we called ACE_Service_Config::open() yet?
- bool is_opened_;
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
- /// Synchronization variable for open, etc.
- mutable ACE_SYNCH_MUTEX lock_;
-#endif /* ACE_MT_SAFE */
-
- /// True if reconfiguration occurred.
- static sig_atomic_t reconfig_occurred_;
-
- // = Set by command-line options.
- /// Shall we become a daemon process?
- static bool be_a_daemon_;
-
- /// Pathname of file to write process id.
- static ACE_TCHAR *pid_file_name_;
-
- /// Number of the signal used to trigger reconfiguration.
- static int signum_;
-
- /// Handles the reconfiguration signals.
- static ACE_Sig_Adapter *signal_handler_;
-
- /// Pointer to the Singleton (ACE_Cleanup) Gestalt instance.
- /// There is thread-specific global instance pointer, which is used to
- /// temporarily change which Gestalt instance is used for static service
- /// registrations.
- ///
- /// A specific use case is a thread, which loads a _dynamic_ service from
- /// a DLL. If the said DLL also contains additional _static_ services,
- /// those *must* be registered with the same configuration repository as
- /// the dynamic service. Otherwise, the DLL's static services would be
- /// registered with the global Gestalt and may outlive the DLL that
- /// contains their code and perhaps the memory in which they are in.
- /// This is a problem because if the DLL gets unloaded (as it will, if
- /// it was loaded in an instance of Gestalt), the DLL's memory will be
- /// deallocated, but the global service repository will still "think"
- /// it must finalize the (DLL's) static services - with disastrous
- /// consequences, occurring in the post-main code (at_exit()).
-
- /// This class needs the intimate access to be able to swap the
- /// current TSS pointer for the global Gestalt.
- friend class ACE_Service_Config_Guard;
-
- /// The helper needs intimate access (when building with no threads)
- friend class ACE_Threading_Helper <ACE_Thread_Mutex>;
- friend class ACE_Threading_Helper <ACE_Null_Mutex>;
-};
-
-/**
- * @class ACE_Service_Config_Guard
- *
- * @brief A guard class, designed to be instantiated on the stack.
- *
- * Instantiating it with a specific configuration ensures any references to
- * ACE_Service_Config::instance(), even when occuring in static constructors,
- * will allways access the designated configuration instance.
- * This comes very handy when a dynamic service also registers any static
- * services of its own and their static factories.
- */
-class ACE_Export ACE_Service_Config_Guard
-{
-public:
- ACE_Service_Config_Guard (ACE_Service_Gestalt* psg);
- ~ACE_Service_Config_Guard (void);
-
-private:
- // Private AND not implemented to disable copying
- ACE_Service_Config_Guard(const ACE_Service_Config_Guard&);
- ACE_Service_Config_Guard& operator= (const ACE_Service_Config_Guard&);
-
-private:
- ACE_Intrusive_Auto_Ptr<ACE_Service_Gestalt> saved_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Service_Config.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SERVICE_CONFIG_H */
-
diff --git a/dep/include/ace/Service_Config.inl b/dep/include/ace/Service_Config.inl
deleted file mode 100644
index acb38e27a7f..00000000000
--- a/dep/include/ace/Service_Config.inl
+++ /dev/null
@@ -1,202 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Service_Config.inl 81673 2008-05-09 19:09:43Z iliyan $
-
-#include "ace/OS_NS_string.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// This is the primary entry point into the ACE_Service_Config (the
-// constructor just handles simple initializations).
-ACE_INLINE int
-ACE_Service_Config::open (const ACE_TCHAR program_name[],
- const ACE_TCHAR *logger_key,
- bool ignore_static_svcs,
- bool ignore_default_svc_conf,
- bool ignore_debug_flag)
-{
- ACE_TRACE ("ACE_Service_Config::open");
- if (singleton()->open_i (program_name,
- logger_key,
- ignore_static_svcs,
- ignore_default_svc_conf,
- ignore_debug_flag) == -1)
- return -1;
-
- return current()->open (program_name,
- logger_key,
- ignore_static_svcs,
- ignore_default_svc_conf,
- ignore_debug_flag);
-}
-
-ACE_INLINE int
-ACE_Service_Config::open (int argc,
- ACE_TCHAR *argv[],
- const ACE_TCHAR *logger_key,
- bool ignore_static_svcs,
- bool ignore_default_svc_conf,
- bool ignore_debug_flag)
-{
- ACE_TRACE ("ACE_Service_Config::open");
- if (singleton()->open_i (argv[0],
- logger_key,
- ignore_static_svcs,
- ignore_default_svc_conf,
- ignore_debug_flag) == -1)
- return -1;
-
- return current()->open (argc,
- argv,
- logger_key,
- ignore_static_svcs,
- ignore_default_svc_conf,
- ignore_debug_flag);
-}
-
-// Handle the command-line options intended for the
-// ACE_Service_Config.
-ACE_INLINE int
-ACE_Service_Config::parse_args (int argc, ACE_TCHAR *argv[])
-{
- return ACE_Service_Config::current ()->parse_args (argc, argv);
-}
-
-/// Return the global configuration instance. Allways returns the same
-/// instance
-ACE_INLINE ACE_Service_Gestalt *
-ACE_Service_Config::global (void)
-{
- return ACE_Service_Config::singleton()->instance_.get ();
-}
-
-/// Return the configuration instance, considered "global" in the
-/// current thread. This may be the same as instance(), but on some
-/// occasions, it may be a different one. For example,
-/// ACE_Service_Config_Guard provides a way of temporarily replacing
-/// the "current" configuration instance in the context of a thread.
-ACE_INLINE ACE_Service_Gestalt *
-ACE_Service_Config::instance (void)
-{
- return ACE_Service_Config::current ();
-}
-
-// This method has changed to return the gestalt instead of the
-// container, underlying the service repository and defined
-// ACE_Service_Gestalt::insert (ACE_Static_Svc_Descriptor*). This way
-// the existing source code can keep using
-// ACE_Service_Config::static_svcs(), however now it is not necessary
-// to expose the repository storage *and* it is much easier to debug
-// service registration problems.
-
-ACE_INLINE ACE_Service_Gestalt*
-ACE_Service_Config::static_svcs (void)
-{
- return ACE_Service_Config::current ();
-}
-
-/// Compare two service descriptors for equality.
-ACE_INLINE bool
-ACE_Static_Svc_Descriptor::operator== (ACE_Static_Svc_Descriptor &d) const
-{
- return ACE_OS::strcmp (name_, d.name_) == 0;
-}
-
-/// Compare two service descriptors for inequality.
-ACE_INLINE bool
-ACE_Static_Svc_Descriptor::operator!= (ACE_Static_Svc_Descriptor &d) const
-{
- return !(*this == d);
-}
-
-ACE_INLINE void
-ACE_Service_Config::signal_handler (ACE_Sig_Adapter *signal_handler)
-{
- signal_handler_ = signal_handler;
-}
-
-/// Initialize and activate a statically linked service.
-ACE_INLINE int
-ACE_Service_Config::initialize (const ACE_TCHAR *svc_name,
- const ACE_TCHAR *parameters)
-{
- ACE_TRACE ("ACE_Service_Config::initialize");
- return ACE_Service_Config::current ()->initialize (svc_name,
- parameters);
-}
-
-/// Dynamically link the shared object file and retrieve a pointer to
-/// the designated shared object in this file.
-ACE_INLINE int
-ACE_Service_Config::initialize (const ACE_Service_Type *sr,
- const ACE_TCHAR *parameters)
-{
- ACE_TRACE ("ACE_Service_Config::initialize");
- return ACE_Service_Config::current ()->initialize (sr, parameters);
-}
-
-/// Process a file containing a list of service configuration
-/// directives.
-ACE_INLINE int ACE_Service_Config::process_file (const ACE_TCHAR file[])
-{
- return ACE_Service_Config::current ()->process_file (file);
-}
-
-///
-ACE_INLINE int
-ACE_Service_Config::process_directive (const ACE_TCHAR directive[])
-{
- return ACE_Service_Config::current ()->process_directive (directive);
-}
-
-/// Process service configuration requests as indicated in the queue of
-/// svc.conf files.
-ACE_INLINE int
-ACE_Service_Config::process_directives (void)
-{
- return ACE_Service_Config::current ()->process_directives (false);
-}
-
-ACE_INLINE int
-ACE_Service_Config::process_directive (const ACE_Static_Svc_Descriptor &ssd,
- bool force_replace)
-{
- return ACE_Service_Config::current ()->process_directive (ssd, force_replace);
-}
-
-#if defined (ACE_HAS_WINCE) && defined (ACE_USES_WCHAR)
-// We must provide these function to bridge Svc_Conf parser with ACE.
-
-ACE_INLINE int
-ACE_Service_Config::initialize (const ACE_Service_Type *sp, ACE_ANTI_TCHAR parameters[])
-{
- return ACE_Service_Config::initialize (sp, ACE_TEXT_ANTI_TO_TCHAR (parameters));
-}
-
-ACE_INLINE int
-ACE_Service_Config::initialize (const ACE_ANTI_TCHAR svc_name[], ACE_ANTI_TCHAR parameters[])
-{
- return ACE_Service_Config::initialize (ACE_TEXT_ANTI_TO_TCHAR (svc_name),
- ACE_TEXT_ANTI_TO_TCHAR (parameters));
-}
-
-ACE_INLINE int
-ACE_Service_Config::resume (const ACE_ANTI_TCHAR svc_name[])
-{
- return ACE_Service_Config::resume (ACE_TEXT_ANTI_TO_TCHAR (svc_name));
-}
-
-ACE_INLINE int
-ACE_Service_Config::suspend (const ACE_ANTI_TCHAR svc_name[])
-{
- return ACE_Service_Config::suspend (ACE_TEXT_ANTI_TO_TCHAR (svc_name));
-}
-
-ACE_INLINE int
-ACE_Service_Config::remove (const ACE_ANTI_TCHAR svc_name[])
-{
- return ACE_Service_Config::remove (ACE_TEXT_ANTI_TO_TCHAR (svc_name));
-}
-#endif /* ACE_HAS_WINCE && !ACE_USES_WCHAR */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Service_Gestalt.h b/dep/include/ace/Service_Gestalt.h
deleted file mode 100644
index 5ccfd940f5d..00000000000
--- a/dep/include/ace/Service_Gestalt.h
+++ /dev/null
@@ -1,506 +0,0 @@
-// -*- C++ -*-
-
-//====================================================================
-/**
- * @file Service_Gestalt.h
- *
- * $Id: Service_Gestalt.h 81624 2008-05-06 17:14:57Z wotte $
- *
- * @author Iliyan Jeliazkov <iliyan@ociweb.com>
- */
-//====================================================================
-
-#ifndef ACE_SERVICE_GESTALT_H
-#define ACE_SERVICE_GESTALT_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-#include "ace/Default_Constants.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Auto_Ptr.h"
-#include "ace/SString.h"
-#include "ace/Unbounded_Queue.h"
-#include "ace/Unbounded_Set.h"
-#include "ace/Service_Repository.h"
-#include "ace/Singleton.h"
-#include "ace/OS_NS_signal.h"
-#include "ace/Synch_Traits.h"
-#include "ace/Atomic_Op.h"
-#include "ace/Guard_T.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if (ACE_USES_CLASSIC_SVC_CONF == 1)
-class ACE_Service_Type_Factory;
-class ACE_Location_Node;
-#else
-class ACE_XML_Svc_Conf;
-class ACE_DLL;
-#endif /* ACE_USES_CLASSIC_SVC_CONF == 1 */
-
-class ACE_Static_Svc_Descriptor;
-class ACE_Svc_Conf_Param;
-
-/**
- * @class ACE_Service_Gestalt
- *
- * @brief Supplies common server operations for dynamic and static
- * configuration of services.
- *
- * The Gestalt embodies the concept of configuration context. On one
- * hand, it is a flat namespace, where names correspond to a Service
- * Object instance. A Gestalt owns the Service Repository instance,
- * which in turn owns the Service Object instances.
- *
- * Another aspect of a Gestalt is its responsibility for
- * record-keeping and accounting for the meta-data, necessary for
- * locating, removing or instantiating a service.
- *
- * A repository underlies an instance of a gestalt and its lifetime
- * may or may not be bounded by the lifetime of the gestalt, that owns
- * it. This feature is important for the derived classes and the
- * Service Config in particular.
- *
- */
-class ACE_Export ACE_Service_Gestalt
-{
-private:
- ///
- /// Not implemented to enforce no copying
- //
- ACE_UNIMPLEMENTED_FUNC (ACE_Service_Gestalt(const ACE_Service_Gestalt&))
- ACE_UNIMPLEMENTED_FUNC (ACE_Service_Gestalt& operator=(const ACE_Service_Gestalt&))
-
-public:
- enum
- {
- MAX_SERVICES = ACE_DEFAULT_SERVICE_REPOSITORY_SIZE
- };
-
- /// Constructor either associates the instance with the process-wide
- /// singleton instance of ACE_Service_Repository, or creates and
- /// manages its own instance of the specified size.
- ACE_Service_Gestalt (size_t size = 1024,
- bool svc_repo_is_owned = true,
- bool no_static_svcs = true);
-
- /// Perform user-specified close activities and remove dynamic
- /// memory.
- ~ACE_Service_Gestalt (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /**
- * Performs an open without parsing command-line arguments. The
- * @a logger_key indicates where to write the logging output, which
- * is typically either a STREAM pipe or a socket address. If
- * @a ignore_static_svcs is true then static services are not loaded,
- * otherwise, they are loaded. If @a ignore_default_svc_conf_file is
- * true then the <svc.conf> configuration file will be ignored.
- * Returns zero upon success, -1 if the file is not found or cannot
- * be opened (errno is set accordingly), otherwise returns the
- * number of errors encountered loading the services in the
- * specified svc.conf configuration file. If @a ignore_debug_flag is
- * true then the application is responsible for setting the
- * <ACE_Log_Msg::priority_mask> appropriately.
- */
- int open (const ACE_TCHAR program_name[],
- const ACE_TCHAR *logger_key = ACE_DEFAULT_LOGGER_KEY,
- bool ignore_static_svcs = true,
- bool ignore_default_svc_conf_file = false,
- bool ignore_debug_flag = false);
-
- /**
- * This is the primary entry point into the ACE_Service_Config (the
- * constructor just handles simple initializations). It parses
- * arguments passed in from @a argc and @a argv parameters. The
- * arguments that are valid in a call to this method include:
- *
- * - '-b' Option to indicate that we should be a daemon. Note that when
- * this option is used, the process will be daemonized before the
- * service configuration file(s) are read. During daemonization,
- * (on POSIX systems) the current directory will be changed to "/"
- * so the caller should either fully specify the file names, or
- * execute a @c chroot() to the appropriate directory.
- * @sa ACE::daemonize().
- * - '-d' Turn on debugging mode
- * - '-f' Specifies a configuration file name other than the default
- * svc.conf. Can be specified multiple times to use multiple files.
- * - '-k' Specifies the rendezvous point to use for the ACE distributed
- * logger.
- * - '-y' Explicitly enables the use of static services. This flag
- * overrides the @a ignore_static_svcs parameter value.
- * - '-n' Explicitly disables the use of static services. This flag
- * overrides the @a ignore_static_svcs parameter value.
- * - '-p' Specifies a pathname which is used to store the process id.
- * - '-s' Specifies a signal number other than SIGHUP to trigger reprocessing
- * of the configuration file(s). Ignored for platforms that do not
- * have POSIX signals, such as Windows.
- * - '-S' Specifies a service directive string. Enclose the string in quotes
- * and escape any embedded quotes with a backslash. This option
- * specifies service directives without the need for a configuration
- * file.
- *
- * @param argc The number of commandline arguments.
- * @param argv The array with commandline arguments
- * @param logger_key Indicates where to write the logging output,
- * which is typically either a STREAM pipe or a
- * socket address.
- * @param ignore_static_svcs If true then static services are not loaded,
- * otherwise, they are loaded.
- * @param ignore_default_svc_conf_file If false then the @c svc.conf
- * configuration file will be ignored.
- * @param ignore_debug_flag If false then the application is responsible
- * for setting the @c ACE_Log_Msg::priority_mask
- * appropriately.
- *
- * @retval -1 The configuration file is not found or cannot
- * be opened (errno is set accordingly).
- * @retval 0 Success.
- * @retval >0 The number of errors encountered while processing
- * the service configuration file(s).
- */
- int open (int argc,
- ACE_TCHAR *argv[],
- const ACE_TCHAR *logger_key = ACE_DEFAULT_LOGGER_KEY,
- bool ignore_static_svcs = true,
- bool ignore_default_svc_conf_file = false,
- bool ignore_debug_flag = false);
-
- /// Has it been opened? Returns the difference between the times
- /// open and close have been called on this instance
- int is_opened (void);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /// Process one service configuration @a directive, which is passed as
- /// a string. Returns the number of errors that occurred.
- int process_directive (const ACE_TCHAR directive[]);
-
- /// Process one static service definition.
- /**
- * Load a new static service.
- *
- * @param ssd Service descriptor, see the document of
- * ACE_Static_Svc_Descriptor for more details.
- *
- * @param force_replace If set the new service descriptor replaces
- * any previous instance in the repository.
- *
- * @return Returns -1 if the service cannot be 'loaded'.
- */
- int process_directive (const ACE_Static_Svc_Descriptor &ssd,
- bool force_replace = false);
-
- /// Process a file containing a list of service configuration
- /// directives.
- int process_file (const ACE_TCHAR file[]);
-
- /**
- * Locate an entry with @a name in the table. If @a ignore_suspended
- * is set then only consider services marked as resumed. If the
- * caller wants the located entry, pass back a pointer to the
- * located entry via @a srp. If @a name is not found, -1 is returned.
- * If @a name is found, but it is suspended and the caller wants to
- * ignore suspended services a -2 is returned.
- */
- int find (const ACE_TCHAR name[],
- const ACE_Service_Type **srp = 0,
- bool ignore_suspended = true) const;
-
- /**
- * Handle the command-line options intended for the
- * ACE_Service_Gestalt. Note that <argv[0]> is assumed to be the
- * program name.
- *
- * The arguments that are valid in a call to this method are
- * - '-d' Turn on debugging mode
- * - '-f' Option to read in the list of svc.conf file names
- * - '-k' Option to read a wide string where in the logger output can
- * be written
- * - '-y' Turn on the flag for a repository of statically
- * linked services
- * - '-n' Need not have a repository of statically linked services
- * - '-S' Option to read in the list of services on the command-line
- * Please observe the difference between options '-f' that looks
- * for a list of files and here a list of services.
- */
- int parse_args (int, ACE_TCHAR *argv[]);
-
- /**
- * Process (or re-process) service configuration requests that are
- * provided in the svc.conf file(s). Returns the number of errors
- * that occurred.
- */
- int process_directives (bool ignore_default_svc_conf_file);
-
- /// Tidy up and perform last rites when ACE_Service_Config is shut
- /// down. This method calls <close_svcs>. Returns 0.
- int close (void);
-
- // Registers a service descriptor for a static service object
- int insert (ACE_Static_Svc_Descriptor *stsd);
-
- // = Utility methods.
-
-#if (ACE_USES_CLASSIC_SVC_CONF == 1)
- /// Dynamically link the shared object file and retrieve a pointer to
- /// the designated shared object in this file. Also account for the
- /// possiblity to have static services registered when loading the DLL, by
- /// ensuring that the dynamic sevice is registered before any of its
- /// subordibnate static services. Thus avoiding any finalization order
- /// problems.
- int initialize (const ACE_Service_Type_Factory *,
- const ACE_TCHAR *parameters);
-#endif /* (ACE_USES_CLASSIC_SVC_CONF == 1) */
-
- /// Dynamically link the shared object file and retrieve a pointer to
- /// the designated shared object in this file.
- /// @deprecated
- /// @note This is error-prone in the presense of dynamic services,
- /// which in turn initialize their own static services. This method
- /// will allow those static services to register *before* the dynamic
- /// service that owns them. Upon finalization of the static services
- /// the process will typically crash, because the dynamic service's
- /// DLL may have been already released, together with the memory in
- /// which the static services reside. It may not crash, for
- /// instance, when the first static service to register is the same
- /// as the dynamic service being loaded. You should be so lucky!
- int initialize (const ACE_Service_Type *,
- const ACE_TCHAR *parameters);
-
- /// Initialize and activate a statically @a svc_name service.
- int initialize (const ACE_TCHAR *svc_name,
- const ACE_TCHAR *parameters);
-
- /// Resume a @a svc_name that was previously suspended or has not yet
- /// been resumed (e.g., a static service).
- int resume (const ACE_TCHAR svc_name[]);
-
- /**
- * Suspend @a svc_name. Note that this will not unlink the service
- * from the daemon if it was dynamically linked, it will mark it as
- * being suspended in the Service Repository and call the <suspend>
- * member function on the appropriate ACE_Service_Object. A
- * service can be resumed later on by calling the <RESUME> member
- * function...
- */
- int suspend (const ACE_TCHAR svc_name[]);
-
- /// Totally remove @a svc_name from the daemon by removing it
- /// from the ACE_Reactor, and unlinking it if necessary.
- int remove (const ACE_TCHAR svc_name[]);
-
- /**
- * Using the supplied name, finds and (if needed) returns a pointer to a
- * static service descriptor. Returns 0 for success and -1 for failure
- */
- int find_static_svc_descriptor (const ACE_TCHAR* name,
- ACE_Static_Svc_Descriptor **ssd = 0) const;
-
- struct Processed_Static_Svc
- {
- Processed_Static_Svc (const ACE_Static_Svc_Descriptor *);
- ~Processed_Static_Svc (void);
- ACE_TCHAR * name_;
- const ACE_Static_Svc_Descriptor *assd_;
- };
-
- /// Get the current ACE_Service_Repository held by this object.
- ACE_Service_Repository* current_service_repository (void);
-
-protected:
-
- int parse_args_i (int, ACE_TCHAR *argv[],
- bool& ignore_default_svc_conf_file);
-
- /**
- * Performs an open without parsing command-line arguments. The
- * @a logger_key indicates where to write the logging output, which
- * is typically either a STREAM pipe or a socket address. If
- * @a ignore_default_svc_conf_file is non-0 then the "svc.conf" file
- * will be ignored. If @a ignore_debug_flag is non-0 then the
- * application is responsible for setting the
- * @c ACE_Log_Msg::priority_mask() appropriately. Returns number of
- * errors that occurred on failure and 0 otherwise.
- */
- int open_i (const ACE_TCHAR program_name[],
- const ACE_TCHAR *logger_key = ACE_DEFAULT_LOGGER_KEY,
- bool ignore_static_svcs = true,
- bool ignore_default_svc_conf_file = false,
- bool ignore_debug_flag = false);
-
- /// Initialize the <svc_conf_file_queue_> if necessary.
- int init_svc_conf_file_queue (void);
-
- /// Add the default statically-linked services to the
- /// ACE_Service_Repository.
- int load_static_svcs (void);
-
- /// Process service configuration requests that were provided on the
- /// command-line. Returns the number of errors that occurred.
- int process_commandline_directives (void);
-
- /// Process a static directive without also inserting its descriptor
- /// the global table. This avoids multiple additions when processing
- /// directives in non-global gestalts.
- int process_directive_i (const ACE_Static_Svc_Descriptor &ssd,
- bool force_replace = false);
-
-#if (ACE_USES_CLASSIC_SVC_CONF == 1)
- /// This is the implementation function that process_directives()
- /// and process_directive() both call. Returns the number of errors
- /// that occurred.
- int process_directives_i (ACE_Svc_Conf_Param *param);
-#else
- /// Helper function to dynamically link in the XML Service Configurator
- /// parser.
- ACE_XML_Svc_Conf* get_xml_svc_conf (ACE_DLL &d);
-#endif /* ACE_USES_CLASSIC_SVC_CONF == 1 */
-
- /// Dynamically link the shared object file and retrieve a pointer to
- /// the designated shared object in this file.
- int initialize_i (const ACE_Service_Type *sr, const ACE_TCHAR *parameters);
-
- const ACE_Static_Svc_Descriptor* find_processed_static_svc (const ACE_TCHAR*);
- void add_processed_static_svc (const ACE_Static_Svc_Descriptor *);
-
- /// Performs the common initialization tasks for a new or previously
- /// closed instance. Must not be virtual, as it is called from the
- /// constructor.
- int init_i (void);
-
-protected:
-
- // Maintain a queue of services to be configured from the
- // command-line.
- typedef ACE_Unbounded_Queue<ACE_TString> ACE_SVC_QUEUE;
- typedef ACE_Unbounded_Queue_Iterator<ACE_TString> ACE_SVC_QUEUE_ITERATOR;
-
- // Maintain a set of the statically linked service descriptors.
- typedef ACE_Unbounded_Set<ACE_Static_Svc_Descriptor *>
- ACE_STATIC_SVCS;
-
- typedef ACE_Unbounded_Set_Iterator<ACE_Static_Svc_Descriptor *>
- ACE_STATIC_SVCS_ITERATOR;
-
- typedef ACE_Unbounded_Set<Processed_Static_Svc *>
- ACE_PROCESSED_STATIC_SVCS;
-
- typedef ACE_Unbounded_Set_Iterator<Processed_Static_Svc *>
- ACE_PROCESSED_STATIC_SVCS_ITERATOR;
-
- friend class ACE_Dynamic_Service_Base;
- friend class ACE_Service_Object;
- friend class ACE_Service_Config;
- friend class ACE_Service_Config_Guard;
-
-protected:
-
- /// Do we own the service repository instance, or have only been
- /// given a ptr to the singleton?
- bool svc_repo_is_owned_;
-
- /// Repository size is necessary, so that we can close (which may
- /// destroy the repository instance), and then re-open again.
- size_t svc_repo_size_;
-
- /// Keep track of the number of times the instance has been
- /// initialized (opened). "If so, we can't allow <yyparse> to be called since
- /// it's not reentrant" is the original motivation, but that does not seem
- /// to be the case anymore. This variable is incremented by the
- /// <ACE_Service_Gestalt::open> method and decremented by the
- /// <ACE_Service_Gestalt::close> method.
- int is_opened_;
-
- /// Indicates where to write the logging output. This is typically
- /// either a STREAM pipe or a socket
- const ACE_TCHAR *logger_key_;
-
- /// Should we avoid loading the static services?
- bool no_static_svcs_;
-
- /// Queue of services specified on the command-line.
- ACE_SVC_QUEUE* svc_queue_;
-
- /** Queue of svc.conf files specified on the command-line.
- * @@ This should probably be made to handle unicode filenames...
- */
- ACE_SVC_QUEUE* svc_conf_file_queue_;
-
- /// The service repository to hold the services.
- ACE_Service_Repository* repo_;
-
- /// Repository of statically linked services.
- ACE_STATIC_SVCS* static_svcs_;
-
- /// Repository of statically linked services for which process
- /// directive was called, but the service is not already a member of
- /// the static_svcs_ list.
- ACE_PROCESSED_STATIC_SVCS* processed_static_svcs_;
-
- /// Support for intrusive reference counting
- ACE_Atomic_Op<ACE_SYNCH_MUTEX, long> refcnt_;
-
- public:
- static void intrusive_add_ref (ACE_Service_Gestalt*);
- static void intrusive_remove_ref (ACE_Service_Gestalt*);
-
-}; /* class ACE_Service_Gestalt */
-
-/**
- * @class ACE_Service_Type_Dynamic_Guard
- *
- * @brief A forward service declaration guard.
- *
- * Helps to resolve an issue with hybrid services, i.e. dynamic
- * services, accompanied by static services in the same DLL. Only
- * automatic instances of this class are supposed to exist. Those are
- * created during (dynamic) service initialization and serve to:
- *
- * (a) Ensure the service we are loading is ordered last in the
- * repository, following any other services it may cause to register,
- * as part of its own registration. This is a common case when
- * loading dynamic services from DLLs - there are often static
- * initializers, which register static services.
- *
- * (b) The SDG instance destructor detects if the dynamic service
- * initialized successfully and "fixes-up" all the newly registered
- * static services to hold a reference to the DLL, from which they
- * have originated.
- */
-class ACE_Export ACE_Service_Type_Dynamic_Guard
-{
-public:
- ACE_Service_Type_Dynamic_Guard (ACE_Service_Repository &r,
- ACE_TCHAR const *name);
-
- ~ACE_Service_Type_Dynamic_Guard (void);
-
-private:
- ACE_Service_Repository & repo_;
- size_t repo_begin_;
- ACE_TCHAR const * const name_;
-
-# if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
- ACE_Guard< ACE_Recursive_Thread_Mutex > repo_monitor_;
-#endif
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Service_Gestalt.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SERVICE_GESTALT_H */
-
diff --git a/dep/include/ace/Service_Gestalt.inl b/dep/include/ace/Service_Gestalt.inl
deleted file mode 100644
index 6a87d6794a9..00000000000
--- a/dep/include/ace/Service_Gestalt.inl
+++ /dev/null
@@ -1,74 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Service_Gestalt.inl 81388 2008-04-23 14:02:05Z johnnyw $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// This is the primary entry point into the ACE_Service_Config (the
-// constructor just handles simple initializations).
-
-ACE_INLINE int
-ACE_Service_Gestalt::open (const ACE_TCHAR program_name[],
- const ACE_TCHAR *logger_key,
- bool ignore_static_svcs,
- bool ignore_default_svc_conf,
- bool ignore_debug_flag)
-{
- ACE_TRACE ("ACE_Service_Gestalt::open");
- this->no_static_svcs_ = ignore_static_svcs;
-
- return this->open_i (program_name,
- logger_key,
- ignore_static_svcs,
- ignore_default_svc_conf,
- ignore_debug_flag);
-}
-
-ACE_INLINE int
-ACE_Service_Gestalt::open (int argc,
- ACE_TCHAR *argv[],
- const ACE_TCHAR *logger_key,
- bool ignore_static_svcs,
- bool ignore_default_svc_conf,
- bool ignore_debug_flag)
-{
- ACE_TRACE ("ACE_Service_Gestalt::open");
-
- this->no_static_svcs_ = ignore_static_svcs;
-
- if (this->parse_args_i (argc,
- argv,
- ignore_default_svc_conf) == -1)
- return -1;
-
- return this->open_i (argv == 0 ? 0 : argv[0],
- logger_key,
- ignore_static_svcs,
- ignore_default_svc_conf,
- ignore_debug_flag);
-}
-
-/// Searches for a service object declaration in the local repo, only
-
-ACE_INLINE int
-ACE_Service_Gestalt::find (const ACE_TCHAR name[],
- const ACE_Service_Type **srp,
- bool ignore_suspended) const
-{
- // Closing the gestalt will have disassociated it from the
- // repository. If the repository used to be owned by the gestalt, it
- // will also have been destroyed - so just check for repo_ before
- // doing anything with it.
- if (this->repo_ != 0)
- return this->repo_->find (name, srp, ignore_suspended);
-
- return 0;
-}
-
-ACE_INLINE ACE_Service_Repository*
-ACE_Service_Gestalt::current_service_repository (void)
-{
- return this->repo_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Service_Manager.h b/dep/include/ace/Service_Manager.h
deleted file mode 100644
index 8238da7ef78..00000000000
--- a/dep/include/ace/Service_Manager.h
+++ /dev/null
@@ -1,121 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Service_Manager.h
- *
- * $Id: Service_Manager.h 81388 2008-04-23 14:02:05Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SERVICE_MANAGER_H
-#define ACE_SERVICE_MANAGER_H
-#include /**/ "ace/pre.h"
-
-#include "ace/SOCK_Stream.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SOCK_Acceptor.h"
-#include "ace/INET_Addr.h"
-#include "ace/Service_Object.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Service_Manager
- *
- * @brief Provide a standard ACE service for managing all the services
- * configured in an ACE_Service_Repository.
- *
- * This implementation is simple and just handles each client
- * request one at a time. There are currently 3 types of requests:
- * - List services: If the string "help" is sent, return a list of all
- * the services supported by the Service Configurator.
- * - Reconfigure: If the string "reconfigure" is sent trigger a
- * reconfiguration, which will re-read the local <svc.conf> file.
- * - Process directive: If neither "help" nor "reconfigure" is sent,
- * simply treat the incoming string as a process directive and pass
- * it along to <ACE_Service_Config::process_directive>. This allows
- * remote configuration via command-line instructions like
- * % echo suspend My_Remote_Service | telnet hostname 3911
- *
- * Each request is associated with a new connection, which is closed
- * when the request is processed. In addition, you must be using the
- * singleton <ACE_Reactor::instance> in order to trigger
- * reconfigurations.
- */
-class ACE_Export ACE_Service_Manager : public ACE_Service_Object
-{
-public:
- // = Initialization and termination hooks.
- /// Constructor.
- ACE_Service_Manager (void);
-
- /// Destructor.
- virtual ~ACE_Service_Manager (void);
-
-protected:
- // = Perform the various meta-services.
-
- /// Trigger a reconfiguration of the Service Configurator by
- /// re-reading its local <svc.conf> file.
- virtual int reconfigure_services (void);
-
- /// Determine all the services offered by this daemon and return the
- /// information back to the client.
- virtual int list_services (void);
-
- // = Dynamic linking hooks.
- virtual int init (int argc, ACE_TCHAR *argv[]);
- virtual int info (ACE_TCHAR **info_string, size_t length) const;
- virtual int fini (void);
-
- // = Scheduling hooks.
- virtual int suspend (void);
- virtual int resume (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- int open (const ACE_INET_Addr &sia);
-
- // = Demultiplexing hooks.
- virtual ACE_HANDLE get_handle (void) const;
- virtual int handle_input (ACE_HANDLE fd);
- virtual int handle_close (ACE_HANDLE fd, ACE_Reactor_Mask);
- virtual int handle_signal (int signum, siginfo_t *, ucontext_t *);
-
- /// Handle one request.
- virtual void process_request (ACE_TCHAR *request);
-
- /// Connection to the client (we only support one client connection
- /// at a time).
- ACE_SOCK_Stream client_stream_;
-
- /// Acceptor instance.
- ACE_SOCK_Acceptor acceptor_;
-
- /// Keep track whether we debug or not.
- bool debug_;
-
- /// The signal used to trigger reconfiguration.
- int signum_;
-
- /// Default port for the Acceptor to listen on.
- static u_short DEFAULT_PORT_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* _SERVICE_MANAGER_H */
-
diff --git a/dep/include/ace/Service_Object.h b/dep/include/ace/Service_Object.h
deleted file mode 100644
index fd69ba76f17..00000000000
--- a/dep/include/ace/Service_Object.h
+++ /dev/null
@@ -1,208 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Service_Object.h
- *
- * $Id: Service_Object.h 81388 2008-04-23 14:02:05Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SERVICE_OBJECT_H
-#define ACE_SERVICE_OBJECT_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Shared_Object.h"
-#include "ace/Svc_Conf_Tokens.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Event_Handler.h"
-#include "ace/DLL.h"
-
-#include "ace/Service_Gestalt.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#define ACE_Component ACE_Service_Object
-
-/**
- * @class ACE_Service_Object
- *
- * @brief Provide the abstract base class common to all service
- * implementations.
- *
- * Classes that inherit from ACE_Service_Objects are capable
- * of being registered with the ACE_Reactor (due to the
- * ACE_Event_Handler, as well as being dynamically linked by
- * the ACE_Service_Config (due to the ACE_Shared_Object).
- */
-class ACE_Export ACE_Service_Object
- : public ACE_Event_Handler,
- public ACE_Shared_Object
-{
-public:
- // = Initialization and termination methods.
- /// Constructor.
- ACE_Service_Object (ACE_Reactor * = 0);
-
- /// Destructor.
- virtual ~ACE_Service_Object (void);
-
- /// Temporarily disable a service without removing it completely.
- virtual int suspend (void);
-
- /// Re-enable a previously suspended service.
- virtual int resume (void);
-};
-
-// Forward decl.
-class ACE_Service_Type_Impl;
-
-/**
- * @class ACE_Service_Type
- *
- * @brief Keeps track of information related to the various
- * ACE_Service_Type_Impl subclasses.
- *
- * This class acts as the interface of the "Bridge" pattern.
- */
-class ACE_Export ACE_Service_Type
-{
-public:
- enum
- {
- /// Delete the payload object.
- DELETE_OBJ = 1,
-
- /// Delete the enclosing object.
- DELETE_THIS = 2
- };
-
- enum
- {
- SERVICE_OBJECT = ACE_SVC_OBJ_T,
- MODULE = ACE_MODULE_T,
- STREAM = ACE_STREAM_T,
- INVALID_TYPE = -1
- };
-
- // = Initialization and termination methods.
- ACE_Service_Type (const ACE_TCHAR *n,
- ACE_Service_Type_Impl *o,
- const ACE_DLL &dll,
- bool active);
- ACE_Service_Type (const ACE_TCHAR *n,
- ACE_Service_Type_Impl *o,
- ACE_SHLIB_HANDLE handle,
- bool active);
- ~ACE_Service_Type (void);
-
- const ACE_TCHAR *name (void) const;
- void name (const ACE_TCHAR *);
-
- const ACE_Service_Type_Impl *type (void) const;
- void type (const ACE_Service_Type_Impl *, bool active = true);
-
- /// Is this just a stub for the real thing?
- bool is_forward_declaration (void) const;
-
- int suspend (void) const;
- int resume (void) const;
- bool active (void) const;
- void active (bool turnon);
-
- /// Calls <fini> on <type_>
- int fini (void);
-
- /// Check if the service has been fini'ed.
- bool fini_called (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Get to the DLL's implentation
- const ACE_DLL & dll (void) const;
-
- /// Sets the DLL
- void dll (const ACE_DLL&);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Humanly readible name of svc.
- const ACE_TCHAR *name_;
-
- /// Pointer to C++ object that implements the svc.
- const ACE_Service_Type_Impl *type_;
-
- /// ACE_DLL representing the shared object file (non-zero if
- /// dynamically linked).
- mutable ACE_DLL dll_;
-
- /// true if svc is currently active, otherwise false.
- bool active_;
-
- /// true if <fini> on <type_> has already been called, otherwise false.
- bool fini_already_called_;
-};
-
-/**
- * @class ACE_Service_Object_Ptr
- *
- * @brief This is a smart pointer that holds onto the associated
- * ACE_Service_Object * until the current scope is left, at
- * which point the object's <fini> hook is called and the
- * service_object_ gets deleted.
- *
- * This class is similar to the Standard C++ Library class
- * <auto_ptr>. It is used in conjunction with statically linked
- * <ACE_Service_Objects>, as shown in the
- * ./netsvcs/server/main.cpp example.
- */
-class ACE_Export ACE_Service_Object_Ptr
-{
-public:
- // = Initialization and termination methods.
- /// Acquire ownership of the @a so.
- ACE_Service_Object_Ptr (ACE_Service_Object *so);
-
- /// Release the held ACE_Service_Object by calling its <fini> hook.
- ~ACE_Service_Object_Ptr (void);
-
- /// Smart pointer to access the underlying ACE_Service_Object.
- ACE_Service_Object *operator-> ();
-
-private:
- /// Holds the service object until we're done.
- ACE_Service_Object *service_object_;
-};
-
-#if defined (ACE_OPENVMS)
-/**
- * @class ACE_Dynamic_Svc_Registrar
- *
- * @brief Used to register Service allocator function by its full name.
- */
-class ACE_Dynamic_Svc_Registrar
-{
-public:
- ACE_Dynamic_Svc_Registrar (const ACE_TCHAR* alloc_name,
- void* svc_allocator);
-};
-#endif
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Service_Object.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SERVICE_OBJECT_H */
-
diff --git a/dep/include/ace/Service_Object.inl b/dep/include/ace/Service_Object.inl
deleted file mode 100644
index 6283f3e9981..00000000000
--- a/dep/include/ace/Service_Object.inl
+++ /dev/null
@@ -1,79 +0,0 @@
-// -*- C++ -*-
-// $Id: Service_Object.inl 81388 2008-04-23 14:02:05Z johnnyw $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ACE_Service_Object_Ptr::ACE_Service_Object_Ptr (ACE_Service_Object *so)
- : service_object_ (so)
-{
-}
-
-ACE_INLINE ACE_Service_Object_Ptr::~ACE_Service_Object_Ptr (void)
-{
- this->service_object_->fini ();
- delete this->service_object_;
-}
-
-ACE_INLINE ACE_Service_Object *
-ACE_Service_Object_Ptr::operator-> ()
-{
- return this->service_object_;
-}
-
-ACE_INLINE const ACE_TCHAR *
-ACE_Service_Type::name (void) const
-{
- ACE_TRACE ("ACE_Service_Type::name");
- return this->name_;
-}
-
-ACE_INLINE const ACE_Service_Type_Impl *
-ACE_Service_Type::type (void) const
-{
- ACE_TRACE ("ACE_Service_Type::type");
- return this->type_;
-}
-
-ACE_INLINE void
-ACE_Service_Type::type (const ACE_Service_Type_Impl *o, bool enabled)
-{
- ACE_TRACE ("ACE_Service_Type::type");
- this->type_ = o;
- ((ACE_Service_Type *) this)->active_ = enabled;
-}
-
-ACE_INLINE bool
-ACE_Service_Type::active (void) const
-{
- ACE_TRACE ("ACE_Service_Type::active");
- return this->active_;
-}
-
-ACE_INLINE void
-ACE_Service_Type::active (bool turnon)
-{
- ACE_TRACE ("ACE_Service_Type::active");
- this->active_ = turnon;
-}
-
-ACE_INLINE bool
-ACE_Service_Type::fini_called (void) const
-{
- ACE_TRACE ("ACE_Service_Type::fini_called");
- return this->fini_already_called_;
-}
-
-ACE_INLINE const ACE_DLL & ACE_Service_Type::dll () const
-{
- ACE_TRACE ("ACE_Service_Type::dll");
- return this->dll_;
-}
-
-ACE_INLINE void ACE_Service_Type::dll (const ACE_DLL &adll)
-{
- ACE_TRACE ("ACE_Service_Type::dll");
- this->dll_ = adll;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
diff --git a/dep/include/ace/Service_Repository.h b/dep/include/ace/Service_Repository.h
deleted file mode 100644
index 99bca07e8fb..00000000000
--- a/dep/include/ace/Service_Repository.h
+++ /dev/null
@@ -1,280 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Service_Repository.h
- *
- * $Id: Service_Repository.h 81388 2008-04-23 14:02:05Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SERVICE_REPOSITORY_H
-#define ACE_SERVICE_REPOSITORY_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Default_Constants.h"
-#include "ace/Recursive_Thread_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Service_Type;
-class ACE_DLL;
-
-#define ACE_Component_Repository ACE_Service_Repository
-/**
- * @class ACE_Service_Repository
- *
- * @brief Contains all the services offered by a Service
- * Configurator-based application.
- *
- * This class contains a vector of <ACE_Service_Types> *'s and
- * allows an administrative entity to centrally manage and
- * control the behavior of application services. Note that if
- * services are removed from the middle of the repository the
- * order won't necessarily be maintained since the <remove>
- * method performs compaction. However, the common case is not
- * to remove services, so typically they are deleted in the
- * reverse order that they were added originally.
- */
-class ACE_Export ACE_Service_Repository
-{
-public:
- friend class ACE_Service_Repository_Iterator;
-
- enum
- {
- DEFAULT_SIZE = ACE_DEFAULT_SERVICE_REPOSITORY_SIZE
- };
-
- // = Initialization and termination methods.
- /// Initialize the repository.
- ACE_Service_Repository (void);
-
- /// Initialize the repository.
- ACE_Service_Repository (size_t size);
-
- /// Initialize the repository.
- int open (size_t size = DEFAULT_SIZE);
-
- /// Close down the repository and free up dynamically allocated
- /// resources.
- ~ACE_Service_Repository (void);
-
- /// Close down the repository and free up dynamically allocated
- /// resources.
- int close (void);
-
- /// Finalize all the services by calling <fini> and deleting
- /// dynamically allocated services.
- int fini (void);
-
- /// Get pointer to a process-wide ACE_Service_Repository.
- static ACE_Service_Repository * instance
- (size_t size = ACE_Service_Repository::DEFAULT_SIZE);
-
- /// Set pointer to a process-wide ACE_Service_Repository and return
- /// existing pointer.
- static ACE_Service_Repository *instance (ACE_Service_Repository *);
-
- /// Delete the dynamically allocated Singleton.
- static void close_singleton (void);
-
- // = Search structure operations (all acquire locks as necessary).
-
- /// Insert a new service record. Returns -1 when the service repository
- /// is full and 0 on success.
- int insert (const ACE_Service_Type *);
-
- /**
- * Locate a named entry in the service table, optionally ignoring
- * suspended entries.
- *
- * @param service_name The name of the service to search for.
- * @param srp Optional; if not 0, it is a pointer to a location
- * to receive the ACE_Service_Type pointer for the
- * located service. Meaningless if this method
- * returns -1.
- * @param ignore_suspended If true, the search ignores suspended services.
- *
- * @retval 0 Named service was located.
- * @retval -1 Named service was not found.
- * @retval -2 Named service was found, but is suspended and
- * @a ignore_suspended is true.
- */
- int find (const ACE_TCHAR name[],
- const ACE_Service_Type **srp = 0,
- bool ignore_suspended = true) const;
-
- /// Remove an existing service record. If @a sr == 0, the service record
- /// is deleted before control is returned to the caller. If @a sr != 0,
- /// the service's record is removed from the repository, but not deleted;
- /// *sr receives the service record pointer and the caller is responsible
- /// for properly disposing of it.
- int remove (const ACE_TCHAR[], ACE_Service_Type **sr = 0);
-
- // = Liveness control
- /// Resume a service record.
- int resume (const ACE_TCHAR[], const ACE_Service_Type ** = 0);
-
- /// Suspend a service record.
- int suspend (const ACE_TCHAR[], const ACE_Service_Type ** = 0);
-
- /// Return the current size of the repository.
- size_t current_size (void) const;
-
- /// Return the total size of the repository.
- size_t total_size (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-
- friend class ACE_Service_Type_Dynamic_Guard;
-
- /// Remove an existing service record. It requires @a sr != 0, which
- /// receives the service record pointer and the caller is
- /// responsible for properly disposing of it.
- int remove_i (const ACE_TCHAR[], ACE_Service_Type **sr);
-
- /**
- * Locate a named entry in the service table, optionally ignoring
- * suspended entries.
- *
- * @param service_name The name of the service to search for.
- * @param slot Receives the position index of the service if it
- * is found. Contents are meaningless if this method
- * returns -1.
- * @param srp Optional; if not 0, it is a pointer to a location
- * to receive the ACE_Service_Type pointer for the
- * located service. Meaningless if this method
- * returns -1.
- * @param ignore_suspended If true, the search ignores suspended services.
- *
- * @retval 0 Named service was located; index in the table is set in
- * @a slot.
- * @retval -1 Named service was not found.
- * @retval -2 Named service was found, but is suspended and
- * @a ignore_suspended is true.
- */
- int find_i (const ACE_TCHAR service_name[],
- size_t &slot,
- const ACE_Service_Type **srp = 0,
- bool ignore_suspended = true) const;
-
- /// @brief Relocate (static) services to another DLL.
- ///
- /// If any have been registered in the context of a "forward
- /// declaration" guard, those really aren't static services. Their
- /// code is in the DLL's code segment, or in one of the dependent
- /// DLLs. Therefore, such services need to be associated with the
- /// proper DLL in order to prevent failures upon finalization. The
- /// method locks the repo.
- ///
- /// Works by having the service type keep a reference to a specific
- /// DLL. No locking, caller makes sure calling it is safe. You can
- /// forcefully relocate any DLLs in the given range, not only the
- /// static ones - but that will cause Very Bad Things (tm) to happen.
-
- int relocate_i (size_t begin,
- size_t end,
- const ACE_DLL &adll);
-
- /// Contains all the configured services.
- const ACE_Service_Type **service_vector_;
-
- /// Current number of services.
- size_t current_size_;
-
- /// Maximum number of services.
- size_t total_size_;
-
- /// Pointer to a process-wide ACE_Service_Repository.
- static ACE_Service_Repository *svc_rep_;
-
- /// Must delete the <svc_rep_> if true.
- static bool delete_svc_rep_;
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
- /// Synchronization variable for the MT_SAFE Repository
- mutable ACE_Recursive_Thread_Mutex lock_;
-#endif /* ACE_MT_SAFE */
-};
-
-/**
- * @class ACE_Service_Repository_Iterator
- *
- * @brief Iterate through the ACE_Service_Repository.
- *
- * Make sure not to delete entries as the iteration is going on
- * since this class is not designed as a robust iterator.
- */
-class ACE_Export ACE_Service_Repository_Iterator
-{
-public:
- // = Initialization and termination methods.
- /// Constructor initializes the iterator.
- ACE_Service_Repository_Iterator (ACE_Service_Repository &sr,
- int ignored_suspended = 1);
-
- /// Destructor.
- ~ACE_Service_Repository_Iterator (void);
-
-public:
- // = Iteration methods.
-
- /// Pass back the <next_item> that hasn't been seen in the repository.
- /// Returns 0 when all items have been seen, else 1.
- int next (const ACE_Service_Type *&next_item);
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Move forward by one element in the repository. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- bool valid (void) const;
-
-private:
- ACE_Service_Repository_Iterator (const ACE_Service_Repository_Iterator&);
-
- /// Reference to the Service Repository we are iterating over.
- ACE_Service_Repository &svc_rep_;
-
- /// Next index location that we haven't yet seen.
- size_t next_;
-
- /// Are we ignoring suspended services?
- bool ignore_suspended_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Service_Repository.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* _SERVICE_REPOSITORY_H */
-
diff --git a/dep/include/ace/Service_Repository.inl b/dep/include/ace/Service_Repository.inl
deleted file mode 100644
index 621c837ef53..00000000000
--- a/dep/include/ace/Service_Repository.inl
+++ /dev/null
@@ -1,51 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Service_Repository.inl 80826 2008-03-04 14:51:23Z wotte $
-
-// Returns a count of the number of currently valid entries (counting
-// both resumed and suspended entries).
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
-#include "ace/Guard_T.h"
-#include "ace/Thread_Mutex.h"
-#endif /* ACE_MT_SAFE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE size_t
-ACE_Service_Repository::current_size (void) const
-{
- ACE_TRACE ("ACE_Service_Repository::current_size");
- ACE_MT (ACE_GUARD_RETURN (ACE_Recursive_Thread_Mutex,
- ace_mon,
- (ACE_Recursive_Thread_Mutex &) this->lock_, 0));
- return this->current_size_;
-}
-
-// Returns a count of the total number of possible entries in the
-// table.
-
-ACE_INLINE size_t
-ACE_Service_Repository::total_size (void) const
-{
- ACE_TRACE ("ACE_Service_Repository::total_size");
- ACE_MT (ACE_GUARD_RETURN (ACE_Recursive_Thread_Mutex,
- ace_mon,
- (ACE_Recursive_Thread_Mutex &) this->lock_, 0));
- return this->total_size_;
-}
-
-ACE_INLINE int
-ACE_Service_Repository_Iterator::done (void) const
-{
- ACE_TRACE ("ACE_Service_Repository_Iterator::done");
-
- return this->next_ >= this->svc_rep_.current_size_;
-}
-
-ACE_INLINE
-ACE_Service_Repository_Iterator::~ACE_Service_Repository_Iterator (void)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Service_Templates.h b/dep/include/ace/Service_Templates.h
deleted file mode 100644
index 9262a51ffc8..00000000000
--- a/dep/include/ace/Service_Templates.h
+++ /dev/null
@@ -1,29 +0,0 @@
-
-//=============================================================================
-/**
- * @file Service_Templates.h
- *
- * $Id: Service_Templates.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Priyanka Gontla <pgontla@ece.uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SERVICE_TEMPLATES_H
-#define ACE_SERVICE_TEMPLATES_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Svc_Conf.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Auto_Ptr.h"
-#include "ace/Thread_Manager.h"
-#include "ace/Stream_Modules.h"
-#include "ace/Stream.h"
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SERVICE_TEMPLATES_H */
-
diff --git a/dep/include/ace/Service_Types.h b/dep/include/ace/Service_Types.h
deleted file mode 100644
index e7ab9874ac2..00000000000
--- a/dep/include/ace/Service_Types.h
+++ /dev/null
@@ -1,207 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Service_Types.h
- *
- * $Id: Service_Types.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_SERVICE_TYPE_H
-#define ACE_SERVICE_TYPE_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Service_Object.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Service_Type_Impl
- *
- * @brief The abstract base class of the hierarchy that defines the
- * contents of the ACE_Service_Repository. The subclasses of
- * this class allow the configuration of ACE_Service_Objects,
- * ACE_Modules, and ACE_Streams.
- *
- * This class provides the root of the implementation hierarchy
- * of the "Bridge" pattern. It maintains a pointer to the
- * appropriate type of service implementation, i.e.,
- * ACE_Service_Object, ACE_Module, or ACE_Stream.
- */
-class ACE_Export ACE_Service_Type_Impl
-{
-public:
- // = Initialization and termination methods.
- ACE_Service_Type_Impl (void *object,
- const ACE_TCHAR *s_name,
- u_int flags = 0,
- ACE_Service_Object_Exterminator gobbler = 0);
- virtual ~ACE_Service_Type_Impl (void);
-
- // = Pure virtual interface (must be defined by the subclass).
- virtual int suspend (void) const = 0;
- virtual int resume (void) const = 0;
- virtual int init (int argc, ACE_TCHAR *argv[]) const = 0;
- virtual int fini (void) const;
- virtual int info (ACE_TCHAR **str, size_t len) const = 0;
-
- /// The pointer to the service.
- void *object (void) const;
-
- /// Get the name of the service.
- const ACE_TCHAR *name (void) const;
-
- /// Set the name of the service.
- void name (const ACE_TCHAR *);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Name of the service.
- const ACE_TCHAR *name_;
-
- /// Pointer to object that implements the service. This actually
- /// points to an ACE_Service_Object, ACE_Module, or ACE_Stream.
- void *obj_;
-
- /// Destroy function to deallocate obj_.
- ACE_Service_Object_Exterminator gobbler_;
-
- /// Flags that control serivce behavior (particularly deletion).
- u_int flags_;
-};
-
-/**
- * @class ACE_Service_Object_Type
- *
- * @brief Define the methods for handling the configuration of
- * ACE_Service_Objects.
- */
-class ACE_Export ACE_Service_Object_Type : public ACE_Service_Type_Impl
-{
-public:
- // = Initialization method.
- ACE_Service_Object_Type (void *so,
- const ACE_TCHAR *name,
- u_int flags = 0,
- ACE_Service_Object_Exterminator gobbler = 0);
-
- ~ACE_Service_Object_Type (void);
-
- // = Implement the hooks for <ACE_Service_Objects>.
- virtual int suspend (void) const;
- virtual int resume (void) const;
- virtual int init (int argc, ACE_TCHAR *argv[]) const;
- virtual int fini (void) const;
- virtual int info (ACE_TCHAR **str, size_t len) const;
-
-private:
- /// Holds the initialization status (result of object->init())
- mutable int initialized_;
-};
-
-/**
- * @class ACE_Module_Type
- *
- * @brief Define the methods for handling the configuration of
- * ACE_Modules.
- */
-class ACE_Export ACE_Module_Type : public ACE_Service_Type_Impl
-{
-public:
- // = Initialization method.
- ACE_Module_Type (void *m, // Really an ACE_Module *.
- const ACE_TCHAR *identifier,
- u_int flags = 0);
-
- ~ACE_Module_Type (void);
-
- // = Implement the hooks for <ACE_Modules>.
- virtual int suspend (void) const;
- virtual int resume (void) const;
- virtual int init (int argc, ACE_TCHAR *argv[]) const;
- virtual int fini (void) const;
- virtual int info (ACE_TCHAR **str, size_t len) const;
-
- /// Get the link pointer.
- ACE_Module_Type *link (void) const;
-
- /// Set the link pointer.
- void link (ACE_Module_Type *);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Pointer to the next ACE_Module_Type in an ACE_Stream_Type.
- ACE_Module_Type *link_;
-};
-
-/**
- * @class ACE_Stream_Type
- *
- * @brief Define the methods for handling the configuration of
- * ACE_Streams.
- */
-class ACE_Export ACE_Stream_Type : public ACE_Service_Type_Impl
-{
-public:
- // = Initialization method.
- ACE_Stream_Type (void *s, // Really an ACE_Stream *.
- const ACE_TCHAR *identifier,
- u_int flags = 0);
-
- ~ACE_Stream_Type (void);
-
- // = Implement the hooks for <ACE_Streams>.
- virtual int suspend (void) const;
- virtual int resume (void) const;
- virtual int init (int argc, ACE_TCHAR *argv[]) const;
- virtual int fini (void) const;
- virtual int info (ACE_TCHAR **str, size_t len) const;
-
- /// Add a new ACE_Module to the top of the ACE_Stream.
- int push (ACE_Module_Type *new_module);
-
- /// Search for @a module and remove it from the ACE_Stream.
- int remove (ACE_Module_Type *module);
-
- /// Locate the ACE_Module with @a mod_name.
- ACE_Module_Type *find (const ACE_TCHAR *mod_name) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Pointer to the head of the ACE_Module list.
- ACE_Module_Type *head_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Service_Types.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* _SERVICE_TYPE_H */
-
diff --git a/dep/include/ace/Service_Types.inl b/dep/include/ace/Service_Types.inl
deleted file mode 100644
index f7f93591562..00000000000
--- a/dep/include/ace/Service_Types.inl
+++ /dev/null
@@ -1,32 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Service_Types.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/ACE.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE void *
-ACE_Service_Type_Impl::object (void) const
-{
- ACE_TRACE ("ACE_Service_Type_Impl::object");
- return this->obj_;
-}
-
-ACE_INLINE const ACE_TCHAR *
-ACE_Service_Type_Impl::name (void) const
-{
- ACE_TRACE ("ACE_Service_Type_Impl::name");
- return this->name_;
-}
-
-ACE_INLINE void
-ACE_Service_Type_Impl::name (const ACE_TCHAR *n)
-{
- ACE_TRACE ("ACE_Service_Type_Impl::name");
-
- ACE::strdelete (const_cast<ACE_TCHAR*> (this->name_));
- this->name_ = ACE::strnew (n);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Shared_Memory.h b/dep/include/ace/Shared_Memory.h
deleted file mode 100644
index af2060d5b1d..00000000000
--- a/dep/include/ace/Shared_Memory.h
+++ /dev/null
@@ -1,58 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Shared_Memory.h
- *
- * $Id: Shared_Memory.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//==========================================================================
-
-#ifndef ACE_SHARED_MEMORY_H
-#define ACE_SHARED_MEMORY_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#include "ace/os_include/os_stddef.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Shared_Memory
- *
- * @brief This base class adapts both System V shared memory and "BSD"
- * mmap to a common API.
- *
- * This is a very simple-minded wrapper, i.e., it really is only
- * useful for allocating large contiguous chunks of shared
- * memory. For a much more sophisticated version, please check
- * out the <ACE_Malloc> class.
- */
-class ACE_Export ACE_Shared_Memory
-{
-public:
- virtual ~ACE_Shared_Memory (void);
-
- // = Note that all the following methods are pure virtual.
- virtual int close (void) = 0;
- virtual int remove (void) = 0;
- virtual void *malloc (size_t = 0) = 0;
- virtual int free (void *p) = 0;
- virtual size_t get_segment_size (void) const = 0;
- virtual ACE_HANDLE get_id (void) const = 0;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SHARED_MEMORY_H */
-
diff --git a/dep/include/ace/Shared_Memory_MM.h b/dep/include/ace/Shared_Memory_MM.h
deleted file mode 100644
index 2a2d92afed5..00000000000
--- a/dep/include/ace/Shared_Memory_MM.h
+++ /dev/null
@@ -1,120 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Shared_Memory_MM.h
- *
- * $Id: Shared_Memory_MM.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SHARED_MALLOC_MM_H
-#define ACE_SHARED_MALLOC_MM_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Shared_Memory.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Mem_Map.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Shared_Memory_MM
- *
- * @brief Shared memory wrapper based on MMAP.
- *
- * This class provides a very simple-minded shared memory manager. We
- * strongly recommend that you do NOT use this class. Instead, please
- * use @c ACE_Malloc, which has much more powerful capabilities.
- */
-class ACE_Export ACE_Shared_Memory_MM : public ACE_Shared_Memory
-{
-public:
- // = Initialization and termination methods.
- /// Default constructor.
- ACE_Shared_Memory_MM (void);
-
- /// Constructor.
- ACE_Shared_Memory_MM (ACE_HANDLE handle,
- size_t length = static_cast<size_t> (-1),
- int prot = PROT_RDWR,
- int share = ACE_MAP_PRIVATE,
- char *addr = 0,
- ACE_OFF_T pos = 0);
-
- /// Constructor.
- ACE_Shared_Memory_MM (const ACE_TCHAR *file_name,
- size_t length = static_cast<size_t> (-1),
- int flags = O_RDWR | O_CREAT,
- int mode = ACE_DEFAULT_FILE_PERMS,
- int prot = PROT_RDWR,
- int share = ACE_MAP_SHARED,
- char *addr = 0, ACE_OFF_T pos = 0);
-
- /// Open method.
- int open (ACE_HANDLE handle,
- size_t length = static_cast<size_t> (-1),
- int prot = PROT_RDWR,
- int share = ACE_MAP_PRIVATE,
- char *addr = 0,
- ACE_OFF_T pos = 0);
-
- /// Open method.
- int open (const ACE_TCHAR *file_name,
- size_t length = static_cast<size_t> (-1),
- int flags = O_RDWR | O_CREAT,
- int mode = ACE_DEFAULT_FILE_PERMS,
- int prot = PROT_RDWR,
- int share = ACE_MAP_SHARED,
- char *addr = 0,
- ACE_OFF_T pos = 0);
-
- /// Return the name of file that is mapped (if any).
- const ACE_TCHAR *filename (void) const;
-
- /// Close down the shared memory segment.
- virtual int close (void);
-
- /// Remove the shared memory segment and the underlying file.
- virtual int remove (void);
-
- // = Allocation and deallocation methods.
- /// Create a new chuck of memory containing @a size bytes.
- virtual void *malloc (size_t size = 0);
-
- /// Free a chuck of memory allocated by
- /// <ACE_Shared_Memory_MM::malloc>.
- virtual int free (void *p);
-
- /// Return the size of the shared memory segment.
- virtual size_t get_segment_size (void) const;
-
- /// Return the ID of the shared memory segment (i.e., an ACE_HANDLE).
- virtual ACE_HANDLE get_id (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// This version is implemented with memory-mapped files.
- ACE_Mem_Map shared_memory_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Shared_Memory_MM.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SHARED_MALLOC_MM_H */
-
diff --git a/dep/include/ace/Shared_Memory_MM.inl b/dep/include/ace/Shared_Memory_MM.inl
deleted file mode 100644
index 6e1f4b76616..00000000000
--- a/dep/include/ace/Shared_Memory_MM.inl
+++ /dev/null
@@ -1,42 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Shared_Memory_MM.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Return the name of file that is mapped (if any).
-
-ACE_INLINE const ACE_TCHAR *
-ACE_Shared_Memory_MM::filename (void) const
-{
- return this->shared_memory_.filename ();
-}
-
-ACE_INLINE int
-ACE_Shared_Memory_MM::open (ACE_HANDLE handle,
- size_t length,
- int prot,
- int share,
- char *addr,
- ACE_OFF_T pos)
-{
- ACE_TRACE ("ACE_Shared_Memory_MM::open");
- return shared_memory_.map (handle, length, prot, share, addr, pos);
-}
-
-ACE_INLINE int
-ACE_Shared_Memory_MM::open (const ACE_TCHAR *file_name,
- size_t len,
- int flags,
- int mode,
- int prot,
- int share,
- char *addr,
- ACE_OFF_T pos)
-{
- ACE_TRACE ("ACE_Shared_Memory_MM::open");
- return shared_memory_.map (file_name, len, flags, mode,
- prot, share, addr, pos);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Shared_Memory_Pool.h b/dep/include/ace/Shared_Memory_Pool.h
deleted file mode 100644
index ea1a5e7d3c6..00000000000
--- a/dep/include/ace/Shared_Memory_Pool.h
+++ /dev/null
@@ -1,211 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Shared_Memory_Pool.h
- *
- * $Id: Shared_Memory_Pool.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Dougls C. Schmidt <schmidt@cs.wustl.edu>
- * @author Prashant Jain <pjain@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SHARED_MEMORY_POOL_H
-#define ACE_SHARED_MEMORY_POOL_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_SYSV_SHMEM)
-
-#include "ace/ACE.h"
-#include "ace/Event_Handler.h"
-#include "ace/Sig_Handler.h"
-#include "ace/os_include/sys/os_mman.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Shared_Memory_Pool_Options
- *
- * @brief Helper class for Shared Memory Pool constructor options.
- *
- * This should be a nested class, but that breaks too many
- * compilers.
- */
-class ACE_Export ACE_Shared_Memory_Pool_Options
-{
-public:
- /// Initialization method.
- ACE_Shared_Memory_Pool_Options (
- const char *base_addr = ACE_DEFAULT_BASE_ADDR,
- size_t max_segments = ACE_DEFAULT_MAX_SEGMENTS,
- size_t file_perms = ACE_DEFAULT_FILE_PERMS,
- ACE_OFF_T minimum_bytes = 0,
- size_t segment_size = ACE_DEFAULT_SEGMENT_SIZE);
-
- /// Base address of the memory-mapped backing store.
- const char *base_addr_;
-
- /// Number of shared memory segments to allocate.
- size_t max_segments_;
-
- /// What the minimum bytes of the initial segment should be.
- ACE_OFF_T minimum_bytes_;
-
- /// File permissions to use when creating/opening a segment.
- size_t file_perms_;
-
- /// Shared memory segment size.
- size_t segment_size_;
-};
-
-/**
- * @class ACE_Shared_Memory_Pool
- *
- * @brief Make a memory pool that is based on System V shared memory
- * (shmget(2) etc.). This implementation allows memory to be
- * shared between processes. If your platform doesn't support
- * System V shared memory (e.g., Win32 and many RTOS platforms
- * do not) then you should use ACE_MMAP_Memory_Pool instead of this
- * class. In fact, you should probably use ACE_MMAP_Memory_Pool on
- * platforms that *do* support System V shared memory since it
- * provides more powerful features, such as persistent backing store
- * and greatly scalability.
- */
-class ACE_Export ACE_Shared_Memory_Pool : public ACE_Event_Handler
-{
-public:
- typedef ACE_Shared_Memory_Pool_Options OPTIONS;
-
- /// Initialize the pool.
- ACE_Shared_Memory_Pool (const ACE_TCHAR *backing_store_name = 0,
- const OPTIONS *options = 0);
-
- virtual ~ACE_Shared_Memory_Pool (void);
-
- /// Ask system for initial chunk of local memory.
- virtual void *init_acquire (size_t nbytes,
- size_t &rounded_bytes,
- int &first_time);
-
- /**
- * Acquire at least @a nbytes from the memory pool. @a rounded_byes is
- * the actual number of bytes allocated. Also acquires an internal
- * semaphore that ensures proper serialization of Memory_Pool
- * initialization across processes.
- */
- virtual void *acquire (size_t nbytes,
- size_t &rounded_bytes);
-
- /// Instruct the memory pool to release all of its resources.
- virtual int release (int destroy = 1);
-
- /// Sync the memory region to the backing store starting at
- /// @c this->base_addr_.
- virtual int sync (ssize_t len = -1, int flags = MS_SYNC);
-
- /// Sync the memory region to the backing store starting at @a addr.
- virtual int sync (void *addr, size_t len, int flags = MS_SYNC);
-
- /**
- * Change the protection of the pages of the mapped region to @a prot
- * starting at @c this->base_addr_ up to @a len bytes. If @a len == -1
- * then change protection of all pages in the mapped region.
- */
- virtual int protect (ssize_t len = -1, int prot = PROT_RDWR);
-
- /// Change the protection of the pages of the mapped region to @a prot
- /// starting at @a addr up to @a len bytes.
- virtual int protect (void *addr, size_t len, int prot = PROT_RDWR);
-
- /// Return the base address of this memory pool, 0 if base_addr
- /// never changes.
- virtual void *base_addr (void) const;
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Implement the algorithm for rounding up the request to an
- /// appropriate chunksize.
- virtual size_t round_up (size_t nbytes);
-
- /**
- * Commits a new shared memory segment if necessary after an
- * <acquire> or a signal. @a offset is set to the new offset into
- * the backing store.
- */
- virtual int commit_backing_store_name (size_t rounded_bytes,
- ACE_OFF_T &offset);
-
- /// Keeps track of all the segments being used.
- struct SHM_TABLE
- {
- /// Shared memory segment key.
- key_t key_;
-
- /// Shared memory segment internal id.
- int shmid_;
-
- /// Is the segment currently used.;
- int used_;
- };
-
- /**
- * Base address of the shared memory segment. If this has the value
- * of 0 then the OS is free to select any address, otherwise this
- * value is what the OS must try to use to map the shared memory
- * segment.
- */
- void *base_addr_;
-
- /// File permissions to use when creating/opening a segment.
- size_t file_perms_;
-
- /// Number of shared memory segments in the <SHM_TABLE> table.
- size_t max_segments_;
-
- /// What the minimim bytes of the initial segment should be.
- ACE_OFF_T minimum_bytes_;
-
- /// Shared memory segment size.
- size_t segment_size_;
-
- /// Base shared memory key for the segment.
- key_t base_shm_key_;
-
- /// Find the segment that contains the @a searchPtr
- virtual int find_seg (const void *const searchPtr,
- ACE_OFF_T &offset,
- size_t &counter);
-
- /// Determine how much memory is currently in use.
- virtual int in_use (ACE_OFF_T &offset,
- size_t &counter);
-
- /// Handles SIGSEGV.
- ACE_Sig_Handler signal_handler_;
-
- /// Handle SIGSEGV and SIGBUS signals to remap shared memory
- /// properly.
- virtual int handle_signal (int signum, siginfo_t *, ucontext_t *);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* !ACE_LACKS_SYSV_SHMEM */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SHARED_MEMORY_POOL_H */
-
diff --git a/dep/include/ace/Shared_Memory_SV.h b/dep/include/ace/Shared_Memory_SV.h
deleted file mode 100644
index 2da27742f05..00000000000
--- a/dep/include/ace/Shared_Memory_SV.h
+++ /dev/null
@@ -1,101 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Shared_Memory_SV.h
- *
- * $Id: Shared_Memory_SV.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SHARED_MALLOC_SV_H
-#define ACE_SHARED_MALLOC_SV_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Shared_Memory.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SV_Shared_Memory.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Shared_Memory_SV
- *
- * @brief Shared memory wrapper based on System V shared memory.
- *
- * This class provides a very simple-minded shared memory manager. We
- * strongly recommend that you do NOT use this class. Instead, please
- * use @c ACE_Malloc, which has much more powerful capabilities.
- */
-class ACE_Export ACE_Shared_Memory_SV : public ACE_Shared_Memory
-{
-public:
- enum
- {
- ACE_CREATE = IPC_CREAT,
- ACE_OPEN = 0
- };
-
- // = Initialization and termination methods.
- ACE_Shared_Memory_SV (void);
- ACE_Shared_Memory_SV (key_t id,
- size_t length,
- int create = ACE_Shared_Memory_SV::ACE_OPEN,
- int perms = ACE_DEFAULT_FILE_PERMS,
- void *addr = 0,
- int flags = 0);
-
- int open (key_t id,
- size_t length,
- int create = ACE_Shared_Memory_SV::ACE_OPEN,
- int perms = ACE_DEFAULT_FILE_PERMS,
- void *addr = 0,
- int flags = 0);
-
- /// Close down the shared memory segment.
- virtual int close (void);
-
- /// Remove the underlying shared memory segment.
- virtual int remove (void);
-
- // = Allocation and deallocation methods.
- /// Create a new chuck of memory containing @a size bytes.
- virtual void *malloc (size_t = 0);
-
- /// Free a chuck of memory allocated by <ACE_Shared_Memory_SV::malloc>.
- virtual int free (void *p);
-
- /// Return the size of the shared memory segment.
- virtual size_t get_segment_size (void) const;
-
- /// Return the ID of the shared memory segment (i.e., a System V
- /// shared memory internal id).
- virtual ACE_HANDLE get_id (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// This version is implemented with System V shared memory
- /// segments.
- ACE_SV_Shared_Memory shared_memory_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Shared_Memory_SV.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SHARED_MALLOC_SV_H */
-
diff --git a/dep/include/ace/Shared_Memory_SV.inl b/dep/include/ace/Shared_Memory_SV.inl
deleted file mode 100644
index 1a586701cc3..00000000000
--- a/dep/include/ace/Shared_Memory_SV.inl
+++ /dev/null
@@ -1,30 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Shared_Memory_SV.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Global_Macros.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_Shared_Memory_SV::open (key_t id,
- size_t length,
- int create,
- int perms,
- void *addr,
- int flags)
-{
- ACE_TRACE ("ACE_Shared_Memory_SV::open");
- return shared_memory_.open_and_attach (id, length, create,
- perms, addr, flags);
-}
-
-// The "do-nothing" constructor.
-
-ACE_INLINE
-ACE_Shared_Memory_SV::ACE_Shared_Memory_SV (void)
-{
- ACE_TRACE ("ACE_Shared_Memory_SV::ACE_Shared_Memory_SV");
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Shared_Object.h b/dep/include/ace/Shared_Object.h
deleted file mode 100644
index 17f6dca54dd..00000000000
--- a/dep/include/ace/Shared_Object.h
+++ /dev/null
@@ -1,63 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Shared_Object.h
- *
- * $Id: Shared_Object.h 81348 2008-04-14 09:00:32Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_SHARED_OBJECT_H
-#define ACE_SHARED_OBJECT_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Shared_Object
- *
- * @brief Provide the abstract base class used to access dynamic
- * linking facilities.
- */
-class ACE_Export ACE_Shared_Object
-{
-public:
- /// Constructor
- ACE_Shared_Object (void);
-
- /// Destructor
- virtual ~ACE_Shared_Object (void);
-
- /// Initializes object when dynamic linking occurs.
- virtual int init (int argc, ACE_TCHAR *argv[]);
-
- /// Terminates object when dynamic unlinking occurs.
- virtual int fini (void);
-
- /// Returns information on a service object.
- virtual int info (ACE_TCHAR **info_string, size_t length = 0) const;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Shared_Object.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SHARED_OBJECT_H */
-
diff --git a/dep/include/ace/Shared_Object.inl b/dep/include/ace/Shared_Object.inl
deleted file mode 100644
index 4f5f0020604..00000000000
--- a/dep/include/ace/Shared_Object.inl
+++ /dev/null
@@ -1,12 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Shared_Object.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Shared_Object::ACE_Shared_Object (void)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Sig_Adapter.h b/dep/include/ace/Sig_Adapter.h
deleted file mode 100644
index f0013ede558..00000000000
--- a/dep/include/ace/Sig_Adapter.h
+++ /dev/null
@@ -1,82 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Sig_Adapter.h
- *
- * $Id: Sig_Adapter.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SIG_ADAPTER_H
-#define ACE_SIG_ADAPTER_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Event_Handler.h"
-#include "ace/Signal.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Sig_Adapter
- *
- * @brief Provide an adapter that transforms various types of signal
- * handlers into the scheme used by the ACE_Reactor.
- */
-class ACE_Export ACE_Sig_Adapter : public ACE_Event_Handler
-{
-public:
- ACE_Sig_Adapter (ACE_Sig_Action &, int sigkey);
- ACE_Sig_Adapter (ACE_Event_Handler *, int sigkey);
- ACE_Sig_Adapter (ACE_Sig_Handler_Ex, int sigkey = 0);
- ~ACE_Sig_Adapter (void);
-
- /// Returns this signal key that's used to remove this from the
- /// ACE_Reactor's internal table.
- int sigkey (void);
-
- /// Called by the <Reactor> to dispatch the signal handler.
- virtual int handle_signal (int, siginfo_t *, ucontext_t *);
-
-private:
- /// Key for this signal handler (used to remove it).
- int sigkey_;
-
- /// Is this an external handler or an ACE handler?
- enum
- {
- /// We're just wrapping an ACE_Event_Handler.
- ACE_HANDLER,
- /// An ACE_Sig_Action.
- SIG_ACTION,
- /// A normal C function.
- C_FUNCTION
- } type_;
-
- // = This should be a union, but C++ won't allow that because the
- // <ACE_Sig_Action> has a constructor.
- /// This is an external handler (ugh).
- ACE_Sig_Action sa_;
-
- /// This is an ACE hander.
- ACE_Event_Handler *eh_;
-
- /// This is a normal C function.
- ACE_Sig_Handler_Ex sig_func_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SIG_ADAPTER_H */
-
diff --git a/dep/include/ace/Sig_Handler.h b/dep/include/ace/Sig_Handler.h
deleted file mode 100644
index ea58980154e..00000000000
--- a/dep/include/ace/Sig_Handler.h
+++ /dev/null
@@ -1,238 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Sig_Handler.h
- *
- * $Id: Sig_Handler.h 81388 2008-04-23 14:02:05Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SIGNAL_HANDLER_H
-#define ACE_SIGNAL_HANDLER_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Event_Handler.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Sig_Action;
-
-/**
- * @class ACE_Sig_Handler
- *
- * @brief This is the main dispatcher of signals for ACE. It improves
- * the existing UNIX signal handling mechanism by allowing C++
- * objects to handle signals in a way that avoids the use of
- * global/static variables and functions.
- *
- * Using this class a program can register an ACE_Event_Handler
- * with the ACE_Sig_Handler in order to handle a designated
- * @a signum. When a signal occurs that corresponds to this
- * @a signum, the @c handle_signal method of the registered
- * ACE_Event_Handler is invoked automatically.
- */
-class ACE_Export ACE_Sig_Handler
-{
-public:
- /// Default constructor.
- ACE_Sig_Handler (void);
-
- /// Destructor
- virtual ~ACE_Sig_Handler (void);
-
- // = Registration and removal methods.
- /**
- * Add a new ACE_Event_Handler and a new sigaction associated with
- * @a signum. Passes back the existing ACE_Event_Handler and its
- * sigaction if pointers are non-zero. Returns -1 on failure and >=
- * 0 on success.
- */
- virtual int register_handler (int signum,
- ACE_Event_Handler *new_sh,
- ACE_Sig_Action *new_disp = 0,
- ACE_Event_Handler **old_sh = 0,
- ACE_Sig_Action *old_disp = 0);
-
- /**
- * Remove the ACE_Event_Handler currently associated with
- * @a signum. @a sigkey is ignored in this implementation since there
- * is only one instance of a signal handler. Install the new
- * disposition (if given) and return the previous disposition (if
- * desired by the caller). Returns 0 on success and -1 if @a signum
- * is invalid.
- */
- virtual int remove_handler (int signum,
- ACE_Sig_Action *new_disp = 0,
- ACE_Sig_Action *old_disp = 0,
- int sigkey = -1);
-
- // Set/get signal status.
- /// True if there is a pending signal.
- static int sig_pending (void);
-
- /// Reset the value of <sig_pending_> so that no signal is pending.
- static void sig_pending (int);
-
- // = Set/get the handler associated with a particular signal.
-
- /// Return the ACE_Sig_Handler associated with @a signum.
- virtual ACE_Event_Handler *handler (int signum);
-
- /// Set a new ACE_Event_Handler that is associated with @a signum.
- /// Return the existing handler.
- virtual ACE_Event_Handler *handler (int signum, ACE_Event_Handler *);
-
- /**
- * Callback routine registered with sigaction(2) that dispatches the
- * <handle_signal> method of the appropriate pre-registered
- * ACE_Event_Handler.
- */
- static void dispatch (int, siginfo_t *,
- ucontext_t *);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- // = These methods and data members are shared by derived classes.
-
- /**
- * Set a new ACE_Event_Handler that is associated with @a signum.
- * Return the existing handler. Does not acquire any locks so that
- * it can be called from a signal handler, such as <dispatch>.
- */
- static ACE_Event_Handler *handler_i (int signum,
- ACE_Event_Handler *);
-
- /**
- * This implementation method is called by <register_handler> and
- * @c dispatch. It doesn't do any locking so that it can be called
- * within a signal handler, such as @c dispatch. It adds a new
- * ACE_Event_Handler and a new sigaction associated with @a signum.
- * Passes back the existing ACE_Event_Handler and its sigaction if
- * pointers are non-zero. Returns -1 on failure and >= 0 on
- * success.
- */
- static int register_handler_i (int signum,
- ACE_Event_Handler *new_sh,
- ACE_Sig_Action *new_disp = 0,
- ACE_Event_Handler **old_sh = 0,
- ACE_Sig_Action *old_disp = 0);
-
- /// Check whether the SIGNUM is within the legal range of signals.
- static int in_range (int signum);
-
- /// Keeps track of whether a signal is pending.
- static sig_atomic_t sig_pending_;
-
-private:
- /// Array used to store one user-defined Event_Handler for every
- /// signal.
- static ACE_Event_Handler *signal_handlers_[ACE_NSIG];
-};
-
-/**
- * @class ACE_Sig_Handlers
- *
- * @brief This is an alternative signal handling dispatcher for ACE. It
- * allows a list of signal handlers to be registered for each
- * signal. It also makes SA_RESTART the default mode.
- *
- * Using this class a program can register one or more
- * ACE_Event_Handler with the ACE_Sig_Handler in order to
- * handle a designated @a signum. When a signal occurs that
- * corresponds to this @a signum, the <handle_signal> methods of
- * all the registered ACE_Event_Handlers are invoked
- * automatically.
- */
-class ACE_Export ACE_Sig_Handlers : public ACE_Sig_Handler
-{
-public:
- // = Registration and removal methods.
- /**
- * Add a new ACE_Event_Handler and a new sigaction associated with
- * @a signum. Passes back the existing ACE_Event_Handler and its
- * sigaction if pointers are non-zero. Returns -1 on failure and
- * a <sigkey> that is >= 0 on success.
- */
- virtual int register_handler (int signum,
- ACE_Event_Handler *new_sh,
- ACE_Sig_Action *new_disp = 0,
- ACE_Event_Handler **old_sh = 0,
- ACE_Sig_Action *old_disp = 0);
-
- /**
- * Remove an ACE_Event_Handler currently associated with @a signum.
- * We remove the handler if (1) its sigkey> matches the @a sigkey
- * passed as a parameter or (2) if we've been told to remove all the
- * handlers, i.e., <sigkey> == -1. If a new disposition is given it
- * is installed and the previous disposition is returned (if desired
- * by the caller). Returns 0 on success and -1 if @a signum is
- * invalid.
- */
- virtual int remove_handler (int signum,
- ACE_Sig_Action *new_disp = 0,
- ACE_Sig_Action *old_disp = 0,
- int sigkey = -1);
-
- // = Set/get the handler associated with a particular signal.
-
- /// Return the head of the list of <ACE_Sig_Handler>s associated with
- /// SIGNUM.
- virtual ACE_Event_Handler *handler (int signum);
-
- /**
- * Set a new ACE_Event_Handler that is associated with SIGNUM at
- * the head of the list of signals. Return the existing handler
- * that was at the head.
- */
- virtual ACE_Event_Handler *handler (int signum,
- ACE_Event_Handler *);
-
- /**
- * Callback routine registered with sigaction(2) that dispatches the
- * <handle_signal> method of all the pre-registered
- * ACE_Event_Handlers for @a signum
- */
- static void dispatch (int signum, siginfo_t *, ucontext_t *);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /**
- * Keeps track of the id that uniquely identifies each registered
- * signal handler. This id can be used to cancel a timer via the
- * <remove_handler> method.
- */
- static int sigkey_;
-
- /// If this is true then a 3rd party library has registered a
- /// handler...
- static bool third_party_sig_handler_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Sig_Handler.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SIG_HANDLER_H */
-
diff --git a/dep/include/ace/Sig_Handler.inl b/dep/include/ace/Sig_Handler.inl
deleted file mode 100644
index de02c09ab16..00000000000
--- a/dep/include/ace/Sig_Handler.inl
+++ /dev/null
@@ -1,15 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Sig_Handler.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_INLINE
-ACE_Sig_Handler::ACE_Sig_Handler (void)
-{
-}
-
-ACE_INLINE int
-ACE_Sig_Handler::in_range (int signum)
-{
- ACE_TRACE ("ACE_Sig_Handler::in_range");
- return signum > 0 && signum < ACE_NSIG;
-}
diff --git a/dep/include/ace/Signal.h b/dep/include/ace/Signal.h
deleted file mode 100644
index ae679ed7ae6..00000000000
--- a/dep/include/ace/Signal.h
+++ /dev/null
@@ -1,267 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Signal.h
- *
- * $Id: Signal.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SIGNAL_H
-#define ACE_SIGNAL_H
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if defined (ACE_DONT_INCLUDE_ACE_SIGNAL_H)
-# error ace/Signal.h was #included instead of signal.h by ace/OS_NS_signal.h: fix!!!!
-#endif /* ACE_DONT_INCLUDE_ACE_SIGNAL_H */
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/OS_NS_signal.h"
-
-// Type of the extended signal handler.
-typedef void (*ACE_Sig_Handler_Ex) (int, siginfo_t *siginfo, ucontext_t *ucontext);
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Sig_Set
- *
- * @brief Provide a C++ wrapper for the C sigset_t interface.
- *
- * Handle signals via a more elegant C++ interface (e.g.,
- * doesn't require the use of global variables or global
- * functions in an application).
- */
-class ACE_Export ACE_Sig_Set
-{
-public:
- // = Initialization and termination methods.
- /// Initialize <sigset_> with @a sigset. If @a sigset == 0 then fill
- /// the set.
- ACE_Sig_Set (sigset_t *sigset);
-
- /// Initialize <sigset_> with @a sigset. If @a sigset == 0 then fill
- /// the set.
- ACE_Sig_Set (ACE_Sig_Set *sigset);
-
- /// If @a fill == 0 then initialize the <sigset_> to be empty, else
- /// full.
- ACE_Sig_Set (int fill = 0);
-
- ~ACE_Sig_Set (void);
-
- /// Create a set that excludes all signals defined by the system.
- int empty_set (void);
-
- /// Create a set that includes all signals defined by the system.
- int fill_set (void);
-
- /// Adds the individual signal specified by @a signo to the set.
- int sig_add (int signo);
-
- /// Deletes the individual signal specified by @a signo from the set.
- int sig_del (int signo);
-
- /// Checks whether the signal specified by @a signo is in the set.
- int is_member (int signo) const;
-
- /// Returns a pointer to the underlying @c sigset_t.
- operator sigset_t *();
-
- /// Returns a copy of the underlying @c sigset_t.
- sigset_t sigset (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Set of signals.
- sigset_t sigset_;
-};
-
-/**
- * @class ACE_Sig_Action
- *
- * @brief C++ wrapper facade for the @c sigaction struct.
- */
-class ACE_Export ACE_Sig_Action
-{
-public:
- // = Initialization methods.
- /// Default constructor. Initializes everything to 0.
- ACE_Sig_Action (void);
-
- /// Assigns the various fields of a @c sigaction struct but doesn't
- /// register for signal handling via the @c sigaction function.
- ACE_Sig_Action (ACE_SignalHandler handler,
- sigset_t *sigmask = 0,
- int flags = 0);
-
- /// Assigns the various fields of a @c sigaction struct but doesn't
- /// register for signal handling via the @c sigaction function.
- ACE_Sig_Action (ACE_SignalHandler handler,
- const ACE_Sig_Set &sigmask,
- int flags = 0);
-
- /**
- * Assigns the various fields of a @c sigaction struct and registers
- * the @a handler to process signal @a signum via the @c sigaction
- * function.
- */
- ACE_Sig_Action (ACE_SignalHandler handler,
- int signum,
- sigset_t *sigmask = 0,
- int flags = 0);
-
- /**
- * Assigns the various fields of a @c sigaction struct and registers
- * the @a handler to process signal @a signum via the @c sigaction
- * function.
- */
- ACE_Sig_Action (ACE_SignalHandler handler,
- int signum,
- const ACE_Sig_Set &sigmask,
- int flags = 0);
-
- // @@ The next two methods have a parameter as "signalss". Please do
- // not change the argument name as "signals". This causes the
- // following problem as reported by
- // <James.Briggs@dsto.defence.gov.au>.
-
- // In the file Signal.h two of the functions have and argument name
- // of signals. signals is a Qt macro (to do with their meta object
- // stuff.
- // We could as well have it as "signal", but I am nost sure whether
- // that would cause a problem with something else - Bala <bala@cs>
-
- /**
- * Assigns the various fields of a @c sigaction struct and registers
- * the @a handler to process all @a signalss via the @c sigaction
- * function.
- */
- ACE_Sig_Action (const ACE_Sig_Set &signalss,
- ACE_SignalHandler handler,
- const ACE_Sig_Set &sigmask,
- int flags = 0);
-
- /**
- * Assigns the various fields of a @c sigaction struct and registers
- * the @a handler to process all @a signalss via the @c sigaction
- * function.
- */
- ACE_Sig_Action (const ACE_Sig_Set &signalss,
- ACE_SignalHandler handler,
- sigset_t *sigmask = 0,
- int flags = 0);
-
- /// Copy constructor.
- ACE_Sig_Action (const ACE_Sig_Action &s);
-
- /// Default dtor.
- ~ACE_Sig_Action (void);
-
- // = Signal action management.
- /// Register @c this as the current disposition and store old
- /// disposition into @a oaction if it is non-NULL.
- int register_action (int signum,
- ACE_Sig_Action *oaction = 0);
-
- /// Assign the value of @a oaction to @c this and make it become the
- /// new signal disposition.
- int restore_action (int signum,
- ACE_Sig_Action &oaction);
-
- /// Retrieve the current disposition into @c this.
- int retrieve_action (int signum);
-
- /// Set current signal action.
- void set (struct sigaction *);
-
- /// Get current signal action.
- struct sigaction *get (void);
- operator struct sigaction *();
-
- /// Set current signal flags.
- void flags (int);
-
- /// Get current signal flags.
- int flags (void);
-
- /// Set current signal mask.
- void mask (sigset_t *);
- void mask (ACE_Sig_Set &);
-
- /// Get current signal mask.
- sigset_t *mask (void);
-
- /// Set current signal handler (pointer to function).
- void handler (ACE_SignalHandler);
-
- /// Get current signal handler (pointer to function).
- ACE_SignalHandler handler (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Controls signal behavior.
- struct sigaction sa_;
-};
-
-/**
- * @class ACE_Sig_Guard
- *
- * @brief Hold signals in MASK for duration of a C++ statement block.
- * Note that a "0" for mask causes all signals to be held.
- */
-class ACE_Export ACE_Sig_Guard
-{
-public:
- // = Initialization and termination methods.
- /// This is kind of conditional Guard, needed when guard should be
- /// activated only when a spcific condition met. When condition ==
- /// true (default), Guard is activated
- ACE_Sig_Guard (ACE_Sig_Set *mask = 0, bool condition = true);
-
- /// Restore blocked signals.
- ~ACE_Sig_Guard (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Original signal mask.
- ACE_Sig_Set omask_;
-
- /// Guard Condition
- bool condition_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Signal.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SIGNAL_HANDLER_H */
-
diff --git a/dep/include/ace/Signal.inl b/dep/include/ace/Signal.inl
deleted file mode 100644
index 858c33c26fb..00000000000
--- a/dep/include/ace/Signal.inl
+++ /dev/null
@@ -1,265 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Signal.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_signal.h"
-#include "ace/config-all.h"
-#include "ace/Trace.h"
-#include "ace/Object_Manager_Base.h"
-#include "ace/OS_NS_Thread.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Sig_Set::ACE_Sig_Set (sigset_t *ss)
- // : sigset_ ()
-{
- ACE_TRACE ("ACE_Sig_Set::ACE_Sig_Set");
-
- if (ss == 0)
- ACE_OS::sigfillset (&this->sigset_);
- else
- // Structure assignment.
- this->sigset_ = *ss;
-}
-
-ACE_INLINE
-ACE_Sig_Set::ACE_Sig_Set (int fill)
- // : sigset_ ()
-{
- ACE_TRACE ("ACE_Sig_Set::ACE_Sig_Set");
-
- if (fill)
- ACE_OS::sigfillset (&this->sigset_);
- else
- ACE_OS::sigemptyset (&this->sigset_);
-}
-
-ACE_INLINE
-ACE_Sig_Set::ACE_Sig_Set (ACE_Sig_Set *ss)
- // : sigset_ ()
-{
- ACE_TRACE ("ACE_Sig_Set::ACE_Sig_Set");
-
- if (ss == 0)
- ACE_OS::sigfillset (&this->sigset_);
- else
- this->sigset_ = ss->sigset_;
-}
-
-ACE_INLINE int
-ACE_Sig_Set::empty_set (void)
-{
- ACE_TRACE ("ACE_Sig_Set::empty_set");
- return ACE_OS::sigemptyset (&this->sigset_);
-}
-
-ACE_INLINE int
-ACE_Sig_Set::fill_set (void)
-{
- ACE_TRACE ("ACE_Sig_Set::fill_set");
- return ACE_OS::sigfillset (&this->sigset_);
-}
-
-ACE_INLINE int
-ACE_Sig_Set::sig_add (int signo)
-{
- ACE_TRACE ("ACE_Sig_Set::sig_add");
- return ACE_OS::sigaddset (&this->sigset_, signo);
-}
-
-ACE_INLINE int
-ACE_Sig_Set::sig_del (int signo)
-{
- ACE_TRACE ("ACE_Sig_Set::sig_del");
- return ACE_OS::sigdelset (&this->sigset_, signo);
-}
-
-ACE_INLINE int
-ACE_Sig_Set::is_member (int signo) const
-{
- ACE_TRACE ("ACE_Sig_Set::is_member");
- return ACE_OS::sigismember (const_cast<sigset_t *> (&this->sigset_), signo);
-}
-
-ACE_INLINE
-ACE_Sig_Set::operator sigset_t *(void)
-{
- ACE_TRACE ("ACE_Sig_Set::operator sigset_t *");
- return &this->sigset_;
-}
-
-ACE_INLINE sigset_t
-ACE_Sig_Set::sigset (void) const
-{
- ACE_TRACE ("ACE_Sig_Set::sigset");
- return this->sigset_;
-}
-
-ACE_INLINE int
-ACE_Sig_Action::flags (void)
-{
- ACE_TRACE ("ACE_Sig_Action::flags");
- return this->sa_.sa_flags;
-}
-
-ACE_INLINE void
-ACE_Sig_Action::flags (int flags)
-{
- ACE_TRACE ("ACE_Sig_Action::flags");
- this->sa_.sa_flags = flags;
-}
-
-ACE_INLINE sigset_t *
-ACE_Sig_Action::mask (void)
-{
- ACE_TRACE ("ACE_Sig_Action::mask");
- return &this->sa_.sa_mask;
-}
-
-ACE_INLINE void
-ACE_Sig_Action::mask (sigset_t *ss)
-{
- ACE_TRACE ("ACE_Sig_Action::mask");
- if (ss != 0)
- this->sa_.sa_mask = *ss; // Structure assignment
-}
-
-ACE_INLINE void
-ACE_Sig_Action::mask (ACE_Sig_Set &ss)
-{
- ACE_TRACE ("ACE_Sig_Action::mask");
- this->sa_.sa_mask = ss.sigset (); // Structure assignment
-}
-
-ACE_INLINE ACE_SignalHandler
-ACE_Sig_Action::handler (void)
-{
- ACE_TRACE ("ACE_Sig_Action::handler");
- return ACE_SignalHandler (this->sa_.sa_handler);
-}
-
-ACE_INLINE void
-ACE_Sig_Action::handler (ACE_SignalHandler handler)
-{
- ACE_TRACE ("ACE_Sig_Action::handler");
-#if !defined(ACE_HAS_TANDEM_SIGNALS)
- this->sa_.sa_handler = ACE_SignalHandlerV (handler);
-#else
- this->sa_.sa_handler = (void (*)()) ACE_SignalHandlerV (handler);
-#endif /* !ACE_HAS_TANDEM_SIGNALS */
-}
-
-#if 0
-ACE_INLINE ACE_SignalHandler
-ACE_Sig_Action::sigaction (void)
-{
- ACE_TRACE ("ACE_Sig_Action::sigaction");
- return ACE_SignalHandler (this->sa_.sa_sigaction);
-}
-
-ACE_INLINE void
-ACE_Sig_Action::sigaction (ACE_SignalHandler handler)
-{
- ACE_TRACE ("ACE_Sig_Action::sigaction");
- this->sa_.sa_sigaction = (void (*)()) ACE_SignalHandlerV (handler);
-}
-#endif /* 0 */
-
-ACE_INLINE void
-ACE_Sig_Action::set (struct sigaction *sa)
-{
- ACE_TRACE ("ACE_Sig_Action::set");
- this->sa_ = *sa; // Structure assignment.
-}
-
-ACE_INLINE struct sigaction *
-ACE_Sig_Action::get (void)
-{
- ACE_TRACE ("ACE_Sig_Action::get");
- return &this->sa_;
-}
-
-ACE_INLINE
-ACE_Sig_Action::operator struct sigaction * ()
-{
- ACE_TRACE ("ACE_Sig_Action::operator struct sigaction *");
- return &this->sa_;
-}
-
-ACE_INLINE
-ACE_Sig_Action::ACE_Sig_Action (const ACE_Sig_Action &s)
- // : sa_ ()
-{
- ACE_TRACE ("ACE_Sig_Action::ACE_Sig_Action");
- *this = s; // structure copy.
-}
-
-ACE_INLINE int
-ACE_Sig_Action::register_action (int signum, ACE_Sig_Action *oaction)
-{
- ACE_TRACE ("ACE_Sig_Action::register_action");
- struct sigaction *sa = oaction == 0 ? 0 : oaction->get ();
-
- return ACE_OS::sigaction (signum, &this->sa_, sa);
-}
-
-ACE_INLINE int
-ACE_Sig_Action::retrieve_action (int signum)
-{
- ACE_TRACE ("ACE_Sig_Action::retrieve_action");
- return ACE_OS::sigaction (signum, 0, &this->sa_);
-}
-
-ACE_INLINE int
-ACE_Sig_Action::restore_action (int signum, ACE_Sig_Action &oaction)
-{
- ACE_TRACE ("ACE_Sig_Action::restore_action");
- this->sa_ = *oaction.get (); // Structure assignment
- return ACE_OS::sigaction (signum, &this->sa_, 0);
-}
-
-// Block out the signal MASK until the destructor is called.
-
-ACE_INLINE
-ACE_Sig_Guard::ACE_Sig_Guard (ACE_Sig_Set *mask,
- bool condition)
- : omask_ ()
- , condition_ (condition)
-{
- //ACE_TRACE ("ACE_Sig_Guard::ACE_Sig_Guard");
- if (!this->condition_)
- return;
-
-#if defined (ACE_LACKS_UNIX_SIGNALS)
- ACE_UNUSED_ARG (mask);
-#else
- // If MASK is 0 then block all signals!
- if (mask == 0)
- {
-# if defined (ACE_LACKS_PTHREAD_THR_SIGSETMASK)
- ACE_OS::sigprocmask (SIG_BLOCK,
- ACE_OS_Object_Manager::default_mask (),
- (sigset_t *) this->omask_);
-# else
- ACE_OS::thr_sigsetmask (SIG_BLOCK,
- ACE_OS_Object_Manager::default_mask (),
- (sigset_t *) this->omask_);
-# endif /* ACE_LACKS_PTHREAD_THR_SIGSETMASK */
- }
- else
-# if defined (ACE_LACKS_PTHREAD_THR_SIGSETMASK)
- ACE_OS::sigprocmask (SIG_BLOCK,
- (sigset_t *) *mask,
- (sigset_t *)
- this->omask_);
-# else
- ACE_OS::thr_sigsetmask (SIG_BLOCK,
- (sigset_t *) *mask,
- (sigset_t *)
- this->omask_);
-# endif /* ACE_LACKS_PTHREAD_THR_SIGSETMASK */
-#endif /* ACE_LACKS_UNIX_SIGNALS */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Singleton.h b/dep/include/ace/Singleton.h
deleted file mode 100644
index 2d9c8e937ef..00000000000
--- a/dep/include/ace/Singleton.h
+++ /dev/null
@@ -1,328 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Singleton.h
- *
- * $Id: Singleton.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @brief
- *
- * @author Tim Harrison <harrison@cs.wustl.edu>
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Chris Lahey
- * @author Rich Christy
- * @author David Levine <levine@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SINGLETON_H
-#define ACE_SINGLETON_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-#include "ace/TSS_T.h"
-#include "ace/Cleanup.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Singleton
- *
- * @brief A Singleton Adapter uses the Adapter pattern to turn ordinary
- * classes into Singletons optimized with the Double-Checked
- * Locking optimization pattern.
- *
- * This implementation is a slight variation on the GoF
- * Singleton pattern. In particular, a single
- * <ACE_Singleton<TYPE, ACE_LOCK> > instance is allocated here,
- * not a <TYPE> instance. The reason for this is to allow
- * registration with the ACE_Object_Manager, so that the
- * Singleton can be cleaned up when the process exits. For this
- * scheme to work, a (static) cleanup() function must be
- * provided. ACE_Singleton provides one so that TYPE doesn't
- * need to.
- * If you want to make sure that only the singleton instance of
- * <T> is created, and that users cannot create their own
- * instances of <T>, do the following to class <T>:
- * (a) Make the constructor of <T> private (or protected)
- * (b) Make Singleton a friend of <T>
- * Here is an example:
- * @verbatim
- * class foo
- * {
- * friend class ACE_Singleton<foo, ACE_Null_Mutex>;
- * private:
- * foo () { cout << "foo constructed" << endl; }
- * ~foo () { cout << "foo destroyed" << endl; }
- * };
- * typedef ACE_Singleton<foo, ACE_Null_Mutex> FOO;
- * @endverbatim
- *
- * @note The best types to use for ACE_LOCK are
- * ACE_Recursive_Thread_Mutex and ACE_Null_Mutex.
- * ACE_Recursive_Thread_Mutex should be used in multi-threaded
- * programs in which it is possible for more than one thread to
- * access the <ACE_Singleton<TYPE, ACE_LOCK>> instance.
- * ACE_Null_Mutex can be used otherwise. The reason that these
- * types of locks are best has to do with their allocation by
- * the ACE_Object_Manager. Single ACE_Recursive_Thread_Mutex
- * and ACE_Null_Mutex instances are used for all ACE_Singleton
- * instantiations. However, other types of locks are allocated
- * per ACE_Singleton instantiation.
- */
-template <class TYPE, class ACE_LOCK>
-class ACE_Singleton : public ACE_Cleanup
-{
-public:
- /// Global access point to the Singleton.
- static TYPE *instance (void);
-
- /// Cleanup method, used by <ace_cleanup_destroyer> to destroy the
- /// ACE_Singleton.
- virtual void cleanup (void *param = 0);
-
- /// Dump the state of the object.
- static void dump (void);
-
-protected:
- /// Default constructor.
- ACE_Singleton (void);
-
- /// Contained instance.
- TYPE instance_;
-
-#if !defined (ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES)
- /// Pointer to the Singleton (ACE_Cleanup) instance.
- static ACE_Singleton<TYPE, ACE_LOCK> *singleton_;
-#endif /* ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES */
-
- /// Get pointer to the Singleton instance.
- static ACE_Singleton<TYPE, ACE_LOCK> *&instance_i (void);
-};
-
-/**
- * @class ACE_Unmanaged_Singleton
- *
- * @brief Same as ACE_Singleton, except does _not_ register with
- * ACE_Object_Manager for destruction.
- *
- * This version of ACE_Singleton can be used if, for example,
- * its DLL will be unloaded before the ACE_Object_Manager
- * destroys the instance. Unlike with ACE_Singleton, the
- * application is responsible for explicitly destroying the
- * instance after it is no longer needed (if it wants to avoid
- * memory leaks, at least). The close() static member function
- * must be used to explicitly destroy the Singleton.
- * Usage is the same as for ACE_Singleton, but note that if you
- * you declare a friend, the friend class must still be an
- * *ACE_Singleton*<T, [ACE_LOCK]>, not an ACE_Unmanaged_Singleton.
- */
-template <class TYPE, class ACE_LOCK>
-class ACE_Unmanaged_Singleton : public ACE_Singleton <TYPE, ACE_LOCK>
-{
-public:
- /// Global access point to the Singleton.
- static TYPE *instance (void);
-
- /// Explicitly delete the Singleton instance.
- static void close (void);
-
- /// Dump the state of the object.
- static void dump (void);
-
-protected:
- /// Default constructor.
- ACE_Unmanaged_Singleton (void);
-
-#if !defined (ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES)
- /// Pointer to the Singleton (ACE_Cleanup) instance.
- static ACE_Unmanaged_Singleton<TYPE, ACE_LOCK> *singleton_;
-#endif /* ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES */
-
- /// Get pointer to the Singleton instance.
- static ACE_Unmanaged_Singleton<TYPE, ACE_LOCK> *&instance_i (void);
-};
-
-/**
- * @class ACE_TSS_Singleton
- *
- * @brief This class uses the Adapter pattern to turn ordinary classes
- * into Thread-specific Singletons optimized with the
- * Double-Checked Locking optimization pattern.
- *
- * This implementation is another variation on the GoF Singleton
- * pattern. In this case, a single <ACE_TSS_Singleton<TYPE,
- * LOCK> > instance is allocated here, not a <TYPE> instance.
- * Each call to the <instance> static method returns a Singleton
- * whose pointer resides in thread-specific storage. As with
- * ACE_Singleton, we use the ACE_Object_Manager so that the
- * Singleton can be cleaned up when the process exits. For this
- * scheme to work, a (static) cleanup() function must be
- * provided. ACE_Singleton provides one so that TYPE doesn't
- * need to.
- */
-template <class TYPE, class ACE_LOCK>
-class ACE_TSS_Singleton : public ACE_Cleanup
-{
-public:
- /// Global access point to the singleton.
- static TYPE *instance (void);
-
- /// Cleanup method, used by <ace_cleanup_destroyer> to destroy the
- /// singleton.
- virtual void cleanup (void *param = 0);
-
- /// Dump the state of the object.
- static void dump (void);
-
-protected:
- /// Default constructor.
- ACE_TSS_Singleton (void);
-
- /// Contained instance.
- ACE_TSS_TYPE (TYPE) instance_;
-
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_TSS_Singleton<TYPE,ACE_LOCK> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_TSS_Singleton (const ACE_TSS_Singleton<TYPE,ACE_LOCK> &))
-
-#if !defined (ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES)
- /// Pointer to the Singleton (ACE_Cleanup) instance.
- static ACE_TSS_Singleton<TYPE, ACE_LOCK> *singleton_;
-#endif /* ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES */
-
- /// Get pointer to the TSS Singleton instance.
- static ACE_TSS_Singleton<TYPE, ACE_LOCK> *&instance_i (void);
-};
-
-/**
- * @class ACE_Unmanaged_TSS_Singleton
- *
- * @brief Same as ACE_TSS_Singleton, except does _not_ register with
- * ACE_Object_Manager for destruction.
- *
- * This version of ACE_TSS_Singleton can be used if, for example, its DLL will
- * be unloaded before the ACE_Object_Manager destroys the instance. Unlike with
- * ACE_Singleton, the application is responsible for explicitly destroying the
- * instance after it is no longer needed (if it wants to avoid memory leaks,
- * at least). The close() static member function must be used to explicitly
- * destroy the Singleton.
- */
-template <class TYPE, class ACE_LOCK>
-class ACE_Unmanaged_TSS_Singleton : public ACE_TSS_Singleton <TYPE, ACE_LOCK>
-{
-public:
- /// Global access point to the singleton.
- static TYPE *instance (void);
-
- /// Explicitly delete the singleton instance.
- static void close (void);
-
- /// Dump the state of the object.
- static void dump (void);
-
-protected:
- /// Default constructor.
- ACE_Unmanaged_TSS_Singleton (void);
-
-#if !defined (ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES)
- /// Pointer to the Singleton (ACE_Cleanup) instance.
- static ACE_Unmanaged_TSS_Singleton<TYPE, ACE_LOCK> *singleton_;
-#endif /* ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES */
-
- /// Get pointer to the Singleton instance.
- static ACE_Unmanaged_TSS_Singleton<TYPE, ACE_LOCK> *&instance_i (void);
-};
-
-/**
- * @class ACE_DLL_Singleton_T
- *
- * @brief Same as ACE_Singleton, except that it registers for
- * destruction with the ACE_Framework_Repository instead of
- * with the ACE_Object_Manager directly.
- *
- * This version of ACE_Singleton should be used for singletons
- * that live in a dll loaded either directly by ACE_DLL or indirectly
- * by the ACE Service Configuration framework. Whenever ACE_DLL is ready
- * to actually unload the dll, ACE_DLL_Singleton based dlls associated
- * with that dll will be destroyed first. In fact, any singleton can
- * safely use ACE_DLL_Singleton, even those that don't live in dlls. In
- * that case, the singleton will be destroyed at normal program shutdown.
- *
- * The only additional requirement is that the contained class
- * export name() and dll_name() methods. See ACE_DLL_Singleton_Adapter_T
- * below for a convenient example of how to satisfy this
- * requirement for the dll_name().
- *
- * Usage is the same as for ACE_Singleton, but note that if you
- * you declare a friend, the friend class must still be an
- * *ACE_Singleton*<T, [ACE_LOCK]>, not an ACE_Unmanaged_Singleton.
- */
-template <class TYPE, class ACE_LOCK>
-class ACE_DLL_Singleton_T
-{
-public:
- //void cleanup (void *param = 0);
-
- /// Global access point to the Singleton.
- static TYPE *instance (void);
-
- /// Explicitly delete the Singleton instance.
- static void close (void);
-
- static void close_singleton (void);
-
- /// Dump the state of the object.
- static void dump (void);
-
- const ACE_TCHAR *dll_name (void);
-
- const ACE_TCHAR *name (void);
-
-protected:
- /// Default constructor.
- ACE_DLL_Singleton_T (void);
-
- /// Destructor.
- ~ACE_DLL_Singleton_T (void);
-
- /// Contained instance.
- TYPE instance_;
-
-#if !defined (ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES)
- /// Pointer to the Singleton instance.
- static ACE_DLL_Singleton_T<TYPE, ACE_LOCK> *singleton_;
-#endif /* ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES */
-
- /// Get pointer to the singleton instance.
- static ACE_DLL_Singleton_T<TYPE, ACE_LOCK> *&instance_i (void);
-};
-
-template <class TYPE>
-class ACE_DLL_Singleton_Adapter_T : public TYPE
-{
-public:
- const ACE_TCHAR *dll_name (void);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Singleton.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Singleton.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Singleton.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SINGLETON_H */
-
diff --git a/dep/include/ace/Singleton.inl b/dep/include/ace/Singleton.inl
deleted file mode 100644
index 107a8b78c6d..00000000000
--- a/dep/include/ace/Singleton.inl
+++ /dev/null
@@ -1,42 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Singleton.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Default constructors.
-//
-// Note: don't explicitly initialize "instance_", because TYPE may not
-// have a default constructor. Let the compiler figure it out . . .
-
-template <class TYPE, class ACE_LOCK> ACE_INLINE
-ACE_Singleton<TYPE, ACE_LOCK>::ACE_Singleton (void)
-{
-}
-
-template <class TYPE, class ACE_LOCK> ACE_INLINE
-ACE_Unmanaged_Singleton<TYPE, ACE_LOCK>::ACE_Unmanaged_Singleton (void)
-{
-}
-
-template <class TYPE, class ACE_LOCK> ACE_INLINE
-ACE_TSS_Singleton<TYPE, ACE_LOCK>::ACE_TSS_Singleton (void)
-{
-}
-
-template <class TYPE, class ACE_LOCK> ACE_INLINE
-ACE_Unmanaged_TSS_Singleton<TYPE, ACE_LOCK>::ACE_Unmanaged_TSS_Singleton (void)
-{
-}
-
-template <class TYPE, class ACE_LOCK> ACE_INLINE
-ACE_DLL_Singleton_T<TYPE, ACE_LOCK>::ACE_DLL_Singleton_T (void)
-{
-}
-
-template <class TYPE, class ACE_LOCK>
-ACE_DLL_Singleton_T<TYPE, ACE_LOCK>::~ACE_DLL_Singleton_T (void)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Sock_Connect.h b/dep/include/ace/Sock_Connect.h
deleted file mode 100644
index 195dfcdf116..00000000000
--- a/dep/include/ace/Sock_Connect.h
+++ /dev/null
@@ -1,108 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Sock_Connect.h
- *
- * $Id: Sock_Connect.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Priyanka Gontla <pgontla@ece.uci.edu>
- * @author Based on code that existed formerly in ACE.h.
- */
-//==========================================================================
-
-#ifndef ACE_SOCK_CONNECT_H
-#define ACE_SOCK_CONNECT_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Basic_Types.h"
-#include "ace/os_include/netinet/os_in.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward Declarations
-class ACE_INET_Addr;
-
-namespace ACE
-{
- // = Socket connection establishment calls.
-
- /// Bind a new unused port to @a handle.
- extern ACE_Export int bind_port (ACE_HANDLE handle,
- ACE_UINT32 ip_addr = INADDR_ANY,
- int address_family = AF_UNSPEC);
-
- /**
- * Get our broadcast address based on our @a host_addr. If
- * @a hostname is non-0 we'll use it to determine our IP address. If
- * @a handle is not ACE_INVALID_HANDLE then we'll use this to
- * determine our broadcast address, otherwise we'll have to create a
- * socket internally (and free it). Returns -1 on failure and 0 on
- * success.
- */
- extern ACE_Export int get_bcast_addr (
- ACE_UINT32 &bcast_addr,
- const ACE_TCHAR *hostname = 0,
- ACE_UINT32 host_addr = 0,
- ACE_HANDLE handle = ACE_INVALID_HANDLE);
-
- /// Get fully qualified host/domain name.
- extern ACE_Export int get_fqdn (ACE_INET_Addr const & addr,
- char hostname[],
- size_t len);
-
- /**
- * Return count and array of all configured IP interfaces on this
- * host, rc = 0 on success (count == number of interfaces else -1).
- * Caller is responsible for calling delete [] on @a addr_array.
- */
- extern ACE_Export int get_ip_interfaces (size_t &count,
- ACE_INET_Addr *&addr_array);
-
- /**
- * Helper routine for get_ip_interfaces, differs by UNIX platform so
- * put into own subroutine. perform some ioctls to retrieve ifconf
- * list of ifreq structs.
- */
- extern ACE_Export int count_interfaces (ACE_HANDLE handle,
- size_t &how_many);
-
- /// Routine to return a handle from which @c ioctl requests can be
- /// made. Caller must close the handle.
- extern ACE_Export ACE_HANDLE get_handle (void);
-
- /// Returns @c true if IPv4 is enabled on the current host; @c false
- /// if not.
- /**
- * This is an execution-time check. If ACE has not been compiled
- * with @c ACE_HAS_IPV6, it always returns @c true. This function
- * tries to create a @c PF_INET socket, returning @c true if it
- * succeeds, and @c false if it fails. Caches the result so it only
- gets checked once.
- */
- extern ACE_Export bool ipv4_enabled (void);
-
- /**
- * Returns 1 if IPv6 is enabled on the current host; 0 if not.
- * This is an execution-time check. If ACE has not been compiled
- * with ACE_HAS_IPV6, it always returns 0. If ACE_HAS_IPV6 is
- * enabled, this function tries to create a PF_INET6 socket,
- * returning 1 if it succeeds, and 0 if it fails. Caches the result
- * so it only gets checked once.
- */
- extern ACE_Export int ipv6_enabled (void);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SOCK_CONNECT_H */
-
diff --git a/dep/include/ace/Stack_Trace.h b/dep/include/ace/Stack_Trace.h
deleted file mode 100644
index b2fc0174ab6..00000000000
--- a/dep/include/ace/Stack_Trace.h
+++ /dev/null
@@ -1,108 +0,0 @@
-// -*- C++ -*-
-//=============================================================================
-/**
- * @file Stack_Trace.h
- *
- * $Id: Stack_Trace.h 81926 2008-06-12 14:43:09Z mitza $
- *
- * @author Chris Cleeland (cleeland.ociweb.com)
- */
-//=============================================================================
-
-#ifndef ACE_STACK_TRACE_H
-#define ACE_STACK_TRACE_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/ACE_export.h"
-#include "ace/Basic_Types.h"
-
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-# endif /* ACE_LACKS_PRAGMA_ONCE */
-
-# ifndef ACE_STACK_TRACE_SYMBUFSIZ
-# define ACE_STACK_TRACE_SYMBUFSIZ 4096
-# endif
-
-/**
- * @class ACE_Stack_Trace
- *
- * @brief Encapsulate a string representation of a stack trace on supported platforms.
- * Stack traces for code built with optimize=1 (or "Release" configs on Visual
- * Studio) may be misleading (missng frames) due to inlining performed by the
- * compiler, which is indepenent of the inline=0 / inline=1 build option and
- * the __ACE_INLINE__ / ACE_NO_INLINE macros.
- *
- * A new conversion character, the question mark, was added to ACE_Log_Msg for stack
- * trace logging. The %? conversion character was added as a convenience so that users
- * need not instantiate an ACE_Stack_Trace instance solely for the purpose of printing
- * it in an ACE logging message. The following are functionally equivalent:
- *
- * \code
- * ACE_DEBUG((LM_DEBUG, "%?"));
- *
- * ACE_Stack_Trace st;
- * ACE_DEBUG ((LM_DEBUG, "%s", st.c_str() ));
- * \endcode
- *
- * These usage examples were shown in $ACE_ROOT/tests/Stack_Trace_Test.cpp.
- *
- * @note The stack trace functionality was currently supported on platforms:
- * - Any platform using glibc as its runtime library, or where ACE_HAS_EXECINFO_H is defined
- * (this covers Linux and Mac) and gcc version >= 3.3.
- * - VxWorks, both kernel and RTP
- * - Solaris
- * - Windows 32 and 64 bit (Visual C++, excluding WinCE/mobile)
- *
- * @note Since stack trace buffer size has limitation(@c ACE_STACK_TRACE_SYMBUFSIZ), you will not
- * get a complete stack trace if @c ACE_STACK_TRACE_SYMBUFSIZ value is less than actual stack
- * trace data length. To get a complete stack trace, you need set @c ACE_STACK_TRACE_SYMBUFSIZ
- * with a larger value that is enough for the stack trace data in your @c config.h file
- * and rebuild ACE.
- *
- * @note Using ACE logging mechanism (%?) to log the stack trace also has ACE_MAXLOGMSGLEN size limitation.
- * To get a complete stack trace, you could use different output method. Following is an example.
- *
- * \code
- * ACE_Stack_Trace st;
- * ACE_OS::printf("at [%s]\n", st.c_str());
- * \endcode
- */
-class ACE_Export ACE_Stack_Trace
-{
-public:
- /**
- * @brief Grab a snapshot of the current stack trace and hold it for later use.
- *
- * @param starting_frame_offset offset into the array of frames to start printing; 0 is the
- * platform-specific offset for the first frame, positive numbers give less frames, negative give
- * more frames
- * @param num_frames the number of stack frames to include (0 indicates platform-specific maximum)
- *
- */
- explicit ACE_Stack_Trace (ssize_t starting_frame_offset = 0, size_t num_frames = 0);
-
- /**
- * @brief Return buffer as a C-style string.
- * @return C-style string with string representation of stack trace.
- * @note Lifecycle of string follows lifecycle of ACE_Stack_Trace instance.
- */
- const char* c_str() const;
-
- static const size_t SYMBUFSIZ = ACE_STACK_TRACE_SYMBUFSIZ;
-
-private:
- char buf_[SYMBUFSIZ];
- size_t buflen_;
-
- static const char UNSUPPORTED[];
- static const char UNABLE_TO_GET_TRACE[];
-
- void generate_trace (ssize_t starting_frame_offset, size_t num_frames);
-};
-
-#include /**/ "ace/post.h"
-#endif /* ACE_STACK_TRACE_H */
-
-
diff --git a/dep/include/ace/Static_Object_Lock.h b/dep/include/ace/Static_Object_Lock.h
deleted file mode 100644
index c1d533552cb..00000000000
--- a/dep/include/ace/Static_Object_Lock.h
+++ /dev/null
@@ -1,79 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Static_Object_Lock.h
- *
- * $Id: Static_Object_Lock.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author David L. Levine <levine@cs.wustl.edu>
- * @author Matthias Kerkhoff
- * @author Per Andersson
- */
-//=============================================================================
-
-#ifndef ACE_STATIC_OBJECT_LOCK_H
-#define ACE_STATIC_OBJECT_LOCK_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_THREADS)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Recursive_Thread_Mutex;
-
-/**
- * @class ACE_Static_Object_Lock
- *
- * @brief Provide an interface to access a global lock.
- *
- * This class is used to serialize the creation of static
- * singleton objects. It really isn't needed any more, because
- * anyone can access ACE_STATIC_OBJECT_LOCK directly. But, it
- * is retained for backward compatibility.
- */
-class ACE_Export ACE_Static_Object_Lock
-{
-public:
- /// Static lock access point.
- static ACE_Recursive_Thread_Mutex *instance (void);
-
- /// For use only by ACE_Object_Manager to clean up lock if it
- /// what dynamically allocated.
- static void cleanup_lock (void);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_THREADS */
-
-// hack to get around errors while compiling using split-cpp
-#if defined (ACE_HAS_THREADS)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_IS_SPLITTING)
-typedef ACE_Cleanup_Adapter<ACE_Recursive_Thread_Mutex> ACE_Static_Object_Lock_Type;
-
-# if defined (__GNUC__)
-// With g++, suppress the warning that this is unused.
-static ACE_Static_Object_Lock_Type *ACE_Static_Object_Lock_lock __attribute__ ((unused)) = 0;
-# else
-static ACE_Static_Object_Lock_Type *ACE_Static_Object_Lock_lock = 0;
-# endif /* __GNUC__ */
-
-# endif /* ACE_IS_SPLITTING */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_THREADS */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_STATIC_OBJECT_LOCK_H */
-
diff --git a/dep/include/ace/Stats.h b/dep/include/ace/Stats.h
deleted file mode 100644
index 3d1d2be7f69..00000000000
--- a/dep/include/ace/Stats.h
+++ /dev/null
@@ -1,222 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Stats.h
- *
- * $Id: Stats.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author David L. Levine
- */
-//==========================================================================
-
-#ifndef ACE_STATS_H
-#define ACE_STATS_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Unbounded_Queue.h"
-#include "ace/Log_Msg.h"
-#include "ace/Basic_Stats.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Stats_Value
- *
- * @brief Helper class for ACE_Stats.
- *
- * Container struct for 64-bit signed quantity and its
- * precision. It would be nicer to use a fixed-point class, but
- * this is sufficient. Users typically don't need to use this
- * class directly; see ACE_Stats below.
- */
-class ACE_Export ACE_Stats_Value
-{
-public:
- /**
- * Constructor, which requires precision in terms of number of
- * decimal digits. The more variation in the data, and the greater
- * the data values, the smaller the precision must be to avoid
- * overflow in the standard deviation calculation. 3 might be a
- * good value, or maybe 4. 5 will probably be too large for
- * non-trivial data sets.
- */
- ACE_Stats_Value (const u_int precision);
-
- /// Accessor for precision.
- u_int precision (void) const;
-
- /// Set the whole_ field.
- void whole (const ACE_UINT32);
-
- /// Accessor for the whole_ field.
- ACE_UINT32 whole (void) const;
-
- /// Set the fractional_ field.
- void fractional (const ACE_UINT32);
-
- /// Accessor for the fractional_ field.
- ACE_UINT32 fractional (void) const;
-
- /// Calculates the maximum value of the fractional portion, given its
- /// precision.
- ACE_UINT32 fractional_field (void) const;
-
- /**
- * Access the value as an _unsigned_ 64 bit quantity. It scales the
- * value up by {precision} decimal digits, so that no precision will
- * be lost. It assumes that {whole_} is >= 0.
- */
- void scaled_value (ACE_UINT64 &) const;
-
- /// Print to stdout.
- void dump (void) const;
-
-private:
-
- ACE_Stats_Value (void) {}
-
-private:
- /// The integer portion of the value.
- ACE_UINT32 whole_;
-
- /// The fractional portion of the value.
- ACE_UINT32 fractional_;
-
- /**
- * The number of decimal digits of precision represented by
- * {fractional_}. Not declared const, so the only way to change it
- * is via the assignment operator.
- */
- u_int precision_;
-
-};
-
-/**
- * @class ACE_Stats
- *
- * @brief Provides simple statistical analysis.
- *
- * Simple statistical analysis package. Prominent features are:
- * -# It does not use any floating point arithmetic.
- * -# It handles positive and/or negative sample values. The
- * sample value type is ACE_INT32.
- * -# It uses 64 bit unsigned, but not 64 bit signed, quantities
- * internally.
- * -# It checks for overflow of internal state.
- * -# It has no static variables of other than built-in types.
- *
- * Example usage:
- *
- * @verbatim
- * ACE_Stats stats;
- * for (u_int i = 0; i < n; ++i)
- * {
- * const ACE_UINT32 sample = ...;
- * stats.sample (sample);
- * }
- * stats.print_summary (3);
- * @endverbatim
- */
-class ACE_Export ACE_Stats
-{
-public:
- /// Default constructor.
- ACE_Stats (void);
-
- /// Provide a new sample. Returns 0 on success, -1 if it fails due
- /// to running out of memory, or to rolling over of the sample count.
- int sample (const ACE_INT32 value);
-
- /// Access the number of samples provided so far.
- ACE_UINT32 samples (void) const;
-
- /// Value of the minimum sample provided so far.
- ACE_INT32 min_value (void) const;
-
- /// Value of the maximum sample provided so far.
- ACE_INT32 max_value (void) const;
-
- /**
- * Access the mean of all samples provided so far. The fractional
- * part is to the specified number of digits. E.g., 3 fractional
- * digits specifies that the fractional part is in thousandths.
- */
- void mean (ACE_Stats_Value &mean,
- const ACE_UINT32 scale_factor = 1);
-
- /// Access the standard deviation, whole and fractional parts. See
- /// description of {mean} method for argument descriptions.
- int std_dev (ACE_Stats_Value &std_dev,
- const ACE_UINT32 scale_factor = 1);
-
- /**
- * Print summary statistics. If scale_factor is not 1, then the
- * results are divided by it, i.e., each of the samples is scaled
- * down by it. If internal overflow is reached with the specified
- * scale factor, it successively tries to reduce it. Returns -1 if
- * there is overflow even with a 0 scale factor.
- */
- int print_summary (const u_int precision,
- const ACE_UINT32 scale_factor = 1,
- FILE * = stdout) const;
-
- /// Initialize internal state.
- void reset (void);
-
- /// Utility division function, for ACE_UINT64 dividend.
- static void quotient (const ACE_UINT64 dividend,
- const ACE_UINT32 divisor,
- ACE_Stats_Value &quotient);
-
- /// Utility division function, for ACE_Stats_Value dividend.
- static void quotient (const ACE_Stats_Value &dividend,
- const ACE_UINT32 divisor,
- ACE_Stats_Value &quotient);
-
- /**
- * Sqrt function, which uses an oversimplified version of Newton's
- * method. It's not fast, but it doesn't require floating point
- * support.
- */
- static void square_root (const ACE_UINT64 n,
- ACE_Stats_Value &square_root);
-
- /// Print summary statistics to stdout.
- void dump (void) const;
-
-protected:
- /// Internal indication of whether there has been overflow. Contains
- /// the errno corresponding to the cause of overflow.
- u_int overflow_;
-
- /// Number of samples.
- ACE_UINT32 number_of_samples_;
-
- /// Minimum sample value.
- ACE_INT32 min_;
-
- /// Maximum sample value.
- ACE_INT32 max_;
-
- /// The samples.
- ACE_Unbounded_Queue <ACE_INT32> samples_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-# include "ace/Stats.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ! ACE_STATS_H */
-
diff --git a/dep/include/ace/Stats.inl b/dep/include/ace/Stats.inl
deleted file mode 100644
index 4c76838c207..00000000000
--- a/dep/include/ace/Stats.inl
+++ /dev/null
@@ -1,104 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Stats.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Stats_Value::ACE_Stats_Value (const u_int precision)
- : whole_ (0),
- fractional_ (0),
- precision_ (precision)
-{
-}
-
-ACE_INLINE
-u_int
-ACE_Stats_Value::precision (void) const
-{
- return precision_;
-}
-
-ACE_INLINE
-void
-ACE_Stats_Value::whole (const ACE_UINT32 value)
-{
- whole_ = value;
-}
-
-ACE_INLINE
-ACE_UINT32
-ACE_Stats_Value::whole (void) const
-{
- return whole_;
-}
-
-ACE_INLINE
-void
-ACE_Stats_Value::fractional (const ACE_UINT32 value)
-{
- fractional_ = value;
-}
-
-ACE_INLINE
-ACE_UINT32
-ACE_Stats_Value::fractional (void) const
-{
- return fractional_;
-}
-
-ACE_INLINE
-void
-ACE_Stats_Value::scaled_value (ACE_UINT64 &sv) const
-{
- sv = whole () * fractional_field () + fractional ();
-}
-
-ACE_INLINE
-void
-ACE_Stats_Value::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("precision: %u digits; whole: %u, fractional: %u\n"),
- precision_, whole_, fractional_));
-#endif /* ACE_HAS_DUMP */
-}
-
-ACE_INLINE
-ACE_Stats::ACE_Stats (void)
-{
- reset ();
-}
-
-ACE_INLINE
-ACE_UINT32
-ACE_Stats::samples (void) const
-{
- return number_of_samples_;
-}
-
-ACE_INLINE
-ACE_INT32
-ACE_Stats::min_value (void) const
-{
- return min_;
-}
-
-ACE_INLINE
-ACE_INT32
-ACE_Stats::max_value (void) const
-{
- return max_;
-}
-
-ACE_INLINE
-void
-ACE_Stats::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- print_summary (3u);
-#endif /* ACE_HAS_DUMP */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Strategies.h b/dep/include/ace/Strategies.h
deleted file mode 100644
index 0c31bc144c5..00000000000
--- a/dep/include/ace/Strategies.h
+++ /dev/null
@@ -1,33 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Strategies.h
- *
- * $Id: Strategies.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_STRATEGIES_H
-#define ACE_STRATEGIES_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-/// Place holder for backward compatibility..
-#include "ace/Connection_Recycling_Strategy.h"
-#include "ace/Hashable.h"
-#include "ace/Notification_Strategy.h"
-#include "ace/Reactor_Notification_Strategy.h"
-#include "ace/Recyclable.h"
-#include "ace/Refcountable.h"
-
-#include /**/ "ace/post.h"
-#endif /*ACE_STRATEGIES_H*/
-
diff --git a/dep/include/ace/Strategies_T.h b/dep/include/ace/Strategies_T.h
deleted file mode 100644
index b962efc797f..00000000000
--- a/dep/include/ace/Strategies_T.h
+++ /dev/null
@@ -1,1076 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Strategies_T.h
- *
- * $Id: Strategies_T.h 81954 2008-06-15 13:24:16Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_STRATEGIES_T_H
-#define ACE_STRATEGIES_T_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Hash_Map_Manager_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Reactor.h"
-#include "ace/Thread_Manager.h"
-#include "ace/Connection_Recycling_Strategy.h"
-#include "ace/Refcountable.h"
-#include "ace/Hashable.h"
-#include "ace/Recyclable.h"
-#include "ace/Reverse_Lock_T.h"
-
-// Needed for broken linkers that can't grok long symbols.
-#define ACE_Refcounted_Hash_Recyclable ARHR
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Service_Repository;
-
-/**
- * @class ACE_Recycling_Strategy
- *
- * @brief Defines the interface (and default implementation) for
- * specifying a recycling strategy for a SVC_HANDLER.
- *
- * Acts as a consular to the Svc_Handler, preparing it for the
- * tough times ahead when the Svc_Handler will be recycled.
- */
-template<class SVC_HANDLER>
-class ACE_Recycling_Strategy
-{
-public:
-
- // Useful STL-style traits.
- typedef typename SVC_HANDLER::addr_type addr_type;
- typedef SVC_HANDLER handler_type;
- typedef typename SVC_HANDLER::stream_type stream_type;
-
- /// Virtual Destructor
- virtual ~ACE_Recycling_Strategy (void);
-
- /// Tell the Svc_Handler something about the recycler, so that it can
- /// reach the recycler when necessary.
- virtual int assign_recycler (SVC_HANDLER *svc_handler,
- ACE_Connection_Recycling_Strategy *recycler,
- const void *recycling_act);
-
- /// This allows us to prepare the svc_handler for recycling.
- virtual int prepare_for_recycling (SVC_HANDLER *svc_handler);
-};
-
-/**
- * @class ACE_Creation_Strategy
- *
- * @brief Defines the interface for specifying a creation strategy for
- * a SVC_HANDLER.
- *
- * The default behavior is to make a new SVC_HANDLER. However,
- * subclasses can override this strategy to perform SVC_HANDLER
- * creation in any way that they like (such as creating subclass
- * instances of SVC_HANDLER, using a singleton, dynamically
- * linking the handler, etc.).
- */
-template <class SVC_HANDLER>
-class ACE_Creation_Strategy
-{
-public:
-
- // Useful STL-style traits.
- typedef typename SVC_HANDLER::addr_type addr_type;
- typedef SVC_HANDLER handler_type;
- typedef typename SVC_HANDLER::stream_type stream_type;
-
- // = Initialization and termination methods.
-
- /// Default constructor.
- ACE_Creation_Strategy (ACE_Thread_Manager * = 0,
- ACE_Reactor * = ACE_Reactor::instance ());
-
- /// An ACE_Thread_Manager is useful when creating active objects and
- /// the ACE_Reactor is used to initialize the service handler's reactor.
- int open (ACE_Thread_Manager * = 0,
- ACE_Reactor * = ACE_Reactor::instance ());
-
- virtual ~ACE_Creation_Strategy (void);
-
- // = Factory method.
- /**
- * Create a SVC_HANDLER with the appropriate creation strategy. The
- * default behavior of this method is to make a new SVC_HANDLER if
- * @a sh == 0 (passing in the <Thread_Manager>), else @a sh is
- * unchanged. Returns -1 on failure, else 0.
- */
- virtual int make_svc_handler (SVC_HANDLER *&sh);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Pointer to a thread manager.
- ACE_Thread_Manager *thr_mgr_;
-
- /// Pointer to an ACE_Reactor.
- ACE_Reactor *reactor_;
-};
-
-/**
- * @class ACE_Singleton_Strategy
- *
- * @brief Defines the interface for specifying a creation strategy for
- * a SVC_HANDLER that always returns the same SVC_HANDLER (i.e.,
- * it's a Singleton).
- *
- * Note that this class takes over the ownership of the
- * SVC_HANDLER passed into it as a parameter and it becomes
- * responsible for deleting this object.
- */
-template <class SVC_HANDLER>
-class ACE_Singleton_Strategy : public ACE_Creation_Strategy<SVC_HANDLER>
-{
-public:
-
- // Useful STL-style traits.
- typedef ACE_Creation_Strategy<SVC_HANDLER> base_type;
-
- // = Initialization and termination methods.
- ACE_Singleton_Strategy (SVC_HANDLER * = 0,
- ACE_Thread_Manager * = 0);
- int open (SVC_HANDLER *,
- ACE_Thread_Manager * = 0);
- virtual ~ACE_Singleton_Strategy (void);
-
- // = Factory method.
- /// Create a Singleton SVC_HANDLER by always returning the same
- /// SVC_HANDLER. Returns -1 on failure, else 0.
- virtual int make_svc_handler (SVC_HANDLER *&);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Pointer to the Singleton svc_handler.
- SVC_HANDLER *svc_handler_;
-
- /// Keep track of whether we need to delete the SVC_HANDLER.
- bool delete_svc_handler_;
-};
-
-/**
- * @class ACE_DLL_Strategy
- *
- * @brief Defines the interface for specifying a creation strategy for
- * a SVC_HANDLER based on dynamic linking of the SVC_HANDLER.
- */
-template <class SVC_HANDLER>
-class ACE_DLL_Strategy : public ACE_Creation_Strategy<SVC_HANDLER>
-{
-public:
-
- // Useful STL-style traits.
- typedef ACE_Creation_Strategy<SVC_HANDLER> base_type;
-
- // = Intialization and termination methods.
-
- /// "Do-nothing" constructor.
- ACE_DLL_Strategy (void);
-
- /// Initialize the DLL strategy based upon the service's DLL
- /// information contained in the <svc_dll_info> string.
- ACE_DLL_Strategy (const ACE_TCHAR dll_name[],
- const ACE_TCHAR factory_function[],
- const ACE_TCHAR svc_name[],
- ACE_Service_Repository *,
- ACE_Thread_Manager * = 0);
-
- /// Initialize the DLL strategy based upon the service's DLL
- /// information contained in the <svc_dll_info> string.
- int open (const ACE_TCHAR dll_name[],
- const ACE_TCHAR factory_function[],
- const ACE_TCHAR svc_name[],
- ACE_Service_Repository *,
- ACE_Thread_Manager * = 0);
-
- // = Factory method.
- /// Create a SVC_HANDLER by dynamically linking it from a DLL.
- /// Returns -1 on failure, else 0.
- virtual int make_svc_handler (SVC_HANDLER *&);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- typedef ACE_Creation_Strategy<SVC_HANDLER> inherited;
-
- /// Name of the DLL to dynamically link.
- ACE_TCHAR dll_name_[MAXPATHLEN + 1];
-
- /// Name of the factory function in the shared library to use to
- /// obtain a pointer to the new SVC_HANDLER.
- ACE_TCHAR factory_function_[MAXPATHLEN + 1];
-
- /// Name of the service.
- ACE_TCHAR svc_name_[MAXNAMELEN + 1];
-
- /// Pointer to the <Service_Repository>.
- ACE_Service_Repository *svc_rep_;
-};
-
-/**
- * @class ACE_Concurrency_Strategy
- *
- * @brief Defines the interface for specifying a concurrency strategy
- * for a SVC_HANDLER.
- *
- * Default behavior is to activate the SVC_HANDLER by calling
- * its <open> method (which allows the SVC_HANDLER to define its
- * own concurrency strategy). However, subclasses can override
- * this default strategy to do more sophisticated concurrency
- * activations (such as creating the SVC_HANDLER as an active
- * object via multi-threading or multi-processing).
- */
-template <class SVC_HANDLER>
-class ACE_Concurrency_Strategy
-{
-public:
-
- // Useful STL-style traits.
- typedef typename SVC_HANDLER::addr_type addr_type;
- typedef SVC_HANDLER handler_type;
- typedef typename SVC_HANDLER::stream_type stream_type;
-
- /// Constructor
- ACE_Concurrency_Strategy (int flags = 0);
-
- // = Factory method.
- /**
- * Activate the <svc_handler> with an appropriate concurrency
- * strategy. The default behavior of this method is to activate the
- * SVC_HANDLER by calling its <open> method (which allows the
- * SVC_HANDLER to define its own concurrency strategy).
- */
- virtual int activate_svc_handler (SVC_HANDLER *svc_handler,
- void *arg = 0);
-
- virtual ~ACE_Concurrency_Strategy (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
-
- /// Flags that are parsed to set options for the connected
- /// SVC_HANDLER.
- int flags_;
-};
-
-/**
- * @class ACE_Reactive_Strategy
- *
- * @brief Defines the interface for specifying a reactive concurrency
- * strategy for a SVC_HANDLER, where all upcalls to @c handle_*()
- * methods run in the reactor's thread of control.
- *
- * This class provides a strategy that registers the
- * SVC_HANDLER with a <Reactor>.
- */
-template <class SVC_HANDLER>
-class ACE_Reactive_Strategy : public ACE_Concurrency_Strategy <SVC_HANDLER>
-{
-public:
-
- // Useful STL-style traits.
- typedef ACE_Concurrency_Strategy<SVC_HANDLER> base_type;
-
- // = Intialization and termination methods.
- /// "Do-nothing constructor"
- ACE_Reactive_Strategy (int flags = 0);
-
- /// Initialize the strategy.
- ACE_Reactive_Strategy (ACE_Reactor *reactor,
- ACE_Reactor_Mask = ACE_Event_Handler::READ_MASK,
- int flags = 0);
-
- /// Initialize the strategy.
- virtual int open (ACE_Reactor *reactor,
- ACE_Reactor_Mask = ACE_Event_Handler::READ_MASK,
- int flags = 0);
-
- /// Destructor.
- virtual ~ACE_Reactive_Strategy (void);
-
- // = Factory method.
- /// Activate the <svc_handler> by registering it with the <Reactor>
- /// and then calling it's <open> hook.
- virtual int activate_svc_handler (SVC_HANDLER *svc_handler,
- void *arg = 0);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- typedef ACE_Concurrency_Strategy<SVC_HANDLER> inherited;
-
- /// Pointer to the Reactor we'll use to register the SVC_HANDLER.
- ACE_Reactor *reactor_;
-
- /// The mask that we pass to the <Reactor> when we register the
- /// SVC_HANDLER.
- ACE_Reactor_Mask mask_;
-};
-
-/**
- * @class ACE_Thread_Strategy
- *
- * @brief Defines the interface for specifying a concurrency strategy
- * for a SVC_HANDLER based on multithreading.
- *
- * This class provides a strategy that manages the creation of threads
- * to handle requests from clients concurrently via a
- * thread-per-connection model. It behaves as a "thread factory",
- * spawning threads "on-demand" to run the service specified by a
- * user-supplied SVC_HANDLER.
- */
-template <class SVC_HANDLER>
-class ACE_Thread_Strategy : public ACE_Concurrency_Strategy<SVC_HANDLER>
-{
-public:
-
- // Useful STL-style traits.
- typedef ACE_Concurrency_Strategy<SVC_HANDLER> base_type;
-
- // = Intialization and termination methods.
- /// "Do-nothing constructor"
- ACE_Thread_Strategy (int flags = 0);
-
- /// Initialize the strategy.
- ACE_Thread_Strategy (ACE_Thread_Manager *tm,
- long thr_flags,
- int n_threads = 1,
- int flags = 0);
-
- /// Initialize the strategy.
- virtual int open (ACE_Thread_Manager *tm,
- long thr_flags,
- int n_threads = 1,
- int flags = 0);
-
- virtual ~ACE_Thread_Strategy (void);
-
- // = Factory method.
- /**
- * Activate the @a svc_handler with an appropriate concurrency
- * strategy. This method activates the SVC_HANDLER by first calling
- * its <open> method and then calling its <activate> method to turn
- * it into an active object.
- */
- virtual int activate_svc_handler (SVC_HANDLER *svc_handler,
- void *arg = 0);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- typedef ACE_Concurrency_Strategy<SVC_HANDLER> inherited;
-
- /// Thread manager for this class (must be provided).
- ACE_Thread_Manager *thr_mgr_;
-
- /// Flags to pass into the <SVC_HANDLER::activate> method.
- long thr_flags_;
-
- /// Number of threads to spawn.
- int n_threads_;
-};
-
-/**
- * @class ACE_Process_Strategy
- *
- * @brief Defines the interface for specifying a concurrency strategy
- * for a @c SVC_HANDLER based on multiprocessing.
- *
- * This class provides a strategy that manages the creation of
- * processes to handle requests from clients concurrently using a
- * process-per-connection model. It behaves as a "process factory",
- * using @c ACE::fork() to fork threads "on-demand" to run the service
- * specified by a user-supplied @c SVC_HANDLER in a separate process.
- */
-template <class SVC_HANDLER>
-class ACE_Process_Strategy : public ACE_Concurrency_Strategy<SVC_HANDLER>
-{
-public:
-
- // Useful STL-style traits.
- typedef ACE_Concurrency_Strategy<SVC_HANDLER> base_type;
-
- // = Intialization and termination methods.
-
- /// Initialize the strategy. If @a avoid_zombies is non-0 then set a
- /// flag to ACE::fork() to avoid zombies.
- ACE_Process_Strategy (size_t n_processes = 1,
- ACE_Event_Handler *acceptor = 0,
- ACE_Reactor * = 0,
- int avoid_zombies = 0);
-
- /// Initialize the strategy. If @a avoid_zombies is non-0 then set a
- /// flag to ACE::fork() to avoid zombies.
- virtual int open (size_t n_processes = 1,
- ACE_Event_Handler *acceptor = 0,
- ACE_Reactor * = 0,
- int avoid_zombies = 0);
-
- virtual ~ACE_Process_Strategy (void);
-
- // = Factory method.
- /**
- * Activate the @a svc_handler with an appropriate concurrency
- * strategy. This method activates the SVC_HANDLER by first forking
- * and then calling the @c open() method of the SVC_HANDLER in the
- * child.
- */
- virtual int activate_svc_handler (SVC_HANDLER *svc_handler,
- void *arg = 0);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- typedef ACE_Concurrency_Strategy<SVC_HANDLER> inherited;
-
- /// Number of processes to spawn.
- size_t n_processes_;
-
- /**
- * This is the @c Acceptor in the parent is listening on. We need to
- * make sure that we remove it from the Reactor and close it down in
- * the child.
- */
- ACE_Event_Handler *acceptor_;
-
- /**
- * This is the reactor the child is using in conjunction with the
- * acceptor. We need to remove the acceptor from this reactor
- * in the child.
- */
- ACE_Reactor *reactor_;
-};
-
-/**
- * @class ACE_Accept_Strategy
- *
- * @brief Defines the interface for specifying a passive connection
- * acceptance strategy for a SVC_HANDLER.
- *
- * This class provides a strategy that manages passive
- * connection acceptance of a client.
- */
-template <class SVC_HANDLER, ACE_PEER_ACCEPTOR_1>
-class ACE_Accept_Strategy
-{
-public:
-
- // Useful STL-style traits.
- typedef ACE_PEER_ACCEPTOR_ADDR addr_type;
- typedef ACE_PEER_ACCEPTOR acceptor_type;
- typedef SVC_HANDLER handler_type;
- typedef typename SVC_HANDLER::stream_type stream_type;
-
- // = Initialization and termination methods.
- /// Default constructor.
- ACE_Accept_Strategy (ACE_Reactor *reactor = ACE_Reactor::instance ());
-
- /// Initialize the @c peer_acceptor_ with @a local_addr.
- ACE_Accept_Strategy (const ACE_PEER_ACCEPTOR_ADDR &local_addr,
- int restart = 0,
- ACE_Reactor *reactor = ACE_Reactor::instance ());
-
- /// Initialize the <peer_acceptor_> with @a local_addr, indicating
- /// whether to @a reuse_addr if it's already in use.
- virtual int open (const ACE_PEER_ACCEPTOR_ADDR &local_addr,
- int reuse_addr = 0);
-
- /// Return the underlying ACE_HANDLE of the <peer_acceptor_>.
- virtual ACE_HANDLE get_handle (void) const;
-
- /// Return a reference to the <peer_acceptor_>.
- virtual ACE_PEER_ACCEPTOR &acceptor (void) const;
-
- virtual ~ACE_Accept_Strategy (void);
-
- // = Factory method.
- /// The default behavior delegates to the <accept> method of the
- /// PEER_ACCEPTOR.
- virtual int accept_svc_handler (SVC_HANDLER *);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Factory that establishes connections passively.
- ACE_PEER_ACCEPTOR peer_acceptor_;
-
- /// Pointer to the reactor used by the Acceptor.
- ACE_Reactor *reactor_;
-
- /// Needed to reopen the socket if <accept> fails.
- int reuse_addr_;
-
- /// Needed to reopen the socket if <accept> fails.
- ACE_PEER_ACCEPTOR_ADDR peer_acceptor_addr_;
-};
-
-/**
- * @class ACE_Connect_Strategy
- *
- * @brief Defines the interface for specifying an active
- * connection establishment strategy for a SVC_HANDLER.
- *
- * This class provides a strategy that manages active
- * connection establishment to a server.
- */
-template <class SVC_HANDLER, ACE_PEER_CONNECTOR_1>
-class ACE_Connect_Strategy
-{
-public:
-
- // Useful STL-style traits.
- typedef ACE_PEER_CONNECTOR_ADDR addr_type;
- typedef ACE_PEER_CONNECTOR connector_type;
- typedef SVC_HANDLER handler_type;
- typedef typename SVC_HANDLER::stream_type stream_type;
-
- // = Initialization and termination methods.
- /// Default constructor.
- ACE_Connect_Strategy (void);
-
- /// Return a reference to the <peer_connector_>.
- virtual ACE_PEER_CONNECTOR &connector (void) const;
-
- virtual ~ACE_Connect_Strategy (void);
-
- // = Factory method.
- /// The default behavior delegates to the <connect> method of the
- /// <PEER_CONNECTOR::connect>.
- virtual int connect_svc_handler (SVC_HANDLER *&sh,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- ACE_Time_Value *timeout,
- const ACE_PEER_CONNECTOR_ADDR &local_addr,
- int reuse_addr,
- int flags,
- int perms);
-
- /**
- * The default behavior delegates to the <connect> method of the
- * <PEER_CONNECTOR::connect>.
- * Please check the documentation in Connector.h for more details.
- */
- virtual int connect_svc_handler (SVC_HANDLER *&sh,
- SVC_HANDLER *&sh_copy,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- ACE_Time_Value *timeout,
- const ACE_PEER_CONNECTOR_ADDR &local_addr,
- int reuse_addr,
- int flags,
- int perms);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Factory that establishes connections actively.
- ACE_PEER_CONNECTOR connector_;
-};
-
-/**
- * @class ACE_Scheduling_Strategy
- *
- * @brief Defines the interface for specifying how to suspend and
- * resume a service .
- *
- * This class provides a strategy that allows arbitrarily
- * sophisticated service suspension and resumption. The default
- * behavior is to do nothing...
- */
-template <class SVC_HANDLER>
-class ACE_Scheduling_Strategy
-{
-public:
-
- // Useful STL-style traits.
- typedef typename SVC_HANDLER::addr_type addr_type;
- typedef SVC_HANDLER handler_type;
- typedef typename SVC_HANDLER::stream_type stream_type;
-
- // = Initialization and termination methods.
-
- /// Constructor
- ACE_Scheduling_Strategy (SVC_HANDLER * = 0);
-
- /// Destructor
- virtual ~ACE_Scheduling_Strategy (void);
-
- // = Scheduling methods
-
- /// Suspend hook.
- virtual int suspend (void);
-
- /// Resume hook.
- virtual int resume (void);
-
- /// Dump the state of the object.
- virtual void dump (void) const;
-};
-
-/**
- * @class ACE_Schedule_All_Reactive_Strategy
- *
- * @brief Defines the interface for specifying how to suspend and
- * resume a single-threaded reactive service .
- *
- * This class provides a strategy that suspends and resumes all
- * the Event_Handlers in a Reactor in one fell swoop.
- */
-template <class SVC_HANDLER>
-class ACE_Schedule_All_Reactive_Strategy
- : public ACE_Scheduling_Strategy<SVC_HANDLER>
-{
-public:
-
- // Useful STL-style traits.
- typedef ACE_Scheduling_Strategy<SVC_HANDLER> base_type;
-
- // = Initialization and termination methods.
- /// Constructor
- ACE_Schedule_All_Reactive_Strategy (SVC_HANDLER * = 0);
-
- // = Scheduling methods
-
- /// Suspend hook.
- virtual int suspend (void);
-
- /// Resume hook.
- virtual int resume (void);
-
- /// Dump the state of the object.
- virtual void dump (void) const;
-
-protected:
-
- /// Reactor
- ACE_Reactor *reactor_;
-};
-
-/**
- * @class ACE_Schedule_All_Threaded_Strategy
- *
- * @brief Defines the interface for specifying how to suspend and
- * resume a multithreaded service .
- *
- * This class provides a strategy that suspends and resumes all
- * the Event_Handlers controlled by a Thread_Manager in one fell swoop.
- */
-template <class SVC_HANDLER>
-class ACE_Schedule_All_Threaded_Strategy
- : public ACE_Scheduling_Strategy<SVC_HANDLER>
-{
-public:
-
- // Useful STL-style traits.
- typedef ACE_Scheduling_Strategy<SVC_HANDLER> base_type;
-
- // = Initialization and termination methods.
- /// Constructor
- ACE_Schedule_All_Threaded_Strategy (SVC_HANDLER * = 0);
-
- // = Scheduling methods
-
- /// Suspend hook.
- virtual int suspend (void);
-
- /// Resume hook.
- virtual int resume (void);
-
- /// Dump the state of the object.
- virtual void dump (void) const;
-
-protected:
-
- /// Thread Manager
- ACE_Thread_Manager *thr_mgr_;
-};
-
-/**
- * @class ACE_NOOP_Creation_Strategy
- *
- * @brief Implements a no-op creation strategy in order to defer
- * decisions regarding creation to some later point in time, such
- * as in connect or accept strategy.
- *
- * An example of the use of this is in the
- * ACE_Cached_Connect_Strategy, which only returns a single
- * connection for a given endpoint.
- */
-template <class SVC_HANDLER>
-class ACE_NOOP_Creation_Strategy : public ACE_Creation_Strategy<SVC_HANDLER>
-{
-public:
-
- // Useful STL-style traits.
- typedef ACE_Creation_Strategy<SVC_HANDLER> base_type;
-
- /// This is a no-op.
- virtual int make_svc_handler (SVC_HANDLER *&);
-};
-
-/**
- * @class ACE_NOOP_Concurrency_Strategy
- *
- * @brief Implements a no-op activation strategy in order to avoid
- * calling open on a svc_handler multiple times.
- *
- * An example of the use of this is in the
- * ACE_Cached_Connect_Strategy, which reuses svc_handlers.
- * Therefore we don't want to call open on the recycled
- * svc_handler more than once.
- */
-template <class SVC_HANDLER>
-class ACE_NOOP_Concurrency_Strategy
- : public ACE_Concurrency_Strategy<SVC_HANDLER>
-{
-public:
-
- // Useful STL-style traits.
- typedef ACE_Concurrency_Strategy<SVC_HANDLER> base_type;
-
- // = Factory method.
- /// This is a no-op.
- virtual int activate_svc_handler (SVC_HANDLER *svc_handler,
- void *arg = 0);
-};
-
-template <class T>
-class ACE_Refcounted_Hash_Recyclable : public ACE_Refcountable,
- public ACE_Hashable,
- public ACE_Recyclable
-{
-public:
- /// Default constructor.
- ACE_Refcounted_Hash_Recyclable (void);
-
- /// Constructor.
- ACE_Refcounted_Hash_Recyclable (const T &t,
- long refcount = 0,
- ACE_Recyclable_State state = ACE_RECYCLABLE_UNKNOWN);
-
- /// Destructor
- virtual ~ACE_Refcounted_Hash_Recyclable (void);
-
- /// Compares two instances.
- bool operator== (const ACE_Refcounted_Hash_Recyclable<T> &rhs) const;
- bool operator!= (const ACE_Refcounted_Hash_Recyclable<T> &rhs) const;
-
- T &subject ();
-
-protected:
- /// Computes and returns hash value.
- u_long hash_i (void) const;
-
- T t_;
-};
-
-/**
- * @class ACE_Cached_Connect_Strategy
- *
- * @brief A connection strategy which caches connections to peers
- * (represented by SVC_HANDLER instances), thereby allowing
- * subsequent re-use of unused, but available, connections.
- *
- * <ACE_Cached_Connect_Strategy> is intended to be used as a
- * plug-in connection strategy for ACE_Strategy_Connector.
- * It's added value is re-use of established connections.
- */
-template <class SVC_HANDLER, ACE_PEER_CONNECTOR_1, class MUTEX>
-class ACE_Cached_Connect_Strategy
- : public ACE_Connection_Recycling_Strategy,
- public ACE_Connect_Strategy<SVC_HANDLER, ACE_PEER_CONNECTOR_2>
-{
-public:
-
- // Useful STL-style traits.
- typedef ACE_Creation_Strategy<SVC_HANDLER>
- creation_strategy_type;
- typedef ACE_Connect_Strategy<SVC_HANDLER, ACE_PEER_CONNECTOR_2>
- connect_strategy_type;
- typedef ACE_Concurrency_Strategy<SVC_HANDLER>
- concurrency_strategy_type;
- typedef ACE_Recycling_Strategy<SVC_HANDLER> recycling_strategy_type;
-
- // = Define some useful (old style) traits.
- typedef ACE_Creation_Strategy<SVC_HANDLER>
- CREATION_STRATEGY;
- typedef ACE_Concurrency_Strategy<SVC_HANDLER>
- CONCURRENCY_STRATEGY;
- typedef ACE_Recycling_Strategy<SVC_HANDLER>
- RECYCLING_STRATEGY;
-
- // = Super class
- typedef ACE_Connect_Strategy<SVC_HANDLER, ACE_PEER_CONNECTOR_2>
- CONNECT_STRATEGY;
-
- typedef ACE_Cached_Connect_Strategy<SVC_HANDLER, ACE_PEER_CONNECTOR_2, MUTEX> SELF;
-
- /// Constructor
- ACE_Cached_Connect_Strategy (ACE_Creation_Strategy<SVC_HANDLER> *cre_s = 0,
- ACE_Concurrency_Strategy<SVC_HANDLER> *con_s = 0,
- ACE_Recycling_Strategy<SVC_HANDLER> *rec_s = 0,
- MUTEX *mutex = 0,
- bool delete_lock = false);
-
- /// Destructor
- virtual ~ACE_Cached_Connect_Strategy (void);
-
- /// This methods allow you to change the strategies used by the
- /// cached connector.
- virtual int open (ACE_Creation_Strategy<SVC_HANDLER> *cre_s,
- ACE_Concurrency_Strategy<SVC_HANDLER> *con_s,
- ACE_Recycling_Strategy<SVC_HANDLER> *rec_s);
-
- /// Template method for making a new <svc_handler>
- virtual int make_svc_handler (SVC_HANDLER *&sh);
-
- /// Template method for activating a new <svc_handler>
- virtual int activate_svc_handler (SVC_HANDLER *svc_handler);
-
- /// Template method for setting the recycler information of the
- /// svc_handler.
- virtual int assign_recycler (SVC_HANDLER *svc_handler,
- ACE_Connection_Recycling_Strategy *recycler,
- const void *recycling_act);
-
- /// Template method for preparing the svc_handler for recycling.
- virtual int prepare_for_recycling (SVC_HANDLER *svc_handler);
-
- /**
- * Checks to see if there is already a <SVC_HANDLER> in the cache
- * connected to the <remote_addr>. If so, we return this pointer.
- * Otherwise we establish the connection, put it into the cache, and
- * return the SVC_HANDLER pointer. <[NOTE]>: the <{reuse_addr}>
- * argument does NOT control re-use of addresses in the cache.
- * Rather, if the underlying protocol requires a "dead time" prior
- * to re-use of its addresses (TCP is a classic example of this),
- * <{and}> the protocol provides a means by which to defeat the dead
- * time, setting this argument to non-zero will defeat the dead-time
- * requirement. <{Dev. Note: We might want to consider enhancing
- * the interface at some point so that this also controls re-use of
- * the cache.}>
- */
- virtual int connect_svc_handler (SVC_HANDLER *&sh,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- ACE_Time_Value *timeout,
- const ACE_PEER_CONNECTOR_ADDR &local_addr,
- int reuse_addr,
- int flags,
- int perms);
- virtual int connect_svc_handler (SVC_HANDLER *&sh,
- SVC_HANDLER *&sh_copy,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- ACE_Time_Value *timeout,
- const ACE_PEER_CONNECTOR_ADDR &local_addr,
- int reuse_addr,
- int flags,
- int perms);
-
- /// Remove from cache.
- virtual int purge (const void *recycling_act);
-
- /// Add to cache.
- virtual int cache (const void *recycling_act);
-
- /// Get/Set <recycle_state>.
- virtual int recycle_state (const void *recycling_act,
- ACE_Recyclable_State new_state);
- virtual ACE_Recyclable_State recycle_state (const void *recycling_act) const;
-
- /// Mark as closed.
- virtual int mark_as_closed (const void *recycling_act);
-
- /**
- * Mark as closed (non-locking version). This method needs to be public
- * as it is used in the cleanup of handlers where teh locked version causes
- * a deadlock.
- */
- virtual int mark_as_closed_i (const void *recycling_act);
-
- /// Cleanup hint and reset <*act_holder> to zero if <act_holder != 0>.
- virtual int cleanup_hint (const void *recycling_act,
- void **act_holder = 0);
-
- // = Traits for managing the map
- typedef ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>
- REFCOUNTED_HASH_RECYCLABLE_ADDRESS;
- typedef ACE_Hash_Map_Manager_Ex<REFCOUNTED_HASH_RECYCLABLE_ADDRESS, SVC_HANDLER *, ACE_Hash<REFCOUNTED_HASH_RECYCLABLE_ADDRESS>, ACE_Equal_To<REFCOUNTED_HASH_RECYCLABLE_ADDRESS>, ACE_Null_Mutex>
- CONNECTION_MAP;
-
- typedef typename CONNECTION_MAP::ITERATOR CONNECTION_MAP_ITERATOR;
- typedef typename CONNECTION_MAP::ENTRY CONNECTION_MAP_ENTRY;
-
- typedef ACE_Reverse_Lock<MUTEX> REVERSE_MUTEX;
-
- // = Strategy accessors
- virtual ACE_Creation_Strategy<SVC_HANDLER> *creation_strategy (void) const;
- virtual ACE_Recycling_Strategy<SVC_HANDLER> *recycling_strategy (void) const;
- virtual ACE_Concurrency_Strategy<SVC_HANDLER> *concurrency_strategy (void) const;
-
-protected:
-
- /// Creates a new connection.
- virtual int new_connection (SVC_HANDLER *&sh,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- ACE_Time_Value *timeout,
- const ACE_PEER_CONNECTOR_ADDR &local_addr,
- int reuse_addr,
- int flags,
- int perms);
-
- /// Find an idle handle.
- int find (REFCOUNTED_HASH_RECYCLABLE_ADDRESS &search_addr,
- CONNECTION_MAP_ENTRY *&entry);
-
- /// Remove from cache (non-locking version).
- virtual int purge_i (const void *recycling_act);
-
- /// Add to cache (non-locking version).
- virtual int cache_i (const void *recycling_act);
-
- /// Set <recycle_state> (non-locking version).
- virtual int recycle_state_i (const void *recycling_act,
- ACE_Recyclable_State new_state);
-
- /// Get <recycle_state> (non-locking version).
- virtual ACE_Recyclable_State recycle_state_i (const void *recycling_act) const;
-
- /// Cleanup hint and reset <*act_holder> to zero if <act_holder != 0>.
- virtual int cleanup_hint_i (const void *recycling_act,
- void **act_holder);
-
- // = Helpers
- int check_hint_i (SVC_HANDLER *&sh,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- ACE_Time_Value *timeout,
- const ACE_PEER_CONNECTOR_ADDR &local_addr,
- int reuse_addr,
- int flags,
- int perms,
- CONNECTION_MAP_ENTRY *&entry,
- int &found);
-
- int find_or_create_svc_handler_i (SVC_HANDLER *&sh,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- ACE_Time_Value *timeout,
- const ACE_PEER_CONNECTOR_ADDR &local_addr,
- int reuse_addr,
- int flags,
- int perms,
- CONNECTION_MAP_ENTRY *&entry,
- int &found);
-
- virtual int connect_svc_handler_i (
- SVC_HANDLER *&sh,
- const ACE_PEER_CONNECTOR_ADDR &remote_addr,
- ACE_Time_Value *timeout,
- const ACE_PEER_CONNECTOR_ADDR &local_addr,
- int reuse_addr,
- int flags,
- int perms,
- int &found);
-
- /// Table that maintains the cache of connected SVC_HANDLERs.
- CONNECTION_MAP connection_map_;
-
- /// Mutual exclusion for this object.
- MUTEX *lock_;
-
- /// Mutual exclusion for this object.
- bool delete_lock_;
-
- /// Reverse lock.
- REVERSE_MUTEX *reverse_lock_;
-
- // = Strategy objects.
-
- /// Creation strategy for an <Connector>.
- CREATION_STRATEGY *creation_strategy_;
-
- /// true if <Connector> created the creation strategy and thus should
- /// delete it, else false.
- bool delete_creation_strategy_;
-
- /// Concurrency strategy for an <Connector>.
- CONCURRENCY_STRATEGY *concurrency_strategy_;
-
- /// true if <Connector> created the concurrency strategy and thus should
- /// delete it, else false.
- bool delete_concurrency_strategy_;
-
- /// Recycling strategy for an <Connector>.
- RECYCLING_STRATEGY *recycling_strategy_;
-
- /// true if <Connector> created the recycling strategy and thus should
- /// delete it, else false.
- bool delete_recycling_strategy_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Strategies_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Strategies_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Strategies_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_STRATEGIES_T_H */
-
diff --git a/dep/include/ace/Strategies_T.inl b/dep/include/ace/Strategies_T.inl
deleted file mode 100644
index f3ae267bc13..00000000000
--- a/dep/include/ace/Strategies_T.inl
+++ /dev/null
@@ -1,230 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Strategies_T.inl 81503 2008-04-28 18:28:15Z johnnyw $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class SVC_HANDLER> ACE_INLINE
-ACE_Singleton_Strategy<SVC_HANDLER>::ACE_Singleton_Strategy (SVC_HANDLER *sh,
- ACE_Thread_Manager *tm)
- : svc_handler_ (0),
- delete_svc_handler_ (1)
-{
- ACE_TRACE ("ACE_Singleton_Strategy<SVC_HANDLER>::ACE_Singleton_Strategy");
- if (this->open (sh, tm) == -1)
- ACE_ERROR ((LM_ERROR,
- ACE_TEXT ("%p\n"),
- ACE_TEXT ("ACE_Singleton_Strategy")));
-}
-
-template <class SVC_HANDLER> ACE_INLINE int
-ACE_Creation_Strategy<SVC_HANDLER>::open (ACE_Thread_Manager *thr_mgr,
- ACE_Reactor *reactor)
-{
- ACE_TRACE ("ACE_Creation_Strategy<SVC_HANDLER>::open");
- this->thr_mgr_ = thr_mgr;
- this->reactor_ = reactor;
- return 0;
-}
-
-template <class SVC_HANDLER> ACE_INLINE
-ACE_Creation_Strategy<SVC_HANDLER>::ACE_Creation_Strategy (ACE_Thread_Manager *thr_mgr,
- ACE_Reactor *reactor)
-{
- ACE_TRACE ("ACE_Creation_Strategy<SVC_HANDLER>::ACE_Creation_Strategy");
- if (this->open (thr_mgr, reactor) == -1)
- ACE_ERROR ((LM_ERROR,
- ACE_TEXT ("%p\n"),
- ACE_TEXT ("ACE_Creation_Strategy")));
-}
-
-template <class SVC_HANDLER> ACE_INLINE
-ACE_DLL_Strategy<SVC_HANDLER>::ACE_DLL_Strategy (const ACE_TCHAR dll_name[],
- const ACE_TCHAR factory_function[],
- const ACE_TCHAR svc_name[],
- ACE_Service_Repository *svc_rep,
- ACE_Thread_Manager *thr_mgr)
-{
- ACE_TRACE ("ACE_DLL_Strategy<SVC_HANDLER>::ACE_DLL_Strategy");
- if (this->open (dll_name,
- factory_function,
- svc_name,
- svc_rep,
- thr_mgr) == -1)
- ACE_ERROR ((LM_ERROR,
- ACE_TEXT ("%p\n"),
- ACE_TEXT ("open")));
-}
-
-template <class SVC_HANDLER> ACE_INLINE
-ACE_DLL_Strategy<SVC_HANDLER>::ACE_DLL_Strategy (void)
-{
- ACE_TRACE ("ACE_DLL_Strategy<SVC_HANDLER>::ACE_DLL_Strategy");
-}
-
-template <class SVC_HANDLER> ACE_INLINE
-ACE_Concurrency_Strategy<SVC_HANDLER>::ACE_Concurrency_Strategy (int flags)
- : flags_ (flags)
-{
- ACE_TRACE ("ACE_Concurrency_Strategy<SVC_HANDLER>::ACE_Concurrency_Strategy");
-}
-
-template <class SVC_HANDLER> ACE_INLINE
-ACE_Reactive_Strategy<SVC_HANDLER>::ACE_Reactive_Strategy (ACE_Reactor *reactor,
- ACE_Reactor_Mask mask,
- int flags)
-{
- ACE_TRACE ("ACE_Reactive_Strategy<SVC_HANDLER>::ACE_Reactive_Strategy");
-
- if (this->open (reactor,
- mask,
- flags) == -1)
- ACE_ERROR ((LM_ERROR,
- ACE_TEXT ("%p\n"),
- ACE_TEXT ("ACE_Reactive_Strategy<SVC_HANDLER>::ACE_Reactive_Strategy")));
-}
-
-template <class SVC_HANDLER> ACE_INLINE
-ACE_Reactive_Strategy<SVC_HANDLER>::ACE_Reactive_Strategy (int flags)
- : ACE_Concurrency_Strategy<SVC_HANDLER> (flags),
- reactor_ (0),
- mask_ (ACE_Event_Handler::NULL_MASK)
-{
- ACE_TRACE ("ACE_Reactive_Strategy<SVC_HANDLER>::ACE_Reactive_Strategy");
-}
-
-template <class SVC_HANDLER> ACE_INLINE
-ACE_Thread_Strategy<SVC_HANDLER>::ACE_Thread_Strategy (ACE_Thread_Manager *thr_mgr,
- long thr_flags,
- int n_threads,
- int flags)
-{
- ACE_TRACE ("ACE_Thread_Strategy<SVC_HANDLER>::ACE_Thread_Strategy");
-
- if (this->open (thr_mgr,
- thr_flags,
- n_threads,
- flags) == -1)
- ACE_ERROR ((LM_ERROR,
- ACE_TEXT ("%p\n"),
- ACE_TEXT ("ACE_Thread_Strategy<SVC_HANDLER>::ACE_Thread_Strategy")));
-}
-
-template <class SVC_HANDLER> ACE_INLINE
-ACE_Thread_Strategy<SVC_HANDLER>::ACE_Thread_Strategy (int flags)
- : ACE_Concurrency_Strategy<SVC_HANDLER> (flags),
- thr_mgr_ (0),
- thr_flags_ (0),
- n_threads_ (1)
-{
- ACE_TRACE ("ACE_Thread_Strategy<SVC_HANDLER>::ACE_Thread_Strategy");
-}
-
-template <class SVC_HANDLER, ACE_PEER_ACCEPTOR_1> ACE_INLINE
-ACE_Accept_Strategy<SVC_HANDLER, ACE_PEER_ACCEPTOR_2>::ACE_Accept_Strategy (ACE_Reactor *reactor)
- : reactor_ (reactor)
-{
- ACE_TRACE ("ACE_Accept_Strategy<SVC_HANDLER, ACE_PEER_ACCEPTOR_2>::ACE_Accept_Strategy");
-}
-
-template <class SVC_HANDLER, ACE_PEER_CONNECTOR_1> ACE_INLINE
-ACE_Connect_Strategy<SVC_HANDLER, ACE_PEER_CONNECTOR_2>::ACE_Connect_Strategy (void)
-{
- ACE_TRACE ("ACE_Connect_Strategy<SVC_HANDLER, ACE_PEER_CONNECTOR_2>::ACE_Connect_Strategy");
-}
-
-template <class SVC_HANDLER> ACE_INLINE
-ACE_Process_Strategy<SVC_HANDLER>::ACE_Process_Strategy (size_t n_processes,
- ACE_Event_Handler *acceptor,
- ACE_Reactor *reactor,
- int avoid_zombies)
-{
- ACE_TRACE ("ACE_Process_Strategy<SVC_HANDLER>::ACE_Process_Strategy");
- if (this->open (n_processes,
- acceptor,
- reactor,
- avoid_zombies) == -1)
- ACE_ERROR ((LM_ERROR,
- ACE_TEXT ("%p\n"),
- ACE_TEXT ("ACE_Process_Strategy")));
-}
-
-template <class SVC_HANDLER> ACE_INLINE
-ACE_Scheduling_Strategy<SVC_HANDLER>::ACE_Scheduling_Strategy (SVC_HANDLER *)
-{
- ACE_TRACE ("ACE_Scheduling_Strategy<SVC_HANDLER>::ACE_Scheduling_Strategy");
-}
-
-template <class SVC_HANDLER> ACE_INLINE
-ACE_Schedule_All_Reactive_Strategy<SVC_HANDLER>::ACE_Schedule_All_Reactive_Strategy
- (SVC_HANDLER *scheduler)
- : ACE_Scheduling_Strategy<SVC_HANDLER> (scheduler)
-{
- ACE_TRACE ("ACE_Schedule_All_Reactive_Strategy<SVC_HANDLER>::ACE_Schedule_All_Reactive_Strategy");
-
- if (scheduler == 0 || scheduler->reactor () == 0)
- this->reactor_ = ACE_Reactor::instance ();
- else
- this->reactor_ = scheduler->reactor ();
-}
-
-template <class SVC_HANDLER> ACE_INLINE
-ACE_Schedule_All_Threaded_Strategy<SVC_HANDLER>::ACE_Schedule_All_Threaded_Strategy
- (SVC_HANDLER *scheduler)
- : ACE_Scheduling_Strategy<SVC_HANDLER> (scheduler)
-{
- ACE_TRACE ("ACE_Schedule_All_Threaded_Strategy<SVC_HANDLER>::ACE_Schedule_All_Threaded_Strategy");
-
- if (scheduler == 0 || scheduler->thr_mgr () == 0)
- this->thr_mgr_ = ACE_Thread_Manager::instance ();
- else
- this->thr_mgr_ = scheduler->thr_mgr ();
-}
-
-template <class T> ACE_INLINE
-ACE_Refcounted_Hash_Recyclable<T>::ACE_Refcounted_Hash_Recyclable (void)
- : ACE_Refcountable (0),
- ACE_Hashable (),
- ACE_Recyclable (ACE_RECYCLABLE_UNKNOWN),
- t_ ()
-{
-}
-
-template <class T> ACE_INLINE
-ACE_Refcounted_Hash_Recyclable<T>::ACE_Refcounted_Hash_Recyclable (const T &t,
- long refcount,
- ACE_Recyclable_State state)
- : ACE_Refcountable (refcount),
- ACE_Hashable (),
- ACE_Recyclable (state),
- t_ (t)
-{
-}
-
-template <class T> ACE_INLINE u_long
-ACE_Refcounted_Hash_Recyclable<T>::hash_i (void) const
-{
- return this->t_.hash ();
-}
-
-template <class T> ACE_INLINE T &
-ACE_Refcounted_Hash_Recyclable<T>::subject (void)
-{
- return this->t_;
-}
-
-template <class T> ACE_INLINE bool
-ACE_Refcounted_Hash_Recyclable<T>::operator== (const ACE_Refcounted_Hash_Recyclable<T> &rhs) const
-{
- return
- this->recycle_state () == rhs.recycle_state ()
- && this->t_ == rhs.t_;
-}
-
-template <class T> ACE_INLINE bool
-ACE_Refcounted_Hash_Recyclable<T>::operator!= (const ACE_Refcounted_Hash_Recyclable<T> &rhs) const
-{
- return !this->operator== (rhs);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Stream.h b/dep/include/ace/Stream.h
deleted file mode 100644
index 9dc426fcf0f..00000000000
--- a/dep/include/ace/Stream.h
+++ /dev/null
@@ -1,242 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Stream.h
- *
- * $Id: Stream.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@uci.edu>
- */
-//==========================================================================
-
-#ifndef ACE_STREAM_H
-#define ACE_STREAM_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/IO_Cntl_Msg.h"
-#include "ace/Message_Block.h"
-#include "ace/Module.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decls.
-template<ACE_SYNCH_DECL> class ACE_Stream_Iterator;
-class ACE_Time_Value;
-
-/**
- * @class ACE_Stream
- *
- * @brief This class is the primary abstraction for the ASX framework.
- * It is moduled after System V Stream.
- *
- * A Stream consists of a stack of <ACE_Modules>, each of which
- * contains two <ACE_Tasks>. Even though the methods in this
- * class are virtual, this class isn't really intended for
- * subclassing unless you know what you are doing. In
- * particular, the ACE_Stream destructor calls <close>, which
- * won't be overridden properly unless you call it in a subclass
- * destructor.
- */
-template <ACE_SYNCH_DECL>
-class ACE_Stream
-{
-public:
- friend class ACE_Stream_Iterator<ACE_SYNCH_USE>;
-
- enum
- {
- /// Indicates that <close> deletes the Tasks. Don't change this
- /// value without updating the same enum in class ACE_Module...
- M_DELETE = 3
- };
-
- // = Initializatation and termination methods.
- /**
- * Create a Stream consisting of <head> and <tail> as the Stream
- * head and Stream tail, respectively. If these are 0 then the
- * <ACE_Stream_Head> and <ACE_Stream_Tail> are used, respectively.
- * <arg> is the value past in to the <open> methods of the tasks.
- */
- ACE_Stream (void *arg = 0,
- ACE_Module<ACE_SYNCH_USE> *head = 0,
- ACE_Module<ACE_SYNCH_USE> *tail = 0);
-
- /**
- * Create a Stream consisting of <head> and <tail> as the Stream
- * head and Stream tail, respectively. If these are 0 then the
- * <ACE_Stream_Head> and <ACE_Stream_Tail> are used, respectively.
- * <arg> is the value past in to the <open> methods of the tasks.
- */
- virtual int open (void *arg,
- ACE_Module<ACE_SYNCH_USE> *head = 0,
- ACE_Module<ACE_SYNCH_USE> *tail = 0);
-
- /// Close down the stream and release all the resources.
- virtual int close (int flags = M_DELETE);
-
- /// Close down the stream and release all the resources.
- virtual ~ACE_Stream (void);
-
- // = ACE_Stream plumbing operations
-
- /// Add a new module <mod> right below the Stream head. The
- /// <open()> hook methods of the <ACE_Tasks> in this ACE_Module
- /// are invoked to initialize the tasks.
- virtual int push (ACE_Module<ACE_SYNCH_USE> *mod);
-
- /// Remove the <mod> right below the Stream head and close it down.
- // The <close()> hook methods of the <ACE_Tasks> in this ACE_Module
- /// are invoked to cleanup the tasks.
- virtual int pop (int flags = M_DELETE);
-
- /// Return the top module on the stream (right below the stream
- /// head).
- virtual int top (ACE_Module<ACE_SYNCH_USE> *&mod);
-
- /// Insert a new module <mod> below the named module <prev_name>.
- virtual int insert (const ACE_TCHAR *prev_name,
- ACE_Module<ACE_SYNCH_USE> *mod);
-
- /// Replace the named module <replace_name> with a new module <mod>.
- virtual int replace (const ACE_TCHAR *replace_name,
- ACE_Module<ACE_SYNCH_USE> *mod,
- int flags = M_DELETE);
-
- /// Remove the named module <mod> from the stream. This bypasses the
- /// strict LIFO ordering of <push> and <pop>.
- virtual int remove (const ACE_TCHAR *mod,
- int flags = M_DELETE);
-
- /// Return current stream head.
- virtual ACE_Module<ACE_SYNCH_USE> *head (void);
-
- /// Return current stream tail.
- virtual ACE_Module<ACE_SYNCH_USE> *tail (void);
-
- /// Find a particular ACE_Module.
- virtual ACE_Module<ACE_SYNCH_USE> *find (const ACE_TCHAR *mod);
-
- /// Create a pipe between two Streams.
- virtual int link (ACE_Stream<ACE_SYNCH_USE> &);
-
- /// Remove a pipe formed between two Streams.
- virtual int unlink (void);
-
- // = Blocking data transfer operations
- /**
- * Send the message @a mb down the stream, starting at the Module
- * below the Stream head. Wait for upto @a timeout amount of
- * absolute time for the operation to complete (or block forever if
- * @a timeout == 0).
- */
- virtual int put (ACE_Message_Block *mb,
- ACE_Time_Value *timeout = 0);
-
- /**
- * Read the message @a mb that is stored in the stream head.
- * Wait for upto @a timeout amount of absolute time for the operation
- * to complete (or block forever if @a timeout == 0).
- */
- virtual int get (ACE_Message_Block *&mb,
- ACE_Time_Value *timeout = 0);
-
- /// Send control message down the stream.
- virtual int control (ACE_IO_Cntl_Msg::ACE_IO_Cntl_Cmds cmd,
- void *args);
-
- /// Synchronize with the final close of the stream.
- virtual int wait (void);
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Actually perform the unlinking of two Streams (must be called
- /// with locks held).
- int unlink_i (void);
-
- /// Actually perform the linking of two Streams (must be called with
- /// locks held).
- int link_i (ACE_Stream<ACE_SYNCH_USE> &);
-
- /// Must a new module onto the Stream.
- int push_module (ACE_Module<ACE_SYNCH_USE> *,
- ACE_Module<ACE_SYNCH_USE> * = 0,
- ACE_Module<ACE_SYNCH_USE> * = 0);
-
- /// Pointer to the head of the stream.
- ACE_Module<ACE_SYNCH_USE> *stream_head_;
-
- /// Pointer to the tail of the stream.
- ACE_Module<ACE_SYNCH_USE> *stream_tail_;
-
- /// Pointer to an adjoining linked stream.
- ACE_Stream<ACE_SYNCH_USE> *linked_us_;
-
- // = Synchronization objects used for thread-safe streams.
- /// Protect the stream against race conditions.
- ACE_SYNCH_MUTEX_T lock_;
-
- /// Use to tell all threads waiting on the close that we are done.
- ACE_SYNCH_CONDITION_T final_close_;
-};
-
-/**
- * @class ACE_Stream_Iterator
- *
- * @brief Iterate through an ACE_Stream.
- */
-template <ACE_SYNCH_DECL>
-class ACE_Stream_Iterator
-{
-public:
- // = Initialization method.
- ACE_Stream_Iterator (const ACE_Stream<ACE_SYNCH_USE> &sr);
-
- // = Iteration methods.
-
- /// Pass back the <next_item> that hasn't been seen in the set.
- /// Returns 0 when all items have been seen, else 1.
- int next (const ACE_Module<ACE_SYNCH_USE> *&next_item);
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
-private:
- /// Next <Module> that we haven't yet seen.
- ACE_Module<ACE_SYNCH_USE> *next_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Stream.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Stream.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Stream.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_STREAM_H */
-
diff --git a/dep/include/ace/Stream.inl b/dep/include/ace/Stream.inl
deleted file mode 100644
index 6263d431147..00000000000
--- a/dep/include/ace/Stream.inl
+++ /dev/null
@@ -1,51 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Stream.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <ACE_SYNCH_DECL> ACE_INLINE ACE_Module<ACE_SYNCH_USE> *
-ACE_Stream<ACE_SYNCH_USE>::head (void)
-{
- ACE_TRACE ("ACE_Stream<ACE_SYNCH_USE>::head");
- return this->stream_head_;
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE ACE_Module<ACE_SYNCH_USE> *
-ACE_Stream<ACE_SYNCH_USE>::tail (void)
-{
- ACE_TRACE ("ACE_Stream<ACE_SYNCH_USE>::tail");
- return this->stream_tail_;
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE int
-ACE_Stream<ACE_SYNCH_USE>::wait (void)
-{
- ACE_TRACE ("ACE_Stream<ACE_SYNCH_USE>::wait");
- return this->final_close_.wait ();
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE int
-ACE_Stream_Iterator<ACE_SYNCH_USE>::next (const ACE_Module<ACE_SYNCH_USE> *&mod)
-{
- ACE_TRACE ("ACE_Stream_Iterator<ACE_SYNCH_USE>::next");
- mod = this->next_;
- return this->next_ != 0;
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE int
-ACE_Stream_Iterator<ACE_SYNCH_USE>::done (void) const
-{
- ACE_TRACE ("ACE_Stream_Iterator<ACE_SYNCH_USE>::done");
- return this->next_ == 0;
-}
-
-template <ACE_SYNCH_DECL> int
-ACE_Stream_Iterator<ACE_SYNCH_USE>::advance (void)
-{
- ACE_TRACE ("ACE_Stream_Iterator<ACE_SYNCH_USE>::advance");
- this->next_ = this->next_->next ();
- return this->next_ != 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Stream_Modules.h b/dep/include/ace/Stream_Modules.h
deleted file mode 100644
index 8b718b6013d..00000000000
--- a/dep/include/ace/Stream_Modules.h
+++ /dev/null
@@ -1,167 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Stream_Modules.h
- *
- * $Id: Stream_Modules.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-// This needs to go outside of the #if !defined() block. Don't ask...
-#include "ace/Task.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#ifndef ACE_STREAM_MODULES
-#define ACE_STREAM_MODULES
-#include /**/ "ace/pre.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Stream_Head
- *
- * @brief Standard task that acts as reader or writer at the head of
- * an ACE_Stream.
- *
- * A ACE_Message_Block sent to this task (via its put() hook) triggers
- * actions depending on the block type and whether the task is acting as
- * a reader or a writer. If the block is of type ACE_Message_Block::MB_IOCTL,
- * the block's is assumed to contain (beginning at its rd_ptr()) an
- * ACE_IO_Cntl_Msg object and is processed accordingly. This is usually
- * used to set the task's message queue high water and/or low water marks.
- *
- * When the block is not ACE_Message_Block::MB_IOCTL, processing depends on
- * the ACE_Stream_Head's role in the module:
- *
- * - Reader: If the block is of type ACE_Message_Block::MB_FLUSH, the
- * canonical_flush() method is called.
- * (@see ACE_Stream::canonical_flush().) If the block is any other
- * type, it is queued on this task's message queue. It would thus
- * be available to caller's reading blocks from the containing
- * stream.
- * - Writer: The block is passed to the next module in the stream.
- */
-template <ACE_SYNCH_DECL>
-class ACE_Stream_Head : public ACE_Task<ACE_SYNCH_USE>
-{
-public:
- /// Construction
- ACE_Stream_Head (void);
-
- /// Destruction
- ~ACE_Stream_Head (void);
-
- // = ACE_Task hooks
- virtual int open (void *a = 0);
- virtual int close (u_long flags = 0);
- virtual int put (ACE_Message_Block *msg, ACE_Time_Value * = 0);
- virtual int svc (void);
-
- // = Dynamic linking hooks
- virtual int init (int argc, ACE_TCHAR *argv[]);
- virtual int info (ACE_TCHAR **info_string, size_t length) const;
- virtual int fini (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Performs canonical flushing at the ACE_Stream Head.
- int control (ACE_Message_Block *);
- int canonical_flush (ACE_Message_Block *);
-};
-
-/**
- * @class ACE_Stream_Tail
- *
- * @brief Standard module that acts as the head of a stream.
- */
-template <ACE_SYNCH_DECL>
-class ACE_Stream_Tail : public ACE_Task<ACE_SYNCH_USE>
-{
-public:
- /// Construction
- ACE_Stream_Tail (void);
-
- /// Destruction
- ~ACE_Stream_Tail (void);
-
- // = ACE_Task hooks
- virtual int open (void *a = 0);
- virtual int close (u_long flags = 0);
- virtual int put (ACE_Message_Block *msg, ACE_Time_Value * = 0);
- virtual int svc (void);
-
- // = Dynamic linking hooks
- virtual int init (int argc, ACE_TCHAR *argv[]);
- virtual int info (ACE_TCHAR **info_string, size_t length) const;
- virtual int fini (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Performs canonical flushing at the ACE_Stream tail.
- int control (ACE_Message_Block *);
- int canonical_flush (ACE_Message_Block *);
-};
-
-/**
- * @class ACE_Thru_Task
- *
- * @brief Standard module that acts as a "no op", simply passing on all
- * data to its adjacent neighbor.
- */
-template <ACE_SYNCH_DECL>
-class ACE_Thru_Task : public ACE_Task<ACE_SYNCH_USE>
-{
-public:
- /// Construction
- ACE_Thru_Task (void);
-
- /// Destruction
- ~ACE_Thru_Task (void);
-
- // = ACE_Task hooks
- virtual int open (void *a = 0);
- virtual int close (u_long flags = 0);
- virtual int put (ACE_Message_Block *msg, ACE_Time_Value * = 0);
- virtual int svc (void);
-
- // = Dynamic linking hooks
- virtual int init (int argc, ACE_TCHAR *argv[]);
- virtual int info (ACE_TCHAR **info_string, size_t length) const;
- virtual int fini (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Stream_Modules.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Stream_Modules.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_STREAM_MODULES */
-
diff --git a/dep/include/ace/String_Base.h b/dep/include/ace/String_Base.h
deleted file mode 100644
index c3ecbd8148b..00000000000
--- a/dep/include/ace/String_Base.h
+++ /dev/null
@@ -1,613 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file String_Base.h
- *
- * $Id: String_Base.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt (schmidt@cs.wustl.edu)
- * @author Nanbor Wang <nanbor@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_STRING_BASE_H
-#define ACE_STRING_BASE_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Global_Macros.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/String_Base_Const.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_String_Base
- *
- * @brief This class provides a wrapper facade for C strings.
- *
- * This class uses an ACE_Allocator to allocate memory. The
- * user can make this a persistant class by providing an
- * ACE_Allocator with a persistable memory pool. This class is
- * optimized for efficiency, so it doesn't provide any internal
- * locking.
- * @note If an instance of this class is constructed from or
- * assigned an empty string (with first element of '\0'), then it
- * is not allocated new space. Instead, its internal
- * representation is set equal to a global empty string.
- * CAUTION: in cases when ACE_String_Base is constructed from a
- * provided buffer with the release parameter set to false,
- * ACE_String_Base is not guaranteed to be '\0' terminated.
- *
- * \li Do not use a "@c -1" magic number to refer to the "no position"
- * condition. This was never the right thing to do. The "@c npos"
- * constant should be used in such cases.
- * \li Do not assign or pass string positions to or from signed types.
- * Use the "@c size_type" @c typedef found in all ACE string
- * classes. This typedef is analogous to the "@c size_type"
- * @c typedef found in the standard C++ string class as well as
- * many STL class templates. If you find yourself casting you're
- * probably doing something wrong.
- */
-template <class CHAR>
-class ACE_String_Base : public ACE_String_Base_Const
-{
-public:
-
- using ACE_String_Base_Const::size_type;
-
- /**
- * Default constructor.
- *
- * @param the_allocator ACE_Allocator associated with string
- * @return Default ACE_String_Base string.
- */
- ACE_String_Base (ACE_Allocator *the_allocator = 0);
-
- /**
- * Constructor that copies @a s into dynamically allocated memory.
- *
- * if release == true then a new buffer is allocated internally, and
- * s is copied to the internal buffer.
- * if release == false then the s buffer is used directly. If s == 0
- * then it will _not_ be used, and instead the internal buffer
- * is set to NULL_String_.
- *
- * @param s Zero terminated input string
- * @param the_allocator ACE_Allocator associated with string
- * @param release Allocator responsible(true)/not reponsible(false) for
- * freeing memory.
- * @return ACE_String_Base containing const CHAR *s
- */
- ACE_String_Base (const CHAR *s,
- ACE_Allocator *the_allocator = 0,
- bool release = true);
-
- /**
- * Constructor that copies @a len CHARs of @a s into dynamically
- * allocated memory (will zero terminate the result).
- *
- * if release == true then a new buffer is allocated internally.
- * s is copied to the internal buffer.
- * if release == false then the s buffer is used directly. If s == 0
- * then it will _not_ be used, and instead the internal buffer
- * is set to NULL_String_.
- *
- * @param s Non-zero terminated input string
- * @param len Length of non-zero terminated input string
- * @param the_allocator ACE_Allocator associated with string
- * @param release Allocator responsible(true)/not reponsible(false) for
- * freeing memory.
- * @return ACE_String_Base containing const CHAR *s
- */
- ACE_String_Base (const CHAR *s,
- size_type len,
- ACE_Allocator *the_allocator = 0,
- bool release = true);
-
- /**
- * Copy constructor.
- *
- * @param s Input ACE_String_Base string to copy
- * @return Copy of input string @a s
- */
- ACE_String_Base (const ACE_String_Base < CHAR > &s);
-
- /**
- * Constructor that copies @a c into dynamically allocated memory.
- *
- * @param c Single input character.
- * @param the_allocator ACE_Allocator associated with string
- * @return ACE_String_Base containing CHAR 'c'
- */
- ACE_String_Base (CHAR c, ACE_Allocator *the_allocator = 0);
-
- /**
- * Constructor that allocates a len long string.
- *
- * Warning : This constructor was incorrectly documented in the past.
- * It simply calls resize(len, c).
- * It is probably not advisable to use the second parameter. See
- * resize() for more information.
- *
- * @param len Amount of space to reserve for the string.
- * @param c The array is filled with c's
- * @param the_allocator ACE_Allocator associated with string
- * @return Empty ACE_String_Base with room for len CHARs
- */
- ACE_String_Base (size_type len,
- CHAR c = 0,
- ACE_Allocator *the_allocator = 0);
-
- /**
- * Deletes the memory...
- */
- ~ACE_String_Base (void);
-
- /**
- * Return the <slot'th> character in the string (doesn't perform
- * bounds checking).
- *
- * @param slot Index of the desired character
- * @return The character at index @a slot
- */
- const CHAR & operator[] (size_type slot) const;
-
- /**
- * Return the <slot'th> character by reference in the string
- * (doesn't perform bounds checking).
- *
- * @param slot Index of the desired character
- * @return The character at index @a slot
- */
- CHAR & operator[] (size_type slot);
-
- /**
- * Assignment operator (does copy memory).
- *
- * @param s Input null-terminated CHAR string to assign to this object.
- * @return Return a copy of the this string.
- */
- ACE_String_Base < CHAR > &operator = (const CHAR * s);
-
- /**
- * Assignment operator (does copy memory).
- *
- * @param s Input ACE_String_Base string to assign to this object.
- * @return Return a copy of the this string.
- */
- ACE_String_Base < CHAR > &operator = (const ACE_String_Base < CHAR > &s);
-
- /**
- * Assignment alternative method (does not copy memory).
- *
- * @param s Input ACE_String_Base string to assign to this object.
- * @return Return this string.
- */
- ACE_String_Base < CHAR > &assign_nocopy (const ACE_String_Base < CHAR > &s);
-
- /**
- * Copy @a s into this @a ACE_String_Base.
- *
- * If release == true then a new buffer is allocated internally if the
- * existing one is not big enough to hold s. If the existing
- * buffer is big enough, then it will be used. This means that
- * set(*, 1) can be illegal when the string is constructed with a
- * const char*. (e.g. ACE_String_Base("test", 0, false)).
- *
- * if release == false then the s buffer is used directly, and any
- * existing buffer is destroyed. If s == 0 then it will _not_ be
- * used, and instead the internal buffer is set to NULL_String_.
- *
- * @param s Null terminated input string
- * @param release Allocator responsible(true)/not reponsible(false) for
- * freeing memory.
- */
- void set (const CHAR * s, bool release = true);
-
- /**
- * Copy @a len bytes of @a s (will zero terminate the result).
- *
- * If release == true then a new buffer is allocated internally if the
- * existing one is not big enough to hold s. If the existing
- * buffer is big enough, then it will be used. This means that
- * set(*, *, 1) is illegal when the string is constructed with a
- * non-owned const char*. (e.g. ACE_String_Base("test", 0, 0))
- *
- * If release == false then the s buffer is used directly, and any
- * existing buffer is destroyed. If s == 0 then it will _not_ be
- * used, and instead the internal buffer is set to NULL_String_.
- *
- * @param s Non-zero terminated input string
- * @param len Length of input string 's'
- * @param release Allocator responsible(true)/not reponsible(false) for
- * freeing memory.
- */
- void set (const CHAR * s, size_type len, bool release);
-
- /**
- * Clear this string. Memory is _not_ freed if @a release is false.
- *
- * Warning: This method was incorrectly documented in the past, but
- * the current implementation has been changed to match the documented
- * behavior.
- *
- * Warning: clear(false) behaves like fast_clear() below.
- *
- * @param release Memory is freed if true, and not freed if false.
- */
- void clear (bool release = false);
-
- /**
- * A more specialized version of clear(): "fast clear". fast_clear()
- * resets the string to 0 length. If the string owns the buffer
- * (@arg release_== true):
- * - the string buffer is not freed
- * - the first character of the buffer is set to 0.
- *
- * If @arg release_ is false (this object does not own the buffer):
- * - the buffer pointer is reset to the NULL_String_ and does not
- * maintain a pointer to the caller-supplied buffer on return
- * - the maximum string length is reset to 0.
- *
- * Warning : Calling clear(false) or fast_clear() can have unintended
- * side-effects if the string was constructed (or set()) with an
- * external buffer. The string will be disassociated with the buffer
- * and the next append() or +=() will cause a new buffer to be
- * allocated internally.
- */
- void fast_clear (void);
-
- /**
- * Return a substring given an offset and length.
- * If length == @c npos use rest of str. Return empty substring if
- * offset or offset/length are invalid.
- *
- * @param offset Index of first desired character of the substring.
- * @param length How many characters to return starting at the offset.
- * @return The string containing the desired substring
- */
- ACE_String_Base < CHAR > substring (size_type offset,
- size_type length = npos) const;
-
- /**
- * Same as <substring>.
- *
- * @param offset Index of first desired character of the substring.
- * @param length How many characters to return starting at the offset.
- * @return The string containing the desired substring
- */
- ACE_String_Base < CHAR > substr (size_type offset,
- size_type length = npos) const;
-
- /**
- * Concat operator (copies memory).
- *
- * @param s Input ACE_String_Base string to concatenate to this string.
- * @return The combined string (input append to the end of the old). New
- * string is zero terminated.
- */
- ACE_String_Base < CHAR > &operator += (const ACE_String_Base < CHAR > &s);
-
- /**
- * Concat operator (copies memory).
- *
- * @param s Input C string to concatenate to this string.
- * @return The combined string (input append to the end of the old). New
- * string is zero terminated.
- */
- ACE_String_Base < CHAR >& operator += (const CHAR* s);
-
- /**
- * Concat operator (copies memory).
- *
- * @param c Input CHAR to concatenate to this string.
- * @return The combined string (input append to the end of the old). New
- * string is zero terminated.
- */
- ACE_String_Base < CHAR >& operator += (const CHAR c);
-
- /**
- * Append function (copies memory).
- *
- * @param s Input CHAR array to concatenate to this string.
- * @param slen The length of the array.
- * @return The combined string (input append to the end of the old). New
- * string is zero terminated.
- */
- ACE_String_Base < CHAR >& append (const CHAR* s, size_type slen);
-
- /**
- * Returns a hash value for this string.
- *
- * @return Hash value of string
- */
- u_long hash (void) const;
-
- /**
- * Return the length of the string.
- *
- * @return Length of stored string
- */
- size_type length (void) const;
-
- /**
- * Return the number of allocated CHARs in the string object.
- * This may be greater than the current length of the string.
- *
- * @return Maximum number of CHAR units that can be stored, including
- * any terminating nul that may be needed.
- */
- size_t capacity (void) const;
-
- /**
- * Return @c true if the length of the string is zero, else @c false.
- */
- bool is_empty (void) const;
-
- /**
- * Return @c true if the length of the string is zero, else @c
- * false. We recommend using @c is_empty() instead since it's more
- * consistent with the ACE container naming conventions.
- */
- bool empty (void) const;
-
- /**
- * Get a copy of the underlying representation.
- *
- * This method allocates memory for a copy of the string and returns
- * a pointer to the new area. The caller is responsible for freeing
- * the memory when finished; use delete []
- *
- * @return Pointer reference to the string data. Returned string is
- * zero terminated.
- */
- CHAR *rep (void) const;
-
- /**
- * Get at the underlying representation directly!
- * _Don't_ even think about casting the result to (char *) and modifying it,
- * if it has length 0!
- *
- * @return Pointer reference to the stored string data. No guarantee is
- * that the string is zero terminated.
- *
- */
- const CHAR *fast_rep (void) const;
-
- /**
- * Same as STL String's <c_str> and <fast_rep>.
- */
- const CHAR *c_str (void) const;
-
- /**
- * Comparison operator that will match substrings. Returns the
- * slot of the first location that matches, else @c npos.
- *
- * @param s Input ACE_String_Base string
- * @return Integer index value of the first location of string @a s or
- * @c npos (not found).
- */
- size_type strstr (const ACE_String_Base<CHAR> &s) const;
-
- /**
- * Find <str> starting at pos. Returns the slot of the first
- * location that matches (will be >= pos), else @c npos.
- *
- * @param str Input ACE_String_Base string to search for in stored string.
- * @param pos Starting index position to start searching for string @a str.
- * @return Index value of the first location of string @a str else
- * @c npos.
- */
- size_type find (const ACE_String_Base<CHAR> &str, size_type pos = 0) const;
-
- /**
- * Find @a s starting at pos. Returns the slot of the first
- * location that matches (will be >= pos), else @c npos.
- *
- * @param s non-zero input string to search for in stored string.
- * @param pos Starting index position to start searching for string @a str.
- * @return Index value of the first location of string @a str else
- * @c npos.
- */
- size_type find (const CHAR *s, size_type pos = 0) const;
-
- /**
- * Find @a c starting at pos. Returns the slot of the first
- * location that matches (will be >= pos), else @c npos.
- *
- * @param c Input character to search for in stored string.
- * @param pos Starting index position to start searching for string @a str.
- * @return Index value of the first location of string @a str else
- * @c npos.
- */
- size_type find (CHAR c, size_type pos = 0) const;
-
- /**
- * Find @a c starting at pos (counting from the end). Returns the
- * slot of the first location that matches, else @c npos.
- *
- * @param c Input character to search for in stored string.
- * @param pos Starting index position to start searching for string @a str.
- * @return Index value of the first location of string @a str else
- * @c npos.
- */
- size_type rfind (CHAR c, size_type pos = npos) const;
-
- /**
- * Equality comparison operator (must match entire string).
- *
- * @param s Input ACE_String_Base string to compare against stored string.
- * @return @c true if equal, @c false otherwise.
- */
- bool operator == (const ACE_String_Base<CHAR> &s) const;
-
- /**
- * Equality comparison operator (must match entire string).
- *
- * @param s Null terminated string to compare against stored string.
- * @return @c true if equal, @c false otherwise.
- */
- bool operator == (const CHAR *s) const;
-
- /**
- * Less than comparison operator.
- *
- * @param s Input ACE_String_Base string to compare against stored string.
- * @return @c true if less than, @c false otherwise.
- */
- bool operator < (const ACE_String_Base<CHAR> &s) const;
-
- /**
- * Greater than comparison operator.
- *
- * @param s Input ACE_String_Base string to compare against stored string.
- * @return @c true if greater than, @c false otherwise.
- */
- bool operator > (const ACE_String_Base<CHAR> &s) const;
-
- /**
- * Inequality comparison operator.
- *
- * @param s String to compare against stored string.
- * @return @c true if not equal, @c false otherwise.
- */
- bool operator != (const ACE_String_Base<CHAR> &s) const;
-
- /**
- * Inequality comparison operator.
- *
- * @param s Null terminated string to compare against stored string.
- * @return @c true if not equal, @c false otherwise.
- */
- bool operator != (const CHAR *s) const;
-
- /**
- * Performs a strncmp comparison.
- *
- * @param s Input ACE_String_Base string to compare against stored string.
- * @return Integer value of result (less than 0, 0, greater than 0)
- * depending on how input string @a s is to the stored string.
- */
- int compare (const ACE_String_Base<CHAR> &s) const;
-
- /**
- * Dump the state of an object.
- */
- void dump (void) const;
-
- /**
- * This method is designed for high-performance. Please use with
- * care ;-)
- *
- * Warning : This method was documented incorrectly in the past.
- * The original intention was to change the length of the string to
- * len, and to fill the whole thing with c CHARs.
- * However, what was actually done was to set the length of the
- * string to zero, and fill the buffer with c's. The buffer was
- * also not null-terminated unless c happened to be zero.
- * Rather than fix the method to work as documented, the code is
- * left as is, but the second parameter should probably not be used.
- *
- * fast_resize just adjusts the buffer if needed and sets the length,
- * it doesn't fill the buffer, so is much faster.
- *
- * @param len The number of CHARs to reserve
- * @param c The CHAR to use when filling the string.
- */
- void resize (size_type len, CHAR c = 0);
- void fast_resize (size_t len);
-
- /// Swap the contents of this @c ACE_String_Base with @a str.
- /**
- * @note This is non-throwing operation.
- */
- void swap (ACE_String_Base<CHAR> & str);
-
- /**
- * Declare the dynamic allocation hooks.
- */
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /**
- * Pointer to a memory allocator.
- */
- ACE_Allocator *allocator_;
-
- /**
- * Length of the ACE_String_Base data (not counting the trailing '\0').
- */
- size_type len_;
-
- /**
- * Length of the ACE_String_Base data buffer. Keeping track of the
- * length allows to avoid unnecessary dynamic allocations.
- */
- size_type buf_len_;
-
- /**
- * Pointer to data.
- */
- CHAR *rep_;
-
- /**
- * Flag that indicates if we own the memory
- */
- bool release_;
-
- /**
- * Represents the "NULL" string to simplify the internal logic.
- */
- static CHAR NULL_String_;
-};
-
-template < class CHAR >
- ACE_String_Base < CHAR > operator + (const ACE_String_Base < CHAR > &,
- const ACE_String_Base < CHAR > &);
-template < class CHAR >
- ACE_String_Base < CHAR > operator + (const ACE_String_Base < CHAR > &,
- const CHAR *);
-template < class CHAR >
- ACE_String_Base < CHAR > operator + (const CHAR *,
- const ACE_String_Base < CHAR > &);
-
-template < class CHAR >
- ACE_String_Base < CHAR > operator + (const ACE_String_Base < CHAR > &t,
- const CHAR c);
-
-template < class CHAR >
- ACE_String_Base < CHAR > operator + (const CHAR c,
- const ACE_String_Base < CHAR > &t);
-
-template <class CHAR>
- bool operator == (const CHAR *s,
- const ACE_String_Base<CHAR> &t);
-
-template <class CHAR>
- bool operator != (const CHAR *s,
- const ACE_String_Base<CHAR> &t);
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/String_Base.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/String_Base.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("String_Base.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_STRING_BASE_H */
-
diff --git a/dep/include/ace/String_Base.inl b/dep/include/ace/String_Base.inl
deleted file mode 100644
index d0fa8ed7e64..00000000000
--- a/dep/include/ace/String_Base.inl
+++ /dev/null
@@ -1,158 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: String_Base.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/Malloc_Base.h"
-#include "ace/Min_Max.h"
-#include "ace/OS_NS_string.h"
-#include "ace/OS_Memory.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class CHAR> ACE_INLINE void
-ACE_String_Base<CHAR>::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_String_Base<CHAR>::dump");
-#endif /* ACE_HAS_DUMP */
-}
-
-// Assignment method (does not copy memory)
-template <class CHAR> ACE_INLINE ACE_String_Base<CHAR> &
-ACE_String_Base<CHAR>::assign_nocopy (const ACE_String_Base<CHAR> &s)
-{
- ACE_TRACE ("ACE_String_Base<CHAR>::assign_nocopy");
- this->set (s.rep_, s.len_, false);
- return *this;
-}
-
-template <class CHAR> ACE_INLINE typename ACE_String_Base<CHAR>::size_type
-ACE_String_Base<CHAR>::length (void) const
-{
- ACE_TRACE ("ACE_String_Base<CHAR>::length");
- return this->len_;
-}
-
-template <class CHAR> ACE_INLINE size_t
-ACE_String_Base<CHAR>::capacity (void) const
-{
- ACE_TRACE ("ACE_String_Base<CHAR>::capacity");
- return this->buf_len_;
-}
-
-template <class CHAR> ACE_INLINE bool
-ACE_String_Base<CHAR>::is_empty (void) const
-{
- return this->len_ == 0;
-}
-
-template <class CHAR> ACE_INLINE bool
-ACE_String_Base<CHAR>::empty (void) const
-{
- return this->is_empty ();
-}
-
-template <class CHAR> ACE_INLINE ACE_String_Base<CHAR>
-ACE_String_Base<CHAR>::substr (
- typename ACE_String_Base<CHAR>::size_type offset,
- typename ACE_String_Base<CHAR>::size_type length) const
-{
- ACE_TRACE ("ACE_String_Base<CHAR>::substr");
- return this->substring (offset, length);
-}
-
-// Return the <slot'th> character in the string.
-
-template <class CHAR> ACE_INLINE const CHAR &
-ACE_String_Base<CHAR>::operator[] (
- typename ACE_String_Base<CHAR>::size_type slot) const
-{
- ACE_TRACE ("ACE_String_Base<CHAR>::operator[]");
- return this->rep_[slot];
-}
-
-// Return the <slot'th> character in the string by reference.
-
-template <class CHAR> ACE_INLINE CHAR &
-ACE_String_Base<CHAR>::operator[] (
- typename ACE_String_Base<CHAR>::size_type slot)
-{
- ACE_TRACE ("ACE_String_Base<CHAR>::operator[]");
- return this->rep_[slot];
-}
-
-template <class CHAR> ACE_INLINE const CHAR *
-ACE_String_Base<CHAR>::fast_rep (void) const
-{
- return this->rep_;
-}
-
-template <class CHAR> ACE_INLINE const CHAR *
-ACE_String_Base<CHAR>::c_str (void) const
-{
- return this->rep_;
-}
-
-// Less than comparison operator.
-
-template <class CHAR> ACE_INLINE bool
-ACE_String_Base<CHAR>::operator < (const ACE_String_Base<CHAR> &s) const
-{
- ACE_TRACE ("ACE_String_Base<CHAR>::operator <");
- return compare (s) < 0;
-}
-
-// Greater than comparison operator.
-
-template <class CHAR> ACE_INLINE bool
-ACE_String_Base<CHAR>::operator > (const ACE_String_Base &s) const
-{
- ACE_TRACE ("ACE_String_Base<CHAR>::operator >");
- return compare (s) > 0;
-}
-
-// Comparison operator.
-
-template <class CHAR> ACE_INLINE bool
-ACE_String_Base<CHAR>::operator!= (const ACE_String_Base<CHAR> &s) const
-{
- ACE_TRACE ("ACE_String_Base<CHAR>::operator!=");
- return !(*this == s);
-}
-
-template <class CHAR> ACE_INLINE bool
-ACE_String_Base<CHAR>::operator!= (const CHAR *s) const
-{
- return !(*this == s);
-}
-
-template <class CHAR> ACE_INLINE typename ACE_String_Base<CHAR>::size_type
-ACE_String_Base<CHAR>::find (const ACE_String_Base<CHAR>&str,
- typename ACE_String_Base<CHAR>::size_type pos) const
-{
- ACE_TRACE ("ACE_String_Base<CHAR>::find");
- return this->find (str.rep_, pos);
-}
-
-template <class CHAR> ACE_INLINE typename ACE_String_Base<CHAR>::size_type
-ACE_String_Base<CHAR>::strstr (const ACE_String_Base<CHAR> &s) const
-{
- ACE_TRACE ("ACE_String_Base<CHAR>::strstr");
- return this->find (s.rep_);
-}
-
-template <class CHAR> ACE_INLINE bool
-operator== (const CHAR *s,
- const ACE_String_Base<CHAR> &t)
-{
- return t == s;
-}
-
-template <class CHAR> ACE_INLINE bool
-operator!= (const CHAR *s,
- const ACE_String_Base<CHAR> &t)
-{
- return !(t == s);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/String_Base_Const.h b/dep/include/ace/String_Base_Const.h
deleted file mode 100644
index 434fc711370..00000000000
--- a/dep/include/ace/String_Base_Const.h
+++ /dev/null
@@ -1,52 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file String_Base_Const.h
- *
- * $Id: String_Base_Const.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Nanbor Wang <nanbor@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_STRING_BASE_CONST_H
-#define ACE_STRING_BASE_CONST_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-#include "ace/Malloc_Base.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_String_Base_Const
- *
- * @brief This class defines a constant for ACE_String_Base
- * which originally was there to circumvent a bug in SunCC 6.0.
- * This could be moved to ACE_String_Base but that
- * adds a lot of footprint to the user applications which
- * is not something we want.
- */
-class ACE_Export ACE_String_Base_Const
-{
-public:
-
- typedef ACE_Allocator::size_type size_type;
-
- /// Constant that denotes case where no such character position
- /// exists.
- static size_type const npos;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_STRING_BASE_CONST_H */
-
diff --git a/dep/include/ace/Svc_Conf.h b/dep/include/ace/Svc_Conf.h
deleted file mode 100644
index 60ffd572156..00000000000
--- a/dep/include/ace/Svc_Conf.h
+++ /dev/null
@@ -1,108 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Svc_Conf.h
- *
- * $Id: Svc_Conf.h 81332 2008-04-10 22:47:04Z iliyan $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_SVC_CONF_H
-#define ACE_SVC_CONF_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Service_Config.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Parse_Node.h"
-#include "ace/Svc_Conf_Param.h"
-
-// Make sure the yacc(1) function declarations are _outside_
-// any ACE versioned namespace. The block below is verbatim
-// from the template that comes with bison (ver. 2.3).
-
-#ifdef YYPARSE_PARAM
-#if defined __STDC__ || defined __cplusplus
-int ace_yyparse (void *YYPARSE_PARAM);
-#else
-int ace_yyparse ();
-#endif
-#else /* ! YYPARSE_PARAM */
-#if defined __STDC__ || defined __cplusplus
-int ace_yyparse (void);
-#else
-int ace_yyparse ();
-#endif
-#endif /* ! YYPARSE_PARAM */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if (ACE_USES_CLASSIC_SVC_CONF == 1)
-
-// The following yylex() declarations require support for reentrant
-// parser generation (e.g. from GNU Bison).
-#define YY_DECL extern "C" int ace_yylex (YYSTYPE *ace_yylval, void *YYLEX_PARAM)
-
-// Forward declarations
-class ACE_Location_Node;
-class ACE_Parse_Node;
-class ACE_Static_Node;
-class ACE_Service_Type_Factory;
-
-// The following definition for the YYSTYPE must occur before
-// YY_DECL is declared since YY_DECL expands to function
-// prototypes that use YYSTYPE.
-typedef union
-{
- int type_;
- ACE_Location_Node *location_node_;
- ACE_Parse_Node *parse_node_;
- ACE_Static_Node *static_node_;
- ACE_Service_Type_Factory *svc_record_;
- ACE_TCHAR *ident_;
-} YYSTYPE;
-
-#define YYSTYPE_IS_DECLARED
-
-// Forward declaration
-struct ace_yy_buffer_state;
-
-/// Performs the lexical analysis
-YY_DECL;
-
-/// Name of input stream
-extern FILE *ace_yyin;
-
-/// Error handling routines required by YACC or BISON
-extern void ace_yyerror (ACE_TCHAR const *);
-extern void ace_yyerror (int yyerrno, int yylineno, ACE_TCHAR const *);
-
-/// Holds the lexeme for the current token
-extern ACE_TCHAR *ace_yytext;
-
-/// Holds the length of the lexeme for the current token
-extern int ace_yyleng;
-
-#endif /* ACE_USES_CLASSIC_SVC_CONF == 1 */
-
-/// Factory that creates a new ACE_Service_Type_Impl.
-extern ACE_Service_Type_Impl *
-ace_create_service_type (ACE_TCHAR const *,
- int,
- void *,
- unsigned int,
- ACE_Service_Object_Exterminator = 0);
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SVC_CONF_H */
-
diff --git a/dep/include/ace/Svc_Conf_Lexer.h b/dep/include/ace/Svc_Conf_Lexer.h
deleted file mode 100644
index c1759577e7e..00000000000
--- a/dep/include/ace/Svc_Conf_Lexer.h
+++ /dev/null
@@ -1,71 +0,0 @@
-// -*- C++ -*-
-
-//=========================================================================
-/**
- * @file Svc_Conf_Lexer.h
- *
- * $Id: Svc_Conf_Lexer.h 81312 2008-04-09 21:01:34Z iliyan $
- *
- * This class is a hand-coded replacement for the lexer generated from
- * Svc_Conf.l that correctly supports Unicode.
- *
- * @author Chad Elliott <elliott_c@ociweb.com>
- */
-//=========================================================================
-
-#ifndef SVC_CONF_LEXER_H
-#define SVC_CONF_LEXER_H
-
-#include /**/ "ace/pre.h"
-#include "ace/Svc_Conf.h"
-
-#if (ACE_USES_CLASSIC_SVC_CONF == 1)
-#include "ace/Encoding_Converter_Factory.h"
-
-class ACE_Encoding_Converter;
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/** This class lexes the classic ACE Service Configurator language.
- * The entry point is similar to what flex would generate. However, it
- * is a static method in this class (which is really just name space).
- */
-class ACE_Svc_Conf_Lexer
-{
-public:
- /// This is similar to the C function, ace_yylex, which a bison
- /// generated parser expects. It returns information in the ace_yylval
- /// parameter and uses input stored in the param parameter.
- static int yylex (YYSTYPE* ace_yylval,
- ACE_Svc_Conf_Param* param);
-
-private:
- static size_t input(ACE_Svc_Conf_Param* param, char* buf, size_t max_size);
-
- static int scan (YYSTYPE* ace_yylval, ACE_Svc_Conf_Param* param);
-
-#if defined (ACE_USES_WCHAR)
- static bool convert_to_utf8 (
- ACE_Svc_Conf_Param* param,
- size_t skip_bytes,
- ACE_Encoding_Converter_Factory::Encoding_Hint hint);
- static bool convert_from_utf8 (ACE_Encoding_Converter* converter,
- const char* source,
- size_t source_size,
- ACE_TCHAR* target,
- size_t target_size,
- size_t& length);
- static ACE_Encoding_Converter_Factory::Encoding_Hint
- locate_bom (char* source,
- size_t source_size,
- size_t& bytes_used);
-#endif /* ACE_USES_WCHAR */
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-#endif /* ACE_USES_CLASSIC_SVC_CONF = 1 */
-
-#include /**/ "ace/post.h"
-
-#endif /* SVC_CONF_LEXER_H */
-
diff --git a/dep/include/ace/Svc_Conf_Param.h b/dep/include/ace/Svc_Conf_Param.h
deleted file mode 100644
index 3b96aae13b0..00000000000
--- a/dep/include/ace/Svc_Conf_Param.h
+++ /dev/null
@@ -1,141 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Svc_Conf_Param.h
- *
- * $Id: Svc_Conf_Param.h 81312 2008-04-09 21:01:34Z iliyan $
- *
- * @author Iliyan Jeliazkov <iliyan@ociweb.com>
- * @author Based on code originally found in Svc_Conf.h by Doug
- Schmidt and Ossama Othman.
- */
-//=============================================================================
-
-#ifndef ACE_SVC_CONF_PARAM_H
-#define ACE_SVC_CONF_PARAM_H
-
-#include /**/ "ace/pre.h"
-
-// Globally visible macros, type decls, and extern var decls for
-// Service Configurator utility.
-
-#include "ace/Obstack.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declarations.
-struct ace_yy_buffer_state;
-class ACE_Service_Gestalt;
-
-extern void ace_yy_delete_buffer (ace_yy_buffer_state *buffer);
-
-/**
- * @class ACE_Svc_Conf_Param
- *
- * @brief An instance of this object will be passed down to the
- * yyparse() and yylex() functions.
- *
- * This is intended for internal use within ACE service configuration
- * framework only.
- *
- * This class retains the state for a given parse/scan. It primarily
- * makes it possible to hold the static object lock in the scanner
- * for as short a period of time as possible. The resulting finer
- * grained locking prevents deadlocks from occuring when scanning a
- * `svc.conf' file and activating an ACE_Task, for example, as a
- * result of processing the directives in that file.
- */
-class ACE_Svc_Conf_Param
-{
-public:
-
- enum SVC_CONF_PARAM_TYPE
- {
- /// The lexer will scan a file containing one or more directives.
- SVC_CONF_FILE,
-
- /// The lexer will scan a string containing a directive.
- SVC_CONF_DIRECTIVE
- };
-
- /// Constructor
- ACE_Svc_Conf_Param (ACE_Service_Gestalt* config, FILE *file)
- : type (SVC_CONF_FILE),
- yyerrno (0),
- yylineno (1),
- buffer (0),
- obstack (),
- config (config)
- {
- source.file = file;
- }
-
- /// Constructor
- ACE_Svc_Conf_Param (ACE_Service_Gestalt* config, const ACE_TCHAR *directive)
- : type (SVC_CONF_DIRECTIVE),
- yyerrno (0),
- yylineno (1),
- buffer (0),
- obstack (),
- config (config)
- {
- source.directive = directive;
- }
-
- ~ACE_Svc_Conf_Param (void)
- {
- ace_yy_delete_buffer (this->buffer);
- }
-
-public:
-
- union
- {
- /// FILE stream from which directives will be scanned and parsed.
- FILE *file;
-
- /// String containing directive that will be scanned and parsed.
- const ACE_TCHAR *directive;
-
- } source;
-
- /// Discriminant use to determine which union member to use.
- SVC_CONF_PARAM_TYPE type;
-
- /// Keeps track of the number of errors encountered so far.
- int yyerrno;
-
- /// Keeps track of the current line number for error-handling routine.
- int yylineno;
-
- /// Lexer buffer that corresponds to the current Service
- /// Configurator file/direct scan.
- ace_yy_buffer_state *buffer;
-
- /// Obstack used for efficient memory allocation when
- /// parsing/scanning a service configurator directive.
- ACE_Obstack_T<ACE_TCHAR> obstack;
-
- /// A reference to the configuration
- ACE_Service_Gestalt *config;
-};
-
-// Parameter that is passed down to the yyparse() function, and
-// eventually to yylex().
-#define YYPARSE_PARAM ace_svc_conf_parameter
-
-#define YYLEX_PARAM YYPARSE_PARAM
-
-#define ACE_SVC_CONF_PARAM (static_cast<ACE_Svc_Conf_Param *> (YYLEX_PARAM))
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SVC_CONF_PARAM_H */
-
diff --git a/dep/include/ace/Svc_Conf_Token_Table.h b/dep/include/ace/Svc_Conf_Token_Table.h
deleted file mode 100644
index 701032097be..00000000000
--- a/dep/include/ace/Svc_Conf_Token_Table.h
+++ /dev/null
@@ -1,83 +0,0 @@
-/* A Bison parser, made by GNU Bison 2.3. */
-
-/* Skeleton interface for Bison's Yacc-like parsers in C
-
- $Id: Svc_Conf_Token_Table.h 82145 2008-06-24 11:03:50Z sma $
-
- Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
- Free Software Foundation, Inc.
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor,
- Boston, MA 02110-1301, USA. */
-
-/* As a special exception, you may create a larger work that contains
- part or all of the Bison parser skeleton and distribute that work
- under terms of your choice, so long as that work isn't itself a
- parser generator using the skeleton or a modified version thereof
- as a parser skeleton. Alternatively, if you modify or redistribute
- the parser skeleton itself, you may (at your option) remove this
- special exception, which will cause the skeleton and the resulting
- Bison output files to be licensed under the GNU General Public
- License without this special exception.
-
- This special exception was added by the Free Software Foundation in
- version 2.2 of Bison. */
-
-/* Tokens. */
-#ifndef YYTOKENTYPE
-# define YYTOKENTYPE
- /* Put the tokens into the symbol table, so that GDB and other debuggers
- know about them. */
- enum ace_yytokentype {
- ACE_DYNAMIC = 258,
- ACE_STATIC = 259,
- ACE_SUSPEND = 260,
- ACE_RESUME = 261,
- ACE_REMOVE = 262,
- ACE_USTREAM = 263,
- ACE_MODULE_T = 264,
- ACE_STREAM_T = 265,
- ACE_SVC_OBJ_T = 266,
- ACE_ACTIVE = 267,
- ACE_INACTIVE = 268,
- ACE_PATHNAME = 269,
- ACE_IDENT = 270,
- ACE_STRING = 271
- };
-#endif
-/* Tokens. */
-#define ACE_DYNAMIC 258
-#define ACE_STATIC 259
-#define ACE_SUSPEND 260
-#define ACE_RESUME 261
-#define ACE_REMOVE 262
-#define ACE_USTREAM 263
-#define ACE_MODULE_T 264
-#define ACE_STREAM_T 265
-#define ACE_SVC_OBJ_T 266
-#define ACE_ACTIVE 267
-#define ACE_INACTIVE 268
-#define ACE_PATHNAME 269
-#define ACE_IDENT 270
-#define ACE_STRING 271
-
-
-#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
-typedef int YYSTYPE;
-# define ace_yystype YYSTYPE /* obsolescent; will be withdrawn */
-# define YYSTYPE_IS_DECLARED 1
-# define YYSTYPE_IS_TRIVIAL 1
-#endif
-
diff --git a/dep/include/ace/Svc_Conf_Tokens.h b/dep/include/ace/Svc_Conf_Tokens.h
deleted file mode 100644
index 6be5c1c592c..00000000000
--- a/dep/include/ace/Svc_Conf_Tokens.h
+++ /dev/null
@@ -1,29 +0,0 @@
-// -*- C++ -*-
-//====================================================================
-/**
- * @file Svc_Conf_Tokens.h
- *
- * $Id: Svc_Conf_Tokens.h 81335 2008-04-11 01:53:36Z iliyan $
- *
- * @author Iliyan Jeliazkov <iliyan@ociweb.com>
- */
-//====================================================================
-
-#ifndef BISON_SVC_CONF_TAB_H
-# define BISON_SVC_CONF_TAB_H
-
-/// This file "wraps" around the one produced by yacc(1) and ensures
-/// that various symbols do not polute the global namespace. This
-/// allows ACE-based applications to incorporate other yacc(1)-derived
-/// parsers.
-
-# if !defined (YYSTYPE_IS_DECLARED)
-# define YYSTYPE_IS_DECLARED 1
-# endif
-
-# include "ace/Svc_Conf_Token_Table.h"
-
-# undef YYSTYPE_IS_DECLARED
-
-#endif /* ifndef BISON_SVC_CONF_TAB_H */
-
diff --git a/dep/include/ace/Svc_Handler.h b/dep/include/ace/Svc_Handler.h
deleted file mode 100644
index f42cf42c4c0..00000000000
--- a/dep/include/ace/Svc_Handler.h
+++ /dev/null
@@ -1,346 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Svc_Handler.h
- *
- * $Id: Svc_Handler.h 81740 2008-05-20 17:56:02Z elliott_c $
- *
- * @author Douglas Schmidt <schmidt@uci.edu>
- * @author Irfan Pyarali <irfan@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SVC_HANDLER_H
-#define ACE_SVC_HANDLER_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Synch_Options.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Task.h"
-#include "ace/Recyclable.h"
-#include "ace/Reactor.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decls.
-class ACE_Connection_Recycling_Strategy;
-
-// This enum is used as the flags parameter when calling the close()
-// method on the ACE_Svc_Handler.
-enum ACE_Svc_Handler_Close { NORMAL_CLOSE_OPERATION = 0x00,
- CLOSE_DURING_NEW_CONNECTION = 0x01
- };
-
-/**
- * @class ACE_Svc_Handler
- *
- * @brief Defines the interface for a service that exchanges data with
- * its connected peer.
- *
- * This class provides a well-defined interface that the
- * Acceptor and Connector pattern factories use as their target.
- * Typically, client applications will subclass ACE_Svc_Handler
- * and do all the interesting work in the subclass. One thing
- * that the ACE_Svc_Handler does contain is a PEER_STREAM
- * endpoint that is initialized by an ACE_Acceptor or
- * ACE_Connector when a connection is established successfully.
- * This endpoint is used to exchange data between a
- * ACE_Svc_Handler and the peer it is connected with.
- */
-template <ACE_PEER_STREAM_1, ACE_SYNCH_DECL>
-class ACE_Svc_Handler : public ACE_Task<ACE_SYNCH_USE>
-{
-public:
-
- // Useful STL-style traits.
- typedef ACE_PEER_STREAM_ADDR addr_type;
- typedef ACE_PEER_STREAM stream_type;
-
- /**
- * Constructor initializes the @a thr_mgr and @a mq by passing them
- * down to the ACE_Task base class. The @a reactor is passed to
- * the ACE_Event_Handler.
- */
- ACE_Svc_Handler (ACE_Thread_Manager *thr_mgr = 0,
- ACE_Message_Queue<ACE_SYNCH_USE> *mq = 0,
- ACE_Reactor *reactor = ACE_Reactor::instance ());
-
- /// Destructor.
- virtual ~ACE_Svc_Handler (void);
-
- /// Activate the client handler. This is typically called by the
- /// ACE_Acceptor or ACE_Connector.
- virtual int open (void * = 0);
-
- /**
- * Object termination hook -- application-specific cleanup code goes
- * here. This function is called by the idle() function if the object
- * does not have a ACE_Connection_Recycling_Strategy associated with it.
- * Also, due to this class's derivation from ACE_Task, close() is
- * also called when a thread activated with this object exits. See
- * ACE_Task::close() for further details. The default action of this
- * function is to call handle_close() with the default arguments.
- */
- virtual int close (u_long flags = 0);
-
- /**
- * Call this method if you want to recycling the @c Svc_Handler
- * instead of closing it. If the object does not have a recycler,
- * it will be closed.
- */
- virtual int idle (u_long flags = 0);
-
- /**
- * Call this method if you want to get/set the state of the
- * @c Svc_Handler. If the object does not have a recycler, this call
- * will have no effect (and the accessor will return
- * ACE_RECYCLABLE_UNKNOWN).
- */
- virtual ACE_Recyclable_State recycle_state (void) const;
- virtual int recycle_state (ACE_Recyclable_State new_state);
-
- /**
- * When the svc_handle is no longer needed around as a hint, call
- * this method. In addition, reset @c *act_holder to zero if
- * @a act_holder != 0.
- */
- virtual void cleanup_hint (void **act_holder = 0);
-
- // = Dynamic linking hooks.
- /// Default version does no work and returns -1. Must be overloaded
- /// by application developer to do anything meaningful.
- virtual int init (int argc, ACE_TCHAR *argv[]);
-
- /// Default version does no work and returns -1. Must be overloaded
- /// by application developer to do anything meaningful.
- virtual int fini (void);
-
- /// Default version does no work and returns -1. Must be overloaded
- /// by application developer to do anything meaningful.
- virtual int info (ACE_TCHAR **info_string, size_t length) const;
-
- // = Demultiplexing hooks.
-
- /**
- * Perform termination activities on the SVC_HANDLER. The default
- * behavior is to close down the <peer_> (to avoid descriptor leaks)
- * and to <destroy> this object (to avoid memory leaks)! If you
- * don't want this behavior make sure you override this method...
- */
- virtual int handle_close (ACE_HANDLE = ACE_INVALID_HANDLE,
- ACE_Reactor_Mask = ACE_Event_Handler::ALL_EVENTS_MASK);
-
- /// Default behavior when timeouts occur is to close down the
- /// <Svc_Handler> by calling <handle_close>.
- virtual int handle_timeout (const ACE_Time_Value &time,
- const void *);
-
- /// Get the underlying handle associated with the <peer_>.
- virtual ACE_HANDLE get_handle (void) const;
-
- /// Set the underlying handle associated with the <peer_>.
- virtual void set_handle (ACE_HANDLE);
-
- /// Returns the underlying PEER_STREAM. Used by
- /// <ACE_Acceptor::accept> and <ACE_Connector::connect> factories
- ACE_PEER_STREAM &peer (void) const;
-
- /// Overloaded new operator. This method unobtrusively records if a
- /// <Svc_Handler> is allocated dynamically, which allows it to clean
- /// itself up correctly whether or not it's allocated statically or
- /// dynamically.
- void *operator new (size_t n);
-
-#if defined (ACE_HAS_NEW_NOTHROW)
- /// Overloaded new operator, nothrow_t variant. Unobtrusively records if a
- /// <Svc_Handler> is allocated dynamically, which allows it to clean
- /// itself up correctly whether or not it's allocated statically or
- /// dynamically.
- void *operator new (size_t n, const ACE_nothrow_t&) throw();
-#if !defined (ACE_LACKS_PLACEMENT_OPERATOR_DELETE)
- void operator delete (void *p, const ACE_nothrow_t&) throw ();
-#endif /* ACE_LACKS_PLACEMENT_OPERATOR_DELETE */
-#endif
-
- /// This operator permits "placement new" on a per-object basis.
- void * operator new (size_t n, void *p);
-
- /**
- * Call this to free up dynamically allocated <Svc_Handlers>
- * (otherwise you will get memory leaks). In general, you should
- * call this method rather than <delete> since this method knows
- * whether or not the object was allocated dynamically, and can act
- * accordingly (i.e., deleting it if it was allocated dynamically).
- */
- virtual void destroy (void);
-
- /**
- * This really should be private so that users are forced to call
- * <destroy>. Unfortunately, the C++ standard doesn't allow there
- * to be a public new and a private delete. It is a bad idea to
- * call this method directly, so use <destroy> instead, unless you
- * know for sure that you've allocated the object dynamically.
- */
- void operator delete (void *);
-
-#if !defined (ACE_LACKS_PLACEMENT_OPERATOR_DELETE)
- /**
- * This operator is necessary to complement the class-specific
- * operator new above. Unfortunately, it's not portable to all C++
- * compilers...
- */
- void operator delete (void *, void *);
-#endif /* ACE_LACKS_PLACEMENT_OPERATOR_DELETE */
-
- /// Close down the descriptor and unregister from the Reactor
- void shutdown (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
-public:
-
- // = The following methods are not suppose to be public.
-
- // Because friendship is *not* inherited in C++, these methods have
- // to be public.
-
- // = Accessors to set/get the connection recycler.
-
- /// Set the recycler and the @a recycling_act that is used during
- /// purging and caching.
- virtual void recycler (ACE_Connection_Recycling_Strategy *recycler,
- const void *recycling_act);
-
- /// Get the recycler.
- virtual ACE_Connection_Recycling_Strategy *recycler (void) const;
-
- /// Get the recycling act.
- virtual const void *recycling_act (void) const;
-
- /**
- * Upcall made by the recycler when it is about to recycle the
- * connection. This gives the object a chance to prepare itself for
- * recycling. Return 0 if the object is ready for recycling, -1 on
- * failures.
- */
- virtual int recycle (void * = 0);
-
-protected:
- /// Maintain connection with client.
- ACE_PEER_STREAM peer_;
-
- /// Have we been dynamically created?
- bool dynamic_;
-
- /// Keeps track of whether we are in the process of closing (required
- /// to avoid circular calls to <handle_close>).
- bool closing_;
-
- /// Pointer to the connection recycler.
- ACE_Connection_Recycling_Strategy *recycler_;
-
- /// Asynchronous Completion Token (ACT) to be used to when talking to
- /// the recycler.
- const void *recycling_act_;
-};
-
-/**
- * @class ACE_Buffered_Svc_Handler
- *
- * @brief Defines the interface for a service that exchanges data with
- * its connected peer and supports buffering.
- *
- * The buffering feature makes it possible to queue up
- * ACE_Message_Blocks in an ACE_Message_Queue until (1) the
- * queue is "full" or (2) a period of time elapses, at which
- * point the queue is "flushed" via <sendv_n> to the peer.
- */
-template <ACE_PEER_STREAM_1, ACE_SYNCH_DECL>
-class ACE_Buffered_Svc_Handler : public ACE_Svc_Handler<ACE_PEER_STREAM_2, ACE_SYNCH_USE>
-{
-public:
- // = Initialization and termination methods.
- /**
- * Constructor initializes the @a thr_mgr and @a mq by passing them
- * down to the ACE_Task base class. The @a reactor is passed to
- * the ACE_Event_Handler. The @a max_buffer_size and
- * @a relative_timeout are used to determine at what point to flush
- * the @a mq. By default, there's no buffering at all. The
- * @a relative_timeout value is interpreted to be in a unit that's
- * relative to the current time returned by <ACE_OS::gettimeofday>.
- */
- ACE_Buffered_Svc_Handler (ACE_Thread_Manager *thr_mgr = 0,
- ACE_Message_Queue<ACE_SYNCH_USE> *mq = 0,
- ACE_Reactor *reactor = ACE_Reactor::instance (),
- size_t max_buffer_size = 0,
- ACE_Time_Value *relative_timeout = 0);
-
- /// Destructor, which calls <flush>.
- virtual ~ACE_Buffered_Svc_Handler (void);
-
- /**
- * Insert the ACE_Message_Block chain rooted at @a message_block
- * into the ACE_Message_Queue with the designated @a timeout. The
- * <flush> method will be called if this <put> causes the number of
- * bytes to exceed the maximum buffer size or if the timeout period
- * has elapsed.
- */
- virtual int put (ACE_Message_Block *message_block,
- ACE_Time_Value *timeout = 0);
-
- /// Flush the ACE_Message_Queue, which writes all the queued
- /// ACE_Message_Blocks to the <PEER_STREAM>.
- virtual int flush (void);
-
- /// This method is not currently implemented -- this is where the
- /// integration with the <Reactor> would occur.
- virtual int handle_timeout (const ACE_Time_Value &time,
- const void *);
-
- /// Dump the state of an object.
- void dump (void) const;
-
-protected:
- /// Implement the flush operation on the ACE_Message_Queue, which
- /// writes all the queued ACE_Message_Blocks to the <PEER_STREAM>.
- /// Assumes that the caller holds the lock.
- virtual int flush_i (void);
-
- /// Maximum size the <Message_Queue> can be before we have to flush
- /// the buffer.
- size_t maximum_buffer_size_;
-
- /// Current size in bytes of the <Message_Queue> contents.
- size_t current_buffer_size_;
-
- /// Timeout value used to control when the buffer is flushed.
- ACE_Time_Value next_timeout_;
-
- /// Interval of the timeout.
- ACE_Time_Value interval_;
-
- /// Timeout pointer.
- ACE_Time_Value *timeoutp_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Svc_Handler.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Svc_Handler.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SVC_HANDLER_H */
-
diff --git a/dep/include/ace/Synch.h b/dep/include/ace/Synch.h
deleted file mode 100644
index 756b969ea6d..00000000000
--- a/dep/include/ace/Synch.h
+++ /dev/null
@@ -1,66 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Synch.h
- *
- * $Id: Synch.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Wrapper Facades for various synchronization mechanisms.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_SYNCH_H
-#define ACE_SYNCH_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (DO_NOT_INCLUDE_SYNCH_H)
-
-/* All the classes have been moved out into their own headers as part of
- the compile-time and footprint reduction effort. */
-
-#include "ace/Auto_Event.h"
-#include "ace/Barrier.h"
-#include "ace/Condition_Thread_Mutex.h"
-#include "ace/Condition_Recursive_Thread_Mutex.h"
-#include "ace/Event.h"
-#include "ace/Lock.h"
-#include "ace/Manual_Event.h"
-#include "ace/Mutex.h"
-#include "ace/Null_Barrier.h"
-#include "ace/Null_Condition.h"
-#include "ace/Null_Mutex.h"
-#include "ace/Null_Semaphore.h"
-#include "ace/RW_Mutex.h"
-#include "ace/RW_Thread_Mutex.h"
-#include "ace/Recursive_Thread_Mutex.h"
-#include "ace/Semaphore.h"
-#include "ace/Thread_Mutex.h"
-#include "ace/Thread_Semaphore.h"
-#include "ace/TSS_Adapter.h"
-
-// Include the templates here.
-// FUZZ: disable check_for_synch_include
-#include "ace/Synch_T.h"
-
-#if defined (ACE_LEGACY_MODE)
-# include "ace/File_Lock.h"
-# include "ace/Process_Semaphore.h"
-# include "ace/Process_Mutex.h"
-# include "ace/RW_Process_Mutex.h"
-# include "ace/Test_and_Set.h"
-#endif /* ACE_LEGACY_MODE */
-
-#endif /* DO_NOT_INCLUDE_SYNCH_H */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SYNCH_H */
-
diff --git a/dep/include/ace/Synch_Options.h b/dep/include/ace/Synch_Options.h
deleted file mode 100644
index 6c39dd55218..00000000000
--- a/dep/include/ace/Synch_Options.h
+++ /dev/null
@@ -1,164 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Synch_Options.h
- *
- * $Id: Synch_Options.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@uci.edu>
- */
-//==========================================================================
-
-#ifndef ACE_SYNCH_OPTIONS_H
-#define ACE_SYNCH_OPTIONS_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Time_Value.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Synch_Options
- *
- * @brief Contains the values of options used to determine the
- * synchronous and asynchronous behavior.
- *
- * The supported set of options is depicted in the following table.
- * The Reactor column indicates whether or not the USE_REACTOR option is
- * supplied.
- * The Timeout column specifies the period of time specified by the object;
- * Unused implies that USE_TIMEOUT is not included in the options and the
- * default timeout value, ACE_Time_Value::zero, is specified, either
- * explicitly or by default.
- *
- * <TABLE>
- * <TR><TD align="center"><B>Reactor</B></TD><TD align="center"><B>Timeout</B></TD><TD><B>Behavior</B></TD></TR>
- * <TR><TD>yes</TD><TD>Unused</TD><TD>Infinite timeout (using Reactor);
- * this is the default.</TD></TR>
- * <TR><TD>yes</TD><TD>time</TD><TD>Try asynch transaction for the
- * specified time (using Reactor)</TD></TR>
- * <TR><TD>yes</TD><TD>0,0</TD><TD>Poll; try, if EWOULDBLOCK, return
- * immediately (using Reactor)</TD></TR>
- * <TR><TD>no</TD><TD>Unused</TD><TD>Block until completion (don't use Reactor)</TD></TR>
- * <TR><TD>no</TD><TD>time</TD><TD>Wait up to specified amount of time for
- * completion (don't use Reactor)</TD></TR>
- * <TR><TD>no</TD><TD>0,0</TD><TD>Poll and return immediately</TD></TR>
- * </TABLE>
- */
-class ACE_Export ACE_Synch_Options
-{
-public:
- /// Options flags for controlling synchronization.
- /**
- * Note that these flags can be bit-wise "or'd" together if both
- * options are desired.
- */
- enum
- {
- /// Use the Reactor.
- USE_REACTOR = 01,
- /// Use the supplied timeout value.
- USE_TIMEOUT = 02
- };
-
- /**
- * Initialize the object to default values unless specified otherwise.
- *
- * @param options Specifies the options to use; default is neither option
- * (no reactor, no timeout).
- * @param timeout Specifies the period of time to use for the operation's
- * timeout. The default is ACE_Time_Value::zero, noted as
- * 0,0 in the behavior options table. If a non-zero timeout
- * is specified, the USE_TIMEOUT option is added to
- * @a options.
- * To use a zero timeout, USE_TIMEOUT must be explicitly
- * specified in @a options.
- * @param arg A completion tag that can be passed through the options;
- * the class using ACE_Synch_Options can access this.
- * ACE_Synch_Options makes no use of it internally.
- */
- ACE_Synch_Options (unsigned long options = 0,
- const ACE_Time_Value &timeout = ACE_Time_Value::zero,
- const void *arg = 0);
-
- /// Initialize the object; arguments are the same as for the
- /// constructor.
- void set (unsigned long options = 0,
- const ACE_Time_Value &timeout = ACE_Time_Value::zero,
- const void *arg = 0);
-
- /// Returns true if the specified option(s) are enabled, false otherwise.
- bool operator[] (unsigned long option) const;
-
- /// Adds the specified option(s) to the object; does not replace them.
- void operator= (unsigned long option);
-
- /// Returns the "magic cookie" argument.
- const void *arg (void) const;
-
- /// Set the "magic cookie" argument.
- void arg (const void *);
-
- /// Returns a reference to the ACE_Time_Value. This value only makes
- /// sense if (*this)[USE_TIMEOUT] is true.
- const ACE_Time_Value &timeout (void) const;
-
- /// Set the timeout value. This method does not alter the options; in
- /// particular, it doesn't add USE_TIMEOUT to the options when a non-zero
- /// timeout is specified as the constructor and set() do.
- void timeout (const ACE_Time_Value &tv);
-
- /**
- * Returns a timeout pointer if (*this)[USE_TIMEOUT] is true, else 0.
- * This should be used with care, e.g., the timeout pointer should not
- * be stored in a manner that will lead to dangling pointers.
- */
- const ACE_Time_Value *time_value (void) const;
-
- // = Static data members (singletons)
-
- /// This is the default setting for options, which will block
- /// synchronously.
- static ACE_Synch_Options defaults;
-
- /// This is the default synchronous setting.
- static ACE_Synch_Options synch;
-
- /// This is the default asynchronous setting.
- static ACE_Synch_Options asynch;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Keeps track of the enabled options.
- unsigned long options_;
-
- /// Amount of time to wait for timeouts.
- ACE_Time_Value timeout_;
-
- /**
- * "Magic cookie" always passed in as an argument to the ACE_Reactor's
- * schedule_timer() method. Used to communicate values for
- * asynchronous programming.
- */
- const void *arg_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_SYNCH_OPTIONS_H */
-
diff --git a/dep/include/ace/Synch_T.h b/dep/include/ace/Synch_T.h
deleted file mode 100644
index acd6da6eb86..00000000000
--- a/dep/include/ace/Synch_T.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Synch_T.h
- *
- * $Id: Synch_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_SYNCH_T_H
-#define ACE_SYNCH_T_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// FUZZ: disable check_for_synch_include
-#include "ace/Synch.h"
-
-#include "ace/Lock_Adapter_T.h"
-#include "ace/Reverse_Lock_T.h"
-#include "ace/Guard_T.h"
-#include "ace/TSS_T.h"
-#include "ace/Condition_T.h"
-#include "ace/Synch_Traits.h"
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Synch_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Synch_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SYNCH_T_H */
-
diff --git a/dep/include/ace/Synch_Traits.h b/dep/include/ace/Synch_Traits.h
deleted file mode 100644
index c6649f9fdc8..00000000000
--- a/dep/include/ace/Synch_Traits.h
+++ /dev/null
@@ -1,153 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Synch_Traits.h
- *
- * $Id: Synch_Traits.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_SYNCH_TRAITS_H
-#define ACE_SYNCH_TRAITS_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h" /* Need to know threads, template settings */
-#include "ace/Lock.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decl
-class ACE_Null_Mutex;
-class ACE_Null_Condition;
-class ACE_Null_Semaphore;
-class ACE_Null_Mutex;
-class ACE_Thread_Mutex;
-class ACE_Process_Mutex;
-class ACE_Recursive_Thread_Mutex;
-class ACE_RW_Thread_Mutex;
-class ACE_Condition_Thread_Mutex;
-class ACE_Condition_Recursive_Thread_Mutex;
-class ACE_Thread_Semaphore;
-
-#if defined (ACE_HAS_TEMPLATE_TYPEDEFS)
-
-/**
- * @class ACE_NULL_SYNCH
- *
- * @brief Implement a do nothing Synchronization wrapper that
- * typedefs the @c ACE_Condition and @c ACE_Mutex to the
- * @c Null* versions.
- */
-class ACE_Export ACE_NULL_SYNCH
-{
-public:
- typedef ACE_Null_Mutex MUTEX;
- typedef ACE_Null_Mutex NULL_MUTEX;
- typedef ACE_Null_Mutex PROCESS_MUTEX;
- typedef ACE_Null_Mutex RECURSIVE_MUTEX;
- typedef ACE_Null_Mutex RW_MUTEX;
- typedef ACE_Null_Condition CONDITION;
- typedef ACE_Null_Condition RECURSIVE_CONDITION;
- typedef ACE_Null_Semaphore SEMAPHORE;
- typedef ACE_Null_Mutex NULL_SEMAPHORE;
-};
-
-#if defined (ACE_HAS_THREADS)
-
-class ACE_Process_Mutex;
-class ACE_Condition_Recursive_Thread_Mutex;
-
-/**
- * @class ACE_MT_SYNCH
- *
- * @brief Implement a default thread safe synchronization wrapper that
- * typedefs the @c ACE_Condition and @c ACE_Mutex to the
- * @c ACE_Condition and @c ACE_Mutex versions.
- *
- * @todo This should be a template, but SunC++ 4.0.1 complains about
- * this.
- */
-class ACE_Export ACE_MT_SYNCH
-{
-public:
- typedef ACE_Thread_Mutex MUTEX;
- typedef ACE_Null_Mutex NULL_MUTEX;
- typedef ACE_Process_Mutex PROCESS_MUTEX;
- typedef ACE_Recursive_Thread_Mutex RECURSIVE_MUTEX;
- typedef ACE_RW_Thread_Mutex RW_MUTEX;
- typedef ACE_Condition_Thread_Mutex CONDITION;
- typedef ACE_Condition_Recursive_Thread_Mutex RECURSIVE_CONDITION;
- typedef ACE_Thread_Semaphore SEMAPHORE;
- typedef ACE_Null_Semaphore NULL_SEMAPHORE;
-};
-
-#endif /* ACE_HAS_THREADS */
-
-#define ACE_SYNCH_MUTEX ACE_SYNCH::MUTEX
-#define ACE_SYNCH_NULL_MUTEX ACE_SYNCH::NULL_MUTEX
-#define ACE_SYNCH_RECURSIVE_MUTEX ACE_SYNCH::RECURSIVE_MUTEX
-#define ACE_SYNCH_RW_MUTEX ACE_SYNCH::RW_MUTEX
-#define ACE_SYNCH_CONDITION ACE_SYNCH::CONDITION
-#define ACE_SYNCH_RECURSIVE_CONDITION ACE_SYNCH::RECURSIVE_CONDITION
-#define ACE_SYNCH_NULL_SEMAPHORE ACE_SYNCH::NULL_SEMAPHORE
-#define ACE_SYNCH_SEMAPHORE ACE_SYNCH::SEMAPHORE
-
-#else /* !ACE_HAS_TEMPLATE_TYPEDEFS */
-
-#if defined (ACE_HAS_OPTIMIZED_MESSAGE_QUEUE)
-#define ACE_NULL_SYNCH ACE_Null_Mutex, ACE_Null_Condition, ACE_Null_Mutex
-#define ACE_MT_SYNCH ACE_Thread_Mutex, ACE_Condition_Thread_Mutex, ACE_Thread_Semaphore
-#else
-#define ACE_NULL_SYNCH ACE_Null_Mutex, ACE_Null_Condition
-#define ACE_MT_SYNCH ACE_Thread_Mutex, ACE_Condition_Thread_Mutex
-#endif /* ACE_HAS_OPTIMIZED_MESSAGE_QUEUE */
-
-#if defined (ACE_HAS_THREADS)
-
-#define ACE_SYNCH_MUTEX ACE_Thread_Mutex
-#define ACE_SYNCH_NULL_MUTEX ACE_Null_Mutex
-#define ACE_SYNCH_RECURSIVE_MUTEX ACE_Recursive_Thread_Mutex
-#define ACE_SYNCH_RW_MUTEX ACE_RW_Thread_Mutex
-#define ACE_SYNCH_CONDITION ACE_Condition_Thread_Mutex
-#define ACE_SYNCH_RECURSIVE_CONDITION ACE_Condition_Recursive_Thread_Mutex
-#define ACE_SYNCH_SEMAPHORE ACE_Thread_Semaphore
-#define ACE_SYNCH_NULL_SEMAPHORE ACE_Null_Semaphore
-
-#else /* ACE_HAS_THREADS */
-
-#define ACE_SYNCH_MUTEX ACE_Null_Mutex
-#define ACE_SYNCH_NULL_MUTEX ACE_Null_Mutex
-#define ACE_SYNCH_RECURSIVE_MUTEX ACE_Null_Mutex
-#define ACE_SYNCH_RW_MUTEX ACE_Null_Mutex
-#define ACE_SYNCH_CONDITION ACE_Null_Condition
-#define ACE_SYNCH_RECURSIVE_CONDITION ACE_Null_Condition
-#define ACE_SYNCH_SEMAPHORE ACE_Null_Semaphore
-#define ACE_SYNCH_NULL_SEMAPHORE ACE_Null_Mutex
-
-#endif /* ACE_HAS_THREADS */
-#endif /* ACE_HAS_TEMPLATE_TYPEDEFS */
-
-// These are available on *all* platforms
-#define ACE_SYNCH_PROCESS_SEMAPHORE ACE_Process_Semaphore
-#define ACE_SYNCH_PROCESS_MUTEX ACE_Process_Mutex
-
-#if defined (ACE_HAS_THREADS)
-#define ACE_SYNCH ACE_MT_SYNCH
-#else /* ACE_HAS_THREADS */
-#define ACE_SYNCH ACE_NULL_SYNCH
-#endif /* ACE_HAS_THREADS */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SYNCH_TRAITS_H */
-
diff --git a/dep/include/ace/System_Time.h b/dep/include/ace/System_Time.h
deleted file mode 100644
index 2b1c329108e..00000000000
--- a/dep/include/ace/System_Time.h
+++ /dev/null
@@ -1,100 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file System_Time.h
- *
- * $Id: System_Time.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Prashant Jain
- * @author Tim H. Harrison
- * @author Douglas C. Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_SYSTEM_TIME_H
-#define ACE_SYSTEM_TIME_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Global_Macros.h"
-#include "ace/os_include/os_time.h" /* For time_t. */
-#include "ace/os_include/os_limits.h" /* For MAXPATHLEN. */
-#include "ace/MMAP_Memory_Pool.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template<ACE_MEM_POOL_1, class ACE_LOCK> class ACE_Malloc;
-template<class MALLOC> class ACE_Allocator_Adapter;
-
-class ACE_Null_Mutex;
-class ACE_Time_Value;
-class ACE_MMAP_Memory_Pool;
-
-/**
- * @class ACE_System_Time
- *
- * @brief Defines the timer services of the OS interface to access the
- * system time either on the local host or on the central time
- * server in the network.
- */
-class ACE_Export ACE_System_Time
-{
-public:
- /**
- * Enumeration types to specify mode of synchronization with master
- * clock. Jump will set local system time directly (thus possibly
- * producing time gaps or ambiguous local system times. Adjust will
- * smoothly slow down or speed up the local system clock to reach
- * the system time of the master clock.
- */
- enum Sync_Mode { Jump, Adjust };
-
- /// Default constructor.
- ACE_System_Time (const ACE_TCHAR *poolname = 0);
-
- /// Default destructor.
- ~ACE_System_Time (void);
-
- /// Get the local system time, i.e., the value returned by
- /// ACE_OS::time().
- static int get_local_system_time (time_t & time_out);
-
- /// Get the local system time, i.e., the value returned by
- /// ACE_OS::time().
- static int get_local_system_time (ACE_Time_Value &time_out);
-
- /// Get the system time of the central time server.
- int get_master_system_time (time_t & time_out);
-
- /// Get the system time of the central time server.
- int get_master_system_time (ACE_Time_Value &time_out);
-
- /// Synchronize local system time with the central time server using
- /// specified mode.
- int sync_local_system_time (ACE_System_Time::Sync_Mode mode);
-
-private:
- typedef ACE_Malloc<ACE_MMAP_MEMORY_POOL, ACE_Null_Mutex> MALLOC;
- typedef ACE_Allocator_Adapter<MALLOC> ALLOCATOR;
-
- /// Our allocator (used for obtaining system time from shared memory).
- ALLOCATOR * shmem_;
-
- /// The name of the pool used by the allocator.
- ACE_TCHAR poolname_[MAXPATHLEN + 1];
-
- /// Pointer to delta time kept in shared memory.
- long * delta_time_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SYSTEM_TIME_H */
-
diff --git a/dep/include/ace/TLI.h b/dep/include/ace/TLI.h
deleted file mode 100644
index 643b56418e9..00000000000
--- a/dep/include/ace/TLI.h
+++ /dev/null
@@ -1,116 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file TLI.h
- *
- * $Id: TLI.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_TLI_H
-#define ACE_TLI_H
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/OS_TLI.h"
-
-#if defined (ACE_HAS_TLI)
-
-#include "ace/IPC_SAP.h"
-#include "ace/Addr.h"
-#include "ace/os_include/os_fcntl.h"
-
-// There's not a universal device name for TLI devices. If the platform
-// needs something other than /dev/tcp, it needs to be set up in the config.h
-// file as ACE_TLI_TCP_DEVICE.
-#ifndef ACE_TLI_TCP_DEVICE
-#define ACE_TLI_TCP_DEVICE "/dev/tcp"
-#endif
-
-// There's not a universal device name for XTI/ATM devices. If the platform
-// needs something other than /dev/xtisvc0, it needs to be set up in the
-// config.h file as ACE_XTI_ATM_DEVICE. This may be FORE vendor specific and
-// there may be no good default.
-#ifndef ACE_XTI_ATM_DEVICE
-#define ACE_XTI_ATM_DEVICE "/dev/xtisvc0"
-#endif
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_TLI
- *
- * @brief Defines the member functions for the base class of the
- * ACE_TLI abstraction.
- */
-class ACE_Export ACE_TLI : public ACE_IPC_SAP
-{
-public:
- // = Initialization and termination methods.
- /// Initialize a TLI endpoint.
- ACE_HANDLE open (const char device[],
- int oflag = O_RDWR,
- struct t_info *info = 0);
-
- /// Close a TLI endpoint and release resources.
- int close (void);
-
- /// Set underlying protocol options.
- int set_option (int level, int option, void *optval, int optlen);
-
- /// Get underlying protocol options.
- int get_option (int level, int option, void *optval, int &optlen);
-
- // = Calls to underlying TLI operations.
- int look (void) const;
- int rcvdis (struct t_discon * = 0) const;
- int snddis (struct t_call * = 0) const;
- int sndrel (void) const;
- int rcvrel (void) const;
-
- /// Return our local endpoint address.
- int get_local_addr (ACE_Addr &) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- // = Ensure we are an abstract class.
- /// Default constructor.
- ACE_TLI (void);
-
- /// Destructor.
- ~ACE_TLI (void);
-
- /// Initialize a TLI endpoint.
- ACE_TLI (const char device[], int oflag = O_RDWR, struct t_info *info = 0);
-
-private:
-#if defined (ACE_HAS_SVR4_TLI)
- // XTI/TLI option management.
- struct t_optmgmt so_opt_req;
- struct t_optmgmt so_opt_ret;
-#endif /* ACE_HAS_SVR4_TLI */
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/TLI.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_TLI */
-#include /**/ "ace/post.h"
-#endif /* ACE_TLI_H */
-
diff --git a/dep/include/ace/TLI.inl b/dep/include/ace/TLI.inl
deleted file mode 100644
index a8375130a8e..00000000000
--- a/dep/include/ace/TLI.inl
+++ /dev/null
@@ -1,49 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: TLI.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/TLI.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-int
-ACE_TLI::look (void) const
-{
- ACE_TRACE ("ACE_TLI::look");
- return ACE_OS::t_look (this->get_handle ());
-}
-
-ACE_INLINE
-int
-ACE_TLI::rcvdis (struct t_discon *discon) const
-{
- ACE_TRACE ("ACE_TLI::rcvdis");
- return ACE_OS::t_rcvdis (this->get_handle (), discon);
-}
-
-ACE_INLINE
-int
-ACE_TLI::snddis (struct t_call *call) const
-{
- ACE_TRACE ("ACE_TLI::snddis");
- return ACE_OS::t_snddis (this->get_handle (), call);
-}
-
-ACE_INLINE
-int
-ACE_TLI::rcvrel (void) const
-{
- ACE_TRACE ("ACE_TLI::rcvrel");
- return ACE_OS::t_rcvrel (this->get_handle ());
-}
-
-ACE_INLINE
-int
-ACE_TLI::sndrel (void) const
-{
- ACE_TRACE ("ACE_TLI::sndrel");
- return ACE_OS::t_sndrel (this->get_handle ());
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/TLI_Acceptor.h b/dep/include/ace/TLI_Acceptor.h
deleted file mode 100644
index 87f73bb92ef..00000000000
--- a/dep/include/ace/TLI_Acceptor.h
+++ /dev/null
@@ -1,123 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file TLI_Acceptor.h
- *
- * $Id: TLI_Acceptor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_TLI_ACCEPTOR_H
-#define ACE_TLI_ACCEPTOR_H
-#include /**/ "ace/pre.h"
-
-#include "ace/TLI.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/TLI_Stream.h"
-#include "ace/Default_Constants.h"
-
-#if defined (ACE_HAS_TLI)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward reference...
-class ACE_TLI_Request_Queue;
-class ACE_Time_Value;
-
-/**
- * @class ACE_TLI_Acceptor
- *
- * @brief Defines the member functions for ACE_TLI_Acceptor abstraction.
- *
- * This class implements the algorithm described in Steve Rago's
- * book on System V UNIX network programming. It basically
- * makes TLI look like the C++ SOCK_SAP socket wrappers with
- * respect to establishing passive-mode listener endpoints.
- */
-class ACE_Export ACE_TLI_Acceptor : public ACE_TLI
-{
-public:
- friend class ACE_Request_Queue;
-
- // = Initialization and termination methods.
- /// Default constructor.
- ACE_TLI_Acceptor (void);
-
- /// Initiate a passive mode socket.
- ACE_TLI_Acceptor (const ACE_Addr &remote_sap,
- int reuse_addr = 0,
- int oflag = O_RDWR,
- struct t_info *info = 0,
- int backlog = ACE_DEFAULT_BACKLOG,
- const char device[] = ACE_TLI_TCP_DEVICE);
-
- /// Initiate a passive mode socket.
- ACE_HANDLE open (const ACE_Addr &remote_sap,
- int reuse_addr = 0,
- int oflag = O_RDWR,
- struct t_info *info = 0,
- int backlog = ACE_DEFAULT_BACKLOG,
- const char device[] = ACE_TLI_TCP_DEVICE);
-
- /// Close down the acceptor and release resources.
- int close (void);
-
- // = Passive connection acceptance method.
-
- /**
- * Accept a new data transfer connection. A @a timeout of 0 means
- * block forever, a @a timeout of {0, 0} means poll. <restart> == 1
- * means "restart if interrupted."
- */
- int accept (ACE_TLI_Stream &new_tli_sap,
- ACE_Addr *remote_addr = 0,
- ACE_Time_Value *timeout = 0,
- int restart = 1,
- int reset_new_handle = 0,
- int rwflag = 1,
- netbuf *udata = 0,
- netbuf *opt = 0);
-
- // = Meta-type info
- typedef ACE_INET_Addr PEER_ADDR;
- typedef ACE_TLI_Stream PEER_STREAM;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Network "device" we are using.
- const char *device_;
-
- /// Number of connections to queue.
- int backlog_;
-
- /// Are we using "tirdwr" mod?
- int rwflag_;
-
- /// Handle TLI accept insanity...
- int handle_async_event (int restart, int rwflag);
-
- /// Used for queueing up pending requests.
- ACE_TLI_Request_Queue *queue_;
-
- /// Used for handling disconnects
- struct t_discon *disp_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_TLI */
-#include /**/ "ace/post.h"
-#endif /* ACE_TLI_ACCEPTOR_H */
-
diff --git a/dep/include/ace/TLI_Connector.h b/dep/include/ace/TLI_Connector.h
deleted file mode 100644
index 537ea879959..00000000000
--- a/dep/include/ace/TLI_Connector.h
+++ /dev/null
@@ -1,130 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file TLI_Connector.h
- *
- * $Id: TLI_Connector.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_TLI_CONNECTOR_H
-#define ACE_TLI_CONNECTOR_H
-#include /**/ "ace/pre.h"
-
-#include "ace/TLI_Stream.h"
-#include "ace/Log_Msg.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_TLI)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_TLI_Connector
- *
- * @brief Defines an active connection factory for the ACE_TLI C++
- * wrappers.
- */
-class ACE_Export ACE_TLI_Connector
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_TLI_Connector (void);
-
- /**
- * Actively connect and produce a <new_stream> if things go well.
- * The @a remote_sap is the address that we are trying to connect
- * with. The @a timeout is the amount of time to wait to connect.
- * If it's 0 then we block indefinitely. If *timeout == {0, 0} then
- * the connection is done using non-blocking mode. In this case, if
- * the connection can't be made immediately the value of -1 is
- * returned with @c errno == EWOULDBLOCK. If *timeout > {0, 0} then
- * this is the maximum amount of time to wait before timing out. If the
- * time expires before the connection is made @c errno == ETIME. The
- * @a local_sap is the value of local address to bind to. If it's
- * the default value of ACE_Addr::sap_any then the user is letting
- * the OS do the binding. If @a reuse_addr == 1 then the
- * <local_addr> is reused, even if it hasn't been cleanedup yet.
- */
- ACE_TLI_Connector (ACE_TLI_Stream &new_stream,
- const ACE_Addr &remote_sap,
- ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = O_RDWR,
- int perms = 0,
- const char device[] = ACE_TLI_TCP_DEVICE,
- struct t_info *info = 0,
- int rw_flag = 1,
- struct netbuf *udata = 0,
- struct netbuf *opt = 0);
-
- /**
- * Actively connect and produce a <new_stream> if things go well.
- * The @a remote_sap is the address that we are trying to connect
- * with. The @a timeout is the amount of time to wait to connect.
- * If it's 0 then we block indefinitely. If *timeout == {0, 0} then
- * the connection is done using non-blocking mode. In this case, if
- * the connection can't be made immediately the value of -1 is
- * returned with @c errno == EWOULDBLOCK. If *timeout > {0, 0} then
- * this is the maximum amount of time to wait before timing out. If the
- * time expires before the connection is made @c errno == ETIME. The
- * @a local_sap is the value of local address to bind to. If it's
- * the default value of ACE_Addr::sap_any then the user is letting
- * the OS do the binding. If @a reuse_addr == 1 then the
- * <local_addr> is reused, even if it hasn't been cleanedup yet.
- */
- int connect (ACE_TLI_Stream &new_stream,
- const ACE_Addr &remote_sap,
- ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = O_RDWR,
- int perms = 0,
- const char device[] = ACE_TLI_TCP_DEVICE,
- struct t_info *info = 0,
- int rw_flag = 1,
- struct netbuf *udata = 0,
- struct netbuf *opt = 0);
-
- /**
- * Try to complete a non-blocking connection.
- * If connection completion is successful then @a new_stream contains
- * the connected ACE_SOCK_Stream. If @a remote_sap is non-NULL then it
- * will contain the address of the connected peer.
- */
- int complete (ACE_TLI_Stream &new_stream,
- ACE_Addr *remote_sap,
- ACE_Time_Value *tv);
-
- /// Resets any event associations on this handle
- int reset_new_handle (ACE_HANDLE handle);
-
- // = Meta-type info
- typedef ACE_INET_Addr PEER_ADDR;
- typedef ACE_TLI_Stream PEER_STREAM;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/TLI_Connector.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_TLI */
-#include /**/ "ace/post.h"
-#endif /* ACE_TLI_CONNECTOR_H */
-
diff --git a/dep/include/ace/TLI_Connector.inl b/dep/include/ace/TLI_Connector.inl
deleted file mode 100644
index 31bd3473509..00000000000
--- a/dep/include/ace/TLI_Connector.inl
+++ /dev/null
@@ -1,49 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: TLI_Connector.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_TLI_Connector::ACE_TLI_Connector (ACE_TLI_Stream &new_stream,
- const ACE_Addr &remote_sap,
- ACE_Time_Value *timeout,
- const ACE_Addr &local_sap,
- int reuse_addr,
- int flags,
- int perms,
- const char device[],
- struct t_info *info,
- int rw_flag,
- struct netbuf *udata,
- struct netbuf *opt)
-{
- ACE_TRACE ("ACE_TLI_Connector::ACE_TLI_Connector");
- if (this->connect (new_stream,
- remote_sap,
- timeout,
- local_sap,
- reuse_addr,
- flags,
- perms,
- device,
- info,
- rw_flag,
- udata,
- opt) == -1
- && timeout != 0 && !(errno == EWOULDBLOCK || errno == ETIME))
- ACE_ERROR ((LM_ERROR,
- ACE_TEXT ("%p\n"),
- ACE_TEXT ("ACE_TLI_Stream::ACE_TLI_Stream")));
-}
-
-ACE_INLINE
-int
-ACE_TLI_Connector::reset_new_handle (ACE_HANDLE handle)
-{
- ACE_UNUSED_ARG (handle);
- // Nothing to do here since the handle is not a socket
- return 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/TLI_Stream.h b/dep/include/ace/TLI_Stream.h
deleted file mode 100644
index 62fa9eb7311..00000000000
--- a/dep/include/ace/TLI_Stream.h
+++ /dev/null
@@ -1,141 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file TLI_Stream.h
- *
- * $Id: TLI_Stream.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_TLI_STREAM_H
-#define ACE_TLI_STREAM_H
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/TLI.h"
-
-#include "ace/INET_Addr.h"
-
-#if defined (ACE_HAS_TLI)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-/**
- * @class ACE_TLI_Stream
- *
- * @brief Defines the member functions for ACE_TLI_Stream abstraction.
- */
-class ACE_Export ACE_TLI_Stream : public ACE_TLI
-{
-public:
- friend class ACE_TLI_Acceptor;
- friend class ACE_TLI_Connector;
-
- // = Initialization and termination methods.
- /// Default constructor.
- ACE_TLI_Stream (void);
-
- // = TLI-specific shutdown operations.
- /// Close down and release resources.
- int close (void);
-
- /// Send a release and then await the release from the other side.
- int active_close (void);
-
- /// Acknowledge the release from the other side and then send the
- /// release to the other side.
- int passive_close (void);
-
- /// Return address of remotely connected peer.
- int get_remote_addr (ACE_Addr &) const;
-
- // = timod bindings
- /// Send an n byte buffer to the connected socket (uses t_snd(3)).
- ssize_t send (const void *buf,
- size_t n,
- int flags,
- const ACE_Time_Value *timeout = 0) const;
-
- /// Recv an n byte buffer from the connected socket (uses t_rcv(3)).
- ssize_t recv (void *buf,
- size_t n,
- int *flags,
- const ACE_Time_Value *timeout = 0) const;
-
- /// Send exactly n bytes to the connected socket (uses t_snd(3)).
- ssize_t send_n (const void *buf,
- size_t n,
- int flags,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
- /// Recv exactly n bytes from the connected socket (uses t_rcv(3)).
- ssize_t recv_n (void *buf,
- size_t n,
- int *flags,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
- // = tirdwr bindings
- /// Send an n byte buffer to the connected socket (uses write(2)).
- ssize_t send (const void *buf,
- size_t n,
- const ACE_Time_Value *timeout = 0) const;
-
- /// Recv an n byte buffer from the connected socket (uses read(2)).
- ssize_t recv (void *buf,
- size_t n,
- const ACE_Time_Value *timeout = 0) const;
-
- /// Send n bytes, keep trying until n are sent (uses write(2)).
- ssize_t send_n (const void *buf,
- size_t n,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
- /// Recv n bytes, keep trying until n are received (uses read (2)).
- ssize_t recv_n (void *buf,
- size_t n,
- const ACE_Time_Value *timeout = 0,
- size_t *bytes_transferred = 0) const;
-
- // = Meta-type info
- typedef ACE_INET_Addr PEER_ADDR;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Indicates whether the tirdwr module should be pushed
- int rwflag_;
-
- /// Get rwflag
- int get_rwflag (void) const;
-
- /// Set rwflag
- void set_rwflag (int value);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/TLI_Stream.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_TLI */
-#include /**/ "ace/post.h"
-#endif /* ACE_TLI_STREAM_H */
-
diff --git a/dep/include/ace/TLI_Stream.inl b/dep/include/ace/TLI_Stream.inl
deleted file mode 100644
index 1ef1a173e51..00000000000
--- a/dep/include/ace/TLI_Stream.inl
+++ /dev/null
@@ -1,25 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: TLI_Stream.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/TLI_Stream.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-void
-ACE_TLI_Stream::set_rwflag (int value)
-{
- ACE_TRACE ("ACE_TLI_Stream::set_rwflag");
- this->rwflag_ = value;
-}
-
-ACE_INLINE
-int
-ACE_TLI_Stream::get_rwflag (void) const
-{
- ACE_TRACE ("ACE_TLI_Stream::get_rwflag");
- return this->rwflag_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/TP_Reactor.h b/dep/include/ace/TP_Reactor.h
deleted file mode 100644
index 5e4a07f3e1c..00000000000
--- a/dep/include/ace/TP_Reactor.h
+++ /dev/null
@@ -1,319 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file TP_Reactor.h
- *
- * $Id: TP_Reactor.h 82393 2008-07-23 10:52:34Z johnnyw $
- *
- * The ACE_TP_Reactor (aka, Thread Pool Reactor) uses the
- * Leader/Followers pattern to demultiplex events among a pool of
- * threads. When using a thread pool reactor, an application
- * pre-spawns a fixed number of threads. When these threads
- * invoke the ACE_TP_Reactor's handle_events() method, one thread
- * will become the leader and wait for an event. The other
- * follower threads will queue up waiting for their turn to become
- * the leader. When an event occurs, the leader will pick a
- * follower to become the leader and go on to handle the event.
- * The consequence of using ACE_TP_Reactor is the amortization of
- * the costs used to create threads. The context switching cost
- * will also reduce. Moreover, the total resources used by
- * threads are bounded because there are a fixed number of threads.
- *
- * @author Irfan Pyarali <irfan@cs.wustl.edu>
- * @author Nanbor Wang <nanbor@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_TP_REACTOR_H
-#define ACE_TP_REACTOR_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Select_Reactor.h"
-#include "ace/Timer_Queue.h" /* Simple forward decl won't work... */
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_EH_Dispatch_Info
- *
- * @brief This structure contains information of the activated event
- * handler.
- */
-class ACE_EH_Dispatch_Info
-{
-public:
- ACE_EH_Dispatch_Info (void);
-
- void set (ACE_HANDLE handle,
- ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask,
- ACE_EH_PTMF callback);
-
- bool dispatch (void) const;
-
- ACE_HANDLE handle_;
- ACE_Event_Handler *event_handler_;
- ACE_Reactor_Mask mask_;
- ACE_EH_PTMF callback_;
- int resume_flag_;
- bool reference_counting_required_;
-
-private:
- bool dispatch_;
-
- // Disallow copying and assignment.
- ACE_EH_Dispatch_Info (const ACE_EH_Dispatch_Info &);
- ACE_EH_Dispatch_Info &operator= (const ACE_EH_Dispatch_Info &);
-};
-
-/**
- * @class ACE_TP_Token_Guard
- *
- * @brief A helper class that helps grabbing, releasing and waiting
- * on tokens for a thread that tries calling handle_events ().
- *
- * In short, this class will be owned by one thread by creating on the
- * stack. This class gives the status of the ownership of the token
- * and manages the ownership
- */
-
-class ACE_TP_Token_Guard
-{
-public:
-
- /// Constructor that will grab the token for us
- ACE_TP_Token_Guard (ACE_Select_Reactor_Token &token);
-
- /// Destructor. This will release the token if it hasnt been
- /// released till this point
- ~ACE_TP_Token_Guard (void);
-
- /// Release the token ..
- void release_token (void);
-
- /// Returns whether the thread that created this object ownes the
- /// token or not.
- bool is_owner (void);
-
- /// A helper method that grabs the token for us, after which the
- /// thread that owns that can do some actual work.
- int acquire_read_token (ACE_Time_Value *max_wait_time = 0);
-
- /**
- * A helper method that grabs the token for us, after which the
- * thread that owns that can do some actual work. This differs from
- * acquire_read_token() as it uses acquire () to get the token instead of
- * acquire_read ()
- */
- int acquire_token (ACE_Time_Value *max_wait_time = 0);
-
-private:
-
- // Disallow default construction.
- ACE_TP_Token_Guard (void);
-
- // Disallow copying and assignment.
- ACE_TP_Token_Guard (const ACE_TP_Token_Guard &);
- ACE_TP_Token_Guard &operator= (const ACE_TP_Token_Guard &);
-
-private:
-
- /// The Select Reactor token.
- ACE_Select_Reactor_Token &token_;
-
- /// Flag that indicate whether the thread that created this object
- /// owns the token or not. A value of false indicates that this class
- /// hasnt got the token (and hence the thread) and a value of true
- /// vice-versa.
- bool owner_;
-
-};
-
-/**
- * @class ACE_TP_Reactor
- *
- * @brief Specialization of ACE_Select_Reactor to support thread-pool
- * based event dispatching.
- *
- * One of the shortcomings of the ACE_Select_Reactor is that it
- * does not support a thread pool-based event dispatching model,
- * similar to the one in ACE_WFMO_Reactor. In ACE_Select_Reactor, only
- * thread can call handle_events() at any given time. ACE_TP_Reactor
- * removes this short-coming.
- *
- * ACE_TP_Reactor is a specialization of ACE_Select_Reactor to support
- * thread pool-based event dispatching. This reactor takes advantage
- * of the fact that events reported by @c select() are persistent if not
- * acted upon immediately. It works by remembering the event handler
- * which was just activated, suspending it for further I/O activities,
- * releasing the internal lock (so that another thread can start waiting
- * in the event loop) and then dispatching the event's handler outside the
- * scope of the reactor lock. After the event handler has been dispatched
- * the event handler is resumed for further I/O activity.
- *
- * This reactor implementation is best suited for situations when the
- * callbacks to event handlers can take arbitrarily long and/or a number
- * of threads are available to run the event loop. Note that I/O-processing
- * callback code in event handlers (e.g. handle_input()) does not have to
- * be modified or made thread-safe for this reactor. This is because
- * before an I/O event is dispatched to an event handler, the handler is
- * suspended; it is resumed by the reactor after the upcall completes.
- * Therefore, multiple I/O events will not be made to one event handler
- * multiple threads simultaneously. This suspend/resume protection does not
- * apply to either timers scheduled with the reactor or to notifications
- * requested via the reactor. When using timers and/or notifications you
- * must provide proper protection for your class in the context of multiple
- * threads.
- */
-class ACE_Export ACE_TP_Reactor : public ACE_Select_Reactor
-{
-public:
-
- /// Initialize ACE_TP_Reactor with the default size.
- ACE_TP_Reactor (ACE_Sig_Handler * = 0,
- ACE_Timer_Queue * = 0,
- bool mask_signals = true,
- int s_queue = ACE_Select_Reactor_Token::FIFO);
-
- /**
- * Initialize the ACE_TP_Reactor to manage
- * @a max_number_of_handles. If @a restart is non-0 then the
- * ACE_Reactor's @c handle_events() method will be restarted
- * automatically when @c EINTR occurs. If @a sh or
- * @a tq are non-0 they are used as the signal handler and
- * timer queue, respectively.
- */
- ACE_TP_Reactor (size_t max_number_of_handles,
- int restart = 0,
- ACE_Sig_Handler *sh = 0,
- ACE_Timer_Queue *tq = 0,
- bool mask_signals = true,
- int s_queue = ACE_Select_Reactor_Token::FIFO);
-
- /**
- * This event loop driver that blocks for @a max_wait_time before
- * returning. It will return earlier if timer events, I/O events,
- * or signal events occur. Note that @a max_wait_time can be 0, in
- * which case this method blocks indefinitely until events occur.
- *
- * @a max_wait_time is decremented to reflect how much time this call
- * took. For instance, if a time value of 3 seconds is passed to
- * handle_events and an event occurs after 2 seconds,
- * @a max_wait_time will equal 1 second. This can be used if an
- * application wishes to handle events for some fixed amount of
- * time.
- *
- * @return The total number of events that were dispatched; 0 if the
- * @a max_wait_time elapsed without dispatching any handlers, or -1
- * if an error occurs (check @c errno for more information).
- */
- virtual int handle_events (ACE_Time_Value *max_wait_time = 0);
-
- virtual int handle_events (ACE_Time_Value &max_wait_time);
-
- /// Does the reactor allow the application to resume the handle on
- /// its own ie. can it pass on the control of handle resumption to
- /// the application. The TP reactor has can allow applications to
- /// resume handles. So return a positive value.
- virtual int resumable_handler (void);
-
- /// Called from handle events
- static void no_op_sleep_hook (void *);
-
- /// The ACE_TP_Reactor implementation does not have a single owner thread.
- /// Attempts to set the owner explicitly are ignored. The reported owner
- /// thread is the current Leader in the pattern.
- virtual int owner (ACE_thread_t n_id, ACE_thread_t *o_id = 0);
-
- /// Return the thread ID of the current Leader.
- virtual int owner (ACE_thread_t *t_id);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- // = Internal methods that do the actual work.
-
- /// Template method from the base class.
- virtual void clear_dispatch_mask (ACE_HANDLE handle,
- ACE_Reactor_Mask mask);
-
- /// Dispatch just 1 signal, timer, notification handlers
- int dispatch_i (ACE_Time_Value *max_wait_time,
- ACE_TP_Token_Guard &guard);
-
- /// Get the event that needs dispatching. It could be either a
- /// signal, timer, notification handlers or return possibly 1 I/O
- /// handler for dispatching. In the most common use case, this would
- /// return 1 I/O handler for dispatching
- int get_event_for_dispatching (ACE_Time_Value *max_wait_time);
-
-#if 0
- // @Ciju
- // signal handling isn't in a production state yet.
- // Commenting it out for now.
-
- /// Method to handle signals
- /// @note It is just busted at this point in time.
- int handle_signals (int &event_count,
- ACE_TP_Token_Guard &g);
-#endif // #if 0
-
- /// Handle timer events
- int handle_timer_events (int &event_count,
- ACE_TP_Token_Guard &g);
-
- /// Handle notify events
- int handle_notify_events (int &event_count,
- ACE_TP_Token_Guard &g);
-
- /// handle socket events
- int handle_socket_events (int &event_count,
- ACE_TP_Token_Guard &g);
-
- /// This method shouldn't get called.
- virtual void notify_handle (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- ACE_Handle_Set &,
- ACE_Event_Handler *eh,
- ACE_EH_PTMF callback);
-private:
-
- /// Get the handle of the notify pipe from the ready set if there is
- /// an event in the notify pipe.
- ACE_HANDLE get_notify_handle (void);
-
- /// Get socket event dispatch information.
- int get_socket_event_info (ACE_EH_Dispatch_Info &info);
-
- /// Notify the appropriate <callback> in the context of the <eh>
- /// associated with <handle> that a particular event has occurred.
- int dispatch_socket_event (ACE_EH_Dispatch_Info &dispatch_info);
-
- /// Clear the @a handle from the read_set
- void clear_handle_read_set (ACE_HANDLE handle);
-
- int post_process_socket_event (ACE_EH_Dispatch_Info &dispatch_info,int status);
-
-private:
- /// Deny access since member-wise won't work...
- ACE_TP_Reactor (const ACE_TP_Reactor &);
- ACE_TP_Reactor &operator = (const ACE_TP_Reactor &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/TP_Reactor.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_TP_REACTOR_H */
-
diff --git a/dep/include/ace/TP_Reactor.inl b/dep/include/ace/TP_Reactor.inl
deleted file mode 100644
index 1a3f76deb23..00000000000
--- a/dep/include/ace/TP_Reactor.inl
+++ /dev/null
@@ -1,118 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: TP_Reactor.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/************************************************************************/
-// Methods for ACE_EH_Dispatch_Info
-/************************************************************************/
-
-ACE_INLINE
-ACE_EH_Dispatch_Info::ACE_EH_Dispatch_Info (void) :
- handle_ (ACE_INVALID_HANDLE),
- event_handler_ (0),
- mask_ (ACE_Event_Handler::NULL_MASK),
- callback_ (0),
- resume_flag_ (ACE_Event_Handler::ACE_REACTOR_RESUMES_HANDLER),
- reference_counting_required_ (false),
- dispatch_ (false)
-{
-}
-
-ACE_INLINE void
-ACE_EH_Dispatch_Info::set (ACE_HANDLE handle,
- ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask,
- ACE_EH_PTMF callback)
-{
- this->dispatch_ = true;
-
- this->handle_ = handle;
- this->event_handler_ = event_handler;
- this->mask_ = mask;
- this->callback_ = callback;
- if (event_handler_)
- {
- this->resume_flag_ = event_handler->resume_handler ();
- this->reference_counting_required_ =
- (event_handler_->reference_counting_policy ().value () ==
- ACE_Event_Handler::Reference_Counting_Policy::ENABLED);
- }
- else
- this->dispatch_ = false;
-}
-
-ACE_INLINE bool
-ACE_EH_Dispatch_Info::dispatch (void) const
-{
- return this->dispatch_;
-}
-
-/************************************************************************/
-// Methods for ACE_TP_Token_Guard
-/************************************************************************/
-
-ACE_INLINE
-ACE_TP_Token_Guard::ACE_TP_Token_Guard (ACE_Select_Reactor_Token &token)
-
- : token_ (token),
- owner_ (false)
-{
-}
-
-ACE_INLINE
-ACE_TP_Token_Guard::~ACE_TP_Token_Guard (void)
-{
- if (this->owner_)
- {
- ACE_MT (this->token_.release ());
- this->owner_ = false;
- }
-}
-
-ACE_INLINE void
-ACE_TP_Token_Guard::release_token (void)
-{
- if (this->owner_)
- {
- ACE_MT (this->token_.release ());
-
- // We are not the owner anymore..
- this->owner_ = false;
- }
-}
-
-ACE_INLINE bool
-ACE_TP_Token_Guard::is_owner (void)
-{
- return this->owner_;
-}
-
-/************************************************************************/
-// Methods for ACE_TP_Reactor
-/************************************************************************/
-
-ACE_INLINE void
-ACE_TP_Reactor::no_op_sleep_hook (void *)
-{
-}
-
-ACE_INLINE void
-ACE_TP_Reactor::clear_handle_read_set (ACE_HANDLE handle)
-{
- this->ready_set_.wr_mask_.clr_bit (handle);
- this->ready_set_.ex_mask_.clr_bit (handle);
- this->ready_set_.rd_mask_.clr_bit (handle);
-}
-
-ACE_INLINE void
-ACE_TP_Reactor::clear_dispatch_mask (ACE_HANDLE ,
- ACE_Reactor_Mask )
-{
- this->ready_set_.rd_mask_.reset ();
- this->ready_set_.wr_mask_.reset ();
- this->ready_set_.ex_mask_.reset ();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/TSS_Adapter.h b/dep/include/ace/TSS_Adapter.h
deleted file mode 100644
index 0729c1a7886..00000000000
--- a/dep/include/ace/TSS_Adapter.h
+++ /dev/null
@@ -1,62 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file TSS_Adapter.h
- *
- * $Id: TSS_Adapter.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Originally in Synch.h
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_TSS_ADAPTER_H
-#define ACE_TSS_ADAPTER_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_TSS_Adapter
- *
- * @brief This class encapsulates a TSS object and its associated
- * C++ destructor function. It is used by the ACE_TSS...
- * methods (in Synch_T.cpp) in order to allow an extern
- * "C" cleanup routine to be used. Needed by the "frigging"
- * MVS C++ compiler.
- *
- * Objects of this class are stored in thread specific
- * storage. ts_obj_ points to the "real" object and
- * func_ is a pointer to the C++ cleanup function for ts_obj_.
- */
-class ACE_Export ACE_TSS_Adapter
-{
-public:
- /// Initialize the adapter.
- ACE_TSS_Adapter (void *object, ACE_THR_DEST f);
-
- /// Perform the cleanup operation.
- void cleanup (void);
-
-//private:
-
- /// The real TS object.
- void * const ts_obj_;
-
- /// The real cleanup routine for ts_obj;
- ACE_THR_DEST func_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TSS_ADAPTER_H */
-
diff --git a/dep/include/ace/TSS_T.h b/dep/include/ace/TSS_T.h
deleted file mode 100644
index e00c1a0445e..00000000000
--- a/dep/include/ace/TSS_T.h
+++ /dev/null
@@ -1,254 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file TSS_T.h
- *
- * $Id: TSS_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_TSS_T_H
-#define ACE_TSS_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Lock.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// This should probably go somewhere else, but it's only used here and
-// in Thread_Manager.
-// Note there is no ACE_TSS_SET because one would typicaly do
-// 'ACE_TSS_GET()->xyz_ = value', so the macro would have been too
-// complicated.
-# if defined (ACE_HAS_THREADS) && (defined (ACE_HAS_THREAD_SPECIFIC_STORAGE) || defined (ACE_HAS_TSS_EMULATION))
-# define ACE_TSS_TYPE(T) ACE_TSS< T >
-# define ACE_TSS_GET(I, T) ((I)->operator T * ())
-# else
-# define ACE_TSS_TYPE(T) T
-# define ACE_TSS_GET(I, T) (I)
-# endif /* ACE_HAS_THREADS && (ACE_HAS_THREAD_SPECIFIC_STORAGE || ACE_HAS_TSS_EMULATION) */
-
-#include "ace/Thread_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_TSS
- *
- * @brief Allows objects that are "physically" in thread specific
- * storage (i.e., private to a thread) to be accessed as though
- * they were "logically" global to a program.
- *
- * This class helps to maintain a separate copy of an object for each thread
- * that needs access to it. All threads access a single instance of ACE_TSS
- * to obtain a pointer to a thread-specific copy of a TYPE object. Using
- * a pointer to TYPE in TSS instead of TYPE itself is useful because,
- * in addition to avoiding copies on what may be a complex class, it allows
- * assignment of objects to thread-specific data that have arbitrarily
- * complex constructors.
- *
- * When the ACE_TSS object is destroyed, all threads's instances of the
- * data are deleted.
- *
- * Modern compilers have no problem using a built-in type for @c TYPE.
- * However, if you must use an older compiler that won't work with a built-in
- * type, the ACE_TSS_Type_Adapter class template, below, can be used for
- * adapting built-in types to work with ACE_TSS.
- *
- * @note Beware when creating static instances of this type
- * (as with any other, btw). The unpredictable order of initialization
- * across different platforms may cause a situation where one uses
- * the instance before it is fully initialized. That's why typically
- * instances of this type are dynamicaly allocated. On the stack it is
- * typically allocated inside the ACE_Thread::svc() method which
- * limits its lifetime appropriately.
- *
- */
-template <class TYPE>
-class ACE_TSS
-{
-public:
- /**
- * Default constructor. Can also initialize this ACE_TSS instance,
- * readying it for use by the calling thread as well as all other
- * threads in the process. If the constructor does not initialize this
- * object, the first access to it will perform the initialization, which
- * could possibly (under odd error conditions) fail.
- *
- * @param ts_obj If non-zero, this object is initialized for use by
- * all threads and @a ts_obj is used to set the
- * thread-specific value for the calling thread. Other
- * threads use the ts_object (TYPE *) method to set
- * a specific value.
- */
- ACE_TSS (TYPE *ts_obj = 0);
-
- /// Deregister this object from thread-specific storage administration.
- /// Will cause all threads' copies of TYPE to be destroyed.
- virtual ~ACE_TSS (void);
-
- /**
- * Set the thread-specific object for the calling thread.
- * If this object has not been initialized yet, this method performs the
- * initialization.
- *
- * @param new_ts_obj The new value for the calling thread's copy of
- * this object.
- *
- * @return The previous value of the calling thread's copy of this
- * object; 0 if there was no previous value. This method also
- * returns 0 on errors. To tell the difference between an error
- * and a returned 0 pointer, it's recommended that one set errno
- * to 0 prior to calling ts_object() and check for a new errno
- * value if ts_object() returns 0.
- */
- TYPE *ts_object (TYPE *new_ts_obj);
-
- /** @name Accessors
- *
- * All accessors return a pointer to the calling thread's copy of the
- * TYPE data. The pointer may be 0 on error conditions or if the calling
- * thread's copy of the data has not yet been set. See specific method
- * descriptions for complete details.
- */
- //@{
- /**
- * Get the thread-specific object for this object.
- *
- * @return 0 if the object has never been initialized, otherwise returns
- * the calling thread's copy of the data. The returned pointer
- * may be 0 under odd error conditions; check errno for further
- * information.
- */
- TYPE *ts_object (void) const;
-
- /**
- * Use a "smart pointer" to get the thread-specific data associated
- * with this object.
- * If this ACE_TSS object hasn't been initialized, this method
- * will initialize it as a side-affect. If the calling thread has not
- * set a value, a default-constructed instance of TYPE is allocated and it
- * becomes the thread's instance.
- *
- * @return The calling thread's copy of the data. The returned pointer
- * may be 0 under odd error conditions; check errno for further
- * information.
- */
- TYPE *operator-> () const;
-
- /**
- * Obtain a pointer to the calling thread's TYPE object.
- * If this ACE_TSS object hasn't been initialized, this method
- * will initialize it as a side-affect. If the calling thread has not
- * set a value, a default-constructed instance of TYPE is allocated and it
- * becomes the thread's instance.
- *
- * @return The calling thread's copy of the data. The returned pointer
- * may be 0 under odd error conditions; check errno for further
- * information.
- */
- operator TYPE *(void) const;
-
- //@}
-
- /// Hook for construction parameters.
- virtual TYPE *make_TSS_TYPE (void) const;
-
- // = Utility methods.
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // ACE_ALLOC_HOOK_DECLARE;
- // Declare the dynamic allocation hooks.
-
-protected:
- /// Actually implements the code that retrieves the object from
- /// thread-specific storage.
- TYPE *ts_get (void) const;
-
- /// Factors out common code for initializing TSS. This must NOT be
- /// called with the lock held...
- int ts_init (void);
-
-#if !(defined (ACE_HAS_THREADS) && (defined (ACE_HAS_THREAD_SPECIFIC_STORAGE) || defined (ACE_HAS_TSS_EMULATION)))
- /// This implementation only works for non-threading systems...
- TYPE *type_;
-#else
- /// Avoid race conditions during initialization.
- ACE_Thread_Mutex keylock_;
-
- /// "First time in" flag.
- volatile bool once_;
-
- /// Key for the thread-specific error data.
- ACE_thread_key_t key_;
-
- /// "Destructor" that deletes internal TYPE * when thread exits.
- static void cleanup (void *ptr);
-#endif /* defined (ACE_HAS_THREADS) && (defined (ACE_HAS_THREAD_SPECIFIC_STORAGE) || defined (ACE_HAS_TSS_EMULATION)) */
- // = Disallow copying...
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_TSS<TYPE> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_TSS (const ACE_TSS<TYPE> &))
-};
-
-/**
- * @class ACE_TSS_Type_Adapter
- *
- * @brief Adapter that allows built-in types to be used with ACE_TSS.
- *
- * Wraps a value of a built-in type, providing conversions to
- * and from the type. Example use with ACE_TSS:
- * ACE_TSS<ACE_TSS_Type_Adapter<int> > i;
- * *i = 37;
- * ACE_OS::fprintf (stderr, "%d\n", *i);
- * Unfortunately, though, some compilers have trouble with the
- * implicit type conversions. This seems to work better:
- * ACE_TSS<ACE_TSS_Type_Adapter<int> > i;
- * i->operator int & () = 37;
- * ACE_OS::fprintf (stderr, "%d\n", i->operator int ());
- */
-template <class TYPE>
-class ACE_TSS_Type_Adapter
-{
-public:
- /// Constructor. Inlined here so that it should _always_ be inlined.
- ACE_TSS_Type_Adapter (const TYPE value = 0): value_ (value) {}
-
- /// TYPE conversion. Inlined here so that it should _always_ be
- /// inlined.
- operator TYPE () const { return value_; };
-
- /// TYPE & conversion. Inlined here so that it should _always_ be
- /// inlined.
- operator TYPE &() { return value_; };
-
-private:
- /// The wrapped value.
- TYPE value_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/TSS_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/TSS_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("TSS_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TSS_T_H */
-
diff --git a/dep/include/ace/TSS_T.inl b/dep/include/ace/TSS_T.inl
deleted file mode 100644
index 571eab8f643..00000000000
--- a/dep/include/ace/TSS_T.inl
+++ /dev/null
@@ -1,42 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: TSS_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#if !(defined (ACE_HAS_THREADS) && (defined (ACE_HAS_THREAD_SPECIFIC_STORAGE) || defined (ACE_HAS_TSS_EMULATION)))
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class TYPE> ACE_INLINE
-ACE_TSS<TYPE>::ACE_TSS (TYPE *type)
- : type_ (type)
-{
-}
-
-template <class TYPE> ACE_INLINE int
-ACE_TSS<TYPE>::ts_init (void)
-{
- return 0;
-}
-
-template <class TYPE> ACE_INLINE TYPE *
-ACE_TSS<TYPE>::ts_object (void) const
-{
- return this->type_;
-}
-
-template <class TYPE> ACE_INLINE TYPE *
-ACE_TSS<TYPE>::ts_object (TYPE *type)
-{
- this->type_ = type;
- return this->type_;
-}
-
-template <class TYPE> ACE_INLINE TYPE *
-ACE_TSS<TYPE>::ts_get (void) const
-{
- return this->type_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ! (defined (ACE_HAS_THREADS) && (defined (ACE_HAS_THREAD_SPECIFIC_STORAGE) || defined (ACE_HAS_TSS_EMULATION))) */
diff --git a/dep/include/ace/TTY_IO.h b/dep/include/ace/TTY_IO.h
deleted file mode 100644
index c7404e84af8..00000000000
--- a/dep/include/ace/TTY_IO.h
+++ /dev/null
@@ -1,114 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file TTY_IO.h
- *
- * $Id: TTY_IO.h 82271 2008-07-09 09:23:03Z olli $
- *
- * @author Douglas C. Schmidt <schmidt@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_TTY_IO_H
-#define ACE_TTY_IO_H
-
-#include "ace/DEV_IO.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_TTY_IO
- *
- * @brief Class definitions for platform specific TTY features.
- *
- * This class represents an example interface for a specific
- * device (a serial line). It extends the capability of the
- * underlying DEV_IO class by adding a control method that takes
- * a special structure (Serial_Params) as argument to allow a
- * comfortable user interface (away from that annoying termios
- * structure, which is very specific to UNIX).
- */
-class ACE_Export ACE_TTY_IO : public ACE_DEV_IO
-{
-public:
- enum Control_Mode
- {
- SETPARAMS, ///< Set control parameters.
- GETPARAMS ///< Get control parameters.
- };
-
- struct ACE_Export Serial_Params
- {
- Serial_Params (void);
-
- /** Specifies the baudrate at which the communnication port operates. */
- int baudrate;
- /** Specifies the minimum number of bytes in input buffer before XON char
- is sent. Negative value indicates that default value should
- be used (Win32). */
- int xonlim;
- /** Specifies the maximum number of bytes in input buffer before XOFF char
- is sent. Negative value indicates that default value should
- be used (Win32). */
- int xofflim;
- /** Specifies the minimum number of characters for non-canonical
- read (POSIX). */
- unsigned int readmincharacters;
- /** Specifies the time to wait before returning from read. Negative value
- means infinite timeout. */
- int readtimeoutmsec;
- /** Specifies the parity mode. POSIX supports "none", "even" and
- "odd" parity. Additionally Win32 supports "mark" and "space"
- parity modes. */
- const char *paritymode;
- /** Enable & set CTS mode. Note that RTS & CTS are enabled/disabled
- together on some systems (RTS/CTS is enabled if either
- <code>ctsenb</code> or <code>rtsenb</code> is set). */
- bool ctsenb;
- /** Enable & set RTS mode. Note that RTS & CTS are enabled/disabled
- together on some systems (RTS/CTS is enabled if either
- <code>ctsenb</code> or <code>rtsenb</code> is set).
- - 0 = Disable RTS.
- - 1 = Enable RTS.
- - 2 = Enable RTS flow-control handshaking (Win32).
- - 3 = Specifies that RTS line will be high if bytes are available
- for transmission. After transmission RTS will be low (Win32). */
- unsigned char rtsenb;
- /** Enable/disable software flow control on input. */
- bool xinenb;
- /** Enable/disable software flow control on output. */
- bool xoutenb;
- /** Specifies if device is a modem (POSIX). If not set modem status
- lines are ignored. */
- bool modem;
- /** Enable/disable receiver (POSIX). */
- bool rcvenb;
- /** Controls whether DSR is disabled or enabled (Win32). */
- bool dsrenb;
- /** Controls whether DTR is disabled or enabled. */
- bool dtrdisable;
- /** Data bits. Valid values 5, 6, 7 and 8 data bits.
- Additionally Win32 supports 4 data bits. */
- unsigned char databits;
- /** Stop bits. Valid values are 1 and 2. */
- unsigned char stopbits;
- };
-
- /** Interface for reading/writing serial device parameters. */
- int control (Control_Mode cmd, Serial_Params *arg) const;
-
-#if defined (ACE_NEEDS_DEV_IO_CONVERSION)
- /** This is necessary to pass ACE_TTY_IO as parameter to DEV_Connector. */
- operator ACE_DEV_IO &();
-#endif /* ACE_NEEDS_DEV_IO_CONVERSION */
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_TTY_IO_H */
-
diff --git a/dep/include/ace/Task.h b/dep/include/ace/Task.h
deleted file mode 100644
index fb3c8604c2c..00000000000
--- a/dep/include/ace/Task.h
+++ /dev/null
@@ -1,308 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Task.h
- *
- * $Id: Task.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_TASK_H
-#define ACE_TASK_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Service_Object.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Thread_Manager.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Task_Flags
- *
- * @brief These flags are used within the ACE_Task.
- *
- * These flags should be hidden within ACE_Task. Unfortunately, the
- * HP/UX C++ compiler can't grok this... Fortunately, there's no
- * code defined here, so we don't have to worry about multiple
- * definitions.
- */
-namespace ACE_Task_Flags
-{
- enum
- {
- /// Identifies a Task as being the "reader" in a Module.
- ACE_READER = 01,
- /// Just flush data messages in the queue.
- ACE_FLUSHDATA = 02,
- /// Flush all messages in the Queue.
- ACE_FLUSHALL = 04,
- /// Flush read queue
- ACE_FLUSHR = 010,
- /// Flush write queue
- ACE_FLUSHW = 020,
- /// Flush both queues
- ACE_FLUSHRW = 030
- };
-}
-
-/**
- * @class ACE_Task_Base
- *
- * @brief Direct base class for the ACE_Task template.
- *
- * This class factors out the non-template code in order to
- * reduce template bloat, as well as to make it possible for the
- * ACE_Thread_Manager to store ACE_Task_Base *'s
- * polymorphically.
- */
-class ACE_Export ACE_Task_Base : public ACE_Service_Object
-{
-public:
- // = Initialization and termination methods.
- /// Constructor.
- ACE_Task_Base (ACE_Thread_Manager * = 0);
-
- /// Destructor.
- virtual ~ACE_Task_Base (void);
-
- // = Initialization and termination hooks.
-
- // These methods should be overridden by subclasses if you'd like to
- // provide <Task>-specific initialization and termination behavior.
-
- /// Hook called to initialize a task and prepare it for execution.
- /// @a args can be used to pass arbitrary information into <open>.
- virtual int open (void *args = 0);
-
- /**
- * Hook called from ACE_Thread_Exit when during thread exit and from
- * the default implementation of <module_closed>. In general, this
- * method shouldn't be called directly by an application,
- * particularly if the <Task> is running as an Active Object.
- * Instead, a special message should be passed into the <Task> via
- * the <put> method defined below, and the <svc> method should
- * interpret this as a flag to shut down the <Task>.
- */
- virtual int close (u_long flags = 0);
-
- /**
- * Hook called during <ACE_Module::close>. The default
- * implementation calls forwards the call to close(1). Please
- * notice the changed value of the default argument of <close>.
- * This allows tasks to differ between the call has been originated
- * from <ACE_Thread_Exit> or from <module_closed>. Be aware that
- * close(0) will be also called when a thread associated with the
- * ACE_Task instance exits.
- */
- virtual int module_closed (void);
-
- // = Immediate and deferred processing methods, respectively.
-
- // These methods should be overridden by subclasses if you'd like to
- // provide <Task>-specific message processing behavior.
-
- /// A hook method that can be used to pass a message to a
- /// task, where it can be processed immediately or queued for subsequent
- /// processing in the <svc> hook method.
- virtual int put (ACE_Message_Block *, ACE_Time_Value * = 0);
-
- /// Run by a daemon thread to handle deferred processing.
- virtual int svc (void);
-
- // = Active object activation method.
- /**
- * Turn the task into an active object, i.e., having @a n_threads of
- * control, all running at the @a priority level (see below) with the
- * same @a grp_id, all of which invoke <Task::svc>. Returns -1 if
- * failure occurs, returns 1 if Task is already an active object and
- * @a force_active is false (i.e., do *not* create a new thread in
- * this case), and returns 0 if Task was not already an active
- * object and a thread is created successfully or thread is an
- * active object and @a force_active is true. Note that if
- * @a force_active is true and there are already threads spawned in
- * this <Task>, the @a grp_id parameter is ignored and the @a grp_id
- * of any newly activated thread(s) will inherit the existing
- * @a grp_id of the existing thread(s) in the <Task>.
- *
- * The <{flags}> are a bitwise-OR of the following:
- * = BEGIN<INDENT>
- * THR_CANCEL_DISABLE, THR_CANCEL_ENABLE, THR_CANCEL_DEFERRED,
- * THR_CANCEL_ASYNCHRONOUS, THR_BOUND, THR_NEW_LWP, THR_DETACHED,
- * THR_SUSPENDED, THR_DAEMON, THR_JOINABLE, THR_SCHED_FIFO,
- * THR_SCHED_RR, THR_SCHED_DEFAULT, THR_EXPLICIT_SCHED,
- * THR_SCOPE_SYSTEM, THR_SCOPE_PROCESS
- * = END<INDENT>
- * If THR_SCHED_INHERIT is not desirable, applications should
- * specifically pass in THR_EXPLICIT_SCHED.
- *
- *
- * By default, or if <{priority}> is set to
- * ACE_DEFAULT_THREAD_PRIORITY, an "appropriate" priority value for
- * the given scheduling policy (specified in <{flags}>, e.g.,
- * <THR_SCHED_DEFAULT>) is used. This value is calculated
- * dynamically, and is the median value between the minimum and
- * maximum priority values for the given policy. If an explicit
- * value is given, it is used. Note that actual priority values are
- * EXTREMEMLY implementation-dependent, and are probably best
- * avoided.
- *
- * If @a thread_handles != 0 it is assumed to be an array of @a n
- * thread_handles that will be assigned the values of the thread
- * handles being spawned. Returns -1 on failure (@c errno will
- * explain...), otherwise returns the group id of the threads.
- *
- * Assigning @a task allows you to associate the newly spawned
- * threads with an instance of ACE_Task_Base. If @a task == 0, then
- * the new threads are associated automatically with @c this
- * ACE_Task_Base. Setting the @a task argument to value other than
- * @c this makes the thread manipulating methods, such as wait(),
- * suspend(), resume(), useless. Threads spawned with user
- * specified @a task value must therefore be manipulated thru
- * ACE_Thread_Manager directly.
- *
- * If @a stack != 0 it is assumed to be an array of @a n pointers to
- * the base of the stacks to use for the threads being spawned.
- * Likewise, if @a stack_size != 0 it is assumed to be an array of
- * @a n values indicating how big each of the corresponding @a stacks
- * are.
- *
- *
- */
- virtual int activate (long flags = THR_NEW_LWP | THR_JOINABLE | THR_INHERIT_SCHED,
- int n_threads = 1,
- int force_active = 0,
- long priority = ACE_DEFAULT_THREAD_PRIORITY,
- int grp_id = -1,
- ACE_Task_Base *task = 0,
- ACE_hthread_t thread_handles[] = 0,
- void *stack[] = 0,
- size_t stack_size[] = 0,
- ACE_thread_t thread_ids[] = 0,
- const char* thr_name[] = 0);
-
- /**
- * Block until there are no more threads running in this task.
- * This method will not wait for either detached or daemon threads;
- * the threads must have been spawned with the @c THR_JOINABLE flag.
- * Upon successful completion, the threads have been joined, so further
- * attempts to join with any of the waited-for threads will fail.
- *
- * @retval 0 Success.
- * @retval -1 Failure (consult errno for further information).
- */
- virtual int wait (void);
-
- // = Suspend/resume a Task.
-
- // Note that these methods are not portable and should be avoided
- // since they are inherently error-prone to use. They are only here
- // for (the rare) applications that know how to use them correctly.
- /// Suspend a task.
- virtual int suspend (void);
- /// Resume a suspended task.
- virtual int resume (void);
-
- /// Get the current group id.
- int grp_id (void) const;
-
- /// Set the current group id.
- void grp_id (int);
-
- /// Get the thread manager associated with this Task.
- ACE_Thread_Manager *thr_mgr (void) const;
-
- /// Set the thread manager associated with this Task.
- void thr_mgr (ACE_Thread_Manager *);
-
- /// True if queue is a reader, else false.
- int is_reader (void) const;
-
- /// True if queue is a writer, else false.
- int is_writer (void) const;
-
- /**
- * Returns the number of threads currently running within a task.
- * If we're a passive object this value is 0, else it's greater than
- * 0.
- */
- size_t thr_count (void) const;
-
- /**
- * Returns the thread ID of the thread whose exit caused this object's
- * thread count to be decremented to 0.
- *
- * When a thread spawned in the context of this object (using activate())
- * returns from its svc() method ACE calls the close() hook. Before it does
- * so, it decrements the number of active threads. If the number of threads
- * is decremented to 0, the thread ID of the current thread is stored for
- * access by this method. If the returned thread ID matches the calling
- * thread's ID, the calling thread knows that there are no other threads
- * still active in the ACE_Task.
- *
- * @retval ACE_thread_t of the last thread to close. 0 if the last thread
- * is not yet known; for example, if no threads are active, or if
- * multiple threads are active.
- */
- ACE_thread_t last_thread (void) const;
-
- /// Routine that runs the service routine as a daemon thread.
- static ACE_THR_FUNC_RETURN svc_run (void *);
-
- /// Cleanup hook that is called when a thread exits to gracefully
- /// shutdown an ACE_Task.
- static void cleanup (void *object, void *params);
-
-protected:
- /**
- * Count of the number of threads running within the task. If this
- * value is greater than 0 then we're an active object and the value
- * of <thr_count_> is the number of active threads at this instant.
- * If the value == 0, then we're a passive object.
- */
- size_t thr_count_;
-
- /// Multi-threading manager.
- ACE_Thread_Manager *thr_mgr_;
-
- /// ACE_Task flags.
- u_long flags_;
-
- /// This maintains the group id of the Task.
- int grp_id_;
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
- /// Protect the state of a Task during concurrent operations, but
- /// only if we're configured as MT safe...
- ACE_Thread_Mutex lock_;
-#endif /* ACE_MT_SAFE */
-
- /// Holds the thread ID of the last thread to exit svc() in this object.
- ACE_thread_t last_thread_id_;
-
-private:
-
- // = Disallow these operations.
- ACE_Task_Base &operator= (const ACE_Task_Base &);
- ACE_Task_Base (const ACE_Task_Base &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Task.inl"
-#endif /* __ACE_INLINE__ */
-
-// Include the ACE_Task templates classes at this point.
-#include "ace/Task_T.h"
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TASK_H */
-
diff --git a/dep/include/ace/Task.inl b/dep/include/ace/Task.inl
deleted file mode 100644
index 9f70371e5f5..00000000000
--- a/dep/include/ace/Task.inl
+++ /dev/null
@@ -1,77 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Task.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Get the current group id.
-ACE_INLINE int
-ACE_Task_Base::grp_id (void) const
-{
- ACE_TRACE ("ACE_Task_Base::grp_id");
- ACE_MT (ACE_GUARD_RETURN (ACE_Thread_Mutex, ace_mon, const_cast <ACE_Thread_Mutex&>(this->lock_), -1));
- return this->grp_id_;
-}
-
-// Set the current group id.
-
-ACE_INLINE void
-ACE_Task_Base::grp_id (int identifier)
-{
- ACE_TRACE ("ACE_Task_Base::grp_id");
- ACE_MT (ACE_GUARD (ACE_Thread_Mutex, ace_mon, this->lock_));
-
- // Cache the group id in the task and then set it in the
- // Thread_Manager, if there is one.
- this->grp_id_ = identifier;
- if (this->thr_mgr ())
- this->thr_mgr ()->set_grp (this, identifier);
-}
-
-ACE_INLINE ACE_Thread_Manager *
-ACE_Task_Base::thr_mgr (void) const
-{
- ACE_TRACE ("ACE_Task_Base::thr_mgr");
- return this->thr_mgr_;
-}
-
-ACE_INLINE void
-ACE_Task_Base::thr_mgr (ACE_Thread_Manager *thr_mgr)
-{
- ACE_TRACE ("ACE_Task_Base::thr_mgr");
- this->thr_mgr_ = thr_mgr;
-}
-
-ACE_INLINE int
-ACE_Task_Base::is_reader (void) const
-{
- ACE_TRACE ("ACE_Task_Base::is_reader");
- return (ACE_BIT_ENABLED (this->flags_, ACE_Task_Flags::ACE_READER));
-}
-
-ACE_INLINE int
-ACE_Task_Base::is_writer (void) const
-{
- ACE_TRACE ("ACE_Task_Base::is_writer");
- return (ACE_BIT_DISABLED (this->flags_, ACE_Task_Flags::ACE_READER));
-}
-
-// Return the count of the current number of threads.
-ACE_INLINE size_t
-ACE_Task_Base::thr_count (void) const
-{
- ACE_TRACE ("ACE_Task_Base::thr_count");
- ACE_MT (ACE_GUARD_RETURN (ACE_Thread_Mutex, ace_mon, const_cast <ACE_Thread_Mutex&>(this->lock_), 0));
-
- return this->thr_count_;
-}
-
-// Return the thread ID of the last thread to exit svc().
-ACE_INLINE ACE_thread_t
-ACE_Task_Base::last_thread (void) const
-{
- ACE_TRACE ("ACE_Task_Base::last_thread");
- return this->last_thread_id_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Task_Ex_T.h b/dep/include/ace/Task_Ex_T.h
deleted file mode 100644
index 031b2a1f4f5..00000000000
--- a/dep/include/ace/Task_Ex_T.h
+++ /dev/null
@@ -1,206 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Task_Ex_T.h
- *
- * $Id: Task_Ex_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Kobi Cohen-Arazi <kobi-co@barak-online.net>
- */
-//=============================================================================
-
-#ifndef ACE_TASK_EX_T_H
-#define ACE_TASK_EX_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Service_Object.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Synch_Traits.h"
-#include "ace/Task.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decls...
-template <ACE_SYNCH_DECL> class ACE_Module;
-
-/**
- * @class ACE_Task_Ex
- *
- * @brief Primary interface for application message processing, as well
- * as input and output message queueing.
- *
- * Unlike ACE_Task, these class doesn't have the ability to be a part of
- * a Stream chain. I.e. You cannot (yet) chain modules based on ACE_Task_Ex.
- *
- * @todo: We can merge ACE_Task and ACE_Task_Ex to be one class.
- * something like that:
- * template <ACE_SYNCH_DECL, ACE_MESSAGE_TYPE = ACE_Message_Block>
- * class ACE_Task : public ACE_Task_Base
- * {
- * // use here the code from ACE_Task_Ex using ACE_Message_Queue_Ex
- * };
- *
- * Now specialized version of ACE_Task with ACE_Message_Block as its
- * ACE_MESSAGE_TYPE...
- *
- * template <ACE_SYNCH_DECL>
- * class ACE_Task <ACE_SYNCH_USE, ACE_Message_Block> : public ACE_Task_Base
- * {
- * // put here the good old ACE_Task code
- * };
- *
- * When User (and legacy code) write ACE_Task<ACE_MT_SYNCH>, specialized ACE_Task
- * code is in action.
- */
-template <ACE_SYNCH_DECL, class ACE_MESSAGE_TYPE>
-class ACE_Task_Ex : public ACE_Task_Base
-{
-public:
- friend class ACE_Module<ACE_SYNCH_USE>;
- friend class ACE_Module_Type;
- typedef ACE_Message_Queue_Ex<ACE_MESSAGE_TYPE, ACE_SYNCH_USE> MESSAGE_QUEUE_EX;
-
- // = Initialization/termination methods.
- /**
- * Initialize a Task, supplying a thread manager and a message
- * queue. If the user doesn't supply a ACE_Message_Queue pointer
- * then we'll allocate one dynamically. Otherwise, we'll use the
- * one passed as a parameter.
- */
- ACE_Task_Ex (ACE_Thread_Manager *thr_mgr = 0,
- MESSAGE_QUEUE_EX *mq = 0);
-
- /// Destructor.
- virtual ~ACE_Task_Ex (void);
-
- /// Gets the message queue associated with this task.
- MESSAGE_QUEUE_EX *msg_queue (void);
-
- /// Sets the message queue associated with this task.
- void msg_queue (MESSAGE_QUEUE_EX *);
-
-public: // Should be protected:
- // = Message queue manipulation methods.
-
- // = Enqueue and dequeue methods.
-
- // For the following five method if @a timeout == 0, the caller will
- // block until action is possible, else will wait until the
- // <{absolute}> time specified in *@a timeout elapses). These calls
- // will return, however, when queue is closed, deactivated, when a
- // signal occurs, or if the time specified in timeout elapses, (in
- // which case errno = EWOULDBLOCK).
-
- /// Insert message into the message queue. Note that @a timeout uses
- /// <{absolute}> time rather than <{relative}> time.
- int putq (ACE_MESSAGE_TYPE *, ACE_Time_Value *timeout = 0);
-
- /**
- * Extract the first message from the queue (blocking). Note that
- * @a timeout uses <{absolute}> time rather than <{relative}> time.
- * Returns number of items in queue if the call succeeds or -1 otherwise.
- */
- int getq (ACE_MESSAGE_TYPE *&mb, ACE_Time_Value *timeout = 0);
-
- /// Return a message to the queue. Note that @a timeout uses
- /// <{absolute}> time rather than <{relative}> time.
- int ungetq (ACE_MESSAGE_TYPE *, ACE_Time_Value *timeout = 0);
-
- /**
- * Turn the message around and send it back down the Stream. Note
- * that @a timeout uses <{absolute}> time rather than <{relative}>
- * time.
- */
- int reply (ACE_MESSAGE_TYPE *, ACE_Time_Value *timeout = 0);
-
- /**
- * Transfer message to the adjacent ACE_Task_Ex in a ACE_Stream. Note
- * that @a timeout uses <{absolute}> time rather than <{relative}>
- * time.
- */
- int put_next (ACE_MESSAGE_TYPE *msg, ACE_Time_Value *timeout = 0);
-
- /**
- * Tests whether we can enqueue a message without blocking.
- * @deprecated This method is deprecated and will go away in the future.
- */
- int can_put (ACE_MESSAGE_TYPE *);
-
- // = ACE_Task utility routines to identify names et al.
- /// Return the name of the enclosing Module if there's one associated
- /// with the Task, else returns 0.
- const ACE_TCHAR *name (void) const;
-
- // = Pointers to next ACE_Task_Base (if ACE is part of an ACE_Stream).
- /// Get next Task pointer.
- ACE_Task<ACE_SYNCH_USE> *next (void);
-
- /// Set next Task pointer.
- void next (ACE_Task<ACE_SYNCH_USE> *);
-
- /// Alwasy return 0. @todo FIXME
- ACE_Task<ACE_SYNCH_USE> *sibling (void);
-
- /// Return the Task's Module if there is one, else returns 0.
- ACE_Module<ACE_SYNCH_USE> *module (void) const;
-
- /**
- * Flush the task's queue, i.e., free all of the enqueued
- * message blocks and releases any threads blocked on the queue.
- * Note that if this conflicts with the C++ iostream <flush>
- * function, just rewrite the iostream function as ::<flush>.
- */
- int flush (u_long flag = ACE_Task_Flags::ACE_FLUSHALL);
-
- // = Special routines corresponding to certain message types.
-
- /// Manipulate watermarks.
- void water_marks (ACE_IO_Cntl_Msg::ACE_IO_Cntl_Cmds, size_t);
-
- /// Queue of messages on the ACE_Task..
- MESSAGE_QUEUE_EX *msg_queue_;
-
- /// true if should delete Message_Queue, false otherwise.
- bool delete_msg_queue_;
-
- /// Back-pointer to the enclosing module.
- ACE_Module<ACE_SYNCH_USE> *mod_;
-
- /// Pointer to adjacent ACE_Task.
- ACE_Task<ACE_SYNCH_USE> *next_;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-
- // = Disallow these operations.
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Task_Ex<ACE_SYNCH_USE, ACE_MESSAGE_TYPE> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Task_Ex (const ACE_Task_Ex<ACE_SYNCH_USE, ACE_MESSAGE_TYPE> &))
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Task_Ex_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Task_Ex_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Task_Ex_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TASK_EX_H */
-
diff --git a/dep/include/ace/Task_Ex_T.inl b/dep/include/ace/Task_Ex_T.inl
deleted file mode 100644
index dd90bcd499a..00000000000
--- a/dep/include/ace/Task_Ex_T.inl
+++ /dev/null
@@ -1,109 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Task_Ex_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <ACE_SYNCH_DECL, class ACE_MESSAGE_TYPE> ACE_INLINE void
-ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::water_marks (ACE_IO_Cntl_Msg::ACE_IO_Cntl_Cmds cmd,
- size_t wm_size)
-{
- ACE_TRACE ("ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::water_marks");
- if (cmd == ACE_IO_Cntl_Msg::SET_LWM)
- this->msg_queue_->low_water_mark (wm_size);
- else /* cmd == ACE_IO_Cntl_Msg::SET_HWM */
- this->msg_queue_->high_water_mark (wm_size);
-}
-
-template <ACE_SYNCH_DECL, class ACE_MESSAGE_TYPE> ACE_INLINE int
-ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::getq (ACE_MESSAGE_TYPE *&mb, ACE_Time_Value *tv)
-{
- ACE_TRACE ("ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::getq");
- return this->msg_queue_->dequeue_head (mb, tv);
-}
-
-template <ACE_SYNCH_DECL, class ACE_MESSAGE_TYPE> ACE_INLINE int
-ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::can_put (ACE_MESSAGE_TYPE *)
-{
- ACE_TRACE ("ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::can_put");
- ACE_NOTSUP_RETURN (-1);
-}
-
-template <ACE_SYNCH_DECL, class ACE_MESSAGE_TYPE> ACE_INLINE int
-ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::putq (ACE_MESSAGE_TYPE *mb, ACE_Time_Value *tv)
-{
- ACE_TRACE ("ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::putq");
- return this->msg_queue_->enqueue_tail (mb, tv);
-}
-
-template <ACE_SYNCH_DECL, class ACE_MESSAGE_TYPE> ACE_INLINE int
-ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::ungetq (ACE_MESSAGE_TYPE *mb, ACE_Time_Value *tv)
-{
- ACE_TRACE ("ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::ungetq");
- return this->msg_queue_->enqueue_head (mb, tv);
-}
-
-template <ACE_SYNCH_DECL, class ACE_MESSAGE_TYPE> ACE_INLINE int
-ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::flush (u_long flag)
-{
- ACE_TRACE ("ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::flush");
- if (ACE_BIT_ENABLED (flag, ACE_Task_Flags::ACE_FLUSHALL))
- return this->msg_queue_ != 0 && this->msg_queue_->close ();
- else
- return -1; // Note, need to be more careful about what we free...
-}
-
-template <ACE_SYNCH_DECL, class ACE_MESSAGE_TYPE> ACE_INLINE void
-ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::msg_queue (ACE_Message_Queue_Ex<ACE_MESSAGE_TYPE, ACE_SYNCH_USE> *mq)
-{
- ACE_TRACE ("ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::msg_queue");
- if (this->delete_msg_queue_)
- {
- delete this->msg_queue_;
- this->delete_msg_queue_ = false;
- }
- this->msg_queue_ = mq;
-}
-
-template <ACE_SYNCH_DECL, class ACE_MESSAGE_TYPE> ACE_Message_Queue_Ex<ACE_MESSAGE_TYPE, ACE_SYNCH_USE> *
-ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::msg_queue (void)
-{
- ACE_TRACE ("ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::msg_queue");
- return this->msg_queue_;
-}
-
-template <ACE_SYNCH_DECL, class ACE_MESSAGE_TYPE> ACE_INLINE int
-ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::reply (ACE_MESSAGE_TYPE *mb, ACE_Time_Value *tv)
-{
- ACE_TRACE ("ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::reply");
- ACE_UNUSED_ARG (mb);
- ACE_UNUSED_ARG (tv);
- return -1 ; // this->sibling ()->put_next (mb, tv);
-}
-
-template <ACE_SYNCH_DECL, class ACE_MESSAGE_TYPE> ACE_INLINE ACE_Task<ACE_SYNCH_USE> *
-ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::next (void)
-{
- ACE_TRACE ("ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::next");
- return this->next_;
-}
-
-template <ACE_SYNCH_DECL, class ACE_MESSAGE_TYPE> ACE_INLINE void
-ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::next (ACE_Task<ACE_SYNCH_USE> *q)
-{
- ACE_TRACE ("ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::next");
- this->next_ = q;
-}
-
-// Transfer msg to the next ACE_Task_Ex.
-
-template <ACE_SYNCH_DECL, class ACE_MESSAGE_TYPE> ACE_INLINE int
-ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::put_next (
- ACE_MESSAGE_TYPE * /* msg */,
- ACE_Time_Value * /* tv */)
-{
- ACE_TRACE ("ACE_Task_Ex<ACE_SYNCH_USE,ACE_MESSAGE_TYPE>::put_next");
- return -1; // this->next_ == 0 ? -1 : this->next_->put (msg, tv);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Task_T.h b/dep/include/ace/Task_T.h
deleted file mode 100644
index 5cd703d29ac..00000000000
--- a/dep/include/ace/Task_T.h
+++ /dev/null
@@ -1,199 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Task_T.h
- *
- * $Id: Task_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_TASK_T_H
-#define ACE_TASK_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Message_Queue.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Synch_Traits.h"
-#include "ace/Task.h"
-#include "ace/IO_Cntl_Msg.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decls...
-template <ACE_SYNCH_DECL> class ACE_Module;
-
-/**
- * @class ACE_Task
- *
- * @brief Primary interface for application message processing, as well
- * as input and output message queueing.
- *
- * This class serves as the basis for passive and active objects
- * in ACE.
- */
-template <ACE_SYNCH_DECL>
-class ACE_Task : public ACE_Task_Base
-{
-public:
- friend class ACE_Module<ACE_SYNCH_USE>;
- friend class ACE_Module_Type;
-
- // = Initialization/termination methods.
- /**
- * Initialize a Task, supplying a thread manager and a message
- * queue. If the user doesn't supply a ACE_Message_Queue pointer
- * then we'll allocate one dynamically. Otherwise, we'll use the
- * one passed as a parameter.
- */
- ACE_Task (ACE_Thread_Manager *thr_mgr = 0,
- ACE_Message_Queue<ACE_SYNCH_USE> *mq = 0);
-
- /// Destructor.
- virtual ~ACE_Task (void);
-
- /// Gets the message queue associated with this task.
- ACE_Message_Queue<ACE_SYNCH_USE> *msg_queue (void);
-
- /// Sets the message queue associated with this task.
- void msg_queue (ACE_Message_Queue<ACE_SYNCH_USE> *);
-
-public: // Should be protected:
- // = Message queue manipulation methods.
-
- // = Enqueue and dequeue methods.
-
- // For the following five method if @a timeout == 0, the caller will
- // block until action is possible, else will wait until the
- // <{absolute}> time specified in *@a timeout elapses). These calls
- // will return, however, when queue is closed, deactivated, when a
- // signal occurs, or if the time specified in timeout elapses, (in
- // which case errno = EWOULDBLOCK).
-
- /// Insert message into the message queue. Note that @a timeout uses
- /// <{absolute}> time rather than <{relative}> time.
- int putq (ACE_Message_Block *, ACE_Time_Value *timeout = 0);
-
- /**
- * Extract the first message from the queue (blocking). Note that
- * @a timeout uses <{absolute}> time rather than <{relative}> time.
- * Returns number of items in queue if the call succeeds or -1 otherwise.
- */
- int getq (ACE_Message_Block *&mb, ACE_Time_Value *timeout = 0);
-
- /// Return a message to the queue. Note that @a timeout uses
- /// <{absolute}> time rather than <{relative}> time.
- int ungetq (ACE_Message_Block *, ACE_Time_Value *timeout = 0);
-
- /**
- * Turn the message around, sending it in the opposite direction in
- * the stream. To do this, the message is put onto the task next in
- * the stream after this task's sibling.
- *
- * @param ACE_Message_Block Pointer to the block that is used in the reply.
- * @param timeout The absolute time at which the put operation used to
- * send the message block to the next module in the stream
- * will time out. If 0, this call blocks until it can be
- * completed.
- */
- int reply (ACE_Message_Block *, ACE_Time_Value *timeout = 0);
-
- /**
- * Transfer message to the adjacent ACE_Task in a ACE_Stream. Note
- * that @a timeout uses <{absolute}> time rather than <{relative}>
- * time.
- */
- int put_next (ACE_Message_Block *msg, ACE_Time_Value *timeout = 0);
-
- /**
- * Tests whether we can enqueue a message without blocking.
- *
- * @deprecated This method is deprecated and will go away in the future.
- */
- int can_put (ACE_Message_Block *);
-
- // = ACE_Task utility routines to identify names et al.
- /// Return the name of the enclosing Module if there's one associated
- /// with the Task, else returns 0.
- const ACE_TCHAR *name (void) const;
-
- // = Pointers to next ACE_Task_Base (if ACE is part of an ACE_Stream).
- /// Get next Task pointer.
- ACE_Task<ACE_SYNCH_USE> *next (void);
-
- /// Set next Task pointer.
- void next (ACE_Task<ACE_SYNCH_USE> *);
-
- /// Return the Task's sibling if there's one associated with the
- /// Task's Module, else returns 0.
- ACE_Task<ACE_SYNCH_USE> *sibling (void);
-
- /// Return the Task's Module if there is one, else returns 0.
- ACE_Module<ACE_SYNCH_USE> *module (void) const;
-
- /**
- * Flush the task's queue, i.e., free all of the enqueued
- * message blocks and unblocks any threads waiting on the queue.
- * Note that if this conflicts with the C++ iostream <flush>
- * function, just rewrite the iostream function as ::<flush>.
- */
- int flush (u_long flag = ACE_Task_Flags::ACE_FLUSHALL);
-
- // = Special routines corresponding to certain message types.
-
- /// Manipulate watermarks.
- void water_marks (ACE_IO_Cntl_Msg::ACE_IO_Cntl_Cmds, size_t);
-
- /// Queue of messages on the ACE_Task..
- ACE_Message_Queue<ACE_SYNCH_USE> *msg_queue_;
-
- /// true if should delete Message_Queue, false otherwise.
- bool delete_msg_queue_;
-
- /// Back-pointer to the enclosing module.
- ACE_Module<ACE_SYNCH_USE> *mod_;
-
- /// Pointer to adjacent ACE_Task.
- ACE_Task<ACE_SYNCH_USE> *next_;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-
- // = Disallow these operations.
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Task<ACE_SYNCH_USE> &))
- ACE_UNIMPLEMENTED_FUNC (ACE_Task (const ACE_Task<ACE_SYNCH_USE> &))
-};
-
-#if defined ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION_EXPORT
-template class ACE_Export ACE_Task<ACE_MT_SYNCH>;
-template class ACE_Export ACE_Task<ACE_NULL_SYNCH>;
-#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION_EXPORT */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Task_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Task_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Task_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TASK_T_H */
-
diff --git a/dep/include/ace/Task_T.inl b/dep/include/ace/Task_T.inl
deleted file mode 100644
index a441ca9d0b3..00000000000
--- a/dep/include/ace/Task_T.inl
+++ /dev/null
@@ -1,105 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Task_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <ACE_SYNCH_DECL> ACE_INLINE void
-ACE_Task<ACE_SYNCH_USE>::water_marks (ACE_IO_Cntl_Msg::ACE_IO_Cntl_Cmds cmd,
- size_t wm_size)
-{
- ACE_TRACE ("ACE_Task<ACE_SYNCH_USE>::water_marks");
- if (cmd == ACE_IO_Cntl_Msg::SET_LWM)
- this->msg_queue_->low_water_mark (wm_size);
- else /* cmd == ACE_IO_Cntl_Msg::SET_HWM */
- this->msg_queue_->high_water_mark (wm_size);
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE int
-ACE_Task<ACE_SYNCH_USE>::getq (ACE_Message_Block *&mb, ACE_Time_Value *tv)
-{
- ACE_TRACE ("ACE_Task<ACE_SYNCH_USE>::getq");
- return this->msg_queue_->dequeue_head (mb, tv);
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE int
-ACE_Task<ACE_SYNCH_USE>::can_put (ACE_Message_Block *)
-{
- ACE_TRACE ("ACE_Task<ACE_SYNCH_USE>::can_put");
- ACE_NOTSUP_RETURN (-1);
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE int
-ACE_Task<ACE_SYNCH_USE>::putq (ACE_Message_Block *mb, ACE_Time_Value *tv)
-{
- ACE_TRACE ("ACE_Task<ACE_SYNCH_USE>::putq");
- return this->msg_queue_->enqueue_tail (mb, tv);
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE int
-ACE_Task<ACE_SYNCH_USE>::ungetq (ACE_Message_Block *mb, ACE_Time_Value *tv)
-{
- ACE_TRACE ("ACE_Task<ACE_SYNCH_USE>::ungetq");
- return this->msg_queue_->enqueue_head (mb, tv);
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE int
-ACE_Task<ACE_SYNCH_USE>::flush (u_long flag)
-{
- ACE_TRACE ("ACE_Task<ACE_SYNCH_USE>::flush");
- if (ACE_BIT_ENABLED (flag, ACE_Task_Flags::ACE_FLUSHALL))
- return this->msg_queue_ != 0 && this->msg_queue_->close ();
- else
- return -1; // Note, need to be more careful about what we free...
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE void
-ACE_Task<ACE_SYNCH_USE>::msg_queue (ACE_Message_Queue<ACE_SYNCH_USE> *mq)
-{
- ACE_TRACE ("ACE_Task<ACE_SYNCH_USE>::msg_queue");
- if (this->delete_msg_queue_)
- {
- delete this->msg_queue_;
- this->delete_msg_queue_ = false;
- }
- this->msg_queue_ = mq;
-}
-
-template <ACE_SYNCH_DECL> ACE_Message_Queue<ACE_SYNCH_USE> *
-ACE_Task<ACE_SYNCH_USE>::msg_queue (void)
-{
- ACE_TRACE ("ACE_Task<ACE_SYNCH_USE>::msg_queue");
- return this->msg_queue_;
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE int
-ACE_Task<ACE_SYNCH_USE>::reply (ACE_Message_Block *mb, ACE_Time_Value *tv)
-{
- ACE_TRACE ("ACE_Task<ACE_SYNCH_USE>::reply");
- return this->sibling ()->put_next (mb, tv);
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE ACE_Task<ACE_SYNCH_USE> *
-ACE_Task<ACE_SYNCH_USE>::next (void)
-{
- ACE_TRACE ("ACE_Task<ACE_SYNCH_USE>::next");
- return this->next_;
-}
-
-template <ACE_SYNCH_DECL> ACE_INLINE void
-ACE_Task<ACE_SYNCH_USE>::next (ACE_Task<ACE_SYNCH_USE> *q)
-{
- ACE_TRACE ("ACE_Task<ACE_SYNCH_USE>::next");
- this->next_ = q;
-}
-
-// Transfer msg to the next ACE_Task.
-
-template <ACE_SYNCH_DECL> ACE_INLINE int
-ACE_Task<ACE_SYNCH_USE>::put_next (ACE_Message_Block *msg, ACE_Time_Value *tv)
-{
- ACE_TRACE ("ACE_Task<ACE_SYNCH_USE>::put_next");
- return this->next_ == 0 ? -1 : this->next_->put (msg, tv);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Test_and_Set.h b/dep/include/ace/Test_and_Set.h
deleted file mode 100644
index e75b5b31f93..00000000000
--- a/dep/include/ace/Test_and_Set.h
+++ /dev/null
@@ -1,75 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Test_and_Set.h
- *
- * $Id: Test_and_Set.h 80826 2008-03-04 14:51:23Z wotte $
- */
-//=============================================================================
-
-#ifndef ACE_TEST_AND_SET_H
-#define ACE_TEST_AND_SET_H
-
-#include /**/ "ace/pre.h"
-#include "ace/Event_Handler.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Test_and_Set
- *
- * @brief Implements the classic ``test and set'' operation.
- *
- *
- * This class keeps track of the status of <is_set_>, which can
- * be set based on various events (such as receipt of a
- * signal). This class is derived from ACE_Event_Handler so
- * that it can be "signaled" by a Reactor when a signal occurs.
- * We assume that <TYPE> is a data type that can be assigned the
- * value 0 or 1.
- */
-template <class ACE_LOCK, class TYPE>
-class ACE_Test_and_Set : public ACE_Event_Handler
-{
-public:
- ACE_Test_and_Set (TYPE initial_value = 0);
-
- /// Returns true if we are set, else false.
- TYPE is_set (void) const;
-
- /// Sets the <is_set_> status, returning the original value of
- /// <is_set_>.
- TYPE set (TYPE);
-
- /// Called when object is signaled by OS (either via UNIX signals or
- /// when a Win32 object becomes signaled).
- virtual int handle_signal (int signum,
- siginfo_t * = 0,
- ucontext_t * = 0);
-
-private:
- /// Keeps track of our state.
- TYPE is_set_;
-
- /// Protect the state from race conditions.
- ACE_LOCK lock_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Test_and_Set.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Test_and_Set.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TEST_AND_SET_H */
-
diff --git a/dep/include/ace/Thread.h b/dep/include/ace/Thread.h
deleted file mode 100644
index 6be139f9242..00000000000
--- a/dep/include/ace/Thread.h
+++ /dev/null
@@ -1,283 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Thread.h
- *
- * $Id: Thread.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_THREAD_H
-#define ACE_THREAD_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/OS_NS_Thread.h"
-#include "ace/Thread_Adapter.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-struct cancel_state
-{
- /// e.g., PTHREAD_CANCEL_ENABLE, PTHREAD_CANCEL_DISABLE,
- /// PTHREAD_CANCELED.
- int cancelstate;
-
- /// e.g., PTHREAD_CANCEL_DEFERRED and PTHREAD_CANCEL_ASYNCHRONOUS.
- int canceltype;
-};
-
-/**
- * @class ACE_Thread
- *
- * @brief Provides a wrapper for threads.
- *
- * This class provides a common interface that is mapped onto
- * POSIX Pthreads, Solaris threads, Win32 threads, VxWorks
- * threads, or pSoS threads. Note, however, that it is
- * generally a better idea to use the ACE_Thread_Manager
- * programming API rather than the <ACE_Thread> API since the
- * thread manager is more powerful.
- */
-class ACE_Export ACE_Thread
-{
-public:
- /**
- * Creates a new thread having @a flags attributes and running @a func
- * with <args> (if <thread_adapter> is non-0 then @a func and <args>
- * are ignored and are obtained from <thread_adapter>). <thr_id>
- * and <t_handle> are set to the thread's ID and handle (?),
- * respectively. The thread runs at @a priority priority (see
- * below).
- *
- * The @a flags are a bitwise-OR of the following:
- * = BEGIN<INDENT>
- * THR_CANCEL_DISABLE, THR_CANCEL_ENABLE, THR_CANCEL_DEFERRED,
- * THR_CANCEL_ASYNCHRONOUS, THR_BOUND, THR_NEW_LWP, THR_DETACHED,
- * THR_SUSPENDED, THR_DAEMON, THR_JOINABLE, THR_SCHED_FIFO,
- * THR_SCHED_RR, THR_SCHED_DEFAULT, THR_EXPLICIT_SCHED,
- * THR_SCOPE_SYSTEM, THR_SCOPE_PROCESS
- * = END<INDENT>
- *
- * By default, or if @a priority is set to
- * ACE_DEFAULT_THREAD_PRIORITY, an "appropriate" priority value for
- * the given scheduling policy (specified in <flags}>, e.g.,
- * <THR_SCHED_DEFAULT>) is used. This value is calculated
- * dynamically, and is the median value between the minimum and
- * maximum priority values for the given policy. If an explicit
- * value is given, it is used. Note that actual priority values are
- * EXTREMEMLY implementation-dependent, and are probably best
- * avoided.
- *
- * Note that <thread_adapter> is always deleted when <spawn>
- * is called, so it must be allocated with global operator new.
- */
- static int spawn (ACE_THR_FUNC func,
- void *arg = 0,
- long flags = THR_NEW_LWP | THR_JOINABLE,
- ACE_thread_t *t_id = 0,
- ACE_hthread_t *t_handle = 0,
- long priority = ACE_DEFAULT_THREAD_PRIORITY,
- void *stack = 0,
- size_t stack_size = ACE_DEFAULT_THREAD_STACKSIZE,
- ACE_Thread_Adapter *thread_adapter = 0,
- const char** thr_name = 0);
-
- /**
- * Spawn N new threads, which execute @a func with argument @a arg (if
- * @a thread_adapter is non-0 then @a func and @a args are ignored and
- * are obtained from @a thread_adapter). If @a stack != 0 it is
- * assumed to be an array of @a n pointers to the base of the stacks
- * to use for the threads being spawned. Likewise, if @a stack_size
- * != 0 it is assumed to be an array of @a n values indicating how
- * big each of the corresponding @a stacks are. Returns the number
- * of threads actually spawned (if this doesn't equal the number
- * requested then something has gone wrong and @c errno will
- * explain...).
- *
- * @see spawn()
- */
- static size_t spawn_n (size_t n,
- ACE_THR_FUNC func,
- void *arg = 0,
- long flags = THR_NEW_LWP | THR_JOINABLE,
- long priority = ACE_DEFAULT_THREAD_PRIORITY,
- void *stack[] = 0,
- size_t stack_size[] = 0,
- ACE_Thread_Adapter *thread_adapter = 0,
- const char* thr_name[] = 0);
-
- /**
- * Spawn @a n new threads, which execute @a func with argument @a arg
- * (if @a thread_adapter is non-0 then @a func and @a args are ignored
- * and are obtained from @a thread_adapter). The thread_ids of
- * successfully spawned threads will be placed into the <thread_ids>
- * buffer (which must be the same size as @a n). If @a stack != 0 it
- * is assumed to be an array of @a n pointers to the base of the
- * stacks to use for the threads being spawned. If @a stack_size !=
- * 0 it is assumed to be an array of @a n values indicating how big
- * each of the corresponding @a stacks are. If @a thread_handles != 0
- * it is assumed to be an array of @a n thread_handles that will be
- * assigned the values of the thread handles being spawned. Returns
- * the number of threads actually spawned (if this doesn't equal the
- * number requested then something has gone wrong and @c errno will
- * explain...).
- *
- * @see spawn()
- */
- static size_t spawn_n (ACE_thread_t thread_ids[],
- size_t n,
- ACE_THR_FUNC func,
- void *arg,
- long flags,
- long priority = ACE_DEFAULT_THREAD_PRIORITY,
- void *stack[] = 0,
- size_t stack_size[] = 0,
- ACE_hthread_t thread_handles[] = 0,
- ACE_Thread_Adapter *thread_adapter = 0,
- const char* thr_name[] = 0);
-
- /**
- * Wait for one or more threads to exit and reap their exit status.
- * thr_join() returns successfully when the target thread terminates.
- *
- * @param thread_id is the ACE_thread_t ID of the thread to wait for.
- * If @a thread_id is 0, join() waits for any
- * undetached thread in the process to terminate
- * on platforms that support this capability
- * (for example, Solaris).
- * @param departed points to a location that is set to the ID of the
- * terminated thread if join() returns successfully.
- * If @a departed is 0, it is ignored.
- * @param status Points to the location that receives the joined
- * thread's exit value. If @a status is 0, it is ignored.
- *
- * @retval 0 for success
- * @retval -1 (with errno set) for failure.
- */
- static int join (ACE_thread_t thread_id,
- ACE_thread_t *departed,
- ACE_THR_FUNC_RETURN *status);
-
- /// Wait for one thread to exit and reap its exit status.
- static int join (ACE_hthread_t,
- ACE_THR_FUNC_RETURN * = 0);
-
- /// Continue the execution of a previously suspended thread.
- static int resume (ACE_hthread_t);
-
- /// Suspend the execution of a particular thread.
- static int suspend (ACE_hthread_t);
-
- /// Get the priority of a particular thread.
- static int getprio (ACE_hthread_t ht_id, int &priority);
-
- /// Get the priority and policy of a particular thread.
- static int getprio (ACE_hthread_t ht_id, int &priority, int &policy);
-
- /// Set the priority of a particular thread.
- static int setprio (ACE_hthread_t ht_id, int priority, int policy = -1);
-
- /// Send a signal to the thread.
- static int kill (ACE_thread_t, int signum);
-
- /// Yield the thread to another.
- static void yield (void);
-
- /**
- * Return the unique kernel handle of the thread. Note that on
- * Win32 this is actually a pseudohandle, which cannot be shared
- * with other processes or waited on by threads. To locate the real
- * handle, please use the ACE_Thread_Manager::thr_self() method.
- */
- static void self (ACE_hthread_t &t_handle);
-
- /// Return the unique ID of the thread.
- static ACE_thread_t self (void);
-
- /// Exit the current thread and return "status".
- /// Should _not_ be called by main thread.
- static void exit (ACE_THR_FUNC_RETURN status = 0);
-
- /// Get the LWP concurrency level of the process.
- static int getconcurrency (void);
-
- /// Set the LWP concurrency level of the process.
- static int setconcurrency (int new_level);
-
- /// Change and/or examine calling thread's signal mask.
- static int sigsetmask (int how,
- const sigset_t *sigset,
- sigset_t *osigset = 0);
-
- /**
- * Allocates a @a keyp that is used to identify data that is specific
- * to each thread in the process. The key is global to all threads
- * in the process.
- */
- static int keycreate (ACE_thread_key_t *keyp,
-#if defined (ACE_HAS_THR_C_DEST)
- ACE_THR_C_DEST destructor,
-#else
- ACE_THR_DEST destructor,
-#endif /* ACE_HAS_THR_C_DEST */
- void * = 0);
-
- /// Free up the key so that other threads can reuse it.
- static int keyfree (ACE_thread_key_t key);
-
- /// Bind value to the thread-specific data key, @a key, for the calling
- /// thread.
- static int setspecific (ACE_thread_key_t key,
- void *value);
-
- /// Stores the current value bound to @a key for the calling thread
- /// into the location pointed to by @a valuep.
- static int getspecific (ACE_thread_key_t key,
- void **valuep);
-
- /// Disable thread cancellation.
- static int disablecancel (struct cancel_state *old_state);
-
- /// Enable thread cancellation.
- static int enablecancel (struct cancel_state *old_state,
- int flag);
-
- /// Set the cancellation state.
- static int setcancelstate (struct cancel_state &new_state,
- struct cancel_state *old_state);
-
- /**
- * Cancel a thread.
- * @note This method is only portable on platforms, such as POSIX pthreads,
- * that support thread cancellation.
- */
- static int cancel (ACE_thread_t t_id);
-
- /// Test the cancel.
- static void testcancel (void);
-
-private:
- /// Ensure that we don't get instantiated.
- ACE_Thread (void);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Thread.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_THREAD_H */
-
diff --git a/dep/include/ace/Thread.inl b/dep/include/ace/Thread.inl
deleted file mode 100644
index 87e47e13580..00000000000
--- a/dep/include/ace/Thread.inl
+++ /dev/null
@@ -1,286 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Thread.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_string.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Allocates a <keyp> that is used to identify data that is specific
-// to each thread in the process. The key is global to all threads in
-// the process.
-
-ACE_INLINE int
-ACE_Thread::keycreate (ACE_thread_key_t *keyp,
-#if defined (ACE_HAS_THR_C_DEST)
- ACE_THR_C_DEST destructor,
-#else
- ACE_THR_DEST destructor,
-#endif /* ACE_HAS_THR_C_DEST */
- void *inst)
-{
- // ACE_TRACE ("ACE_Thread::keycreate");
- return ACE_OS::thr_keycreate (keyp, destructor, inst);
-}
-
-// Free up the key so that other threads can reuse it.
-
-ACE_INLINE int
-ACE_Thread::keyfree (ACE_thread_key_t key)
-{
- ACE_TRACE ("ACE_Thread::keyfree");
- return ACE_OS::thr_keyfree (key);
-}
-
-// Bind value to the thread-specific data key, <key>, for the calling
-// thread.
-
-ACE_INLINE int
-ACE_Thread::setspecific (ACE_thread_key_t key, void *value)
-{
- // ACE_TRACE ("ACE_Thread::setspecific");
- return ACE_OS::thr_setspecific (key, value);
-}
-
-// Stores the current value bound to <key> for the calling thread
-// into the location pointed to by <valuep>.
-
-ACE_INLINE int
-ACE_Thread::getspecific (ACE_thread_key_t key, void **valuep)
-{
- // ACE_TRACE ("ACE_Thread::getspecific");
- return ACE_OS::thr_getspecific (key, valuep);
-}
-
-ACE_INLINE ACE_thread_t
-ACE_Thread::self (void)
-{
-// ACE_TRACE ("ACE_Thread::self");
- return ACE_OS::thr_self ();
-}
-
-ACE_INLINE void
-ACE_Thread::exit (ACE_THR_FUNC_RETURN status)
-{
- ACE_TRACE ("ACE_Thread::exit");
- ACE_OS::thr_exit (status);
-}
-
-ACE_INLINE void
-ACE_Thread::yield (void)
-{
- ACE_TRACE ("ACE_Thread::yield");
- ACE_OS::thr_yield ();
-}
-
-ACE_INLINE int
-ACE_Thread::spawn (ACE_THR_FUNC func,
- void *arg,
- long flags,
- ACE_thread_t *t_id,
- ACE_hthread_t *t_handle,
- long priority,
- void *thr_stack,
- size_t thr_stack_size,
- ACE_Thread_Adapter *thread_adapter,
- const char** thr_name)
-{
- ACE_TRACE ("ACE_Thread::spawn");
-
- return ACE_OS::thr_create (func,
- arg,
- flags,
- t_id,
- t_handle,
- priority,
- thr_stack,
- thr_stack_size,
- thread_adapter,
- thr_name);
-}
-
-ACE_INLINE int
-ACE_Thread::resume (ACE_hthread_t t_id)
-{
- ACE_TRACE ("ACE_Thread::resume");
- return ACE_OS::thr_continue (t_id);
-}
-
-ACE_INLINE int
-ACE_Thread::suspend (ACE_hthread_t t_id)
-{
- ACE_TRACE ("ACE_Thread::suspend");
- return ACE_OS::thr_suspend (t_id);
-}
-
-ACE_INLINE int
-ACE_Thread::kill (ACE_thread_t t_id, int signum)
-{
- ACE_TRACE ("ACE_Thread::kill");
- return ACE_OS::thr_kill (t_id, signum);
-}
-
-ACE_INLINE int
-ACE_Thread::join (ACE_thread_t wait_for,
- ACE_thread_t *departed,
- ACE_THR_FUNC_RETURN *status)
-{
- ACE_TRACE ("ACE_Thread::join");
- return ACE_OS::thr_join (wait_for, departed, status);
-}
-
-ACE_INLINE int
-ACE_Thread::join (ACE_hthread_t wait_for,
- ACE_THR_FUNC_RETURN *status)
-{
- ACE_TRACE ("ACE_Thread::join");
- return ACE_OS::thr_join (wait_for, status);
-}
-
-ACE_INLINE int
-ACE_Thread::getconcurrency (void)
-{
- ACE_TRACE ("ACE_Thread::getconcurrency");
- return ACE_OS::thr_getconcurrency ();
-}
-
-ACE_INLINE int
-ACE_Thread::setconcurrency (int new_level)
-{
- ACE_TRACE ("ACE_Thread::setconcurrency");
- return ACE_OS::thr_setconcurrency (new_level);
-}
-
-ACE_INLINE int
-ACE_Thread::sigsetmask (int how,
- const sigset_t *sigset,
- sigset_t *osigset)
-{
- ACE_TRACE ("ACE_Thread::sigsetmask");
- return ACE_OS::thr_sigsetmask (how, sigset, osigset);
-}
-
-ACE_INLINE int
-ACE_Thread::disablecancel (struct cancel_state *old_state)
-{
- ACE_TRACE ("ACE_Thread::disablecancel");
- int old_cstate = 0;
- int result = ACE_OS::thr_setcancelstate (THR_CANCEL_DISABLE,
- &old_cstate);
- if (result == 0 && old_state != 0)
- {
- ACE_OS::memset (old_state,
- 0,
- sizeof (old_state));
- old_state->cancelstate = old_cstate;
- }
-
- return result;
-}
-
-ACE_INLINE int
-ACE_Thread::enablecancel (struct cancel_state *old_state,
- int flag)
-{
- ACE_TRACE ("ACE_Thread::enablecancel");
- int old_cstate = 0;
- int old_ctype = 0;
- int result;
-
- result = ACE_OS::thr_setcancelstate (THR_CANCEL_ENABLE,
- &old_cstate);
- if (result != 0)
- return result;
-
- result = ACE_OS::thr_setcanceltype (flag,
- &old_ctype);
- if (result != 0)
- return result;
-
- if (old_state != 0)
- {
- old_state->cancelstate = old_cstate;
- old_state->canceltype = old_ctype;
- }
-
- return 0;
-}
-
-ACE_INLINE int
-ACE_Thread::setcancelstate (struct cancel_state &new_state,
- struct cancel_state *old_state)
-{
- ACE_TRACE ("ACE_Thread::setcancelstate");
- int old_cstate = 0;
- int old_ctype = 0;
-
- if (new_state.cancelstate != 0
- && ACE_OS::thr_setcancelstate (new_state.cancelstate,
- &old_cstate) != 0)
- return -1;
-
- if (new_state.canceltype != 0
- && ACE_OS::thr_setcanceltype (new_state.canceltype,
- &old_ctype) != 0)
- {
- int o_cstate;
-
- ACE_OS::thr_setcancelstate (old_cstate,
- &o_cstate);
- return -1;
- }
-
- if (old_state != 0)
- {
- old_state->cancelstate = old_cstate;
- old_state->canceltype = old_ctype;
- }
-
- return 0;
-}
-
-ACE_INLINE int
-ACE_Thread::cancel (ACE_thread_t t_id)
-{
- ACE_TRACE ("ACE_Thread::cancel");
-
- return ACE_OS::thr_cancel (t_id);
-}
-
-ACE_INLINE void
-ACE_Thread::testcancel (void)
-{
- ACE_TRACE ("ACE_Thread::testcancel");
-
- ACE_OS::thr_testcancel ();
-}
-
-ACE_INLINE void
-ACE_Thread::self (ACE_hthread_t &t_id)
-{
-// ACE_TRACE ("ACE_Thread::self");
- ACE_OS::thr_self (t_id);
-}
-
-ACE_INLINE int
-ACE_Thread::getprio (ACE_hthread_t ht_id, int &priority)
-{
- ACE_TRACE ("ACE_Thread::getprio");
- return ACE_OS::thr_getprio (ht_id, priority);
-}
-
-ACE_INLINE int
-ACE_Thread::getprio (ACE_hthread_t ht_id, int &priority, int &policy)
-{
- ACE_TRACE ("ACE_Thread::getprio");
- return ACE_OS::thr_getprio (ht_id, priority, policy);
-}
-
-ACE_INLINE int
-ACE_Thread::setprio (ACE_hthread_t ht_id, int priority, int policy)
-{
- ACE_TRACE ("ACE_Thread::setprio");
- return ACE_OS::thr_setprio (ht_id, priority, policy);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Thread_Adapter.h b/dep/include/ace/Thread_Adapter.h
deleted file mode 100644
index 015557b8e0d..00000000000
--- a/dep/include/ace/Thread_Adapter.h
+++ /dev/null
@@ -1,101 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Thread_Adapter.h
- *
- * $Id: Thread_Adapter.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Carlos O'Ryan <coryan@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_THREAD_ADAPTER_H
-#define ACE_THREAD_ADAPTER_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Base_Thread_Adapter.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decl.
-class ACE_Thread_Manager;
-class ACE_Thread_Descriptor;
-
-/**
- * @class ACE_Thread_Adapter
- *
- * @brief Converts a C++ function into a function that
- * can be called from a thread creation routine
- * (e.g., pthread_create() or _beginthreadex()) that expects an
- * extern "C" entry point. This class also makes it possible to
- * transparently provide hooks to register a thread with an
- * ACE_Thread_Manager.
- *
- * This class is used in ACE_OS::thr_create(). In general, the
- * thread that creates an object of this class is different from
- * the thread that calls @c invoke() on this object. Therefore,
- * the @c invoke() method is responsible for deleting itself.
- */
-class ACE_Export ACE_Thread_Adapter : public ACE_Base_Thread_Adapter
-{
-public:
- /// Constructor.
- ACE_Thread_Adapter (ACE_THR_FUNC user_func,
- void *arg,
- ACE_THR_C_FUNC entry_point = (ACE_THR_C_FUNC) ACE_THREAD_ADAPTER_NAME,
- ACE_Thread_Manager *thr_mgr = 0,
- ACE_Thread_Descriptor *td = 0
-# if defined (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS)
- , ACE_SEH_EXCEPT_HANDLER selector = 0,
- ACE_SEH_EXCEPT_HANDLER handler = 0
-# endif /* ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS */
- );
-
- /**
- * Execute the <user_func_> with the <arg>. This function deletes
- * @c this, thereby rendering the object useless after the call
- * returns.
- */
- virtual ACE_THR_FUNC_RETURN invoke (void);
-
- /// Accessor for the optional ACE_Thread_Manager.
- ACE_Thread_Manager *thr_mgr (void);
-
-protected:
-
- /// Ensure that this object must be allocated on the heap.
- ~ACE_Thread_Adapter (void);
-
-private:
-
- /// Called by invoke, mainly here to separate the SEH stuff because
- /// SEH on Win32 doesn't compile with local vars with destructors.
- virtual ACE_THR_FUNC_RETURN invoke_i (void);
-
-private:
-
- /// Optional thread manager.
- ACE_Thread_Manager *thr_mgr_;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/Thread_Adapter.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_THREAD_ADAPTER_H */
-
diff --git a/dep/include/ace/Thread_Adapter.inl b/dep/include/ace/Thread_Adapter.inl
deleted file mode 100644
index 6def13be5ab..00000000000
--- a/dep/include/ace/Thread_Adapter.inl
+++ /dev/null
@@ -1,13 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Thread_Adapter.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ACE_Thread_Manager *
-ACE_Thread_Adapter::thr_mgr (void)
-{
- return this->thr_mgr_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Thread_Control.h b/dep/include/ace/Thread_Control.h
deleted file mode 100644
index f975aed88fc..00000000000
--- a/dep/include/ace/Thread_Control.h
+++ /dev/null
@@ -1,102 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Thread_Control.h
- *
- * $Id: Thread_Control.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Carlos O'Ryan <coryan@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_THREAD_CONTROL_H
-#define ACE_THREAD_CONTROL_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Thread_Manager;
-
-/**
- * @class ACE_Thread_Control
- *
- * @brief Used to keep track of a thread's activities within its entry
- * point function.
- *
- * A ACE_Thread_Manager uses this class to ensure that threads
- * it spawns automatically register and unregister themselves
- * with it.
- * This class can be stored in thread-specific storage using the
- * ACE_TSS wrapper. When a thread exits the
- * <ACE_TSS::cleanup> function deletes this object, thereby
- * ensuring that it gets removed from its associated
- * ACE_Thread_Manager.
- */
-class ACE_Export ACE_Thread_Control
-{
-public:
- /// Initialize the thread control object. If @a insert != 0, then
- /// register the thread with the Thread_Manager.
- ACE_Thread_Control (ACE_Thread_Manager *tm = 0,
- int insert = 0);
-
- /// Remove the thread from its associated <Thread_Manager> and exit
- /// the thread if <do_thr_exit> is enabled.
- ~ACE_Thread_Control (void);
-
- /// Remove this thread from its associated ACE_Thread_Manager and exit
- /// the thread if @a do_thr_exit is enabled.
- ACE_THR_FUNC_RETURN exit (ACE_THR_FUNC_RETURN status,
- int do_thr_exit);
-
- /// Store the <Thread_Manager> and use it to register ourselves for
- /// correct shutdown.
- int insert (ACE_Thread_Manager *tm, int insert = 0);
-
- /// Returns the current <Thread_Manager>.
- ACE_Thread_Manager *thr_mgr (void);
-
- /// Atomically set a new <Thread_Manager> and return the old
- /// <Thread_Manager>.
- ACE_Thread_Manager *thr_mgr (ACE_Thread_Manager *);
-
- /// Set the exit status (and return existing status).
- ACE_THR_FUNC_RETURN status (ACE_THR_FUNC_RETURN status);
-
- /// Get the current exit status.
- ACE_THR_FUNC_RETURN status (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Pointer to the thread manager for this block of code.
- ACE_Thread_Manager *tm_;
-
- /// Keeps track of the exit status for the thread.
- ACE_THR_FUNC_RETURN status_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_INLINED_OSCALLS)
-# if defined (ACE_INLINE)
-# undef ACE_INLINE
-# endif /* ACE_INLINE */
-# define ACE_INLINE inline
-# include "ace/Thread_Control.inl"
-# endif /* ACE_HAS_INLINED_OSCALLS */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_THREAD_CONTROL_H */
-
diff --git a/dep/include/ace/Thread_Control.inl b/dep/include/ace/Thread_Control.inl
deleted file mode 100644
index 6ebd3ac2c56..00000000000
--- a/dep/include/ace/Thread_Control.inl
+++ /dev/null
@@ -1,46 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Thread_Control.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Set the exit status.
-
-ACE_INLINE ACE_THR_FUNC_RETURN
-ACE_Thread_Control::status (ACE_THR_FUNC_RETURN s)
-{
- ACE_OS_TRACE ("ACE_Thread_Control::status");
- return this->status_ = s;
-}
-
-// Get the exit status.
-
-ACE_INLINE ACE_THR_FUNC_RETURN
-ACE_Thread_Control::status (void)
-{
- ACE_OS_TRACE ("ACE_Thread_Control::status");
- return this->status_;
-}
-
-// Returns the current <Thread_Manager>.
-
-ACE_INLINE ACE_Thread_Manager *
-ACE_Thread_Control::thr_mgr (void)
-{
- ACE_OS_TRACE ("ACE_Thread_Control::thr_mgr");
- return this->tm_;
-}
-
-// Atomically set a new <Thread_Manager> and return the old
-// <Thread_Manager>.
-
-ACE_INLINE ACE_Thread_Manager *
-ACE_Thread_Control::thr_mgr (ACE_Thread_Manager *tm)
-{
- ACE_OS_TRACE ("ACE_Thread_Control::thr_mgr");
- ACE_Thread_Manager *o_tm = this->tm_;
- this->tm_ = tm;
- return o_tm;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Thread_Exit.h b/dep/include/ace/Thread_Exit.h
deleted file mode 100644
index e21cc2bb2e4..00000000000
--- a/dep/include/ace/Thread_Exit.h
+++ /dev/null
@@ -1,111 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Thread_Exit.h
- *
- * $Id: Thread_Exit.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Carlos O'Ryan <coryan@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_THREAD_EXIT_H
-#define ACE_THREAD_EXIT_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Thread_Control.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Thread_Exit
- *
- * @brief Keep exit information for a Thread in thread specific storage.
- * so that the thread-specific exit hooks will get called no
- * matter how the thread exits (e.g., via <ACE_Thread::exit>, C++
- * or Win32 exception, "falling off the end" of the thread entry
- * point function, etc.).
- *
- * This clever little helper class is stored in thread-specific
- * storage using the <ACE_TSS> wrapper. When a thread exits the
- * <ACE_TSS::cleanup> function deletes this object, thereby
- * closing it down gracefully.
- */
-class ACE_Export ACE_Thread_Exit
-{
-public:
- /// Capture the Thread that will be cleaned up automatically.
- ACE_Thread_Exit (void);
-
- /// Set the ACE_Thread_Manager.
- void thr_mgr (ACE_Thread_Manager *tm);
-
- /// Destructor calls the thread-specific exit hooks when a thread
- /// exits.
- ~ACE_Thread_Exit (void);
-
- /// Singleton access point.
- static ACE_Thread_Exit *instance (void);
-
- /// Cleanup method, used by the ACE_Object_Manager to destroy the
- /// singleton.
- static void cleanup (void *instance);
-
-private:
- /// Automatically add/remove the thread from the
- /// ACE_Thread_Manager.
- ACE_Thread_Control thread_control_;
-
- /**
- * Used to detect whether we should create a new instance (or not)
- * within the instance method -- we don't trust the instance_ ptr
- * because the destructor may have run (if ACE::fini() was called).
- * See bug #526.
- * We don't follow the singleton pattern due to dependency issues.
- */
- static bool is_constructed_;
-};
-
-/**
- * @class ACE_Thread_Exit_Maybe
- *
- * @brief A version of ACE_Thread_Exit that is created dynamically
- * under the hood if the flag is set to TRUE.
- *
- * Allows the appearance of a "smart pointer", but is not
- * always created.
- */
-class ACE_Export ACE_Thread_Exit_Maybe
-{
-public:
- /// Don't create an ACE_Thread_Exit instance by default.
- ACE_Thread_Exit_Maybe (int flag = 0);
-
- /// Destroys the underlying ACE_Thread_Exit instance if it exists.
- ~ACE_Thread_Exit_Maybe (void);
-
- /// Delegates to underlying instance.
- ACE_Thread_Exit * operator -> (void) const;
-
- /// Returns the underlying instance.
- ACE_Thread_Exit * instance (void) const;
-
-private:
-
- /// Holds the underlying instance.
- ACE_Thread_Exit *instance_;
-
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_THREAD_EXIT_H */
-
diff --git a/dep/include/ace/Thread_Hook.h b/dep/include/ace/Thread_Hook.h
deleted file mode 100644
index 6e03b6300cb..00000000000
--- a/dep/include/ace/Thread_Hook.h
+++ /dev/null
@@ -1,65 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Thread_Hook.h
- *
- * $Id: Thread_Hook.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Carlos O'Ryan <coryan@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_THREAD_HOOK_H
-#define ACE_THREAD_HOOK_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include /**/ "ace/ACE_export.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Thread_Hook
- *
- * @brief This class makes it possible to provide user-defined "start"
- * hooks that are called before the thread entry point function
- * is invoked.
- */
-class ACE_Export ACE_Thread_Hook
-{
-
-public:
-
- /// Destructor.
- virtual ~ACE_Thread_Hook (void);
-
- /**
- * This method can be overridden in a subclass to customize this
- * pre-function call "hook" invocation that can perform
- * initialization processing before the thread entry point @a func
- * method is called back. The @a func and @a arg passed into the
- * start hook are the same as those passed by the application that
- * spawned the thread.
- */
- virtual ACE_THR_FUNC_RETURN start (ACE_THR_FUNC func,
- void *arg);
-
- /// sets the system wide thread hook, returns the previous thread
- /// hook or 0 if none is set.
- static ACE_Thread_Hook *thread_hook (ACE_Thread_Hook *hook);
-
- /// Returns the current system thread hook.
- static ACE_Thread_Hook *thread_hook (void);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_THREAD_HOOK_H */
-
diff --git a/dep/include/ace/Thread_Manager.h b/dep/include/ace/Thread_Manager.h
deleted file mode 100644
index 1e891351167..00000000000
--- a/dep/include/ace/Thread_Manager.h
+++ /dev/null
@@ -1,1265 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Thread_Manager.h
- *
- * $Id: Thread_Manager.h 82588 2008-08-11 13:37:41Z johnnyw $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_THREAD_MANAGER_H
-#define ACE_THREAD_MANAGER_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Thread.h"
-#include "ace/Thread_Adapter.h"
-#include "ace/Thread_Exit.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Condition_Thread_Mutex.h"
-#include "ace/Unbounded_Queue.h"
-#include "ace/Containers.h"
-#include "ace/Free_List.h"
-#include "ace/Singleton.h"
-#include "ace/Log_Msg.h"
-#include "ace/Synch_Traits.h"
-#include "ace/Basic_Types.h"
-
-// The following macros control how a Thread Manager manages a pool of
-// Thread_Descriptor. Currently, the default behavior is not to
-// preallocate any thread descriptor and never (well, almost never)
-// free up any thread descriptor until the Thread Manager gets
-// destructed. Which means, once your system is stable, you rarely
-// need to pay the price of memory allocation. On a deterministic
-// system, which means, the number of threads spawned can be
-// determined before hand, you can either redefine the memory pool
-// size macros to suit your need or constructed the Thread_Manager
-// accordingly. That way, you don't pay the price of memory
-// allocation when the system is really doing its job. OTOH, on
-// system with resources constraint, you may want to lower the size of
-// ACE_DEFAULT_THREAD_MANAGER_HWM to avoid unused memory hanging
-// around.
-
-#if !defined (ACE_DEFAULT_THREAD_MANAGER_PREALLOC)
-# define ACE_DEFAULT_THREAD_MANAGER_PREALLOC 0
-#endif /* ACE_DEFAULT_THREAD_MANAGER_PREALLOC */
-
-#if !defined (ACE_DEFAULT_THREAD_MANAGER_LWM)
-# define ACE_DEFAULT_THREAD_MANAGER_LWM 1
-#endif /* ACE_DEFAULT_THREAD_MANAGER_LWM */
-
-#if !defined (ACE_DEFAULT_THREAD_MANAGER_INC)
-# define ACE_DEFAULT_THREAD_MANAGER_INC 1
-#endif /* ACE_DEFAULT_THREAD_MANAGER_INC */
-
-#if !defined (ACE_DEFAULT_THREAD_MANAGER_HWM)
-# define ACE_DEFAULT_THREAD_MANAGER_HWM ACE_DEFAULT_FREE_LIST_HWM
-// this is a big number
-#endif /* ACE_DEFAULT_THREAD_MANAGER_HWM */
-
-// This is the synchronization mechanism used to prevent a thread
-// descriptor gets removed from the Thread_Manager before it gets
-// stash into it. If you want to disable this feature (and risk of
-// corrupting the freelist,) you define the lock as ACE_Null_Mutex.
-// Usually, if you can be sure that your threads will run for an
-// extended period of time, you can safely disable the lock.
-
-#if !defined (ACE_DEFAULT_THREAD_MANAGER_LOCK)
-# define ACE_DEFAULT_THREAD_MANAGER_LOCK ACE_SYNCH_MUTEX
-#endif /* ACE_DEFAULT_THREAD_MANAGER_LOCK */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declarations.
-class ACE_Task_Base;
-class ACE_Thread_Manager;
-class ACE_Thread_Descriptor;
-
-/**
- * @class ACE_At_Thread_Exit
- *
- * @brief Contains a method to be applied when a thread is terminated.
- */
-class ACE_Export ACE_At_Thread_Exit
-{
- friend class ACE_Thread_Descriptor;
- friend class ACE_Thread_Manager;
-public:
- /// Default constructor
- ACE_At_Thread_Exit (void);
-
- /// The destructor
- virtual ~ACE_At_Thread_Exit (void);
-
- /// At_Thread_Exit has the ownership?
- bool is_owner (void) const;
-
- /// Set the ownership of the At_Thread_Exit.
- bool is_owner (bool owner);
-
- /// This At_Thread_Exit was applied?
- bool was_applied (void) const;
-
- /// Set applied state of At_Thread_Exit.
- bool was_applied (bool applied);
-
-protected:
- /// The next At_Thread_Exit hook in the list.
- ACE_At_Thread_Exit *next_;
-
- /// Do the apply if necessary
- void do_apply (void);
-
- /// The apply method.
- virtual void apply (void) = 0;
-
- /// The Thread_Descriptor where this at is registered.
- ACE_Thread_Descriptor* td_;
-
- /// The at was applied?
- bool was_applied_;
-
- /// The at has the ownership of this?
- bool is_owner_;
-};
-
-class ACE_Export ACE_At_Thread_Exit_Func : public ACE_At_Thread_Exit
-{
-public:
- /// Constructor
- ACE_At_Thread_Exit_Func (void *object,
- ACE_CLEANUP_FUNC func,
- void *param = 0);
-
- virtual ~ACE_At_Thread_Exit_Func (void);
-
-protected:
- /// The object to be cleanup
- void *object_;
-
- /// The cleanup func
- ACE_CLEANUP_FUNC func_;
-
- /// A param if required
- void *param_;
-
- /// The apply method
- void apply (void);
-};
-
-/**
- * @class ACE_Thread_Descriptor_Base
- *
- * @brief Basic information for thread descriptors. These information
- * gets extracted out because we need it after a thread is
- * terminated.
- *
- * @internal
- */
-class ACE_Export ACE_Thread_Descriptor_Base : public ACE_OS_Thread_Descriptor
-{
-
- friend class ACE_Thread_Manager;
- friend class ACE_Double_Linked_List<ACE_Thread_Descriptor_Base>;
- friend class ACE_Double_Linked_List_Iterator_Base<ACE_Thread_Descriptor_Base>;
- friend class ACE_Double_Linked_List_Iterator<ACE_Thread_Descriptor_Base>;
- friend class ACE_Double_Linked_List<ACE_Thread_Descriptor>;
- friend class ACE_Double_Linked_List_Iterator_Base<ACE_Thread_Descriptor>;
- friend class ACE_Double_Linked_List_Iterator<ACE_Thread_Descriptor>;
-public:
- ACE_Thread_Descriptor_Base (void);
- ~ACE_Thread_Descriptor_Base (void);
-
- // = We need the following operators to make Borland happy.
-
- /// Equality operator.
- bool operator== (const ACE_Thread_Descriptor_Base &rhs) const;
-
- /// Inequality operator.
- bool operator!= (const ACE_Thread_Descriptor_Base &rhs) const;
-
- /// Group ID.
- int grp_id (void) const;
-
- /// Current state of the thread.
- ACE_UINT32 state (void) const;
-
- /// Return the pointer to an ACE_Task_Base or NULL if there's no
- /// ACE_Task_Base associated with this thread.;
- ACE_Task_Base *task (void) const;
-
-protected:
- /// Reset this base thread descriptor.
- void reset (void);
-
- /// Unique thread ID.
- ACE_thread_t thr_id_;
-
- /// Unique handle to thread (used by Win32 and AIX).
- ACE_hthread_t thr_handle_;
-
- /// Group ID.
- int grp_id_;
-
- /// Current state of the thread.
- ACE_UINT32 thr_state_;
-
- /// Pointer to an ACE_Task_Base or NULL if there's no
- /// ACE_Task_Base.
- ACE_Task_Base *task_;
-
- /// We need these pointers to maintain the double-linked list in a
- /// thread managers.
- ACE_Thread_Descriptor_Base *next_;
- ACE_Thread_Descriptor_Base *prev_;
-};
-
-/**
- * @class ACE_Thread_Descriptor
- *
- * @brief Information for controlling threads that run under the control
- * of the <Thread_Manager>.
- */
-class ACE_Export ACE_Thread_Descriptor : public ACE_Thread_Descriptor_Base
-{
- friend class ACE_At_Thread_Exit;
- friend class ACE_Thread_Manager;
- friend class ACE_Double_Linked_List<ACE_Thread_Descriptor>;
- friend class ACE_Double_Linked_List_Iterator<ACE_Thread_Descriptor>;
-public:
- // = Initialization method.
- ACE_Thread_Descriptor (void);
-
- // = Accessor methods.
- /// Unique thread id.
- ACE_thread_t self (void) const;
-
- /// Unique handle to thread (used by Win32 and AIX).
- void self (ACE_hthread_t &);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /**
- * This cleanup function must be called only for ACE_TSS_cleanup.
- * The ACE_TSS_cleanup delegate Log_Msg instance destruction when
- * Log_Msg cleanup is called before terminate.
- */
- void log_msg_cleanup(ACE_Log_Msg* log_msg);
-
- /**
- * Register an At_Thread_Exit hook and the ownership is acquire by
- * Thread_Descriptor, this is the usual case when the AT is dynamically
- * allocated.
- */
- int at_exit (ACE_At_Thread_Exit* cleanup);
-
- /// Register an At_Thread_Exit hook and the ownership is retained for the
- /// caller. Normally used when the at_exit hook is created in stack.
- int at_exit (ACE_At_Thread_Exit& cleanup);
-
- /**
- * Register an object (or array) for cleanup at thread termination.
- * "cleanup_hook" points to a (global, or static member) function
- * that is called for the object or array when it to be destroyed.
- * It may perform any necessary cleanup specific for that object or
- * its class. "param" is passed as the second parameter to the
- * "cleanup_hook" function; the first parameter is the object (or
- * array) to be destroyed. Returns 0 on success, non-zero on
- * failure: -1 if virtual memory is exhausted or 1 if the object (or
- * arrayt) had already been registered.
- */
- int at_exit (void *object,
- ACE_CLEANUP_FUNC cleanup_hook,
- void *param);
-
- /// Do nothing destructor to keep some compilers happy
- ~ACE_Thread_Descriptor (void);
-
- /**
- * Do nothing but to acquire the thread descriptor's lock and
- * release. This will first check if the thread is registered or
- * not. If it is already registered, there's no need to reacquire
- * the lock again. This is used mainly to get newly spawned thread
- * in synch with thread manager and prevent it from accessing its
- * thread descriptor before it gets fully built. This function is
- * only called from ACE_Log_Msg::thr_desc.
- */
- void acquire_release (void);
- void acquire (void);
- void release (void);
-
- /**
- * Set/get the @c next_ pointer. These are required by the
- * ACE_Free_List.
- */
- void set_next (ACE_Thread_Descriptor *td);
- ACE_Thread_Descriptor *get_next (void) const;
-
-private:
- /// Reset this thread descriptor.
- void reset (ACE_Thread_Manager *tm);
-
- /// Pop an At_Thread_Exit from at thread termination list, apply the at
- /// if apply is true.
- void at_pop (int apply = 1);
-
- /// Push an At_Thread_Exit to at thread termination list and set the
- /// ownership of at.
- void at_push (ACE_At_Thread_Exit* cleanup,
- bool is_owner = false);
-
- /// Run the AT_Thread_Exit hooks.
- void do_at_exit (void);
-
- /// Terminate realize the cleanup process to thread termination
- void terminate (void);
-
- /// Thread_Descriptor is the ownership of ACE_Log_Msg if log_msg_!=0
- /// This can occur because ACE_TSS_cleanup was executed before terminate.
- ACE_Log_Msg *log_msg_;
-
- /// The AT_Thread_Exit list
- ACE_At_Thread_Exit *at_exit_list_;
-
- /**
- * Stores the cleanup info for a thread.
- * @note This should be generalized to be a stack of ACE_Cleanup_Info's.
- */
- ACE_Cleanup_Info cleanup_info_;
-
- /// Pointer to an ACE_Thread_Manager or NULL if there's no
- /// ACE_Thread_Manager>
- ACE_Thread_Manager* tm_;
-
- /// Registration lock to prevent premature removal of thread descriptor.
- ACE_DEFAULT_THREAD_MANAGER_LOCK *sync_;
-
- /// Keep track of termination status.
- bool terminated_;
-};
-
-// Forward declaration.
-class ACE_Thread_Control;
-
-// This typedef should be (and used to be) inside the
-// ACE_Thread_Manager declaration. But, it caused compilation
-// problems on g++/VxWorks/i960 with -g. Note that
-// ACE_Thread_Manager::THR_FUNC is only used internally in
-// ACE_Thread_Manager, so it's not useful for anyone else.
-// It also caused problems on IRIX5 with g++.
-#if defined (__GNUG__)
-typedef int (ACE_Thread_Manager::*ACE_THR_MEMBER_FUNC)(ACE_Thread_Descriptor *, int);
-#endif /* __GNUG__ */
-
-/**
- * @class ACE_Thread_Manager
- *
- * @brief Manages a pool of threads.
- *
- * This class allows operations on groups of threads atomically.
- * The default behavior of thread manager is to wait on
- * all threads under it's management when it gets destructed.
- * Therefore, remember to remove a thread from thread manager if
- * you don't want it to wait for the thread. There are also
- * functions to disable this default wait-on-exit behavior.
- * However, if your program depends on turning this off to run
- * correctly, you are probably doing something wrong. Rule of
- * thumb, use ACE_Thread to manage your daemon threads.
- * Notice that if there're threads which live beyond the scope of
- * main(), you are sure to have resource leaks in your program.
- * Remember to wait on threads before exiting your main program if that
- * could happen in your programs.
- */
-class ACE_Export ACE_Thread_Manager
-{
-public:
- friend class ACE_Thread_Control;
-
- // Allow ACE_THread_Exit to register the global TSS instance object.
- friend class ACE_Thread_Exit;
- friend class ACE_Thread_Descriptor;
-
-#if !defined (__GNUG__)
- typedef int (ACE_Thread_Manager::*ACE_THR_MEMBER_FUNC)(ACE_Thread_Descriptor *, int);
-#endif /* !__GNUG__ */
-
- /// These are the various states a thread managed by the
- /// ACE_Thread_Manager can be in.
- enum
- {
- /// Uninitialized.
- ACE_THR_IDLE = 0x00000000,
-
- /// Created but not yet running.
- ACE_THR_SPAWNED = 0x00000001,
-
- /// Thread is active (naturally, we don't know if it's actually
- /// *running* because we aren't the scheduler...).
- ACE_THR_RUNNING = 0x00000002,
-
- /// Thread is suspended.
- ACE_THR_SUSPENDED = 0x00000004,
-
- /// Thread has been cancelled (which is an indiction that it needs to
- /// terminate...).
- ACE_THR_CANCELLED = 0x00000008,
-
- /// Thread has shutdown, but the slot in the thread manager hasn't
- /// been reclaimed yet.
- ACE_THR_TERMINATED = 0x00000010,
-
- /// Join operation has been invoked on the thread by thread manager.
- ACE_THR_JOINING = 0x10000000
- };
-
- /**
- * @brief Initialization and termination methods.
- *
- * Internally, ACE_Thread_Manager keeps a freelist for caching
- * resources it uses to keep track of managed threads (not the
- * threads themselves.) @a prealloc, @a lwm, @a inc, @hwm
- * determine the initial size, the low water mark, increment step,
- * and high water mark of the freelist.
- *
- * @sa ACE_Free_List
- */
- ACE_Thread_Manager (size_t preaolloc = ACE_DEFAULT_THREAD_MANAGER_PREALLOC,
- size_t lwm = ACE_DEFAULT_THREAD_MANAGER_LWM,
- size_t inc = ACE_DEFAULT_THREAD_MANAGER_INC,
- size_t hwm = ACE_DEFAULT_THREAD_MANAGER_HWM);
- ~ACE_Thread_Manager (void);
-
-#if ! defined (ACE_THREAD_MANAGER_LACKS_STATICS)
- /// Get pointer to a process-wide ACE_Thread_Manager.
- static ACE_Thread_Manager *instance (void);
-
- /// Set pointer to a process-wide ACE_Thread_Manager and return
- /// existing pointer.
- static ACE_Thread_Manager *instance (ACE_Thread_Manager *);
-
- /// Delete the dynamically allocated Singleton
- static void close_singleton (void);
-#endif /* ! defined (ACE_THREAD_MANAGER_LACKS_STATICS) */
-
- /// No-op. Currently unused.
- int open (size_t size = 0);
-
- /**
- * Release all resources.
- * By default, this method will wait until all threads exit.
- * However, when called from close_singleton(), most global resources
- * are destroyed and thus, close() does not try to wait; it simply cleans
- * up internal thread records (the thread descriptor list).
- */
- int close (void);
-
- /**
- * Create a new thread, which executes @a func with argument @a arg.
- *
- * @param func The function that is called in the spawned thread.
- *
- * @param arg The value passed to each spawned thread's @a func.
- *
- * @param flags Flags to control attributes of the spawned threads.
- * @sa ACE_OS::thr_create() for descriptions of the
- * possible flags values and their interactions.
- *
- * @param t_id Pointer to a location to receive the spawned thread's
- * ID. If 0, the ID is not returned.
- *
- * @param t_handle Pointer to a location to receive the spawned thread's
- * thread handle. If 0, the handle is not returned.
- *
- * @param priority The priority at which the thread is spawned.
- *
- * @param grp_id The thread group that the spawned thread is
- * added to. If -1 is specified, a new thread group is
- * created for the spawned thread.
- *
- * @param stack Pointers to the base of a pre-allocated stack space
- * for the thread's stack. If 0, the platform allocates
- * stack space for the thread. If a stack is specified,
- * it is recommended that @a stack_size also be supplied
- * to specify the size of the stack.
- * Not all platforms support pre-allocated stacks. If
- * @a stack is specified for a platform which does not
- * allow pre-allocated stack space this parameter is
- * ignored.
- *
- * @param stack_size Indicate how large the thread's stack should be, in
- * bytes. If a pre-allocated stack pointer is passed in
- * @a stack, @a stack_size indicates the size of that
- * stack area. If no pre-allocated stack is passed,
- * the stack size specified is passed to the
- * operating system to request that it allocate a stack
- * of the specified size.
- *
- * @param thr_name Pointer to a name to assign to the spawned thread.
- * This is only meaningful for platforms that have a
- * capacity to name threads (e.g., VxWorks and some
- * varieties of Pthreads). This argument is ignored if
- * specified as 0 and on platforms that do not have the
- * capability to name threads.
- *
- * @retval -1 on failure; @c errno contains an error value.
- * @retval The group id of the spawned thread.
- */
- int spawn (ACE_THR_FUNC func,
- void *arg = 0,
- long flags = THR_NEW_LWP | THR_JOINABLE | THR_INHERIT_SCHED,
- ACE_thread_t *t_id = 0,
- ACE_hthread_t *t_handle = 0,
- long priority = ACE_DEFAULT_THREAD_PRIORITY,
- int grp_id = -1,
- void *stack = 0,
- size_t stack_size = ACE_DEFAULT_THREAD_STACKSIZE,
- const char** thr_name = 0);
-
- /**
- * Spawn a specified number of threads, all of which execute @a func
- * with argument @a arg.
- *
- * @param n The number of threads to spawn.
- *
- * @param func The function that is called in the spawned thread.
- *
- * @param arg The value passed to each spawned thread's @a func.
- *
- * @param flags Flags to control attributes of the spawned threads.
- * @sa ACE_OS::thr_create() for descriptions of the
- * possible flags values and their interactions.
- *
- * @param priority The priority at which the threads are spawned.
- *
- * @param grp_id The thread group that the spawned threads are
- * added to. If -1 is specified, a new thread group is
- * created for the spawned threads.
- *
- * @param task The ACE_Task that the spawned threads are associated
- * with. If 0, the threads are not associated with an
- * ACE_Task. This argument is usually assigned by the
- * ACE_Task_Base::activate() method to associate the
- * spawned threads with the spawning ACE_Task object.
- *
- * @param thread_handles An array of @a n entries which will receive
- * the thread handles of the spawned threads.
- *
- * @param stack An array of @a n pointers to pre-allocated stack space
- * for each thread's stack. If specified as 0, the
- * platform allocates stack space for each thread. If
- * a stack is specified, it is recommended that a
- * @a stack_size element also be supplied that specifies
- * the size of the stack.
- * Not all platforms support pre-allocated stacks. If
- * @a stack is specified for a platform which does not
- * allow pre-allocated stack space this parameter is
- * ignored.
- *
- * @param stack_size An array of @a n values which indicate how large
- * each thread's stack should be, in bytes.
- * If pre-allocated stacks are passed in @a stacks, these
- * sizes are for those stacks. If no pre-allocated stacks
- * are passed, the stack sizes are specified to the
- * operating system to request that it allocate stacks
- * of the specified sizes. If an array entry is 0, the
- * platform defaults are used for the corresponding thread.
- * If a 0 array pointer is specified, platform defaults
- * are used for all thread stack sizes.
- *
- * @param thr_name An array of names to assign to the spawned threads.
- * This is only meaningful for platforms that have a
- * capacity to name threads (e.g., VxWorks and some
- * varieties of Pthreads). This argument is ignored if
- * specified as 0 and on platforms that do not have the
- * capability to name threads.
- *
- * ACE_Thread_Manager can manipulate threads in groups based on
- * @a grp_id or @a task using functions such as kill_grp() or
- * cancel_task().
- *
- * @retval -1 on failure; @c errno contains an error value.
- * @retval The group id of the threads.
- */
- int spawn_n (size_t n,
- ACE_THR_FUNC func,
- void *arg = 0,
- long flags = THR_NEW_LWP | THR_JOINABLE | THR_INHERIT_SCHED,
- long priority = ACE_DEFAULT_THREAD_PRIORITY,
- int grp_id = -1,
- ACE_Task_Base *task = 0,
- ACE_hthread_t thread_handles[] = 0,
- void *stack[] = 0,
- size_t stack_size[] = 0,
- const char* thr_name[] = 0);
-
- /**
- * Spawn a specified number of threads, all of which execute @a func
- * with argument @a arg.
- *
- * @param thread_ids An array to receive the thread IDs of successfully
- * spawned buffer. If 0, the thread IDs are not returned.
- * If specified, the array must be at least @a n entries.
- *
- * @param n The number of threads to spawn.
- *
- * @param func The function that is called in the spawned thread.
- *
- * @param arg The value passed to each spawned thread's @a func.
- *
- * @param flags Flags to control attributes of the spawned threads.
- * @sa ACE_OS::thr_create() for descriptions of the
- * possible flags values and their interactions.
- *
- * @param priority The priority at which the threads are spawned.
- *
- * @param grp_id The thread group that the spawned threads are
- * added to. If -1 is specified, a new thread group is
- * created for the spawned threads.
- *
- * @param stack An array of @a n pointers to pre-allocated stack space
- * for each thread's stack. If specified as 0, the
- * platform allocates stack space for each thread. If
- * a stack is specified, it is recommended that a
- * @a stack_size element also be supplied that specifies
- * the size of the stack.
- * Not all platforms support pre-allocated stacks. If
- * @a stack is specified for a platform which does not
- * allow pre-allocated stack space this parameter is
- * ignored.
- *
- * @param stack_size An array of @a n values which indicate how large
- * each thread's stack should be, in bytes.
- * If pre-allocated stacks are passed in @a stacks, these
- * sizes are for those stacks. If no pre-allocated stacks
- * are passed, the stack sizes are specified to the
- * operating system to request that it allocate stacks
- * of the specified sizes. If an array entry is 0, the
- * platform defaults are used for the corresponding thread.
- * If a 0 array pointer is specified, platform defaults
- * are used for all thread stack sizes.
- *
- * @param thread_handles An array of @a n entries which will receive
- * the thread handles of the spawned threads.
- *
- * @param task The ACE_Task that the spawned threads are associated
- * with. If 0, the threads are not associated with an
- * ACE_Task. This argument is usually assigned by the
- * ACE_Task_Base::activate() method to associate the
- * spawned threads with the spawning ACE_Task object.
- *
- * @param thr_name An array of names to assign to the spawned threads.
- * This is only meaningful for platforms that have a
- * capacity to name threads (e.g., VxWorks and some
- * varieties of Pthreads). This argument is ignored if
- * specified as 0 and on platforms that do not have the
- * capability to name threads.
- *
- * ACE_Thread_Manager can manipulate threads in groups based on
- * @a grp_id or @a task using functions such as kill_grp() or
- * cancel_task().
- *
- * @retval -1 on failure; @c errno contains an error value.
- * @retval The group id of the threads.
-
- */
- int spawn_n (ACE_thread_t thread_ids[],
- size_t n,
- ACE_THR_FUNC func,
- void *arg,
- long flags,
- long priority = ACE_DEFAULT_THREAD_PRIORITY,
- int grp_id = -1,
- void *stack[] = 0,
- size_t stack_size[] = 0,
- ACE_hthread_t thread_handles[] = 0,
- ACE_Task_Base *task = 0,
- const char* thr_name[] = 0);
-
- /**
- * Called to clean up when a thread exits.
- *
- * @param do_thread_exit If non-0 then ACE_Thread::exit is called to
- * exit the thread
- * @param status If ACE_Thread_Exit is called, this is passed as
- * the exit value of the thread.
- * Should _not_ be called by main thread.
- */
- ACE_THR_FUNC_RETURN exit (ACE_THR_FUNC_RETURN status = 0,
- bool do_thread_exit = true);
-
- /**
- * Block until there are no more threads running in this thread
- * manager or @c timeout expires.
- *
- * @param timeout is treated as "absolute" time by default, but this
- * can be changed to "relative" time by setting the @c
- * use_absolute_time to false.
- * @param abandon_detached_threads If true, @c wait() will first
- * check thru its thread list for
- * threads with THR_DETACHED or
- * THR_DAEMON flags set and remove
- * these threads. Notice that
- * unlike other @c wait_*() methods,
- * by default, @c wait() does wait on
- * all thread spawned by this
- * thread manager no matter the detached
- * flags are set or not unless it is
- * called with @c
- * abandon_detached_threads flag set.
- * @param use_absolute_time If true then treat @c timeout as
- * absolute time, else relative time.
- * @return 0 on success * and -1 on failure.
- *
- * @note If this function is called while the @c
- * ACE_Object_Manager is shutting down (as a result of program
- * rundown via @c ACE::fini()), it will not wait for any threads to
- * complete. If you must wait for threads spawned by this thread
- * manager to complete and you are in a ACE rundown situation (such
- * as your object is being destroyed by the @c ACE_Object_Manager)
- * you can use @c wait_grp() instead.
- */
- int wait (const ACE_Time_Value *timeout = 0,
- bool abandon_detached_threads = false,
- bool use_absolute_time = true);
-
- /// Join a thread specified by @a tid. Do not wait on a detached thread.
- int join (ACE_thread_t tid, ACE_THR_FUNC_RETURN *status = 0);
-
- /**
- * Block until there are no more threads running in a group.
- * Returns 0 on success and -1 on failure. Notice that wait_grp
- * will not wait on detached threads.
- */
- int wait_grp (int grp_id);
-
- /**
- * Return the "real" handle to the calling thread, caching it if
- * necessary in TSS to speed up subsequent lookups. This is
- * necessary since on some platforms (e.g., Windows) we can't get this
- * handle via direct method calls. Notice that you should *not*
- * close the handle passed back from this method. It is used
- * internally by Thread Manager. On the other hand, you *have to*
- * use this internal thread handle when working on Thread_Manager.
- * Return -1 if fail.
- */
- int thr_self (ACE_hthread_t &);
-
- /**
- * Return the unique ID of the calling thread.
- * Same as calling ACE_Thread::self().
- */
- ACE_thread_t thr_self (void);
-
- /**
- * Returns a pointer to the current ACE_Task_Base we're executing
- * in if this thread is indeed running in an ACE_Task_Base, else
- * return 0.
- */
- ACE_Task_Base *task (void);
-
- /**
- * @name Suspend and resume methods
- *
- * Suspend/resume is not supported on all platforms. For example, Pthreads
- * does not support these functions.
- */
- //@{
-
- /// Suspend all threads
- int suspend_all (void);
-
- /// Suspend a single thread.
- int suspend (ACE_thread_t);
-
- /// Suspend a group of threads.
- int suspend_grp (int grp_id);
-
- /**
- * True if @a t_id is inactive (i.e., suspended), else false. Always
- * return false if @a t_id is not managed by the Thread_Manager.
- */
- int testsuspend (ACE_thread_t t_id);
-
- /// Resume all stopped threads
- int resume_all (void);
-
- /// Resume a single thread.
- int resume (ACE_thread_t);
-
- /// Resume a group of threads.
- int resume_grp (int grp_id);
-
- /**
- * True if @a t_id is active (i.e., resumed), else false. Always
- * return false if @a t_id is not managed by the Thread_Manager.
- */
- int testresume (ACE_thread_t t_id);
-
- //@}
-
- // = Send signals to one or more threads without blocking.
- /**
- * Send @a signum to all stopped threads. Not supported on platforms
- * that do not have advanced signal support, such as Win32.
- */
- int kill_all (int signum);
- /**
- * Send the @a signum to a single thread. Not supported on platforms
- * that do not have advanced signal support, such as Win32.
- */
- int kill (ACE_thread_t, int signum);
- /**
- * Send @a signum to a group of threads, not supported on platforms
- * that do not have advanced signal support, such as Win32.
- */
- int kill_grp (int grp_id, int signum);
-
- // = Cancel methods, which provides a cooperative thread-termination mechanism (will not block).
- /**
- * Cancel's all the threads.
- */
- int cancel_all (int async_cancel = 0);
-
- /**
- * Cancel a single thread.
- */
- int cancel (ACE_thread_t, int async_cancel = 0);
-
- /**
- * Cancel a group of threads.
- */
- int cancel_grp (int grp_id, int async_cancel = 0);
-
- /**
- * True if @a t_id is cancelled, else false. Always return false if
- * @a t_id is not managed by the Thread_Manager.
- */
- int testcancel (ACE_thread_t t_id);
-
- /**
- * True if @a t_id has terminated (i.e., is no longer running),
- * but the slot in the thread manager hasn't been reclaimed yet,
- * else false. Always return false if @a t_id is not managed by the
- * Thread_Manager.
- */
- int testterminate (ACE_thread_t t_id);
-
- /// Set group ids for a particular thread id.
- int set_grp (ACE_thread_t,
- int grp_id);
-
- /// Get group ids for a particular thread id.
- int get_grp (ACE_thread_t,
- int &grp_id);
-
- /**
- * @name Task-related operations
- */
- //@{
- /**
- * Block until there are no more threads running in a specified task.
- * This method will not wait for either detached or daemon threads;
- * the threads must have been spawned with the @c THR_JOINABLE flag.
- * Upon successful completion, the threads have been joined, so further
- * attempts to join with any of the waited-for threads will fail.
- *
- * @param task The ACE_Task_Base object whose threads are to waited for.
- *
- * @retval 0 Success.
- * @retval -1 Failure (consult errno for further information).
- */
- int wait_task (ACE_Task_Base *task);
-
- /**
- * Suspend all threads in an ACE_Task.
- */
- int suspend_task (ACE_Task_Base *task);
-
- /**
- * Resume all threads in an ACE_Task.
- */
- int resume_task (ACE_Task_Base *task);
-
- /**
- * Send a signal @a signum to all threads in an ACE_Task.
- */
- int kill_task (ACE_Task_Base *task, int signum);
-
- /**
- * Cancel all threads in an ACE_Task. If <async_cancel> is non-0,
- * then asynchronously cancel these threads if the OS platform
- * supports cancellation. Otherwise, perform a "cooperative"
- * cancellation.
- */
- int cancel_task (ACE_Task_Base *task, int async_cancel = 0);
-
- //@}
-
- // = Collect thread handles in the thread manager. Notice that
- // the collected information is just a snapshot.
- /// Check if the thread is managed by the thread manager. Return true if
- /// the thread is found, false otherwise.
- int hthread_within (ACE_hthread_t handle);
- int thread_within (ACE_thread_t tid);
-
- /// Returns the number of ACE_Task_Base in a group.
- int num_tasks_in_group (int grp_id);
-
- /// Returns the number of threads in an ACE_Task_Base.
- int num_threads_in_task (ACE_Task_Base *task);
-
- /**
- * Returns a list of ACE_Task_Base pointers corresponding to the tasks
- * that have active threads in a specified thread group.
- *
- * @param grp_id The thread group ID to obtain task pointers for.
- *
- * @param task_list is a pointer to an array to receive the list of pointers.
- * The caller is responsible for supplying an array with at
- * least @arg n entries.
- *
- * @param n The maximum number of ACE_Task_Base pointers to write
- * in @arg task_list.
- *
- * @retval If successful, the number of pointers returned, which will be
- * no greater than @arg n. Returns -1 on error.
- *
- * @note This method has no way to indicate if there are more than
- * @arg n ACE_Task_Base pointers available. Therefore, it may be
- * wise to guess a larger value of @arg n than one thinks in cases
- * where the exact number of tasks is not known.
- *
- * @sa num_tasks_in_group(), task_all_list()
- */
- ssize_t task_list (int grp_id,
- ACE_Task_Base *task_list[],
- size_t n);
-
- /**
- * Returns in @a thread_list a list of up to @a n thread ids in an
- * ACE_Task_Base. The caller must allocate the memory for
- * @a thread_list. In case of an error, -1 is returned. If no
- * requested values are found, 0 is returned, otherwise correct
- * number of retrieved values are returned.
- */
- ssize_t thread_list (ACE_Task_Base *task,
- ACE_thread_t thread_list[],
- size_t n);
-
- /**
- * Returns in @a hthread_list a list of up to @a n thread handles in
- * an ACE_Task_Base. The caller must allocate memory for
- * @a hthread_list. In case of an error, -1 is returned. If no
- * requested values are found, 0 is returned, otherwise correct
- * number of retrieved values are returned.
- */
- ssize_t hthread_list (ACE_Task_Base *task,
- ACE_hthread_t hthread_list[],
- size_t n);
-
- /**
- * Returns in @a thread_list a list of up to @a n thread ids in a
- * group @a grp_id. The caller must allocate the memory for
- * @a thread_list. In case of an error, -1 is returned. If no
- * requested values are found, 0 is returned, otherwise correct
- * number of retrieved values are returned.
- */
- ssize_t thread_grp_list (int grp_id,
- ACE_thread_t thread_list[],
- size_t n);
-
- /**
- * Returns in @a hthread_list a list of up to @a n thread handles in
- * a group @a grp_id. The caller must allocate memory for
- * @a hthread_list.
- */
- ssize_t hthread_grp_list (int grp_id,
- ACE_hthread_t hthread_list[],
- size_t n);
-
- /**
- * Returns a list of ACE_Task_Base pointers corresponding to the tasks
- * that have active threads managed by this instance.
- *
- * @param task_list is a pointer to an array to receive the list of pointers.
- * The caller is responsible for supplying an array with at
- * least @arg n entries.
- *
- * @param n The maximum number of ACE_Task_Base pointers to write
- * in @arg task_list.
- *
- * @retval If successful, the number of pointers returned, which will be
- * no greater than @arg n. Returns -1 on error.
- *
- * @note This method has no way to indicate if there are more than
- * @arg n ACE_Task_Base pointers available. Therefore, it may be
- * wise to guess a larger value of @arg n than one thinks in cases
- * where the exact number of tasks is not known.
- *
- * @sa count_threads()
- */
- ssize_t task_all_list (ACE_Task_Base *task_list[],
- size_t n);
-
- /**
- * Returns in @a thread_list a list of up to @a n thread ids. The
- * caller must allocate the memory for @a thread_list. In case of an
- * error, -1 is returned. If no requested values are found, 0 is
- * returned, otherwise correct number of retrieved values are
- * returned.
- */
- ssize_t thread_all_list (ACE_thread_t thread_list[],
- size_t n);
-
- /// Set group ids for a particular task.
- int set_grp (ACE_Task_Base *task, int grp_id);
-
- /// Get group ids for a particular task.
- int get_grp (ACE_Task_Base *task, int &grp_id);
-
- /// Return a count of the current number of threads active in the
- /// <Thread_Manager>.
- size_t count_threads (void) const;
-
- /// Get the state of the thread. Returns false if the thread is not
- /// managed by this thread manager.
- int thr_state (ACE_thread_t id, ACE_UINT32& state);
-
- /**
- * Register an At_Thread_Exit hook and the ownership is acquire by
- * Thread_Descriptor, this is the usual case when the AT is dynamically
- * allocated.
- */
- int at_exit (ACE_At_Thread_Exit* cleanup);
-
- /// Register an At_Thread_Exit hook and the ownership is retained for the
- /// caller. Normally used when the at_exit hook is created in stack.
- int at_exit (ACE_At_Thread_Exit& cleanup);
-
- /**
- *
- *****
- * @deprecated This function is deprecated. Please use the previous two
- * at_exit method. Notice that you should avoid mixing this method
- * with the previous two at_exit methods.
- *****
- *
- * Register an object (or array) for cleanup at
- * thread termination. "cleanup_hook" points to a (global, or
- * static member) function that is called for the object or array
- * when it to be destroyed. It may perform any necessary cleanup
- * specific for that object or its class. "param" is passed as the
- * second parameter to the "cleanup_hook" function; the first
- * parameter is the object (or array) to be destroyed.
- * "cleanup_hook", for example, may delete the object (or array).
- * If <cleanup_hook> == 0, the <object> will _NOT_ get cleanup at
- * thread exit. You can use this to cancel the previously added
- * at_exit.
- */
- int at_exit (void *object,
- ACE_CLEANUP_FUNC cleanup_hook,
- void *param);
-
- /// Access function to determine whether the Thread_Manager will
- /// wait for its thread to exit or not when being closing down.
- void wait_on_exit (int dowait);
- int wait_on_exit (void);
-
- /// Dump the state of an object.
- void dump (void);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- // = Accessors for ACE_Thread_Descriptors.
- /**
- * Get a pointer to the calling thread's own thread_descriptor.
- * This must be called from a spawn thread. This function will
- * fetch the info from TSS.
- */
- ACE_Thread_Descriptor *thread_desc_self (void);
-
- /// Return a pointer to the thread's Thread_Descriptor,
- /// 0 if fail.
- ACE_Thread_Descriptor *thread_descriptor (ACE_thread_t);
-
- /// Return a pointer to the thread's Thread_Descriptor,
- /// 0 if fail.
- ACE_Thread_Descriptor *hthread_descriptor (ACE_hthread_t);
-
- /// Create a new thread (must be called with locks held).
- int spawn_i (ACE_THR_FUNC func,
- void *arg,
- long flags,
- ACE_thread_t * = 0,
- ACE_hthread_t *t_handle = 0,
- long priority = ACE_DEFAULT_THREAD_PRIORITY,
- int grp_id = -1,
- void *stack = 0,
- size_t stack_size = 0,
- ACE_Task_Base *task = 0,
- const char** thr_name = 0);
-
- /// Run the registered hooks when the thread exits.
- void run_thread_exit_hooks (int i);
-
- /// Locate the index of the table slot occupied by <t_id>. Returns
- /// -1 if <t_id> is not in the table doesn't contain <t_id>.
- ACE_Thread_Descriptor *find_thread (ACE_thread_t t_id);
-
- /// Locate the index of the table slot occupied by <h_id>. Returns
- /// -1 if <h_id> is not in the table doesn't contain <h_id>.
- ACE_Thread_Descriptor *find_hthread (ACE_hthread_t h_id);
-
- /**
- * Locate the thread descriptor address of the list occupied by
- * @a task. Returns 0 if @a task is not in the table doesn't contain
- * @a task.
- */
- ACE_Thread_Descriptor *find_task (ACE_Task_Base *task,
- size_t slot = 0);
-
- /// Insert a thread in the table (checks for duplicates).
- int insert_thr (ACE_thread_t t_id,
- ACE_hthread_t,
- int grp_id = -1,
- long flags = 0);
-
- /// Append a thread in the table (adds at the end, growing the table
- /// if necessary).
- int append_thr (ACE_thread_t t_id, ACE_hthread_t,
- ACE_UINT32,
- int grp_id,
- ACE_Task_Base *task = 0,
- long flags = 0,
- ACE_Thread_Descriptor *td = 0);
-
- /// Remove thread from the table.
- void remove_thr (ACE_Thread_Descriptor *td,
- int close_handler);
-
- /// Remove all threads from the table.
- void remove_thr_all (void);
-
- // = The following four methods implement a simple scheme for
- // operating on a collection of threads atomically.
-
- /**
- * Efficiently check whether @a thread is in a particular @a state.
- * This call updates the TSS cache if possible to speed up
- * subsequent searches.
- */
- int check_state (ACE_UINT32 state,
- ACE_thread_t thread,
- int enable = 1);
-
- /// Apply @a func to all members of the table that match the @a task
- int apply_task (ACE_Task_Base *task,
- ACE_THR_MEMBER_FUNC func,
- int = 0);
-
- /// Apply @a func to all members of the table that match the @a grp_id.
- int apply_grp (int grp_id,
- ACE_THR_MEMBER_FUNC func,
- int arg = 0);
-
- /// Apply @a func to all members of the table.
- int apply_all (ACE_THR_MEMBER_FUNC,
- int = 0);
-
- /// Join the thread described in @a td.
- int join_thr (ACE_Thread_Descriptor *td,
- int = 0);
-
- /// Resume the thread described in @a td.
- int resume_thr (ACE_Thread_Descriptor *td,
- int = 0);
-
- /// Suspend the thread described in @a td.
- int suspend_thr (ACE_Thread_Descriptor *td,
- int = 0);
-
- /// Send signal @a signum to the thread described in @a td.
- int kill_thr (ACE_Thread_Descriptor *td,
- int signum);
-
- /// Set the cancellation flag for the thread described in @a td.
- int cancel_thr (ACE_Thread_Descriptor *td,
- int async_cancel = 0);
-
- /// Register a thread as terminated and put it into the <terminated_thr_list_>.
- int register_as_terminated (ACE_Thread_Descriptor *td);
-
- /// Setting the static ACE_TSS_TYPE (ACE_Thread_Exit) *thr_exit_ pointer.
- static int set_thr_exit (ACE_TSS_TYPE (ACE_Thread_Exit) *ptr);
-
- /**
- * Keeping a list of thread descriptors within the thread manager.
- * Double-linked list enables us to cache the entries in TSS
- * and adding/removing thread descriptor entries without
- * affecting other thread's descriptor entries.
- */
- ACE_Double_Linked_List<ACE_Thread_Descriptor> thr_list_;
-
-#if !defined (ACE_HAS_VXTHREADS)
- /// Collect terminated but not yet joined thread entries.
- ACE_Double_Linked_List<ACE_Thread_Descriptor_Base> terminated_thr_list_;
-#endif /* !ACE_HAS_VXTHREADS */
-
- /// Collect pointers to thread descriptors of threads to be removed later.
- ACE_Unbounded_Queue<ACE_Thread_Descriptor*> thr_to_be_removed_;
-
- /// Keeps track of the next group id to assign.
- int grp_id_;
-
- /// Set if we want the Thread_Manager to wait on all threads before
- /// being closed, reset otherwise.
- int automatic_wait_;
-
- // = ACE_Thread_Mutex and condition variable for synchronizing termination.
-#if defined (ACE_HAS_THREADS)
- /// Serialize access to the <zero_cond_>.
- ACE_Thread_Mutex lock_;
-
- /// Keep track of when there are no more threads.
- ACE_Condition_Thread_Mutex zero_cond_;
-#endif /* ACE_HAS_THREADS */
-
- ACE_Locked_Free_List<ACE_Thread_Descriptor, ACE_SYNCH_MUTEX> thread_desc_freelist_;
-
-private:
-#if ! defined (ACE_THREAD_MANAGER_LACKS_STATICS)
- /// Pointer to a process-wide ACE_Thread_Manager.
- static ACE_Thread_Manager *thr_mgr_;
-
- /// Must delete the thr_mgr_ if true.
- static bool delete_thr_mgr_;
-
- /// Global ACE_TSS (ACE_Thread_Exit) object ptr.
- static ACE_TSS_TYPE (ACE_Thread_Exit) *thr_exit_;
-#endif /* ! defined (ACE_THREAD_MANAGER_LACKS_STATICS) */
-};
-
-#if defined (ACE_THREAD_MANAGER_LACKS_STATICS)
-#define ACE_THREAD_MANAGER_SINGLETON_DEFINE \
- ACE_Singleton<ACE_Thread_Manager, ACE_SYNCH_MUTEX>;
-typedef ACE_Singleton<ACE_Thread_Manager, ACE_SYNCH_MUTEX> ACE_THREAD_MANAGER_SINGLETON;
-#endif /* defined (ACE_THREAD_MANAGER_LACKS_STATICS) */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Thread_Manager.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_THREAD_MANAGER_H */
-
diff --git a/dep/include/ace/Thread_Manager.inl b/dep/include/ace/Thread_Manager.inl
deleted file mode 100644
index 6be65a664fa..00000000000
--- a/dep/include/ace/Thread_Manager.inl
+++ /dev/null
@@ -1,307 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Thread_Manager.inl 82588 2008-08-11 13:37:41Z johnnyw $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_At_Thread_Exit::ACE_At_Thread_Exit (void)
- : next_ (0),
- td_ (0),
- was_applied_ (false),
- is_owner_ (true)
-{
-}
-
-ACE_INLINE bool
-ACE_At_Thread_Exit::was_applied() const
-{
- return was_applied_;
-}
-
-ACE_INLINE bool
-ACE_At_Thread_Exit::was_applied (bool applied)
-{
- was_applied_ = applied;
- if (was_applied_)
- td_ = 0;
- return was_applied_;
-}
-
-ACE_INLINE bool
-ACE_At_Thread_Exit::is_owner() const
-{
- return is_owner_;
-}
-
-ACE_INLINE bool
-ACE_At_Thread_Exit::is_owner (bool owner)
-{
- is_owner_ = owner;
- return is_owner_;
-}
-
-ACE_INLINE void
-ACE_At_Thread_Exit::do_apply (void)
-{
- if (!this->was_applied_ && this->is_owner_)
- td_->at_pop();
-}
-
-ACE_INLINE
-ACE_At_Thread_Exit_Func::ACE_At_Thread_Exit_Func (void *object,
- ACE_CLEANUP_FUNC func,
- void *param)
- : object_(object),
- func_(func),
- param_(param)
-{
-}
-
-ACE_INLINE
-ACE_Thread_Descriptor_Base::ACE_Thread_Descriptor_Base (void)
- : ACE_OS_Thread_Descriptor (),
- thr_id_ (ACE_OS::NULL_thread),
- thr_handle_ (ACE_OS::NULL_hthread),
- grp_id_ (0),
- thr_state_ (ACE_Thread_Manager::ACE_THR_IDLE),
- task_ (0),
- next_ (0),
- prev_ (0)
-{
-}
-
-ACE_INLINE
-ACE_Thread_Descriptor_Base::~ACE_Thread_Descriptor_Base (void)
-{
-}
-
-ACE_INLINE bool
-ACE_Thread_Descriptor_Base::operator== (
- const ACE_Thread_Descriptor_Base &rhs) const
-{
- return
- ACE_OS::thr_cmp (this->thr_handle_, rhs.thr_handle_)
- && ACE_OS::thr_equal (this->thr_id_, rhs.thr_id_);
-}
-
-ACE_INLINE bool
-ACE_Thread_Descriptor_Base::operator!=(const ACE_Thread_Descriptor_Base &rhs) const
-{
- return !(*this == rhs);
-}
-
-ACE_INLINE ACE_Task_Base *
-ACE_Thread_Descriptor_Base::task (void) const
-{
- ACE_TRACE ("ACE_Thread_Descriptor_Base::task");
- return this->task_;
-}
-
-// Group ID.
-
-ACE_INLINE int
-ACE_Thread_Descriptor_Base::grp_id (void) const
-{
- ACE_TRACE ("ACE_Thread_Descriptor_Base::grp_id");
- return grp_id_;
-}
-
-// Current state of the thread.
-ACE_INLINE ACE_UINT32
-ACE_Thread_Descriptor_Base::state (void) const
-{
- ACE_TRACE ("ACE_Thread_Descriptor_Base::state");
- return thr_state_;
-}
-
-// Reset this base descriptor.
-ACE_INLINE void
-ACE_Thread_Descriptor_Base::reset (void)
-{
- ACE_TRACE ("ACE_Thread_Descriptor_Base::reset");
- this->thr_id_ = ACE_OS::NULL_thread;
- this->thr_handle_ = ACE_OS::NULL_hthread;
- this->grp_id_ = 0;
- this->thr_state_ = ACE_Thread_Manager::ACE_THR_IDLE;
- this->task_ = 0;
- this->flags_ = 0;
-}
-
-// Unique thread id.
-ACE_INLINE ACE_thread_t
-ACE_Thread_Descriptor::self (void) const
-{
- ACE_TRACE ("ACE_Thread_Descriptor::self");
- return this->thr_id_;
-}
-
-// Unique kernel-level thread handle.
-
-ACE_INLINE void
-ACE_Thread_Descriptor::self (ACE_hthread_t &handle)
-{
- ACE_TRACE ("ACE_Thread_Descriptor::self");
- handle = this->thr_handle_;
-}
-
-ACE_INLINE void
-ACE_Thread_Descriptor::log_msg_cleanup (ACE_Log_Msg* log_msg)
-
-{
- log_msg_ = log_msg;
-}
-
-// Set the <next_> pointer
-ACE_INLINE void
-ACE_Thread_Descriptor::set_next (ACE_Thread_Descriptor *td)
-{
- ACE_TRACE ("ACE_Thread_Descriptor::set_next");
- this->next_ = td;
-}
-
-// Get the <next_> pointer
-ACE_INLINE ACE_Thread_Descriptor *
-ACE_Thread_Descriptor::get_next (void) const
-{
- ACE_TRACE ("ACE_Thread_Descriptor::get_next");
- return static_cast<ACE_Thread_Descriptor * ACE_CAST_CONST> (this->next_);
-}
-
-// Reset this thread descriptor
-ACE_INLINE void
-ACE_Thread_Descriptor::reset (ACE_Thread_Manager *tm)
-{
- ACE_TRACE ("ACE_Thread_Descriptor::reset");
- this->ACE_Thread_Descriptor_Base::reset ();
- this->at_exit_list_ = 0;
- // Start the at_exit hook list.
- this->tm_ = tm;
- // Setup the Thread_Manager.
- this->log_msg_ = 0;
- this->terminated_ = false;
-}
-
-ACE_INLINE ACE_Thread_Descriptor *
-ACE_Thread_Manager::thread_desc_self (void)
-{
- // This method must be called with lock held.
-
- // Try to get it from cache.
- ACE_Thread_Descriptor *desc = ACE_LOG_MSG->thr_desc ();
-
-#if 1
- // ACE_ASSERT (desc != 0);
- // Thread descriptor should always get cached.
-#else
- if (desc == 0)
- {
- ACE_thread_t id = ACE_OS::thr_self ();
-
- desc = this->find_thread (id);
-
- // Thread descriptor adapter might not have been put into the
- // list yet.
- if (desc != 0)
- // Update the TSS cache.
- ACE_LOG_MSG->thr_desc (desc);
- }
-#endif
- return desc;
-}
-
-// Return the unique ID of the thread.
-
-ACE_INLINE ACE_thread_t
-ACE_Thread_Manager::thr_self (void)
-{
- ACE_TRACE ("ACE_Thread_Manager::thr_self");
- return ACE_Thread::self ();
-}
-
-ACE_INLINE ACE_Task_Base *
-ACE_Thread_Manager::task (void)
-{
- ACE_TRACE ("ACE_Thread_Manager::task");
-
- ACE_Thread_Descriptor *td = this->thread_desc_self () ;
-
- if (td == 0)
- return 0;
- else
- return td->task ();
-}
-
-ACE_INLINE int
-ACE_Thread_Manager::open (size_t)
-{
- // Currently no-op.
- return 0;
-}
-
-ACE_INLINE int
-ACE_Thread_Manager::at_exit (ACE_At_Thread_Exit* at)
-{
- ACE_Thread_Descriptor *td = this->thread_desc_self ();
- if (td == 0)
- return -1;
- else
- return td->at_exit (at);
-}
-
-ACE_INLINE int
-ACE_Thread_Manager::at_exit (ACE_At_Thread_Exit& at)
-{
- ACE_Thread_Descriptor *td = this->thread_desc_self ();
- if (td == 0)
- return -1;
- else
- return td->at_exit (at);
-}
-
-ACE_INLINE int
-ACE_Thread_Manager::at_exit (void *object,
- ACE_CLEANUP_FUNC cleanup_hook,
- void *param)
-{
- ACE_Thread_Descriptor *td = this->thread_desc_self ();
- if (td == 0)
- return -1;
- else
- return td->at_exit (object,
- cleanup_hook,
- param);
-}
-
-ACE_INLINE void
-ACE_Thread_Manager::wait_on_exit (int do_wait)
-{
- this->automatic_wait_ = do_wait;
-}
-
-ACE_INLINE int
-ACE_Thread_Manager::wait_on_exit (void)
-{
- return this->automatic_wait_;
-}
-
-ACE_INLINE int
-ACE_Thread_Manager::register_as_terminated (ACE_Thread_Descriptor *td)
-{
-#if defined (ACE_HAS_VXTHREADS)
- ACE_UNUSED_ARG (td);
-#else /* ! ACE_HAS_VXTHREADS */
- ACE_Thread_Descriptor_Base *tdb = 0;
- ACE_NEW_RETURN (tdb, ACE_Thread_Descriptor_Base (*td), -1);
- this->terminated_thr_list_.insert_tail (tdb);
-#endif /* !ACE_HAS_VXTHREADS */
- return 0;
-}
-
-ACE_INLINE size_t
-ACE_Thread_Manager::count_threads (void) const
-{
- return this->thr_list_.size ();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Thread_Mutex.h b/dep/include/ace/Thread_Mutex.h
deleted file mode 100644
index 0a1b1cae2af..00000000000
--- a/dep/include/ace/Thread_Mutex.h
+++ /dev/null
@@ -1,176 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Thread_Mutex.h
- *
- * $Id: Thread_Mutex.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_THREAD_MUTEX_H
-#define ACE_THREAD_MUTEX_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_HAS_THREADS)
-# include "ace/Null_Mutex.h"
-#else /* ACE_HAS_THREADS */
-// ACE platform supports some form of threading.
-
-#include /**/ "ace/ACE_export.h"
-#include "ace/OS_NS_Thread.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Thread_Mutex
- *
- * @brief ACE_Thread_Mutex wrapper (only valid for threads in the same
- * process).
- *
- * This implementation is optimized for locking threads that are
- * in the same process. It maps to <CRITICAL_SECTION>s on NT
- * and <ACE_mutex_t> with <type> set to <USYNC_THREAD> on UNIX.
- * ACE_Thread_Mutex is recursive on some platforms (like
- * Win32). However, on most platforms (like Solaris) it is not
- * recursive. To be totally safe and portable, developers
- * should use ACE_Recursive_Thread_Mutex when they need a
- * recursive mutex.
- */
-class ACE_Export ACE_Thread_Mutex
-{
- friend class ACE_Condition_Thread_Mutex;
-public:
- /// Constructor.
- ACE_Thread_Mutex (const ACE_TCHAR *name = 0,
- ACE_mutexattr_t *attributes = 0);
-
- /// Implicitly destroy the mutex.
- ~ACE_Thread_Mutex (void);
-
- /**
- * Explicitly destroy the mutex. Note that only one thread should
- * call this method since it doesn't protect against race
- * conditions.
- */
- int remove (void);
-
- /// Acquire lock ownership (wait on queue if necessary).
- int acquire (void);
-
- /**
- * Block the thread until we acquire the mutex or until @a tv times
- * out, in which case -1 is returned with @c errno == @c ETIME. Note
- * that @a tv is assumed to be in "absolute" rather than "relative"
- * time. The value of @a tv is updated upon return to show the
- * actual (absolute) acquisition time.
- */
- int acquire (ACE_Time_Value &tv);
-
- /**
- * If @a tv == 0 the call <acquire()> directly. Otherwise, Block the
- * thread until we acquire the mutex or until @a tv times out, in
- * which case -1 is returned with @c errno == @c ETIME. Note that
- * @a tv is assumed to be in "absolute" rather than "relative" time.
- * The value of @a tv is updated upon return to show the actual
- * (absolute) acquisition time.
- */
- int acquire (ACE_Time_Value *tv);
-
- /**
- * Conditionally acquire lock (i.e., don't wait on queue). Returns
- * -1 on failure. If we "failed" because someone else already had
- * the lock, @c errno is set to @c EBUSY.
- */
- int tryacquire (void);
-
- /// Release lock and unblock a thread at head of queue.
- int release (void);
-
- /**
- * Acquire mutex ownership. This calls acquire() and is only here
- * to make the ACE_Thread_Mutex interface consistent with the
- * other synchronization APIs.
- */
- int acquire_read (void);
-
- /**
- * Acquire mutex ownership. This calls acquire() and is only here
- * to make the ACE_Thread_Mutex interface consistent with the
- * other synchronization APIs.
- */
- int acquire_write (void);
-
- /**
- * Conditionally acquire mutex (i.e., won't block). This calls
- * tryacquire() and is only here to make the ACE_Thread_Mutex
- * interface consistent with the other synchronization APIs.
- * Returns -1 on failure. If we "failed" because someone else
- * already had the lock, @c errno is set to @c EBUSY.
- */
- int tryacquire_read (void);
-
- /**
- * Conditionally acquire mutex (i.e., won't block). This calls
- * tryacquire() and is only here to make the ACE_Thread_Mutex
- * interface consistent with the other synchronization APIs.
- * Returns -1 on failure. If we "failed" because someone else
- * already had the lock, @c errno is set to @c EBUSY.
- */
- int tryacquire_write (void);
-
- /**
- * This is only here to make the ACE_Thread_Mutex
- * interface consistent with the other synchronization APIs.
- * Assumes the caller has already acquired the mutex using one of
- * the above calls, and returns 0 (success) always.
- */
- int tryacquire_write_upgrade (void);
-
- /// Return the underlying mutex.
- const ACE_thread_mutex_t &lock (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- // protected:
- /// Mutex type that supports single-process locking efficiently.
- ACE_thread_mutex_t lock_;
-
- /// Keeps track of whether remove() has been called yet to avoid
- /// multiple <remove> calls, e.g., explicitly and implicitly in the
- /// destructor. This flag isn't protected by a lock, so make sure
- /// that you don't have multiple threads simultaneously calling
- /// <remove> on the same object, which is a bad idea anyway...
- bool removed_;
-
-private:
- // = Prevent assignment and initialization.
- void operator= (const ACE_Thread_Mutex &);
- ACE_Thread_Mutex (const ACE_Thread_Mutex &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Thread_Mutex.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* !ACE_HAS_THREADS */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_THREAD_MUTEX_H */
-
diff --git a/dep/include/ace/Thread_Mutex.inl b/dep/include/ace/Thread_Mutex.inl
deleted file mode 100644
index ff744684c2b..00000000000
--- a/dep/include/ace/Thread_Mutex.inl
+++ /dev/null
@@ -1,97 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Thread_Mutex.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE const ACE_thread_mutex_t &
-ACE_Thread_Mutex::lock (void) const
-{
-// ACE_TRACE ("ACE_Thread_Mutex::lock");
- return this->lock_;
-}
-
-ACE_INLINE int
-ACE_Thread_Mutex::acquire_read (void)
-{
-// ACE_TRACE ("ACE_Thread_Mutex::acquire_read");
- return ACE_OS::thread_mutex_lock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_Thread_Mutex::acquire_write (void)
-{
-// ACE_TRACE ("ACE_Thread_Mutex::acquire_write");
- return ACE_OS::thread_mutex_lock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_Thread_Mutex::tryacquire_read (void)
-{
-// ACE_TRACE ("ACE_Thread_Mutex::tryacquire_read");
- return ACE_OS::thread_mutex_trylock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_Thread_Mutex::tryacquire_write (void)
-{
-// ACE_TRACE ("ACE_Thread_Mutex::tryacquire_write");
- return ACE_OS::thread_mutex_trylock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_Thread_Mutex::tryacquire_write_upgrade (void)
-{
-// ACE_TRACE ("ACE_Thread_Mutex::tryacquire_write_upgrade");
- return 0;
-}
-
-ACE_INLINE int
-ACE_Thread_Mutex::acquire (void)
-{
-// ACE_TRACE ("ACE_Thread_Mutex::acquire");
- return ACE_OS::thread_mutex_lock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_Thread_Mutex::acquire (ACE_Time_Value &tv)
-{
- // ACE_TRACE ("ACE_Thread_Mutex::acquire");
- return ACE_OS::thread_mutex_lock (&this->lock_, tv);
-}
-
-ACE_INLINE int
-ACE_Thread_Mutex::acquire (ACE_Time_Value *tv)
-{
- // ACE_TRACE ("ACE_Thread_Mutex::acquire");
- return ACE_OS::thread_mutex_lock (&this->lock_, tv);
-}
-
-ACE_INLINE int
-ACE_Thread_Mutex::tryacquire (void)
-{
-// ACE_TRACE ("ACE_Thread_Mutex::tryacquire");
- return ACE_OS::thread_mutex_trylock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_Thread_Mutex::release (void)
-{
-// ACE_TRACE ("ACE_Thread_Mutex::release");
- return ACE_OS::thread_mutex_unlock (&this->lock_);
-}
-
-ACE_INLINE int
-ACE_Thread_Mutex::remove (void)
-{
-// ACE_TRACE ("ACE_Thread_Mutex::remove");
- int result = 0;
- if (this->removed_ == false)
- {
- this->removed_ = true;
- result = ACE_OS::thread_mutex_destroy (&this->lock_);
- }
- return result;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Thread_Semaphore.h b/dep/include/ace/Thread_Semaphore.h
deleted file mode 100644
index e6a9d008e68..00000000000
--- a/dep/include/ace/Thread_Semaphore.h
+++ /dev/null
@@ -1,90 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Thread_Semaphore.h
- *
- * $Id: Thread_Semaphore.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Moved from Synch.h.
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//==========================================================================
-
-#ifndef ACE_THREAD_SEMAPHORE_H
-#define ACE_THREAD_SEMAPHORE_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_HAS_THREADS)
-# include "ace/Null_Semaphore.h"
-#else /* ACE_HAS_THREADS */
-// ACE platform supports some form of threading.
-
-#include "ace/Semaphore.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Thread_Semaphore
- *
- * @brief Wrapper for Dijkstra style general semaphores that work
- * only within one process.
- */
-class ACE_Export ACE_Thread_Semaphore : public ACE_Semaphore
-{
-public:
- /// Initialize the semaphore, with an initial value of @a count,
- /// maximum value of @a max, and unlocked by default.
- ACE_Thread_Semaphore (unsigned int count = 1, // By default make this unlocked.
- const ACE_TCHAR *name = 0,
- void * = 0,
- int max = 0x7FFFFFFF);
-
- /// Default dtor.
- ~ACE_Thread_Semaphore (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-/*****************************************************************************/
-
-template <class T> class ACE_Malloc_Lock_Adapter_T;
-
-/**
- * @class ACE_Malloc_Lock_Adapter_T<ACE_Thread_Semaphore>
- *
- * @brief Template specialization of ACE_Malloc_Lock_Adapter_T for
- * ACE_Thread_Semaphore.
- *
- * This is needed since the ctor for ACE_Thread_Semaphore doesn't match
- * the standard form used by other lock strategy classes.
- */
-template<>
-class ACE_Export ACE_Malloc_Lock_Adapter_T<ACE_Thread_Semaphore>
-{
-public:
- ACE_Thread_Semaphore * operator () (const ACE_TCHAR *name);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Thread_Semaphore.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* !ACE_HAS_THREADS */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_THREAD_SEMAPHORE_H */
-
diff --git a/dep/include/ace/Thread_Semaphore.inl b/dep/include/ace/Thread_Semaphore.inl
deleted file mode 100644
index b64ec3c08f5..00000000000
--- a/dep/include/ace/Thread_Semaphore.inl
+++ /dev/null
@@ -1,12 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Thread_Semaphore.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_Thread_Semaphore::~ACE_Thread_Semaphore (void)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Throughput_Stats.h b/dep/include/ace/Throughput_Stats.h
deleted file mode 100644
index 9f4a87fdc8f..00000000000
--- a/dep/include/ace/Throughput_Stats.h
+++ /dev/null
@@ -1,86 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Throughput_Stats.h
- *
- * $Id: Throughput_Stats.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author David L. Levine
- */
-//==========================================================================
-
-#ifndef ACE_THROUGHPUT_STATS_H
-#define ACE_THROUGHPUT_STATS_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Basic_Stats.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/// A simple class to make throughput and latency analysis.
-/**
- *
- * Keep the relevant information to perform throughput and latency
- * analysis, including:
- * -# Minimum, Average and Maximum latency
- * -# Jitter for the latency
- * -# Linear regression for throughput
- * -# Accumulate results from several samples to obtain aggregated
- * results, across several threads or experiments.
- *
- * @todo The idea behind this class was to use linear regression to
- * determine if the throughput was linear or exhibited jitter.
- * Unfortunately it never worked quite right, so only average
- * throughput is computed.
- */
-class ACE_Export ACE_Throughput_Stats : public ACE_Basic_Stats
-{
-public:
- /// Constructor
- ACE_Throughput_Stats (void);
-
- /// Store one sample
- void sample (ACE_UINT64 throughput, ACE_UINT64 latency);
-
- /// Update the values to reflect the stats in @a throughput
- void accumulate (const ACE_Throughput_Stats &throughput);
-
- /// Print down the stats
- void dump_results (const ACE_TCHAR* msg, ACE_UINT32 scale_factor);
-
- /// Dump the average throughput stats.
- static void dump_throughput (const ACE_TCHAR *msg,
- ACE_UINT32 scale_factor,
- ACE_UINT64 elapsed_time,
- ACE_UINT32 samples_count);
-private:
- /// The last throughput measurement.
- ACE_UINT64 throughput_last_;
-
-#if 0
- /// These are the fields that we should keep to perform linear
- /// regression
- //@{
- ///@}
- ACE_UINT64 throughput_sum_x_;
- ACE_UINT64 throughput_sum_x2_;
- ACE_UINT64 throughput_sum_y_;
- ACE_UINT64 throughput_sum_y2_;
- ACE_UINT64 throughput_sum_xy_;
-#endif /* 0 */
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ! ACE_THROUGHPUT_STATS_H */
-
diff --git a/dep/include/ace/Time_Value.h b/dep/include/ace/Time_Value.h
deleted file mode 100644
index ae75cc1c9de..00000000000
--- a/dep/include/ace/Time_Value.h
+++ /dev/null
@@ -1,381 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Time_Value.h
- *
- * $Id: Time_Value.h 81914 2008-06-11 13:56:11Z sma $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_TIME_VALUE_H
-#define ACE_TIME_VALUE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-# include "ace/os_include/os_time.h"
-
-// Define some helpful constants.
-// Not type-safe, and signed. For backward compatibility.
-#define ACE_ONE_SECOND_IN_MSECS 1000L
-suseconds_t const ACE_ONE_SECOND_IN_USECS = 1000000;
-#define ACE_ONE_SECOND_IN_NSECS 1000000000L
-
-// needed for ACE_UINT64
-#include "ace/Basic_Types.h"
-
-// This forward declaration is needed by the set() and FILETIME() functions
-#if defined (ACE_LACKS_LONGLONG_T)
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-class ACE_Export ACE_U_LongLong;
-ACE_END_VERSIONED_NAMESPACE_DECL
-#endif /* ACE_LACKS_LONGLONG_T */
-
-// -------------------------------------------------------------------
-
-/**
- * @class ACE_Time_Value
- *
- * @brief Operations on "timeval" structures, which express time in
- * seconds (secs) and microseconds (usecs).
- *
- * This class centralizes all the time related processing in
- * ACE. These time values are typically used in conjunction with OS
- * mechanisms like <select>, <poll>, or <cond_timedwait>.
- */
-#if defined (ACE_WIN32) && defined (_WIN32_WCE)
-// Something is a bit brain-damaged here and I'm not sure what... this code
-// compiled before the OS reorg for ACE 5.4. Since then it hasn't - eVC
-// complains that the operators that return ACE_Time_Value are C-linkage
-// functions that can't return a C++ class. The only way I've found to
-// defeat this is to wrap the whole class in extern "C++".
-// - Steve Huston, 23-Aug-2004
-extern "C++" {
-#endif
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Export ACE_Time_Value
-{
-public:
-
- /// Constant "0".
- static const ACE_Time_Value zero;
-
- /**
- * Constant for maximum time representable. Note that this time is
- * not intended for use with <select> or other calls that may have
- * *their own* implementation-specific maximum time representations.
- * Its primary use is in time computations such as those used by the
- * dynamic subpriority strategies in the ACE_Dynamic_Message_Queue
- * class.
- */
- static const ACE_Time_Value max_time;
-
- // = Initialization methods.
-
- /// Default Constructor.
- ACE_Time_Value (void);
-
- /// Constructor.
- explicit ACE_Time_Value (time_t sec, suseconds_t usec = 0);
-
- // = Methods for converting to/from various time formats.
-
- /// Construct the ACE_Time_Value from a timeval.
- explicit ACE_Time_Value (const struct timeval &t);
-
- /// Construct the ACE_Time_Value object from a timespec_t.
- explicit ACE_Time_Value (const timespec_t &t);
-
-# if defined (ACE_WIN32)
- /// Construct the ACE_Time_Value object from a Win32 FILETIME
- explicit ACE_Time_Value (const FILETIME &ft);
-# endif /* ACE_WIN32 */
-
- /// Initializes the ACE_Time_Value from seconds and useconds.
- void set (time_t sec, suseconds_t usec);
-
- /// Initializes the ACE_Time_Value from a double, which is assumed to be
- /// in second format, with any remainder treated as microseconds.
- void set (double d);
-
- /// Initializes the ACE_Time_Value from a timeval.
- void set (const timeval &t);
-
- /// Initializes the ACE_Time_Value object from a timespec_t.
- void set (const timespec_t &t);
-
-# if defined (ACE_WIN32)
- /// Initializes the ACE_Time_Value object from a Win32 FILETIME.
- void set (const FILETIME &ft);
-# endif /* ACE_WIN32 */
-
- /// Converts from ACE_Time_Value format into milliseconds format.
- /**
- * @return Sum of second field (in milliseconds) and microsecond field
- * (in milliseconds). Note that this method can overflow if
- * the second and microsecond field values are large, so use
- * the msec (ACE_UINT64 &ms) method instead.
- *
- * @note The semantics of this method differs from the sec() and
- * usec() methods. There is no analogous "millisecond"
- * component in an ACE_Time_Value.
- */
- unsigned long msec (void) const;
-
- /// Converts from ACE_Time_Value format into milliseconds format.
- /**
- * @return Sum of second field (in milliseconds) and microsecond field
- * (in milliseconds) and return them via the @param ms parameter.
- *
- * @note The semantics of this method differs from the sec() and
- * usec() methods. There is no analogous "millisecond"
- * component in an ACE_Time_Value.
- */
- void msec (ACE_UINT64 &ms) const;
-
- /// Converts from ACE_Time_Value format into milliseconds format.
- /**
- * @return Sum of second field (in milliseconds) and microsecond field
- * (in milliseconds) and return them via the @param ms parameter.
- *
- * @note The semantics of this method differs from the sec() and
- * usec() methods. There is no analogous "millisecond"
- * component in an ACE_Time_Value.
- */
- void msec (ACE_UINT64 &ms) /* const */;
-
- /// Converts from milli-seconds format into ACE_Time_Value format.
- /**
- * @note The semantics of this method differs from the sec() and
- * usec() methods. There is no analogous "millisecond"
- * component in an ACE_Time_Value.
- */
- void msec (long);
-
- /// Converts from milli-seconds format into ACE_Time_Value format.
- /**
- * @note The semantics of this method differs from the sec() and
- * usec() methods. There is no analogous "millisecond"
- * component in an ACE_Time_Value.
- */
- void msec (int); // converted to long then calls above.
-
- /// Returns the value of the object as a timespec_t.
- operator timespec_t () const;
-
- /// Returns the value of the object as a timeval.
- operator timeval () const;
-
- /// Returns a pointer to the object as a timeval.
- operator const timeval *() const;
-
-# if defined (ACE_WIN32)
- /// Returns the value of the object as a Win32 FILETIME.
- operator FILETIME () const;
-# endif /* ACE_WIN32 */
-
- // = The following are accessor/mutator methods.
-
- /// Get seconds.
- /**
- * @return The second field/component of this ACE_Time_Value.
- *
- * @note The semantics of this method differs from the msec()
- * method.
- */
- time_t sec (void) const;
-
- /// Set seconds.
- void sec (time_t sec);
-
- /// Get microseconds.
- /**
- * @return The microsecond field/component of this ACE_Time_Value.
- *
- * @note The semantics of this method differs from the msec()
- * method.
- */
- suseconds_t usec (void) const;
-
- /// Set microseconds.
- void usec (suseconds_t usec);
-
- /**
- * @return Sum of second field (in microseconds) and microsecond field
- * and return them via the @param usec parameter.
- */
- void to_usec (ACE_UINT64 &usec) const;
-
- // = The following arithmetic methods operate on ACE_Time_Value's.
-
- /// Add @a tv to this.
- ACE_Time_Value &operator += (const ACE_Time_Value &tv);
-
- /// Add @a tv to this.
- ACE_Time_Value &operator += (time_t tv);
-
- /// Assign @ tv to this
- ACE_Time_Value &operator = (const ACE_Time_Value &tv);
-
- /// Assign @ tv to this
- ACE_Time_Value &operator = (time_t tv);
-
- /// Subtract @a tv to this.
- ACE_Time_Value &operator -= (const ACE_Time_Value &tv);
-
- /// Substract @a tv to this.
- ACE_Time_Value &operator -= (time_t tv);
-
- /**
- \brief Multiply the time value by the @a d factor.
- \note The result of the operator is valid for results from range
- < (ACE_INT32_MIN, -999999), (ACE_INT32_MAX, 999999) >. Result
- outside this range are saturated to a limit.
- */
- ACE_Time_Value &operator *= (double d);
-
- /// Increment microseconds as postfix.
- /**
- * @note The only reason this is here is to allow the use of ACE_Atomic_Op
- * with ACE_Time_Value.
- */
- ACE_Time_Value operator++ (int);
-
- /// Increment microseconds as prefix.
- /**
- * @note The only reason this is here is to allow the use of ACE_Atomic_Op
- * with ACE_Time_Value.
- */
- ACE_Time_Value &operator++ (void);
-
- /// Decrement microseconds as postfix.
- /**
- * @note The only reason this is here is to allow the use of ACE_Atomic_Op
- * with ACE_Time_Value.
- */
- ACE_Time_Value operator-- (int);
-
- /// Decrement microseconds as prefix.
- /**
- * @note The only reason this is here is to allow the use of ACE_Atomic_Op
- * with ACE_Time_Value.
- */
- ACE_Time_Value &operator-- (void);
-
- /// Adds two ACE_Time_Value objects together, returns the sum.
- friend ACE_Export ACE_Time_Value operator + (const ACE_Time_Value &tv1,
- const ACE_Time_Value &tv2);
-
- /// Subtracts two ACE_Time_Value objects, returns the difference.
- friend ACE_Export ACE_Time_Value operator - (const ACE_Time_Value &tv1,
- const ACE_Time_Value &tv2);
-
- /// True if @a tv1 < @a tv2.
- friend ACE_Export bool operator < (const ACE_Time_Value &tv1,
- const ACE_Time_Value &tv2);
-
- /// True if @a tv1 > @a tv2.
- friend ACE_Export bool operator > (const ACE_Time_Value &tv1,
- const ACE_Time_Value &tv2);
-
- /// True if @a tv1 <= @a tv2.
- friend ACE_Export bool operator <= (const ACE_Time_Value &tv1,
- const ACE_Time_Value &tv2);
-
- /// True if @a tv1 >= @a tv2.
- friend ACE_Export bool operator >= (const ACE_Time_Value &tv1,
- const ACE_Time_Value &tv2);
-
- /// True if @a tv1 == @a tv2.
- friend ACE_Export bool operator == (const ACE_Time_Value &tv1,
- const ACE_Time_Value &tv2);
-
- /// True if @a tv1 != @a tv2.
- friend ACE_Export bool operator != (const ACE_Time_Value &tv1,
- const ACE_Time_Value &tv2);
-
- //@{
- /// Multiplies the time value by @a d
- friend ACE_Export ACE_Time_Value operator * (double d,
- const ACE_Time_Value &tv);
-
- friend ACE_Export ACE_Time_Value operator * (const ACE_Time_Value &tv,
- double d);
- //@}
-
- /// Dump is a no-op.
- /**
- * The dump() method is a no-op. It's here for backwards compatibility
- * only, but does not dump anything. Invoking logging methods here
- * violates layering restrictions in ACE because this class is part
- * of the OS layer and @c ACE_Log_Msg is at a higher level.
- */
- void dump (void) const;
-
-# if defined (ACE_WIN32)
- /// Const time difference between FILETIME and POSIX time.
-# if defined (ACE_LACKS_LONGLONG_T)
- static const ACE_U_LongLong FILETIME_to_timval_skew;
-# else
- static const DWORDLONG FILETIME_to_timval_skew;
-# endif // ACE_LACKS_LONGLONG_T
-# endif /* ACE_WIN32 */
-
-private:
- /// Put the timevalue into a canonical form.
- void normalize (void);
-
- /// Store the values as a timeval.
-#if defined (ACE_HAS_TIME_T_LONG_MISMATCH)
- // Windows' timeval is non-conformant, so swap in a struct that conforms
- // to the proper data types to represent the entire time range that this
- // class's API can accept.
- // Also, since this class can supply a pointer to a timeval that things
- // like select() expect, we need the OS-defined one as well. To make this
- // available, use a real timeval called ext_tv_ and set it up when needed.
- // Since this is most often for relative times that don't approach 32 bits
- // in size, reducing a time_t to fit should be no problem.
- struct {
- time_t tv_sec;
- suseconds_t tv_usec;
- } tv_;
- timeval ext_tv_;
-#else
- timeval tv_;
-#endif /* ACE_HAS_TIME_T_LONG_MISMATCH */
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Time_Value.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_WIN32) && defined (_WIN32_WCE)
-}
-#endif
-
-#if defined (__MINGW32__)
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-// The MingW linker has problems with the exported statics
-// zero and max_time with these two statics the linker will be able to
-// resolve the static exported symbols.
-static const ACE_Time_Value& __zero_time = ACE_Time_Value::zero;
-static const ACE_Time_Value& __max_time = ACE_Time_Value::max_time;
-ACE_END_VERSIONED_NAMESPACE_DECL
-#endif /* __MINGW32__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_TIME_VALUE_H */
-
diff --git a/dep/include/ace/Time_Value.inl b/dep/include/ace/Time_Value.inl
deleted file mode 100644
index 27433389323..00000000000
--- a/dep/include/ace/Time_Value.inl
+++ /dev/null
@@ -1,422 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Time_Value.inl 82610 2008-08-12 19:46:36Z parsons $
-
-#include "ace/Truncate.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_WIN32) && defined (_WIN32_WCE)
-// Something is a bit brain-damaged here and I'm not sure what... this code
-// compiled before the OS reorg for ACE 5.4. Since then it hasn't - eVC
-// complains that the operators that return ACE_Time_Value are C-linkage
-// functions that can't return a C++ class. The only way I've found to
-// defeat this is to wrap the whole class in extern "C++".
-// - Steve Huston, 23-Aug-2004
-extern "C++" {
-#endif
-
-// Returns the value of the object as a timeval.
-
-ACE_INLINE
-ACE_Time_Value::operator timeval () const
-{
- // ACE_OS_TRACE ("ACE_Time_Value::operator timeval");
-#if defined (ACE_HAS_TIME_T_LONG_MISMATCH)
- // Recall that on some Windows we substitute another type for timeval in tv_
- ACE_Time_Value *me = const_cast<ACE_Time_Value*> (this);
- me->ext_tv_.tv_sec = ACE_Utils::truncate_cast<long> (this->tv_.tv_sec);
- me->ext_tv_.tv_usec = ACE_Utils::truncate_cast<long> (this->tv_.tv_usec);
- return this->ext_tv_;
-#else
- return this->tv_;
-#endif /* ACE_HAS_TIME_T_LONG_MISMATCH */
-}
-
-ACE_INLINE void
-ACE_Time_Value::set (const timeval &tv)
-{
- // ACE_OS_TRACE ("ACE_Time_Value::set");
- this->tv_.tv_sec = tv.tv_sec;
- this->tv_.tv_usec = tv.tv_usec;
-
- this->normalize ();
-}
-
-ACE_INLINE
-ACE_Time_Value::ACE_Time_Value (const struct timeval &tv)
-{
- // ACE_OS_TRACE ("ACE_Time_Value::ACE_Time_Value");
- this->set (tv);
-}
-
-ACE_INLINE
-ACE_Time_Value::operator const timeval * () const
-{
- // ACE_OS_TRACE ("ACE_Time_Value::operator const timeval *");
-#if defined (ACE_HAS_TIME_T_LONG_MISMATCH)
- // Recall that on some Windows we substitute another type for timeval in tv_
- ACE_Time_Value *me = const_cast<ACE_Time_Value*> (this);
- me->ext_tv_.tv_sec = ACE_Utils::truncate_cast<long> (this->tv_.tv_sec);
- me->ext_tv_.tv_usec = ACE_Utils::truncate_cast<long> (this->tv_.tv_usec);
- return (const timeval *) &this->ext_tv_;
-#else
- return (const timeval *) &this->tv_;
-#endif /* ACE_HAS_TIME_T_LONG_MISMATCH */
-}
-
-ACE_INLINE void
-ACE_Time_Value::set (time_t sec, suseconds_t usec)
-{
- // ACE_OS_TRACE ("ACE_Time_Value::set");
- this->tv_.tv_sec = sec;
- this->tv_.tv_usec = usec;
-#if __GNUC__
- if (__builtin_constant_p(sec) &&
- __builtin_constant_p(usec) &&
- (sec >= 0 && usec >= 0 && usec < ACE_ONE_SECOND_IN_USECS))
- return;
-#endif
- this->normalize ();
-}
-
-ACE_INLINE void
-ACE_Time_Value::set (double d)
-{
- // ACE_OS_TRACE ("ACE_Time_Value::set");
- long l = (long) d;
- this->tv_.tv_sec = l;
- this->tv_.tv_usec = (suseconds_t) ((d - (double) l) * ACE_ONE_SECOND_IN_USECS + .5);
- this->normalize ();
-}
-
-// Initializes a timespec_t. Note that this approach loses precision
-// since it converts the nano-seconds into micro-seconds. But then
-// again, do any real systems have nano-second timer precision?!
-
-ACE_INLINE void
-ACE_Time_Value::set (const timespec_t &tv)
-{
- // ACE_OS_TRACE ("ACE_Time_Value::set");
-
- this->set (tv.tv_sec,
- tv.tv_nsec / 1000); // Convert nanoseconds into microseconds.
-}
-
-ACE_INLINE
-ACE_Time_Value::ACE_Time_Value (void)
- // : tv_ ()
-{
- // ACE_OS_TRACE ("ACE_Time_Value::ACE_Time_Value");
- this->set (0, 0);
-}
-
-ACE_INLINE
-ACE_Time_Value::ACE_Time_Value (time_t sec, suseconds_t usec)
-{
- // ACE_OS_TRACE ("ACE_Time_Value::ACE_Time_Value");
- this->set (sec, usec);
-}
-
-// Returns number of seconds.
-
-ACE_INLINE time_t
-ACE_Time_Value::sec (void) const
-{
- // ACE_OS_TRACE ("ACE_Time_Value::sec");
- return this->tv_.tv_sec;
-}
-
-// Sets the number of seconds.
-
-ACE_INLINE void
-ACE_Time_Value::sec (time_t sec)
-{
- // ACE_OS_TRACE ("ACE_Time_Value::sec");
- this->tv_.tv_sec = ACE_Utils::truncate_cast<long> (sec);
-}
-
-// Converts from Time_Value format into milli-seconds format.
-
-ACE_INLINE unsigned long
-ACE_Time_Value::msec (void) const
-{
- // ACE_OS_TRACE ("ACE_Time_Value::msec");
-
- // Note - we're truncating a value here, which can lose data. This is
- // called out in the user documentation for this with a recommendation to
- // use msec(ACE_UINT64&) instead, so just go ahead and truncate.
- time_t secs = this->tv_.tv_sec * 1000 + this->tv_.tv_usec / 1000;
- return ACE_Utils::truncate_cast<unsigned long> (secs);
-}
-
-ACE_INLINE void
-ACE_Time_Value::msec (ACE_UINT64 &ms) const
-{
- // ACE_OS_TRACE ("ACE_Time_Value::msec");
- ms = ACE_Utils::truncate_cast<ACE_UINT64> (this->tv_.tv_sec);
- ms *= 1000;
- ms += (this->tv_.tv_usec / 1000);
-}
-
-ACE_INLINE void
-ACE_Time_Value::msec (ACE_UINT64 &ms) /*const*/
-{
- // ACE_OS_TRACE ("ACE_Time_Value::msec");
- const ACE_Time_Value *tv = this;
- tv->msec (ms);
-}
-
-// Converts from milli-seconds format into Time_Value format.
-
-ACE_INLINE void
-ACE_Time_Value::msec (long milliseconds)
-{
- // ACE_OS_TRACE ("ACE_Time_Value::msec");
- // Convert millisecond units to seconds;
- long secs = milliseconds / 1000;
- this->tv_.tv_sec = secs;
- // Convert remainder to microseconds;
- this->tv_.tv_usec = (milliseconds - (secs * 1000)) * 1000;
-}
-
-// Converts from milli-seconds format into Time_Value format.
-
-ACE_INLINE void
-ACE_Time_Value::msec (int milliseconds)
-{
- ACE_Time_Value::msec (static_cast<long> (milliseconds));
-}
-
-// Returns number of micro-seconds.
-
-ACE_INLINE suseconds_t
-ACE_Time_Value::usec (void) const
-{
- // ACE_OS_TRACE ("ACE_Time_Value::usec");
- return this->tv_.tv_usec;
-}
-
-// Sets the number of micro-seconds.
-
-ACE_INLINE void
-ACE_Time_Value::usec (suseconds_t usec)
-{
- // ACE_OS_TRACE ("ACE_Time_Value::usec");
- this->tv_.tv_usec = usec;
-}
-
-ACE_INLINE void
-ACE_Time_Value::to_usec (ACE_UINT64 & usec) const
-{
- // ACE_OS_TRACE ("ACE_Time_Value::to_usec");
-
-#if defined (ACE_LACKS_UNSIGNEDLONGLONG_T)
- usec = ACE_U_LongLong (static_cast<long long> (this->tv_.tv_sec));
-#elif defined (ACE_LACKS_LONGLONG_T)
- // No native 64-bit type, meaning time_t is most likely 32 bits.
- usec = ACE_U_LongLong (this->tv_.tv_sec);
-#else
- usec = static_cast<ACE_UINT64> (this->tv_.tv_sec);
-#endif /* ACE_LACKS_LONG_LONG_T */
- usec *= 1000000;
- usec += this->tv_.tv_usec;
-}
-
-ACE_INLINE ACE_Time_Value
-operator * (double d, const ACE_Time_Value &tv)
-{
- return ACE_Time_Value (tv) *= d;
-}
-
-ACE_INLINE ACE_Time_Value
-operator * (const ACE_Time_Value &tv, double d)
-{
- return ACE_Time_Value (tv) *= d;
-}
-
-// True if tv1 > tv2.
-
-ACE_INLINE bool
-operator > (const ACE_Time_Value &tv1,
- const ACE_Time_Value &tv2)
-{
- // ACE_OS_TRACE ("operator >");
- if (tv1.sec () > tv2.sec ())
- return 1;
- else if (tv1.sec () == tv2.sec ()
- && tv1.usec () > tv2.usec ())
- return 1;
- else
- return 0;
-}
-
-// True if tv1 >= tv2.
-
-ACE_INLINE bool
-operator >= (const ACE_Time_Value &tv1,
- const ACE_Time_Value &tv2)
-{
- // ACE_OS_TRACE ("operator >=");
- if (tv1.sec () > tv2.sec ())
- return 1;
- else if (tv1.sec () == tv2.sec ()
- && tv1.usec () >= tv2.usec ())
- return 1;
- else
- return 0;
-}
-
-// Returns the value of the object as a timespec_t.
-
-ACE_INLINE
-ACE_Time_Value::operator timespec_t () const
-{
- // ACE_OS_TRACE ("ACE_Time_Value::operator timespec_t");
- timespec_t tv;
- tv.tv_sec = this->sec ();
- // Convert microseconds into nanoseconds.
- tv.tv_nsec = this->tv_.tv_usec * 1000;
- return tv;
-}
-
-// Initializes the ACE_Time_Value object from a timespec_t.
-
-ACE_INLINE
-ACE_Time_Value::ACE_Time_Value (const timespec_t &tv)
- // : tv_ ()
-{
- // ACE_OS_TRACE ("ACE_Time_Value::ACE_Time_Value");
- this->set (tv);
-}
-
-// True if tv1 < tv2.
-
-ACE_INLINE bool
-operator < (const ACE_Time_Value &tv1,
- const ACE_Time_Value &tv2)
-{
- // ACE_OS_TRACE ("operator <");
- return tv2 > tv1;
-}
-
-// True if tv1 >= tv2.
-
-ACE_INLINE bool
-operator <= (const ACE_Time_Value &tv1,
- const ACE_Time_Value &tv2)
-{
- // ACE_OS_TRACE ("operator <=");
- return tv2 >= tv1;
-}
-
-// True if tv1 == tv2.
-
-ACE_INLINE bool
-operator == (const ACE_Time_Value &tv1,
- const ACE_Time_Value &tv2)
-{
- // ACE_OS_TRACE ("operator ==");
- return tv1.sec () == tv2.sec ()
- && tv1.usec () == tv2.usec ();
-}
-
-// True if tv1 != tv2.
-
-ACE_INLINE bool
-operator != (const ACE_Time_Value &tv1,
- const ACE_Time_Value &tv2)
-{
- // ACE_OS_TRACE ("operator !=");
- return !(tv1 == tv2);
-}
-
-// Add TV to this.
-
-ACE_INLINE ACE_Time_Value &
-ACE_Time_Value::operator+= (const ACE_Time_Value &tv)
-{
- // ACE_OS_TRACE ("ACE_Time_Value::operator+=");
- this->sec (this->sec () + tv.sec ());
- this->usec (this->usec () + tv.usec ());
- this->normalize ();
- return *this;
-}
-
-ACE_INLINE ACE_Time_Value &
-ACE_Time_Value::operator+= (time_t tv)
-{
- // ACE_OS_TRACE ("ACE_Time_Value::operator+=");
- this->sec (this->sec () + tv);
- return *this;
-}
-
-ACE_INLINE ACE_Time_Value &
-ACE_Time_Value::operator= (const ACE_Time_Value &tv)
-{
- // ACE_OS_TRACE ("ACE_Time_Value::operator=");
- this->sec (tv.sec ());
- this->usec (tv.usec ());
- return *this;
-}
-
-ACE_INLINE ACE_Time_Value &
-ACE_Time_Value::operator= (time_t tv)
-{
- // ACE_OS_TRACE ("ACE_Time_Value::operator=");
- this->sec (tv);
- this->usec (0);
- return *this;
-}
-
-// Subtract TV to this.
-
-ACE_INLINE ACE_Time_Value &
-ACE_Time_Value::operator-= (const ACE_Time_Value &tv)
-{
- // ACE_OS_TRACE ("ACE_Time_Value::operator-=");
- this->sec (this->sec () - tv.sec ());
- this->usec (this->usec () - tv.usec ());
- this->normalize ();
- return *this;
-}
-
-ACE_INLINE ACE_Time_Value &
-ACE_Time_Value::operator-= (time_t tv)
-{
- // ACE_OS_TRACE ("ACE_Time_Value::operator-=");
- this->sec (this->sec () - tv);
- return *this;
-}
-
-// Adds two ACE_Time_Value objects together, returns the sum.
-
-ACE_INLINE ACE_Time_Value
-operator + (const ACE_Time_Value &tv1,
- const ACE_Time_Value &tv2)
-{
- // ACE_OS_TRACE ("operator +");
- ACE_Time_Value sum (tv1);
- sum += tv2;
-
- return sum;
-}
-
-// Subtracts two ACE_Time_Value objects, returns the difference.
-
-ACE_INLINE ACE_Time_Value
-operator - (const ACE_Time_Value &tv1,
- const ACE_Time_Value &tv2)
-{
- // ACE_OS_TRACE ("operator -");
- ACE_Time_Value delta (tv1);
- delta -= tv2;
-
- return delta;
-}
-
-#if defined (ACE_WIN32) && defined (_WIN32_WCE)
-}
-#endif
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Timeprobe.h b/dep/include/ace/Timeprobe.h
deleted file mode 100644
index 4ec811e6317..00000000000
--- a/dep/include/ace/Timeprobe.h
+++ /dev/null
@@ -1,202 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Timeprobe.h
- *
- * $Id: Timeprobe.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Irfan Pyarali
- *
- * If users want to use time probes, the ACE_COMPILE_TIMEPROBES
- * flag must be defined when compiling ACE. This can be achieved
- * by doing one of the following:
- *
- * . Use make probe = 1, if you are using the make utility.
- *
- * . Define ACE_COMPILE_TIMEPROBES in config.h
- *
- * . Define ACE_COMPILE_TIMEPROBES in the VC project file.
- *
- * . Other regular methods will also work.
- *
- * It is not necessary to define ACE_COMPILE_TIMEPROBES when using
- * time probes, you simply need ACE_ENABLE_TIMEPROBES. You can use
- * the ACE_TIMEPROBE_* macros to program the time probes, and use
- * the ACE_ENABLE_TIMEPROBE to enable the time probes. If you
- * define ACE_ENABLE_TIMEPROBE in your code, but forget to compile
- * ACE with ACE_COMPILE_TIMEPROBES, you will end up with linker
- * errors.
- *
- * Remember that ACE_COMPILE_TIMEPROBES means that the ACE library
- * will contain code for time probes. This is only useful when
- * compiling ACE. ACE_ENABLE_TIMEPROBES means that the
- * ACE_TIMEPROBE_* macros should spring to life.
- */
-//=============================================================================
-
-#ifndef ACE_TIMEPROBE_H
-#define ACE_TIMEPROBE_H
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-#include /**/ "ace/ACE_export.h"
-#include "ace/Malloc_Allocator.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-/* Enable ACE Timeprobes */
-#if defined (ACE_ENABLE_TIMEPROBES)
- #if !defined (ACE_COMPILE_TIMEPROBES)
- #define ACE_COMPILE_TIMEPROBES
- #endif /* ACE_COMPILE_TIMEPROBES */
-#endif /* ACE_ENABLE_TIMEPROBES */
-
-#if defined (ACE_COMPILE_TIMEPROBES)
-
-#include "ace/OS_NS_time.h"
-#include "ace/OS_NS_Thread.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Event_Descriptions
- *
- * @brief Event Descriptions.
- */
-class ACE_Export ACE_Event_Descriptions
-{
-public:
- /// Event descriptions
- const char **descriptions_;
-
- /// Minimum id of this description set
- u_long minimum_id_;
-
- /// Comparison
- bool operator== (const ACE_Event_Descriptions &rhs) const;
-};
-
-/**
- * @class ACE_timeprobe_t
- *
- * @brief Time probe record.
- */
-class ACE_Export ACE_timeprobe_t
-{
-public:
- /// Events are record as strings or numbers.
- union event
- {
- u_long event_number_;
- const char *event_description_;
- };
-
- /// Type of event.
- enum event_type
- {
- NUMBER,
- STRING
- };
-
- /// Event.
- event event_;
-
- /// Type of event.
- event_type event_type_;
-
- /// Timestamp.
- ACE_hrtime_t time_;
-
- /// Id of thread posting the time probe.
- ACE_thread_t thread_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Timeprobe.inl"
-#endif /* __ACE_INLINE__ */
-
-#include "ace/Synch_Traits.h"
-#include "ace/Null_Mutex.h"
-#include "ace/Singleton.h"
-#include "ace/Timeprobe_T.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// If ACE_MT_TIMEPROBES is defined, use a Thread_Mutex to lock the
-// internal state of ACE_Timerprobe. This allows multiple threads to
-// use the same ACE_Timerprobe.
-# if defined (ACE_MT_TIMEPROBES)
-typedef ACE_SYNCH_MUTEX ACE_TIMEPROBE_MUTEX;
-# else /* ACE_MT_TIMEPROBES */
-typedef ACE_SYNCH_NULL_MUTEX ACE_TIMEPROBE_MUTEX;
-# endif /* ACE_MT_TIMEPROBES */
-
-typedef ACE_New_Allocator ACE_TIMEPROBE_ALLOCATOR;
-
-typedef ACE_Timeprobe_Ex<ACE_TIMEPROBE_MUTEX, ACE_TIMEPROBE_ALLOCATOR>
- ACE_TIMEPROBE_WITH_LOCKING;
-
-// If ACE_TSS_TIMEPROBES is defined, store the ACE_Timeprobe singleton
-// in thread specific storage. This allows multiple threads to use
-// their own instance of ACE_Timerprobe, without interfering with each
-// other.
-
-# if defined (ACE_TSS_TIMEPROBES)
-# define ACE_TIMEPROBE_SINGLETON_TYPE ACE_TSS_Singleton
-# define ACE_TIMEPROBE_SINGLETON_LOCK_TYPE ACE_SYNCH_NULL_MUTEX
-# else /* ACE_TSS_TIMEPROBES */
-# define ACE_TIMEPROBE_SINGLETON_TYPE ACE_Singleton
-# define ACE_TIMEPROBE_SINGLETON_LOCK_TYPE ACE_SYNCH_MUTEX
-# endif /* ACE_TSS_TIMEPROBES */
-
-ACE_SINGLETON_DECLARE (ACE_TIMEPROBE_SINGLETON_TYPE, \
- ACE_TIMEPROBE_WITH_LOCKING, \
- ACE_TIMEPROBE_SINGLETON_LOCK_TYPE)
-
-typedef ACE_TIMEPROBE_SINGLETON_TYPE<ACE_TIMEPROBE_WITH_LOCKING, ACE_TIMEPROBE_SINGLETON_LOCK_TYPE>
- ACE_TIMEPROBE_SINGLETON;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_COMPILE_TIMEPROBES */
-
-// If ACE_ENABLE_TIMEPROBES is defined, the macros below will
-// work. Otherwise, they just vanish. Using this macro, you can
-// control which files/libraries are probed.
-#if defined (ACE_ENABLE_TIMEPROBES) && defined (ACE_COMPILE_TIMEPROBES)
-
-# define ACE_TIMEPROBE_RESET ACE_TIMEPROBE_SINGLETON::instance ()->reset ()
-
-# define ACE_TIMEPROBE(id) ACE_TIMEPROBE_SINGLETON::instance ()->timeprobe (id)
-
-# define ACE_TIMEPROBE_PRINT ACE_TIMEPROBE_SINGLETON::instance ()->print_times ()
-
-# define ACE_TIMEPROBE_PRINT_ABSOLUTE ACE_TIMEPROBE_SINGLETON::instance ()->print_absolute_times ()
-
-# define ACE_TIMEPROBE_EVENT_DESCRIPTIONS(descriptions, minimum_id) \
-static int ace_timeprobe_##descriptions##_return = \
- ACE_TIMEPROBE_SINGLETON::instance ()->event_descriptions \
- (descriptions, minimum_id)
-
-# define ACE_FUNCTION_TIMEPROBE(X) \
- ACE_Function_Timeprobe<ACE_TIMEPROBE_WITH_LOCKING> function_timeprobe \
- (*ACE_TIMEPROBE_SINGLETON::instance (), X)
-
-#else /* ACE_ENABLE_TIMEPROBES && ACE_COMPILE_TIMEPROBES */
-
-# define ACE_TIMEPROBE_RESET
-# define ACE_TIMEPROBE(id)
-# define ACE_TIMEPROBE_PRINT
-# define ACE_TIMEPROBE_PRINT_ABSOLUTE
-# define ACE_TIMEPROBE_EVENT_DESCRIPTIONS(descriptions, minimum_id)
-# define ACE_FUNCTION_TIMEPROBE(X)
-
-#endif /* ACE_ENABLE_TIMEPROBES && ACE_COMPILE_TIMEPROBES */
-#include /**/ "ace/post.h"
-#endif /* ACE_TIMEPROBE_H */
-
diff --git a/dep/include/ace/Timeprobe.inl b/dep/include/ace/Timeprobe.inl
deleted file mode 100644
index aa7a9240648..00000000000
--- a/dep/include/ace/Timeprobe.inl
+++ /dev/null
@@ -1,14 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Timeprobe.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE bool
-ACE_Event_Descriptions::operator== (const ACE_Event_Descriptions &rhs) const
-{
- return this->minimum_id_ == rhs.minimum_id_ &&
- this->descriptions_ == rhs.descriptions_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Timeprobe_T.h b/dep/include/ace/Timeprobe_T.h
deleted file mode 100644
index db69cb1da2b..00000000000
--- a/dep/include/ace/Timeprobe_T.h
+++ /dev/null
@@ -1,219 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Timeprobe_T.h
- *
- * $Id: Timeprobe_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Irfan Pyarali
- */
-//=============================================================================
-
-#ifndef ACE_TIMEPROBE_T_H
-#define ACE_TIMEPROBE_T_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_COMPILE_TIMEPROBES)
-
-#include "ace/Unbounded_Set.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Timeprobe_Ex
- *
- * @brief This class is used to instrument code. This is accomplished
- * by inserting time probes at different location in the code.
- * ACE_Timeprobe then measures the time difference between two
- * time probes.
- *
- * This class provides a lightweight implementation for
- * measuring the time required to execute code between two time
- * probes. When a time probe executes, it records the time, the
- * id of the calling thread, and an event description. The
- * event description can either be an unsigned long or a string
- * (char *). If string are used, care must be taken cause only
- * pointer copies are done and the string data is *not* copied.
- * The recorded time probes can then be printed by calling
- * <print_times>. If you have used unsigned longs as event
- * descriptions in any of your time probes, you must have
- * provided an event description table that maps the unsigned
- * longs to readable strings. This map is a simple array of
- * strings, and the event number is used as the index into the
- * array when looking for the event description. If you have
- * only used strings for the event description, this map is not
- * necessary.
- * Multiple maps can also be used to chunk up the time probes.
- * Each one can be added by calling <event_descriptions>.
- * Different tables are used internally by consulting the
- * minimum_id for each table. It is up to the user to make sure
- * that multiple tables do not share the same event id range.
- */
-template <class ACE_LOCK, class ALLOCATOR>
-class ACE_Timeprobe_Ex
-{
-public:
-
- /// Self
- typedef ACE_Timeprobe_Ex<ACE_LOCK, ALLOCATOR>
- SELF;
-
- /**
- * ACE_Timeprobe
- */
- typedef ACE_Timeprobe_Ex <ACE_LOCK, ACE_Allocator> ACE_Timeprobe;
-
- /// We can hold multiple event description tables.
- typedef ACE_Unbounded_Set<ACE_Event_Descriptions>
- EVENT_DESCRIPTIONS;
-
- /// Create Timeprobes with @a size slots
- ACE_Timeprobe_Ex (u_long size = ACE_DEFAULT_TIMEPROBE_TABLE_SIZE);
-
- /// Create Timeprobes with @a size slots
- ACE_Timeprobe_Ex (ALLOCATOR *allocator,
- u_long size = ACE_DEFAULT_TIMEPROBE_TABLE_SIZE);
- /// Destructor.
- ~ACE_Timeprobe_Ex (void);
-
- /// Record a time. @a event is used to describe this time probe.
- void timeprobe (u_long event);
-
- /// Record a time. @a id is used to describe this time probe.
- void timeprobe (const char *id);
-
- /// Record event descriptions.
- int event_descriptions (const char **descriptions,
- u_long minimum_id);
-
- /// Print the time probes.
- void print_times (void);
-
- /// Print the time probes.
- void print_absolute_times (void);
-
- /// Reset the slots. All old time probes will be lost.
- void reset (void);
-
- void increase_size (u_long size);
-
- /// Not implemented (stupid MSVC won't let it be protected).
- ACE_Timeprobe_Ex (const ACE_Timeprobe_Ex<ACE_LOCK, ALLOCATOR> &);
-
- // = (Somewhat private) Accessors
-
- /// Event Descriptions
- ACE_Unbounded_Set<ACE_Event_Descriptions> &event_descriptions (void);
-
- /// Sorted Event Descriptions.
- ACE_Unbounded_Set<ACE_Event_Descriptions> &sorted_event_descriptions (void);
-
- /// Find description of event @a i
- const char *find_description_i (u_long i);
-
- /// Sort event descriptions
- void sort_event_descriptions_i (void);
-
- /// Time probe slots
- ACE_timeprobe_t *timeprobes (void);
-
- /// Synchronization variable.
- ACE_LOCK &lock (void);
-
- /// Max size of timestamp table
- u_long max_size (void);
-
- /// Current size of timestamp table
- u_long current_size (void);
-
-protected:
-
- /// Obtain an allocator pointer. If there is no allocator stored in
- /// the instance, the singleton allocator in the current process is used.
- ALLOCATOR * allocator (void);
-
- /// Event Descriptions
- EVENT_DESCRIPTIONS event_descriptions_;
-
- /// Sorted Event Descriptions.
- EVENT_DESCRIPTIONS sorted_event_descriptions_;
-
- /// Time probe slots
- ACE_timeprobe_t *timeprobes_;
-
- /// Synchronization variable.
- ACE_LOCK lock_;
-
- /// Max size of timestamp table
- u_long max_size_;
-
- /// Current size of timestamp table
- u_long current_size_;
-
- /// Flag indicating the report buffer has filled up, and is now
- /// acting as a ring-buffer using modulus arithmetic: this saves the
- /// max_size_ most recent time stamps and loses earlier ones until
- /// drained.
- u_short report_buffer_full_;
-
-private:
- ALLOCATOR * allocator_;
-};
-
-// template <class ACE_LOCK>
-// class ACE_Timeprobe : public ACE_Timeprobe_Ex <ACE_LOCK, ACE_Allocator>
-// {
-// public:
-// // Initialize a ACE_Timeprobe with default size
-// ACE_Timeprobe (ACE_Allocator *allocator = ACE_Allocator::instance());
-
-// /// Create Timeprobes with @a size slots
-// ACE_Timeprobe (ACE_Allocator *allocator = ACE_Allocator::instance(),
-// u_long size = ACE_DEFAULT_TIMEPROBE_TABLE_SIZE);
-// };
-
-/**
- * @class ACE_Function_Timeprobe
- *
- * @brief Auto pointer like time probes. It will record <event> on
- * construction and <event + 1> on destruction.
- */
-template <class Timeprobe>
-class ACE_Function_Timeprobe
-{
-public:
- /// Constructor.
- ACE_Function_Timeprobe (Timeprobe &timeprobe, u_long event);
-
- /// Destructor.
- ~ACE_Function_Timeprobe (void);
-
-protected:
- /// Reference to timeprobe.
- Timeprobe &timeprobe_;
-
- /// Event.
- u_long event_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Timeprobe_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Timeprobe_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#endif /* ACE_COMPILE_TIMEPROBES */
-#include /**/ "ace/post.h"
-#endif /* ACE_TIMEPROBE_T_H */
-
diff --git a/dep/include/ace/Timer_Hash.h b/dep/include/ace/Timer_Hash.h
deleted file mode 100644
index f7cc65c3bb7..00000000000
--- a/dep/include/ace/Timer_Hash.h
+++ /dev/null
@@ -1,74 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Timer_Hash.h
- *
- * $Id: Timer_Hash.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Darrell Brunsch <brunsch@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_TIMER_HASH_H
-#define ACE_TIMER_HASH_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Timer_Hash_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Timer_Heap_T.h"
-#include "ace/Timer_List_T.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// The following typedef are here for ease of use
-
-typedef ACE_Timer_Hash_Upcall <ACE_Event_Handler *,
- ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>,
- ACE_SYNCH_RECURSIVE_MUTEX>
- ACE_Hash_Upcall;
-
-typedef ACE_Timer_List_T <ACE_Event_Handler *,
- ACE_Hash_Upcall,
- ACE_Null_Mutex>
- ACE_Hash_Timer_List;
-
-typedef ACE_Timer_Heap_T <ACE_Event_Handler *,
- ACE_Hash_Upcall,
- ACE_Null_Mutex>
- ACE_Hash_Timer_Heap;
-
-typedef ACE_Timer_Hash_T<ACE_Event_Handler *,
- ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>,
- ACE_SYNCH_RECURSIVE_MUTEX,
- ACE_Hash_Timer_List>
-
- ACE_Timer_Hash;
-
-typedef ACE_Timer_Hash_Iterator_T<ACE_Event_Handler *,
- ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>,
- ACE_SYNCH_RECURSIVE_MUTEX,
- ACE_Hash_Timer_List>
- ACE_Timer_Hash_Iterator;
-
-typedef ACE_Timer_Hash_T<ACE_Event_Handler *,
- ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>,
- ACE_SYNCH_RECURSIVE_MUTEX,
- ACE_Hash_Timer_Heap>
- ACE_Timer_Hash_Heap;
-
-typedef ACE_Timer_Hash_Iterator_T<ACE_Event_Handler *,
- ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>,
- ACE_SYNCH_RECURSIVE_MUTEX,
- ACE_Hash_Timer_Heap>
- ACE_Timer_Hash_Heap_Iterator;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TIMER_HASH_H */
-
diff --git a/dep/include/ace/Timer_Hash_T.h b/dep/include/ace/Timer_Hash_T.h
deleted file mode 100644
index 882369cf5c9..00000000000
--- a/dep/include/ace/Timer_Hash_T.h
+++ /dev/null
@@ -1,343 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Timer_Hash_T.h
- *
- * $Id: Timer_Hash_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Darrell Brunsch <brunsch@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_TIMER_HASH_T_H
-#define ACE_TIMER_HASH_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Timer_Queue_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Free_List.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declaration.
-template <class TYPE, class FUNCTOR, class ACE_LOCK, class BUCKET>
-class ACE_Timer_Hash_T;
-template <typename TYPE>
-class Hash_Token;
-
-/**
- * @class ACE_Timer_Hash_Upcall
- *
- * @brief Functor for Timer_Hash
- *
- * This class calls up to the Timer Hash's functor from the
- * timer queues in the hash table
- */
-template <class TYPE, class FUNCTOR, class ACE_LOCK>
-class ACE_Timer_Hash_Upcall
-{
-public:
- typedef ACE_Timer_Queue_T<ACE_Event_Handler *,
- ACE_Timer_Hash_Upcall<TYPE, FUNCTOR, ACE_LOCK>,
- ACE_Null_Mutex>
- TIMER_QUEUE;
-
- /// Default constructor (creates an invalid object, but needs to be here
- /// so timer queues using this functor can be constructed)
- ACE_Timer_Hash_Upcall (void);
-
- /// Constructor that specifies a Timer_Hash to call up to
- ACE_Timer_Hash_Upcall (ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK> *timer_hash);
-
- /// This method is called when a timer is registered.
- int registration (TIMER_QUEUE &timer_queue,
- ACE_Event_Handler *handler,
- const void *arg);
-
- /// This method is called before the timer expires.
- int preinvoke (TIMER_QUEUE &timer_queue,
- ACE_Event_Handler *handler,
- const void *arg,
- int recurring_timer,
- const ACE_Time_Value &cur_time,
- const void *&upcall_act);
-
- /// This method is called when the timer expires.
- int timeout (TIMER_QUEUE &timer_queue,
- ACE_Event_Handler *handler,
- const void *arg,
- int recurring_timer,
- const ACE_Time_Value &cur_time);
-
- /// This method is called after the timer expires.
- int postinvoke (TIMER_QUEUE &timer_queue,
- ACE_Event_Handler *handler,
- const void *arg,
- int recurring_timer,
- const ACE_Time_Value &cur_time,
- const void *upcall_act);
-
- /// This method is called when a handler is cancelled
- int cancel_type (TIMER_QUEUE &timer_queue,
- ACE_Event_Handler *handler,
- int dont_call,
- int &requires_reference_counting);
-
- /// This method is called when a timer is cancelled
- int cancel_timer (TIMER_QUEUE &timer_queue,
- ACE_Event_Handler *handler,
- int dont_call,
- int requires_reference_counting);
-
- /// This method is called when the timer queue is destroyed and
- /// the timer is still contained in it
- int deletion (TIMER_QUEUE &timer_queue,
- ACE_Event_Handler *handler,
- const void *arg);
-
-private:
- /// Timer Queue to do the calling up to
- ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK> *timer_hash_;
-
- // = Don't allow these operations for now.
- ACE_UNIMPLEMENTED_FUNC (ACE_Timer_Hash_Upcall (const ACE_Timer_Hash_Upcall<TYPE, FUNCTOR, ACE_LOCK> &))
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Timer_Hash_Upcall<TYPE, FUNCTOR, ACE_LOCK> &))
-};
-
-/**
- * @class ACE_Timer_Hash_Iterator_T
- *
- * @brief Iterates over an ACE_Timer_Hash_T.
- *
- * This is a generic iterator that can be used to visit every
- * node of a timer queue. Be aware that it doesn't transverse
- * in the order of timeout values.
- */
-template <class TYPE, class FUNCTOR, class ACE_LOCK, class BUCKET>
-class ACE_Timer_Hash_Iterator_T : public ACE_Timer_Queue_Iterator_T <TYPE, FUNCTOR, ACE_LOCK>
-{
-public:
- /// Constructor.
- ACE_Timer_Hash_Iterator_T (ACE_Timer_Hash_T<TYPE, FUNCTOR, ACE_LOCK, BUCKET> &);
-
- /// Positions the iterator at the earliest node in the Timer Queue
- virtual void first (void);
-
- /// Positions the iterator at the next node in the Timer Queue
- virtual void next (void);
-
- /// Returns true when there are no more nodes in the sequence
- virtual bool isdone (void) const;
-
- /// Returns the node at the current position in the sequence
- virtual ACE_Timer_Node_T<TYPE> *item (void);
-
-protected:
- /// Pointer to the ACE_Timer_Hash that we are iterating over.
- ACE_Timer_Hash_T<TYPE, FUNCTOR, ACE_LOCK, BUCKET> &timer_hash_;
-
- /// Current position in <timer_hash_>'s table
- size_t position_;
-
- /// Current iterator used on <position>'s bucket
- ACE_Timer_Queue_Iterator_T<TYPE, ACE_Timer_Hash_Upcall<TYPE, FUNCTOR, ACE_LOCK>, ACE_Null_Mutex> *iter_;
-};
-
-/**
- * @class ACE_Timer_Hash_T
- *
- * @brief Provides a hash table of BUCKETs as an implementation for
- * a timer queue.
- *
- * This implementation uses a hash table of BUCKETs. The hash
- * is based on the time_value of the event. Unlike other Timer
- * Queues, ACE_Timer_Hash does not expire events in order.
- */
-template <class TYPE, class FUNCTOR, class ACE_LOCK, class BUCKET>
-class ACE_Timer_Hash_T : public ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>
-{
-public:
- /// Type of iterator
- typedef ACE_Timer_Hash_Iterator_T<TYPE, FUNCTOR, ACE_LOCK, BUCKET>
- HASH_ITERATOR;
-
- /// Iterator is a friend
- friend class ACE_Timer_Hash_Iterator_T<TYPE, FUNCTOR, ACE_LOCK, BUCKET>;
-
- /// Type inherited from
- typedef ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK> INHERITED;
-
- // = Initialization and termination methods.
- /**
- * Default constructor. @a table_size determines the size of the
- * hash table. @a upcall_functor is the instance of the FUNCTOR
- * to be used by the buckets. If @a upcall_functor is 0, a default
- * FUNCTOR will be created.
- */
- ACE_Timer_Hash_T (size_t table_size,
- FUNCTOR *upcall_functor = 0,
- ACE_Free_List<ACE_Timer_Node_T <TYPE> > *freelist = 0);
-
- /**
- * Default constructor. @a upcall_functor is the instance of the
- * FUNCTOR to be used by the queue. If @a upcall_functor is 0, Timer
- * Hash will create a default FUNCTOR. @a freelist the freelist of
- * timer nodes. If 0, then a default freelist will be created. The default
- * size will be ACE_DEFAULT_TIMERS and there will be no preallocation.
- */
- ACE_Timer_Hash_T (FUNCTOR *upcall_functor = 0, ACE_Free_List<ACE_Timer_Node_T <TYPE> > *freelist = 0);
-
- /// Destructor
- virtual ~ACE_Timer_Hash_T (void);
-
- /// True if queue is empty, else false.
- virtual bool is_empty (void) const;
-
- /// Returns the time of the earlier node in the <ACE_Timer_Hash>.
- /// Must be called on a non-empty queue.
- virtual const ACE_Time_Value &earliest_time (void) const;
-
- /**
- * Resets the interval of the timer represented by @a timer_id to
- * @a interval, which is specified in relative time to the current
- * <gettimeofday>. If @a interval is equal to
- * ACE_Time_Value::zero, the timer will become a non-rescheduling
- * timer. Returns 0 if successful, -1 if not.
- */
- virtual int reset_interval (long timer_id,
- const ACE_Time_Value &interval);
-
- /**
- * Cancel all timer associated with @a type. If <dont_call> is 0
- * then the <functor> will be invoked. Returns number of timers
- * cancelled. If any valid timer is not cancelled before destruction
- * of this instance of ACE_Timer_Hash_T then user will get a memory
- * leak.
- */
- virtual int cancel (const TYPE &type,
- int dont_call_handle_close = 1);
-
- /**
- * Cancel the single timer that matches the @a timer_id value (which
- * was returned from the <schedule> method). If act is non-NULL
- * then it will be set to point to the ``magic cookie'' argument
- * passed in when the timer was registered. This makes it possible
- * to free up the memory and avoid memory leaks. If <dont_call> is
- * 0 then the <functor> will be invoked. Returns 1 if cancellation
- * succeeded and 0 if the @a timer_id wasn't found. If any valid
- * timer is not cancelled before destruction of this instance of
- * ACE_Timer_Hash_T then user will get a memory leak.
- */
- virtual int cancel (long timer_id,
- const void **act = 0,
- int dont_call_handle_close = 1);
-
- /**
- * Run the <functor> for all timers whose values are <=
- * <ACE_OS::gettimeofday>. Also accounts for <timer_skew>. Returns
- * the number of timers canceled.
- */
- virtual int expire (void);
-
- /**
- * Run the <functor> for all timers whose values are <= @a current_time.
- * This does not account for <timer_skew>. Returns the number of
- * timers canceled.
- */
- virtual int expire (const ACE_Time_Value &current_time);
-
- /// Returns a pointer to this ACE_Timer_Queue's iterator.
- virtual ACE_Timer_Queue_Iterator_T<TYPE, FUNCTOR, ACE_LOCK> &iter (void);
-
- /// Removes the earliest node from the queue and returns it
- virtual ACE_Timer_Node_T<TYPE> *remove_first (void);
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Reads the earliest node from the queue and returns it.
- virtual ACE_Timer_Node_T<TYPE> *get_first (void);
-
-protected:
- /// Factory method that frees a previously allocated node.
- virtual void free_node (ACE_Timer_Node_T<TYPE> *);
-
-private:
-
- /**
- * Schedule @a type that will expire at @a future_time,
- * which is specified in absolute time. If it expires then @a act is
- * passed in as the value to the <functor>. If @a interval is != to
- * ACE_Time_Value::zero then it is used to reschedule the @a type
- * automatically, using relative time to the current <gettimeofday>.
- * This method returns a <timer_id> that is a pointer to a token
- * which stores information about the event. This <timer_id> can be
- * used to cancel the timer before it expires. Returns -1 on
- * failure.
- */
- virtual long schedule_i (const TYPE &type,
- const void *act,
- const ACE_Time_Value &future_time,
- const ACE_Time_Value &interval);
-
- /// Non-locking version of dispatch_info ()
- virtual int dispatch_info_i (const ACE_Time_Value &current_time,
- ACE_Timer_Node_Dispatch_Info_T<TYPE> &info);
-
- /// Reschedule an "interval" ACE_Timer_Node.
- virtual void reschedule (ACE_Timer_Node_T<TYPE> *);
-
- /// Finds the earliest node
- void find_new_earliest (void);
-
- /// Keeps track of the size of the queue
- size_t size_;
-
- /// Table of BUCKETS
- BUCKET **table_;
-
- /// Keeps track of the size of table_
- size_t table_size_;
-
- /// Functor used for the table's timer queues
- ACE_Timer_Hash_Upcall<TYPE, FUNCTOR, ACE_LOCK> table_functor_;
-
- /// Index to the position with the earliest entry
- size_t earliest_position_;
-
- /// Iterator used to expire timers.
- HASH_ITERATOR *iterator_;
-
-#if defined (ACE_WIN64)
- // Part of a hack... see comments in schedule().
- // This is, essentially, the upper 32 bits of a 64-bit pointer on Win64.
- ptrdiff_t pointer_base_;
-#endif
-
- /// Hash_Token is usually allocated in schedule but its
- /// deallocation is problematic and token_list_ helps with this.
- ACE_Locked_Free_List<Hash_Token<TYPE>, ACE_Null_Mutex> token_list_;
-
- // = Don't allow these operations for now.
- ACE_UNIMPLEMENTED_FUNC (ACE_Timer_Hash_T (const ACE_Timer_Hash_T<TYPE, FUNCTOR, ACE_LOCK, BUCKET> &))
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Timer_Hash_T<TYPE, FUNCTOR, ACE_LOCK, BUCKET> &))
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Timer_Hash_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Timer_Hash_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TIMER_HASH_T_H */
-
diff --git a/dep/include/ace/Timer_Heap.h b/dep/include/ace/Timer_Heap.h
deleted file mode 100644
index 61673974068..00000000000
--- a/dep/include/ace/Timer_Heap.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Timer_Heap.h
- *
- * $Id: Timer_Heap.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_TIMER_HEAP_H
-#define ACE_TIMER_HEAP_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Timer_Heap_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// The following typedefs are here for ease of use and backward
-// compatibility.
-
-typedef ACE_Timer_Heap_T<ACE_Event_Handler *,
- ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>,
- ACE_SYNCH_RECURSIVE_MUTEX>
- ACE_Timer_Heap;
-
-typedef ACE_Timer_Heap_Iterator_T<ACE_Event_Handler *,
- ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>,
- ACE_SYNCH_RECURSIVE_MUTEX>
- ACE_Timer_Heap_Iterator;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TIMER_HEAP_H */
-
diff --git a/dep/include/ace/Timer_Heap_T.h b/dep/include/ace/Timer_Heap_T.h
deleted file mode 100644
index 904e596e616..00000000000
--- a/dep/include/ace/Timer_Heap_T.h
+++ /dev/null
@@ -1,339 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Timer_Heap_T.h
- *
- * $Id: Timer_Heap_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_TIMER_HEAP_T_H
-#define ACE_TIMER_HEAP_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Timer_Queue_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Free_List.h"
-#include "ace/Unbounded_Set.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declaration
-template <class TYPE, class FUNCTOR, class ACE_LOCK>
-class ACE_Timer_Heap_T;
-
-/**
- * @class ACE_Timer_Heap_Iterator_T
- *
- * @brief Iterates over an ACE_Timer_Heap_T.
- *
- * This is a generic iterator that can be used to visit every
- * node of a timer queue. Be aware that it doesn't transverse
- * in the order of timeout values.
- */
-template <class TYPE, class FUNCTOR, class ACE_LOCK>
-class ACE_Timer_Heap_Iterator_T : public ACE_Timer_Queue_Iterator_T<TYPE, FUNCTOR, ACE_LOCK>
-{
-public:
- /// Constructor.
- ACE_Timer_Heap_Iterator_T (ACE_Timer_Heap_T<TYPE, FUNCTOR, ACE_LOCK> &);
-
- /// Destructor.
- ~ACE_Timer_Heap_Iterator_T (void);
-
- /// Positions the iterator at the earliest node in the Timer Queue
- virtual void first (void);
-
- /// Positions the iterator at the next node in the Timer Queue
- virtual void next (void);
-
- /// Returns true when there are no more nodes in the sequence
- virtual bool isdone (void) const;
-
- /// Returns the node at the current position in the sequence
- virtual ACE_Timer_Node_T<TYPE> *item (void);
-
-protected:
- /// Pointer to the ACE_Timer_Heap that we are iterating over.
- ACE_Timer_Heap_T<TYPE, FUNCTOR, ACE_LOCK> &timer_heap_;
-
- /// Position in the array where the iterator is at
- size_t position_;
-};
-
-/**
- * @class ACE_Timer_Heap_T
- *
- * @brief Provides a very fast and predictable timer implementation.
- *
- * This implementation uses a heap-based callout queue of
- * absolute times. Therefore, in the average and worst case,
- * scheduling, canceling, and expiring timers is O(log N) (where
- * N is the total number of timers). In addition, we can also
- * preallocate as many @c ACE_Timer_Node objects as there are slots
- * in the heap. This allows us to completely remove the need for
- * dynamic memory allocation, which is important for real-time
- * systems.
- */
-template <class TYPE, class FUNCTOR, class ACE_LOCK>
-class ACE_Timer_Heap_T : public ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>
-{
-public:
- typedef ACE_Timer_Heap_Iterator_T<TYPE, FUNCTOR, ACE_LOCK> HEAP_ITERATOR;
- friend class ACE_Timer_Heap_Iterator_T<TYPE, FUNCTOR, ACE_LOCK>;
-
- typedef ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK> INHERITED;
-
- // = Initialization and termination methods.
- /**
- * The Constructor creates a heap with specified number of elements.
- * This can also take in a upcall functor and freelist (if 0, then
- * defaults will be created).
- *
- * @param size The maximum number of timers that can be
- * inserted into the new object.
- * @param preallocated Default false, true then all the memory
- * for the @c ACE_Timer_Node objects will be pre-allocated. This saves
- * time and is more predictable (though it requires more space).
- * Otherwise, timer nodes are allocated as needed.
- * @param freelist is the freelist of timer nodes.
- * @param upcall_functor If 0 Timer Heap will create a default FUNCTOR.
- */
- ACE_Timer_Heap_T (size_t size,
- bool preallocated = false,
- FUNCTOR *upcall_functor = 0,
- ACE_Free_List<ACE_Timer_Node_T <TYPE> > *freelist = 0);
-
- /**
- * Default constructor. @c upcall_functor is the instance of the
- * FUNCTOR to be used by the queue. If @c upcall_functor is 0, Timer
- * Heap will create a default FUNCTOR. @c freelist is the freelist of
- * timer nodes. If 0, then a default freelist will be created. The default
- * size will be ACE_DEFAULT_TIMERS and there will be no preallocation.
- */
- ACE_Timer_Heap_T (FUNCTOR *upcall_functor = 0,
- ACE_Free_List<ACE_Timer_Node_T <TYPE> > *freelist = 0);
-
- /// Destructor.
- virtual ~ACE_Timer_Heap_T (void);
-
- /// True if heap is empty, else false.
- virtual bool is_empty (void) const;
-
- /// Returns the time of the earliest node in the Timer_Queue.
- /// Must be called on a non-empty queue.
- virtual const ACE_Time_Value &earliest_time (void) const;
-
- /**
- * Resets the interval of the timer represented by @a timer_id to
- * @a interval, which is specified in relative time to the current
- * <gettimeofday>. If @a interval is equal to
- * ACE_Time_Value::zero, the timer will become a non-rescheduling
- * timer. Returns 0 if successful, -1 if not.
- */
- virtual int reset_interval (long timer_id,
- const ACE_Time_Value &interval);
-
- /**
- * Cancel all timers associated with @a type. If @a dont_call_handle_close
- * is 0then the <functor> will be invoked. Returns number of timers
- * cancelled.
- */
- virtual int cancel (const TYPE &type,
- int dont_call_handle_close = 1);
-
- /**
- * Cancel the single timer that matches the @a timer_id value (which
- * was returned from the <schedule> method). If act is non-NULL
- * then it will be set to point to the ``magic cookie'' argument
- * passed in when the timer was registered. This makes it possible
- * to free up the memory and avoid memory leaks. If @a dont_call_handle_close
- * is 0 then the <functor> will be invoked. Returns 1 if cancellation
- * succeeded and 0 if the @a timer_id wasn't found.
- */
- virtual int cancel (long timer_id,
- const void **act = 0,
- int dont_call_handle_close = 1);
-
- /// Returns a pointer to this ACE_Timer_Queue's iterator.
- virtual ACE_Timer_Queue_Iterator_T<TYPE, FUNCTOR, ACE_LOCK> &iter (void);
-
- /**
- * Removes the earliest node from the queue and returns it. Note that
- * the timer is removed from the heap, but is not freed, and its ID
- * is not reclaimed. The caller is responsible for calling either
- * @c reschedule() or @c free_node() after this function returns. Thus,
- * this function is for support of @c ACE_Timer_Queue::expire and
- * should not be used unadvisedly in other conditions.
- */
- ACE_Timer_Node_T <TYPE> *remove_first (void);
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Reads the earliest node from the queue and returns it.
- virtual ACE_Timer_Node_T<TYPE> *get_first (void);
-
-protected:
-
- /**
- * Schedule a timer that may optionally auto-reset.
- * Schedule @a type that will expire at @a future_time,
- * which is specified in absolute time. If it expires then @a act is
- * passed in as the value to the <functor>. If @a interval is != to
- * ACE_Time_Value::zero then it is used to reschedule the @a type
- * automatically, using relative time to the current <gettimeofday>.
- * This method returns a <timer_id> that uniquely identifies the the
- * @a type entry in an internal list. This <timer_id> can be used to
- * cancel the timer before it expires. The cancellation ensures
- * that <timer_ids> are unique up to values of greater than 2
- * billion timers. As long as timers don't stay around longer than
- * this there should be no problems with accidentally deleting the
- * wrong timer. Returns -1 on failure (which is guaranteed never to
- * be a valid <timer_id>).
- */
- virtual long schedule_i (const TYPE &type,
- const void *act,
- const ACE_Time_Value &future_time,
- const ACE_Time_Value &interval);
-
- /// Reschedule an "interval" ACE_Timer_Node.
- virtual void reschedule (ACE_Timer_Node_T<TYPE> *);
-
- /// Factory method that allocates a new node (uses operator new if
- /// we're *not* preallocating, otherwise uses an internal freelist).
- virtual ACE_Timer_Node_T<TYPE> *alloc_node (void);
-
- /**
- * Factory method that frees a previously allocated node (uses
- * operator delete if we're *not* preallocating, otherwise uses an
- * internal freelist).
- */
- virtual void free_node (ACE_Timer_Node_T<TYPE> *);
-
-private:
- /// Remove and return the @a sloth ACE_Timer_Node and restore the
- /// heap property.
- ACE_Timer_Node_T<TYPE> *remove (size_t slot);
-
- /// Insert @a new_node into the heap and restore the heap property.
- void insert (ACE_Timer_Node_T<TYPE> *new_node);
-
- /**
- * Doubles the size of the heap and the corresponding timer_ids array.
- * If preallocation is used, will also double the size of the
- * preallocated array of ACE_Timer_Nodes.
- */
- void grow_heap (void);
-
- /// Restore the heap property, starting at @a slot.
- void reheap_up (ACE_Timer_Node_T<TYPE> *new_node,
- size_t slot,
- size_t parent);
-
- /// Restore the heap property, starting at @a slot.
- void reheap_down (ACE_Timer_Node_T<TYPE> *moved_node,
- size_t slot,
- size_t child);
-
- /// Copy @a moved_node into the @a slot slot of <heap_> and move
- /// @a slot into the corresponding slot in the <timer_id_> array.
- void copy (size_t slot, ACE_Timer_Node_T<TYPE> *moved_node);
-
- /**
- * Returns a timer id that uniquely identifies this timer. This id
- * can be used to cancel a timer via the <cancel (int)> method. The
- * timer id returned from this method will never == -1 to avoid
- * conflicts with other failure return values.
- */
- long timer_id (void);
-
- /// Pops and returns a new timer id from the freelist.
- long pop_freelist (void);
-
- /// Pushes @a old_id onto the freelist.
- void push_freelist (long old_id);
-
- /// Maximum size of the heap.
- size_t max_size_;
-
- /// Current size of the heap.
- size_t cur_size_;
-
- /// Number of heap entries in transition (removed from the queue, but
- /// not freed) and may be rescheduled or freed.
- size_t cur_limbo_;
-
- /// Iterator used to expire timers.
- HEAP_ITERATOR *iterator_;
-
- /**
- * Current contents of the Heap, which is organized as a "heap" of
- * ACE_Timer_Node *'s. In this context, a heap is a "partially
- * ordered, almost complete" binary tree, which is stored in an
- * array.
- */
- ACE_Timer_Node_T<TYPE> **heap_;
-
- /**
- * An array of "pointers" that allows each ACE_Timer_Node in the
- * <heap_> to be located in O(1) time. Basically, <timer_id_[i]>
- * contains the slot in the <heap_> array where an ACE_Timer_Node
- * * with timer id \<i\> resides. Thus, the timer id passed back from
- * <schedule> is really a slot into the <timer_ids> array. The
- * <timer_ids_> array serves two purposes: negative values are
- * indications of free timer IDs, whereas positive values are
- * "pointers" into the <heap_> array for assigned timer IDs.
- */
- ssize_t *timer_ids_;
-
- /// "Pointer" to the element in the <timer_ids_> array that was
- /// last given out as a timer ID.
- size_t timer_ids_curr_;
-
- /// Index representing the lowest timer ID that has been freed. When
- /// the timer_ids_next_ value wraps around, it starts back at this
- /// point.
- size_t timer_ids_min_free_;
-
- /**
- * If this is non-0, then we preallocate <max_size_> number of
- * ACE_Timer_Node objects in order to reduce dynamic allocation
- * costs. In auto-growing implementation, this points to the
- * last array of nodes allocated.
- */
- ACE_Timer_Node_T<TYPE> *preallocated_nodes_;
-
- /// This points to the head of the <preallocated_nodes_> freelist,
- /// which is organized as a stack.
- ACE_Timer_Node_T<TYPE> *preallocated_nodes_freelist_;
-
- /// Set of pointers to the arrays of preallocated timer nodes.
- /// Used to delete the allocated memory when required.
- ACE_Unbounded_Set<ACE_Timer_Node_T<TYPE> *> preallocated_node_set_;
-
- // = Don't allow these operations for now.
- ACE_UNIMPLEMENTED_FUNC (ACE_Timer_Heap_T (const ACE_Timer_Heap_T<TYPE, FUNCTOR, ACE_LOCK> &))
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Timer_Heap_T<TYPE, FUNCTOR, ACE_LOCK> &))
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Timer_Heap_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Timer_Heap_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TIMER_HEAP_T_H */
-
diff --git a/dep/include/ace/Timer_List.h b/dep/include/ace/Timer_List.h
deleted file mode 100644
index 6265e348951..00000000000
--- a/dep/include/ace/Timer_List.h
+++ /dev/null
@@ -1,42 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Timer_List.h
- *
- * $Id: Timer_List.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_TIMER_LIST_H
-#define ACE_TIMER_LIST_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Timer_List_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// The following typedefs are here for ease of use and backward
-// compatibility.
-
-typedef ACE_Timer_List_T<ACE_Event_Handler *,
- ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>,
- ACE_SYNCH_RECURSIVE_MUTEX>
- ACE_Timer_List;
-
-typedef ACE_Timer_List_Iterator_T<ACE_Event_Handler *,
- ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>,
- ACE_SYNCH_RECURSIVE_MUTEX>
- ACE_Timer_List_Iterator;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TIMER_LIST_H */
-
diff --git a/dep/include/ace/Timer_List_T.h b/dep/include/ace/Timer_List_T.h
deleted file mode 100644
index 66d148f81eb..00000000000
--- a/dep/include/ace/Timer_List_T.h
+++ /dev/null
@@ -1,227 +0,0 @@
-/* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file Timer_List_T.h
- *
- * $Id: Timer_List_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_TIMER_LIST_T_H
-#define ACE_TIMER_LIST_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Timer_Queue_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// Forward declaration.
-template <class TYPE, class FUNCTOR, class ACE_LOCK>
-class ACE_Timer_List_T;
-
-/**
- * @class ACE_Timer_List_Iterator_T
- *
- * @brief Iterates over an ACE_Timer_List.
- *
- * This is a generic iterator that can be used to visit every
- * node of a timer queue.
- */
-template <class TYPE, class FUNCTOR, class ACE_LOCK>
-class ACE_Timer_List_Iterator_T
-: public ACE_Timer_Queue_Iterator_T <TYPE, FUNCTOR, ACE_LOCK>
-{
-public:
- typedef ACE_Timer_List_T<TYPE, FUNCTOR, ACE_LOCK> List;
- /// Constructor.
- ACE_Timer_List_Iterator_T (List& lst);
-
- /// Destructor.
- virtual ~ACE_Timer_List_Iterator_T (void);
-
- /// Positions the iterator at the earliest node in the Timer Queue
- virtual void first (void);
-
- /// Positions the iterator at the next node in the Timer Queue
- virtual void next (void);
-
- /// Returns true when there are no more nodes in the sequence
- virtual bool isdone (void) const;
-
- /// Returns the node at the current position in the sequence
- virtual ACE_Timer_Node_T<TYPE> *item (void);
-
-protected:
- /// Pointer to the ACE_Timer_List that we are iterating over.
- List& list_;
-
- /// Current position in the ACE_Timer_List
- ACE_Timer_Node_T<TYPE>* current_node_;
-};
-
-/**
- * @class ACE_Timer_List_T
- *
- * @brief Provides a simple implementation of timers.
- *
- * This implementation uses a linked list of absolute times.
- * Therefore, in the average case, scheduling and canceling
- * timers is O(N) (where N is the total number of timers) and
- * expiring timers is O(K) (where K is the total number of timers
- * that are < the current time of day).
- * More clever implementations could use a delta-list, a heap,
- * or timing wheels, etc. For instance, ACE_Timer_Heap
- * is a subclass of ACE_Timer_List that implements a
- * heap-based callout queue. For most applications, the
- * ACE_Timer_Heap will perform substantially faster than the
- * ACE_Timer_List.
- */
-template <class TYPE, class FUNCTOR, class ACE_LOCK>
-class ACE_Timer_List_T : public ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>
-{
-public:
- /// Type of iterator
- typedef ACE_Timer_List_Iterator_T<TYPE, FUNCTOR, ACE_LOCK> Iterator;
-
- /// Iterator is a friend
- friend class ACE_Timer_List_Iterator_T<TYPE, FUNCTOR, ACE_LOCK>;
-
- typedef ACE_Timer_Node_T<TYPE> Node;
- /// Type inherited from
- typedef ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK> Base;
- typedef ACE_Free_List<Node> FreeList;
-
- // = Initialization and termination methods.
- /**
- * Default constructor. @a upcall_functor is the instance of the
- * FUNCTOR to be used by the list. If @a upcall_functor is 0, a
- * default FUNCTOR will be created. @a freelist is the freelist of
- * timer nodes. If 0, then a default freelist will be created.
- */
- ACE_Timer_List_T (FUNCTOR* upcall_functor = 0, FreeList* freelist = 0);
-
- /// Destructor
- virtual ~ACE_Timer_List_T (void);
-
- /// True if queue is empty, else false.
- virtual bool is_empty (void) const;
-
- /// Returns the time of the earlier node in the ACE_Timer_List.
- /// Must be called on a non-empty queue.
- virtual const ACE_Time_Value& earliest_time (void) const;
-
- /**
- * Resets the interval of the timer represented by @a timer_id to
- * @a interval, which is specified in relative time to the current
- * <gettimeofday>. If @a interval is equal to
- * ACE_Time_Value::zero, the timer will become a non-rescheduling
- * timer. Returns 0 if successful, -1 if not.
- */
- virtual int reset_interval (long timer_id,
- const ACE_Time_Value& interval);
-
- /**
- * Cancel all timers associated with @a type. If dont_call_handle_close is 0
- * then the @a functor will be invoked. Returns the number of timers
- * cancelled.
- */
- virtual int cancel (const TYPE& type,
- int dont_call_handle_close = 1);
-
- /**
- * Cancel the single timer that matches the @a timer_id value (which
- * was returned from the <schedule> method). If act is non-NULL
- * then it will be set to point to the ``magic cookie'' argument
- * passed in when the timer was registered. This makes it possible
- * to free up the memory and avoid memory leaks. If <dont_call> is
- * 0 then the <functor> will be invoked. Returns 1 if cancellation
- * succeeded and 0 if the @a timer_id wasn't found.
- */
- virtual int cancel (long timer_id,
- const void** act = 0,
- int dont_call_handle_close = 1);
-
- /// Returns a pointer to this ACE_Timer_Queue's iterator.
- virtual ACE_Timer_Queue_Iterator_T<TYPE, FUNCTOR, ACE_LOCK>& iter (void);
-
- /// Removes the earliest node from the queue and returns it
- virtual ACE_Timer_Node_T<TYPE>* remove_first (void);
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Reschedule an "interval" ACE_Timer_Node_T. This should be private
- /// but for now it needs to be public for <ACE_Timer_Hash_T>
- virtual void reschedule (ACE_Timer_Node_T<TYPE> *);
-
- /// Reads the earliest node from the queue and returns it.
- virtual ACE_Timer_Node_T<TYPE>* get_first (void);
-
-private:
-
- /**
- * Schedule @a type that will expire at @a future_time, which is
- * specified in absolute time. If it expires then @a act is passed
- * in as the value to the <functor>. If @a interval is != to
- * ACE_Time_Value::zero then it is used to reschedule the @a type
- * automatically, using relative time to the current <gettimeofday>.
- * This method returns a <timer_id> that uniquely identifies the the
- * @a type entry in an internal list. This <timer_id> can be used to
- * cancel the timer before it expires. The cancellation ensures
- * that <timer_ids> are unique up to values of greater than 2
- * billion timers. As long as timers don't stay around longer than
- * this there should be no problems with accidentally deleting the
- * wrong timer. Returns -1 on failure (which is guaranteed never to
- * be a valid <timer_id>).
- */
- virtual long schedule_i (const TYPE& type,
- const void* act,
- const ACE_Time_Value& future_time,
- const ACE_Time_Value& interval);
-
- void schedule_i(ACE_Timer_Node_T<TYPE>* n, const ACE_Time_Value& exp);
-
- ACE_Timer_Node_T<TYPE>* find_node(long timer_id) const;
-
- void cancel_i (ACE_Timer_Node_T<TYPE>* n);
-
- void unlink (ACE_Timer_Node_T<TYPE>* n);
-
- ACE_Timer_Node_T<TYPE>* get_first_i(void) const;
-
-private:
-
- /// Pointer to linked list of <ACE_Timer_Handles>.
- ACE_Timer_Node_T<TYPE>* head_;
-
- /// Iterator used to expire timers.
- Iterator* iterator_;
-
- /**
- * Keeps track of the timer id that uniquely identifies each timer.
- * This id can be used to cancel a timer via the <cancel(long)>
- * method.
- */
- long id_counter_;
-
- // = Don't allow these operations for now.
- ACE_UNIMPLEMENTED_FUNC (ACE_Timer_List_T (const ACE_Timer_List_T<TYPE, FUNCTOR, ACE_LOCK> &))
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Timer_List_T<TYPE, FUNCTOR, ACE_LOCK> &))
-};
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Timer_List_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Timer_List_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TIMER_LIST_T_H */
-
diff --git a/dep/include/ace/Timer_Queue.h b/dep/include/ace/Timer_Queue.h
deleted file mode 100644
index 0f5990ae546..00000000000
--- a/dep/include/ace/Timer_Queue.h
+++ /dev/null
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Timer_Queue.h
- *
- * $Id: Timer_Queue.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- * @author Irfan Pyarali <irfan@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_TIMER_QUEUE_H
-#define ACE_TIMER_QUEUE_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Synch_Traits.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Timer_Queuefwd.h"
-#include "ace/Timer_Queue_T.h"
-#if defined (ACE_HAS_THREADS)
-# include "ace/Recursive_Thread_Mutex.h"
-#else
-# include "ace/Null_Mutex.h"
-#endif /* ACE_HAS_THREADS */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// The following typedef are here for ease of use and backward
-// compatibility.
-typedef ACE_Timer_Node_Dispatch_Info_T<ACE_Event_Handler *>
- ACE_Timer_Node_Dispatch_Info;
-
-typedef ACE_Timer_Node_T<ACE_Event_Handler *>
- ACE_Timer_Node;
-
-typedef ACE_Timer_Queue_Iterator_T<ACE_Event_Handler *,
- ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>,
- ACE_SYNCH_RECURSIVE_MUTEX>
- ACE_Timer_Queue_Iterator;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_TIMER_QUEUE_H */
-
diff --git a/dep/include/ace/Timer_Queue_Adapters.h b/dep/include/ace/Timer_Queue_Adapters.h
deleted file mode 100644
index 390aed19da0..00000000000
--- a/dep/include/ace/Timer_Queue_Adapters.h
+++ /dev/null
@@ -1,262 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Timer_Queue_Adapters.h
- *
- * $Id: Timer_Queue_Adapters.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu> and
- * Carlos O'Ryan <coryan@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_TIMER_QUEUE_ADAPTERS_H
-#define ACE_TIMER_QUEUE_ADAPTERS_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Task.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Signal.h"
-#include "ace/Sig_Handler.h"
-#include "ace/Condition_Recursive_Thread_Mutex.h"
-
-#if defined (ACE_HAS_DEFERRED_TIMER_COMMANDS)
-# include "ace/Unbounded_Queue.h"
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-class ACE_Command_Base;
-ACE_END_VERSIONED_NAMESPACE_DECL
-#endif /* ACE_HAS_DEFERRED_TIMER_COMMANDS */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Sig_Set;
-
-/**
- * @class ACE_Async_Timer_Queue_Adapter
- *
- * @brief Adapts an ACE timer queue to be driven asynchronously using signals.
- *
- * This implementation uses the ACE_OS::ualarm call, to generate
- * the SIGARLM signal that is caught by this class.
- *
- * @note This adapter only works on platforms that support ualarm().
- * POSIX platforms generally do; Windows and some others do not.
- *
- * @todo This adapter does not automatically reschedule repeating timers.
- */
-template <class TQ>
-class ACE_Async_Timer_Queue_Adapter : public ACE_Event_Handler
-{
-public:
- typedef TQ TIMER_QUEUE;
-
- /// Constructor
- /**
- * Register the SIGALRM handler. If @a mask == 0 then block all
- * signals when @c SIGALRM is run. Otherwise, just block the signals
- * indicated in @a mask.
- */
- ACE_Async_Timer_Queue_Adapter (ACE_Sig_Set *mask = 0);
-
- /// Schedule the timer according to the semantics of the
- /// ACE_Timer_List.
- /**
- * This timer gets dispatched via a signal, rather than by a user
- * calling expire(). Note that interval timers are not implemented
- * yet.
- */
- long schedule (ACE_Event_Handler *type,
- const void *act,
- const ACE_Time_Value &future_time,
- const ACE_Time_Value &interval = ACE_Time_Value::zero);
-
- /// Cancel the @a timer_id and pass back the @a act if an address is
- /// passed in.
- int cancel (long timer_id, const void **act = 0);
-
- /// Dispatch all timers with expiry time at or before the current time.
- /// Returns the number of timers expired.
- int expire (void);
-
- /// Return a reference to the underlying timer queue.
- TQ &timer_queue (void);
-
-private:
- /// Perform the logic to compute the new ualarm(2) setting.
- virtual int schedule_ualarm (void);
-
- /// Called back by @c SIGALRM handler.
- virtual int handle_signal (int signum, siginfo_t *, ucontext_t *);
-
- /// Handler for the @c SIGALRM signal, so that we can access our state
- /// without requiring any global variables.
- ACE_Sig_Handler sig_handler_;
-
- /// Implementation of the timer queue (e.g., ACE_Timer_List,
- /// ACE_Timer_Heap, etc.).
- TQ timer_queue_;
-
- /// Mask of signals to be blocked when we're servicing @c SIGALRM.
- ACE_Sig_Set mask_;
-};
-
-/**
- * @class ACE_Thread_Timer_Queue_Adapter
- *
- * @brief Adapts an ACE timer queue using a separate thread for dispatching.
- *
- * This implementation uses a separate thread to dispatch the timers.
- * The base queue need not be thread safe; this class takes all the
- * necessary locks.
- *
- * @note This is a case where template parameters will be useful, but
- * (IMHO) the effort and portability problems discourage their
- * use.
- *
- */
-template <class TQ>
-class ACE_Thread_Timer_Queue_Adapter : public ACE_Task_Base
-{
-public:
- /// Trait for the underlying queue type.
- typedef TQ TIMER_QUEUE;
-
-# if defined (ACE_HAS_DEFERRED_TIMER_COMMANDS)
-
- /// Typedef for the position at which to enqueue a deferred
- /// execution command.
- enum COMMAND_ENQUEUE_POSITION {HEAD, TAIL};
-
-# endif /* ACE_HAS_DEFERRED_TIMER_COMMANDS */
-
- /// Creates the timer queue. Activation of the task is the user's
- /// responsibility. Optionally a pointer to a timer queue can be passed,
- /// when no pointer is passed, a TQ is dynamically created
- ACE_Thread_Timer_Queue_Adapter (ACE_Thread_Manager * = ACE_Thread_Manager::instance (),
- TQ* timer_queue = 0);
-
- /// Destructor.
- virtual ~ACE_Thread_Timer_Queue_Adapter (void);
-
- /// Schedule the timer according to the semantics of the <TQ>; wakes
- /// up the dispatching thread.
- long schedule (ACE_Event_Handler *handler,
- const void *act,
- const ACE_Time_Value &future_time,
- const ACE_Time_Value &interval = ACE_Time_Value::zero);
-
- /// Cancel the @a timer_id and return the @a act parameter if an
- /// address is passed in. Also wakes up the dispatching thread.
- int cancel (long timer_id, const void **act = 0);
-
- /// Runs the dispatching thread.
- virtual int svc (void);
-
- /// Inform the dispatching thread that it should terminate.
- virtual void deactivate (void);
-
- /// Access the locking mechanism, useful for iteration.
- ACE_SYNCH_RECURSIVE_MUTEX &mutex (void);
-
- /// Set a user-specified timer queue.
- int timer_queue (TQ *tq);
-
- /// Return the current <TQ>.
- TQ *timer_queue (void) const;
-
- /// Return the thread id of our active object.
- ACE_thread_t thr_id (void) const;
-
- /**
- * We override the default activate() method so that we can ensure
- * that only a single thread is ever spawned. Otherwise, too many
- * weird things can happen...
- */
- virtual int activate (long flags = THR_NEW_LWP | THR_JOINABLE,
- int n_threads = 1,
- int force_active = 0,
- long priority = ACE_DEFAULT_THREAD_PRIORITY,
- int grp_id = -1,
- ACE_Task_Base *task = 0,
- ACE_hthread_t thread_handles[] = 0,
- void *stack[] = 0,
- size_t stack_size[] = 0,
- ACE_thread_t thread_ids[] = 0,
- const char* thr_name[] = 0);
-
-# if defined (ACE_HAS_DEFERRED_TIMER_COMMANDS)
-
- /**
- * Enqueues a command object for execution just before waiting on the next
- * timer event. This allows deferred execution of commands that cannot
- * be performed in the timer event handler context, such as registering
- * or cancelling timers on platforms where the timer queue mutex is not
- * recursive.
- */
- int enqueue_command (ACE_Command_Base *command_,
- COMMAND_ENQUEUE_POSITION pos = TAIL);
-
-# endif /* ACE_HAS_DEFERRED_TIMER_COMMANDS */
-
-private:
-
-# if defined (ACE_HAS_DEFERRED_TIMER_COMMANDS)
- /// Dispatches all command objects enqueued in the most
- /// recent event handler context.
- int dispatch_commands (void);
-
- /// Queue of commands for deferred execution.
- ACE_Unbounded_Queue<ACE_Command_Base *> command_queue_;
-
- /// The mutual exclusion mechanism for the command queue.
- ACE_SYNCH_MUTEX command_mutex_;
-# endif /* ACE_HAS_DEFERRED_TIMER_COMMANDS */
-
- /// The underlying Timer_Queue.
- TQ* timer_queue_;
-
- /// Keeps track of whether we should delete the timer queue (if we
- /// didn't create it, then we don't delete it).
- bool delete_timer_queue_;
-
- /// The mutual exclusion mechanism that is required to use the
- /// <condition_>.
- ACE_SYNCH_RECURSIVE_MUTEX mutex_;
-
- /**
- * The dispatching thread sleeps on this condition while waiting to
- * dispatch the next timer; it is used to wake it up if there is a
- * change on the timer queue.
- */
- ACE_SYNCH_RECURSIVE_CONDITION condition_;
-
- /// When deactivate is called this variable turns to false and the
- /// dispatching thread is signalled, to terminate its main loop.
- bool active_;
-
- /// Thread id of our active object task.
- ACE_thread_t thr_id_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-# include "ace/Timer_Queue_Adapters.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-# include "ace/Timer_Queue_Adapters.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-# pragma implementation ("Timer_Queue_Adapters.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TIMER_QUEUE_ADAPTERS_H */
-
diff --git a/dep/include/ace/Timer_Queue_Adapters.inl b/dep/include/ace/Timer_Queue_Adapters.inl
deleted file mode 100644
index 77011eacf8b..00000000000
--- a/dep/include/ace/Timer_Queue_Adapters.inl
+++ /dev/null
@@ -1,29 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Timer_Queue_Adapters.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template<class TQ> ACE_INLINE TQ *
-ACE_Thread_Timer_Queue_Adapter<TQ>::timer_queue (void) const
-{
- return this->timer_queue_;
-}
-
-template<class TQ> ACE_INLINE int
-ACE_Thread_Timer_Queue_Adapter<TQ>::timer_queue (TQ *tq)
-{
- if (this->delete_timer_queue_)
- delete this->timer_queue_;
- this->timer_queue_ = tq;
- this->delete_timer_queue_ = false;
- return 0;
-}
-
-template<class TQ> ACE_INLINE ACE_thread_t
-ACE_Thread_Timer_Queue_Adapter<TQ>::thr_id (void) const
-{
- return this->thr_id_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Timer_Queue_T.h b/dep/include/ace/Timer_Queue_T.h
deleted file mode 100644
index 8e5478b3245..00000000000
--- a/dep/include/ace/Timer_Queue_T.h
+++ /dev/null
@@ -1,563 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Timer_Queue_T.h
- *
- * $Id: Timer_Queue_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt <schmidt@cs.wustl.edu>
- * @author Irfan Pyarali <irfan@cs.wustl.edu> and
- * @author Darrell Brunsch <brunsch@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_TIMER_QUEUE_T_H
-#define ACE_TIMER_QUEUE_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Free_List.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Event_Handler.h"
-#include "ace/Time_Value.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Timer_Node_Dispatch_Info_T
- *
- * @brief Maintains generated dispatch information for Timer nodes.
- *
- */
-template <class TYPE>
-class ACE_Timer_Node_Dispatch_Info_T
-{
-public:
- /// The type of object held in the queue
- TYPE type_;
-
- /// Asynchronous completion token associated with the timer.
- const void *act_;
-
- /// Flag to check if the timer is recurring.
- int recurring_timer_;
-};
-
-/**
- * @class ACE_Timer_Node_T
- *
- * @brief Maintains the state associated with a Timer entry.
- */
-template <class TYPE>
-class ACE_Timer_Node_T
-{
-public:
- /// Default constructor
- ACE_Timer_Node_T (void);
-
- /// Destructor
- ~ACE_Timer_Node_T (void);
-
- /// Useful typedef ..
- typedef ACE_Timer_Node_Dispatch_Info_T <TYPE> DISPATCH_INFO;
-
- /// Singly linked list
- void set (const TYPE &type,
- const void *a,
- const ACE_Time_Value &t,
- const ACE_Time_Value &i,
- ACE_Timer_Node_T<TYPE> *n,
- long timer_id);
-
- /// Doubly linked list version
- void set (const TYPE &type,
- const void *a,
- const ACE_Time_Value &t,
- const ACE_Time_Value &i,
- ACE_Timer_Node_T<TYPE> *p,
- ACE_Timer_Node_T<TYPE> *n,
- long timer_id);
-
- // = Accessors
-
- /// Get the type.
- TYPE &get_type (void);
-
- /// Set the type.
- void set_type (TYPE &type);
-
- /// Get the asynchronous completion token.
- const void *get_act (void);
-
- /// Set the asynchronous completion token.
- void set_act (void *act);
-
- /// Get the timer value.
- const ACE_Time_Value &get_timer_value (void) const;
-
- /// Set the timer value.
- void set_timer_value (const ACE_Time_Value &timer_value);
-
- /// Get the timer interval.
- const ACE_Time_Value &get_interval (void) const;
-
- /// Set the timer interval.
- void set_interval (const ACE_Time_Value &interval);
-
- /// Get the previous pointer.
- ACE_Timer_Node_T<TYPE> *get_prev (void);
-
- /// Set the previous pointer.
- void set_prev (ACE_Timer_Node_T<TYPE> *prev);
-
- /// Get the next pointer.
- ACE_Timer_Node_T<TYPE> *get_next (void);
-
- /// Set the next pointer.
- void set_next (ACE_Timer_Node_T<TYPE> *next);
-
- /// Get the timer_id.
- long get_timer_id (void) const;
-
- /// Set the timer_id.
- void set_timer_id (long timer_id);
-
- /// Get the dispatch info. The dispatch information is got
- /// through <info>. This form helps us in preventing allocation and
- /// deleting data along the criticl path.
- /// @@TODO: We may want to have a copying version too, so that our
- /// interface will be complete..
- void get_dispatch_info (ACE_Timer_Node_Dispatch_Info_T <TYPE> &info);
-
- /// Dump the state of an TYPE.
- void dump (void) const;
-
-private:
- /// Type of object stored in the Queue
- TYPE type_;
-
- /// Asynchronous completion token associated with the timer.
- const void *act_;
-
- /// Time until the timer expires.
- ACE_Time_Value timer_value_;
-
- /// If this is a periodic timer this holds the time until the next
- /// timeout.
- ACE_Time_Value interval_;
-
- /// Pointer to previous timer.
- ACE_Timer_Node_T<TYPE> *prev_;
-
- /// Pointer to next timer.
- ACE_Timer_Node_T<TYPE> *next_;
-
- /// Id of this timer (used to cancel timers before they expire).
- long timer_id_;
-};
-
-/**
- * @class ACE_Timer_Queue_Iterator_T
- *
- * @brief Generic interface for iterating over a subclass of
- * ACE_Timer_Queue.
- *
- * This is a generic iterator that can be used to visit every
- * node of a timer queue. Be aware that it isn't guaranteed
- * that the transversal will be in order of timeout values.
- */
-template <class TYPE, class FUNCTOR, class ACE_LOCK>
-class ACE_Timer_Queue_Iterator_T
-{
-public:
- // = Initialization and termination methods.
- /// Constructor.
- ACE_Timer_Queue_Iterator_T (void);
-
- /// Destructor.
- virtual ~ACE_Timer_Queue_Iterator_T (void);
-
- /// Positions the iterator at the earliest node in the Timer Queue
- virtual void first (void) = 0;
-
- /// Positions the iterator at the next node in the Timer Queue
- virtual void next (void) = 0;
-
- /// Returns true when there are no more nodes in the sequence
- virtual bool isdone (void) const = 0;
-
- /// Returns the node at the current position in the sequence
- virtual ACE_Timer_Node_T<TYPE> *item (void) = 0;
-};
-
-/**
- * @class ACE_Timer_Queue_T
- *
- * @brief Provides an interface to timers.
- *
- * This is an abstract base class that provides hook for
- * implementing specialized policies such as ACE_Timer_List
- * and ACE_Timer_Heap.
- */
-template <class TYPE, class FUNCTOR, class ACE_LOCK>
-class ACE_Timer_Queue_T
-{
-public:
- /// Type of Iterator.
- typedef ACE_Timer_Queue_Iterator_T<TYPE, FUNCTOR, ACE_LOCK> ITERATOR;
-
- // = Initialization and termination methods.
- /**
- * Default constructor. @a upcall_functor is the instance of the
- * FUNCTOR to be used by the queue. If @a upcall_functor is 0, Timer
- * Queue will create a default FUNCTOR. @a freelist the freelist of
- * timer nodes. If 0, then a default freelist will be created.
- */
- ACE_Timer_Queue_T (FUNCTOR *upcall_functor = 0,
- ACE_Free_List<ACE_Timer_Node_T <TYPE> > *freelist = 0);
-
- /// Destructor - make virtual for proper destruction of inherited
- /// classes.
- virtual ~ACE_Timer_Queue_T (void);
-
- /// True if queue is empty, else false.
- virtual bool is_empty (void) const = 0;
-
- /// Returns the time of the earlier node in the Timer_Queue. Must
- /// be called on a non-empty queue.
- virtual const ACE_Time_Value &earliest_time (void) const = 0;
-
- /**
- * Schedule @a type that will expire at @a future_time, which is
- * specified in absolute time. If it expires then @a act is passed
- * in as the value to the <functor>. If @a interval is != to
- * ACE_Time_Value::zero then it is used to reschedule the @a type
- * automatically, using relative time to the current <gettimeofday>.
- * This method returns a <timer_id> that uniquely identifies the the
- * @a type entry in an internal list. This <timer_id> can be used to
- * cancel the timer before it expires. The cancellation ensures
- * that <timer_ids> are unique up to values of greater than 2
- * billion timers. As long as timers don't stay around longer than
- * this there should be no problems with accidentally deleting the
- * wrong timer. Returns -1 on failure (which is guaranteed never to
- * be a valid <timer_id>).
- */
- virtual long schedule (const TYPE &type,
- const void *act,
- const ACE_Time_Value &future_time,
- const ACE_Time_Value &interval = ACE_Time_Value::zero);
-
- /**
- * Resets the interval of the timer represented by @a timer_id to
- * @a interval, which is specified in relative time to the current
- * <gettimeofday>. If @a interval is equal to
- * ACE_Time_Value::zero, the timer will become a non-rescheduling
- * timer. Returns 0 if successful, -1 if not.
- */
- virtual int reset_interval (long timer_id,
- const ACE_Time_Value &interval) = 0;
-
- /**
- * Cancel all timer associated with @a type. If
- * @a dont_call_handle_close is 0 then the <functor> will be invoked,
- * which typically invokes the <handle_close> hook. Returns number
- * of timers cancelled.
- */
- virtual int cancel (const TYPE &type,
- int dont_call_handle_close = 1) = 0;
-
- /**
- * Cancel the single timer that matches the @a timer_id value (which
- * was returned from the <schedule> method). If act is non-NULL
- * then it will be set to point to the ``magic cookie'' argument
- * passed in when the timer was registered. This makes it possible
- * to free up the memory and avoid memory leaks. If
- * @a dont_call_handle_close is 0 then the <functor> will be invoked,
- * which typically calls the <handle_close> hook. Returns 1 if
- * cancellation succeeded and 0 if the @a timer_id wasn't found.
- */
- virtual int cancel (long timer_id,
- const void **act = 0,
- int dont_call_handle_close = 1) = 0;
-
- /**
- * Run the <functor> for all timers whose values are <= @a current_time.
- * This does not account for <timer_skew>. Returns the number of
- * timers canceled.
- */
- virtual int expire (const ACE_Time_Value &current_time);
-
- /**
- * Get the dispatch information for a timer whose value is <= @a current_time.
- * This does not account for <timer_skew>. Returns 1 if
- * there is a node whose value <= @a current_time else returns a 0.
- *
- */
- virtual int dispatch_info (const ACE_Time_Value &current_time,
- ACE_Timer_Node_Dispatch_Info_T<TYPE> &info);
-
- /**
- * Run the <functor> for all timers whose values are <=
- * <ACE_OS::gettimeofday>. Also accounts for <timer_skew>.
- *
- * Depending on the resolution of the underlying OS the system calls
- * like select()/poll() might return at time different than that is
- * specified in the timeout. Suppose the OS guarantees a resolution of t ms.
- * The timeline will look like
- *
- * A B
- * | |
- * V V
- * |-------------|-------------|-------------|-------------|
- * t t t t t
- *
- *
- * If you specify a timeout value of A, then the timeout will not occur
- * at A but at the next interval of the timer, which is later than
- * that is expected. Similarly, if your timeout value is equal to B,
- * then the timeout will occur at interval after B. Now depending upon the
- * resolution of your timeouts and the accuracy of the timeouts
- * needed for your application, you should set the value of
- * <timer_skew>. In the above case, if you want the timeout A to fire
- * no later than A, then you should specify your <timer_skew> to be
- * A % t.
- *
- * The timeout value should be specified via the macro ACE_TIMER_SKEW
- * in your config.h file. The default value is zero.
- *
- * Things get interesting if the t before the timeout value B is zero
- * i.e your timeout is less than the interval. In that case, you are
- * almost sure of not getting the desired timeout behaviour. Maybe you
- * should look for a better OS :-)
- *
- * Returns the number of timers canceled.
- */
-
- /* virtual */ int expire (void);
-
- /**
- * Returns the current time of day. This method allows different
- * implementations of the timer queue to use special high resolution
- * timers.
- */
- /* virtual */ ACE_Time_Value gettimeofday (void);
-
- /// Allows applications to control how the timer queue gets the time
- /// of day.
- void gettimeofday (ACE_Time_Value (*gettimeofday)(void));
-
- /// Determine the next event to timeout. Returns @a max if there are
- /// no pending timers or if all pending timers are longer than max.
- /// This method acquires a lock internally since it modifies internal state.
- virtual ACE_Time_Value *calculate_timeout (ACE_Time_Value *max);
-
- /**
- * Determine the next event to timeout. Returns @a max if there are
- * no pending timers or if all pending timers are longer than max.
- * <the_timeout> should be a pointer to storage for the timeout value,
- * and this value is also returned. This method does not acquire a
- * lock internally since it doesn't modify internal state. If you
- * need to call this method when the queue is being modified
- * concurrently, however, you should make sure to acquire the <mutex()>
- * externally before making the call.
- */
- virtual ACE_Time_Value *calculate_timeout (ACE_Time_Value *max,
- ACE_Time_Value *the_timeout);
-
- /// Set the timer skew for the Timer_Queue.
- void timer_skew (const ACE_Time_Value &skew);
-
- /// Get the timer skew for the Timer_Queue.
- const ACE_Time_Value &timer_skew (void) const;
-
- /// Synchronization variable used by the queue
- ACE_LOCK &mutex (void);
-
- /// Accessor to the upcall functor
- FUNCTOR &upcall_functor (void);
-
- /// Returns a pointer to this ACE_Timer_Queue's iterator.
- virtual ITERATOR &iter (void) = 0;
-
- /// Removes the earliest node from the queue and returns it
- virtual ACE_Timer_Node_T<TYPE> *remove_first (void) = 0;
-
- /// Dump the state of a object.
- virtual void dump (void) const;
-
- /// Reads the earliest node from the queue and returns it.
- virtual ACE_Timer_Node_T<TYPE> *get_first (void) = 0;
-
- /// Method used to return a timer node to the queue's ownership
- /// after it is returned by a method like <remove_first>.
- virtual void return_node (ACE_Timer_Node_T<TYPE> *);
-
- /// This method will call the preinvoke() on <functor>.
- void preinvoke (ACE_Timer_Node_Dispatch_Info_T<TYPE> &info,
- const ACE_Time_Value &cur_time,
- const void *&upcall_act);
-
- /// This method will call the timeout() on <functor>.
- void upcall (ACE_Timer_Node_Dispatch_Info_T<TYPE> &info,
- const ACE_Time_Value &cur_time);
-
- /// This method will call the postinvoke() on <functor>.
- void postinvoke (ACE_Timer_Node_Dispatch_Info_T<TYPE> &info,
- const ACE_Time_Value &cur_time,
- const void *upcall_act);
-
-protected:
-
- /// Schedule a timer.
- virtual long schedule_i (const TYPE &type,
- const void *act,
- const ACE_Time_Value &future_time,
- const ACE_Time_Value &interval) = 0;
-
- /// Reschedule an "interval" ACE_Timer_Node.
- virtual void reschedule (ACE_Timer_Node_T<TYPE> *) = 0;
-
- /// Factory method that allocates a new node.
- virtual ACE_Timer_Node_T<TYPE> *alloc_node (void);
-
- /// Factory method that frees a previously allocated node.
- virtual void free_node (ACE_Timer_Node_T<TYPE> *);
-
- /// Non-locking version of dispatch_info ()
- virtual int dispatch_info_i (const ACE_Time_Value &current_time,
- ACE_Timer_Node_Dispatch_Info_T<TYPE> &info);
-
- /// Synchronization variable for ACE_Timer_Queue.
- /// @note The right name would be lock_, but HP/C++ will choke on that!
- ACE_LOCK mutex_;
-
- /// Class that implements a free list
- ACE_Free_List<ACE_Timer_Node_T<TYPE> > *free_list_;
-
- /// Pointer to function that returns the current time of day.
- ACE_Time_Value (*gettimeofday_)(void);
-
- /// Upcall functor
- FUNCTOR *upcall_functor_;
-
- /// To delete or not to delete is the question?
- bool const delete_upcall_functor_;
-
- /// Flag to delete only if the class created the <free_list_>
- bool const delete_free_list_;
-
-private:
-
- /// Returned by <calculate_timeout>.
- ACE_Time_Value timeout_;
-
- /// Adjusts for timer skew in various clocks.
- ACE_Time_Value timer_skew_;
-
- // = Don't allow these operations for now.
- ACE_UNIMPLEMENTED_FUNC (ACE_Timer_Queue_T (const ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK> &))
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK> &))
-};
-
-/**
- * @class ACE_Event_Handler_Handle_Timeout_Upcall
- *
- * @brief Functor for Timer_Queues.
- *
- * This class implements the functor required by the Timer
- * Queue to call <handle_timeout> on ACE_Event_Handlers.
- */
-template <class ACE_LOCK>
-class ACE_Event_Handler_Handle_Timeout_Upcall
-{
-public:
- typedef ACE_Timer_Queue_T<ACE_Event_Handler *,
- ACE_Event_Handler_Handle_Timeout_Upcall<ACE_LOCK>,
- ACE_LOCK>
- TIMER_QUEUE;
-
- // = Initialization and termination methods.
- /// Constructor.
- ACE_Event_Handler_Handle_Timeout_Upcall (void);
-
- /// Destructor.
- ~ACE_Event_Handler_Handle_Timeout_Upcall (void);
-
- /// This method is called when a timer is registered.
- int registration (TIMER_QUEUE &timer_queue,
- ACE_Event_Handler *handler,
- const void *arg);
-
- /// This method is called before the timer expires.
- int preinvoke (TIMER_QUEUE &timer_queue,
- ACE_Event_Handler *handler,
- const void *arg,
- int recurring_timer,
- const ACE_Time_Value &cur_time,
- const void *&upcall_act);
-
- /// This method is called when the timer expires.
- int timeout (TIMER_QUEUE &timer_queue,
- ACE_Event_Handler *handler,
- const void *arg,
- int recurring_timer,
- const ACE_Time_Value &cur_time);
-
- /// This method is called after the timer expires.
- int postinvoke (TIMER_QUEUE &timer_queue,
- ACE_Event_Handler *handler,
- const void *arg,
- int recurring_timer,
- const ACE_Time_Value &cur_time,
- const void *upcall_act);
-
- /// This method is called when a handler is cancelled
- int cancel_type (TIMER_QUEUE &timer_queue,
- ACE_Event_Handler *handler,
- int dont_call,
- int &requires_reference_counting);
-
- /// This method is called when a timer is cancelled
- int cancel_timer (TIMER_QUEUE &timer_queue,
- ACE_Event_Handler *handler,
- int dont_call,
- int requires_reference_counting);
-
- /// This method is called when the timer queue is destroyed and
- /// the timer is still contained in it
- int deletion (TIMER_QUEUE &timer_queue,
- ACE_Event_Handler *handler,
- const void *arg);
-
-private:
-
- /// Flag indicating that reference counting is required for this
- /// event handler upcall.
- int requires_reference_counting_;
-
- // = Don't allow these operations for now.
- ACE_UNIMPLEMENTED_FUNC (ACE_Event_Handler_Handle_Timeout_Upcall (const ACE_Event_Handler_Handle_Timeout_Upcall<ACE_LOCK> &))
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Event_Handler_Handle_Timeout_Upcall<ACE_LOCK> &))
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Timer_Queue_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Timer_Queue_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Timer_Queue_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TIMER_QUEUE_T_H */
-
diff --git a/dep/include/ace/Timer_Queue_T.inl b/dep/include/ace/Timer_Queue_T.inl
deleted file mode 100644
index 7606a2e1f62..00000000000
--- a/dep/include/ace/Timer_Queue_T.inl
+++ /dev/null
@@ -1,222 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Timer_Queue_T.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class TYPE> ACE_INLINE void
-ACE_Timer_Node_T<TYPE>::set (const TYPE &type,
- const void *a,
- const ACE_Time_Value &t,
- const ACE_Time_Value &i,
- ACE_Timer_Node_T<TYPE> *n,
- long timer_id)
-{
- this->type_ = type;
- this->act_ = a;
- this->timer_value_ = t;
- this->interval_ = i;
- this->next_ = n;
- this->timer_id_ = timer_id;
-}
-
-template <class TYPE> ACE_INLINE void
-ACE_Timer_Node_T<TYPE>::set (const TYPE &type,
- const void *a,
- const ACE_Time_Value &t,
- const ACE_Time_Value &i,
- ACE_Timer_Node_T<TYPE> *p,
- ACE_Timer_Node_T<TYPE> *n,
- long timer_id)
-{
- this->type_ = type;
- this->act_ = a;
- this->timer_value_ = t;
- this->interval_ = i;
- this->prev_ = p;
- this->next_ = n;
- this->timer_id_ = timer_id;
-}
-
-template <class TYPE> ACE_INLINE TYPE &
-ACE_Timer_Node_T<TYPE>::get_type (void)
-{
- return this->type_;
-}
-
-template <class TYPE> ACE_INLINE void
-ACE_Timer_Node_T<TYPE>::set_type (TYPE &type)
-{
- this->type_ = type;
-}
-
-template <class TYPE> ACE_INLINE const void *
-ACE_Timer_Node_T<TYPE>::get_act (void)
-{
- return this->act_;
-}
-
-template <class TYPE> ACE_INLINE void
-ACE_Timer_Node_T<TYPE>::set_act (void *act)
-{
- this->act_ = act;
-}
-
-template <class TYPE> ACE_INLINE const ACE_Time_Value &
-ACE_Timer_Node_T<TYPE>::get_timer_value (void) const
-{
- return this->timer_value_;
-}
-
-template <class TYPE> ACE_INLINE void
-ACE_Timer_Node_T<TYPE>::set_timer_value (const ACE_Time_Value &timer_value)
-{
- this->timer_value_ = timer_value;
-}
-
-template <class TYPE> ACE_INLINE const ACE_Time_Value &
-ACE_Timer_Node_T<TYPE>::get_interval (void) const
-{
- return this->interval_;
-}
-
-template <class TYPE> ACE_INLINE void
-ACE_Timer_Node_T<TYPE>::set_interval (const ACE_Time_Value &interval)
-{
- this->interval_ = interval;
-}
-
-template <class TYPE> ACE_INLINE ACE_Timer_Node_T<TYPE> *
-ACE_Timer_Node_T<TYPE>::get_prev (void)
-{
- return this->prev_;
-}
-
-template <class TYPE> ACE_INLINE void
-ACE_Timer_Node_T<TYPE>::set_prev (ACE_Timer_Node_T<TYPE> *prev)
-{
- this->prev_ = prev;
-}
-
-template <class TYPE> ACE_INLINE ACE_Timer_Node_T<TYPE> *
-ACE_Timer_Node_T<TYPE>::get_next (void)
-{
- return this->next_;
-}
-
-template <class TYPE> ACE_INLINE void
-ACE_Timer_Node_T<TYPE>::set_next (ACE_Timer_Node_T<TYPE> *next)
-{
- this->next_ = next;
-}
-
-template <class TYPE> ACE_INLINE long
-ACE_Timer_Node_T<TYPE>::get_timer_id (void) const
-{
- return this->timer_id_;
-}
-
-template <class TYPE> ACE_INLINE void
-ACE_Timer_Node_T<TYPE>::set_timer_id (long timer_id)
-{
- this->timer_id_ = timer_id;
-}
-
-template <class TYPE> ACE_INLINE void
-ACE_Timer_Node_T<TYPE>::get_dispatch_info (ACE_Timer_Node_Dispatch_Info_T<TYPE> &info)
-{
- // Yes, do a copy
- info.type_ = this->type_;
- info.act_ = this->act_;
- info.recurring_timer_ =
- this->interval_ > ACE_Time_Value::zero;
-}
-
-template <class TYPE, class FUNCTOR, class ACE_LOCK> ACE_INLINE void
-ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>::timer_skew (const ACE_Time_Value &skew)
-{
- timer_skew_ = skew;
-}
-
-template <class TYPE, class FUNCTOR, class ACE_LOCK> ACE_INLINE const ACE_Time_Value &
-ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>::timer_skew (void) const
-{
- return timer_skew_;
-}
-
-template <class TYPE, class FUNCTOR, class ACE_LOCK> ACE_INLINE int
-ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>::expire (void)
-{
- if (!this->is_empty ())
- return this->expire (this->gettimeofday () + timer_skew_);
- else
- return 0;
-}
-
-template <class TYPE, class FUNCTOR, class ACE_LOCK> int
-ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>::dispatch_info (const ACE_Time_Value &cur_time,
- ACE_Timer_Node_Dispatch_Info_T<TYPE> &info)
-{
- ACE_TRACE ("ACE_Timer_Queue_T::dispatch_info");
- ACE_MT (ACE_GUARD_RETURN (ACE_LOCK, ace_mon, this->mutex_, 0));
-
- return this->dispatch_info_i (cur_time, info);
-}
-
-template <class TYPE, class FUNCTOR, class ACE_LOCK> ACE_INLINE void
-ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>::upcall (ACE_Timer_Node_Dispatch_Info_T<TYPE> &info,
- const ACE_Time_Value &cur_time)
-{
- this->upcall_functor ().timeout (*this,
- info.type_,
- info.act_,
- info.recurring_timer_,
- cur_time);
-}
-
-template <class TYPE, class FUNCTOR, class ACE_LOCK> ACE_INLINE void
-ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>::preinvoke (ACE_Timer_Node_Dispatch_Info_T<TYPE> &info,
- const ACE_Time_Value &cur_time,
- const void *&upcall_act)
-{
- this->upcall_functor ().preinvoke (*this,
- info.type_,
- info.act_,
- info.recurring_timer_,
- cur_time,
- upcall_act);
-}
-
-template <class TYPE, class FUNCTOR, class ACE_LOCK> ACE_INLINE void
-ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>::postinvoke (ACE_Timer_Node_Dispatch_Info_T<TYPE> &info,
- const ACE_Time_Value &cur_time,
- const void *upcall_act)
-{
- this->upcall_functor ().postinvoke (*this,
- info.type_,
- info.act_,
- info.recurring_timer_,
- cur_time,
- upcall_act);
-}
-
-template <class TYPE, class FUNCTOR, class ACE_LOCK> ACE_INLINE ACE_Time_Value
-ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>::gettimeofday (void)
-{
- // Invoke gettimeofday via pointer to function.
- return this->gettimeofday_ ();
-}
-
-template <class TYPE, class FUNCTOR, class ACE_LOCK> ACE_INLINE void
-ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>::gettimeofday (ACE_Time_Value (*gettimeofday)(void))
-{
- this->gettimeofday_ = gettimeofday;
-}
-
-template <class TYPE, class FUNCTOR, class ACE_LOCK> ACE_INLINE FUNCTOR &
-ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>::upcall_functor (void)
-{
- return *this->upcall_functor_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Timer_Queuefwd.h b/dep/include/ace/Timer_Queuefwd.h
deleted file mode 100644
index 5ee99ff1823..00000000000
--- a/dep/include/ace/Timer_Queuefwd.h
+++ /dev/null
@@ -1,39 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Timer_Queuefwd.h
- *
- * $Id: Timer_Queuefwd.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Forward declarations and typedefs of ACE_Timer_Queue class.
- *
- * @author Ossama Othman <ossama@dre.vanderbilt.edu>
- */
-//=============================================================================
-
-#ifndef ACE_TIMER_QUEUE_FWD_H
-#define ACE_TIMER_QUEUE_FWD_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Synch_Traits.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class TYPE, class FUNCTOR, class ACE_LOCK> class ACE_Timer_Queue_T;
-template <class ACE_LOCK> class ACE_Event_Handler_Handle_Timeout_Upcall;
-
-class ACE_Event_Handler;
-
-typedef ACE_Timer_Queue_T<ACE_Event_Handler *,
- ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>,
- ACE_SYNCH_RECURSIVE_MUTEX>
- ACE_Timer_Queue;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_TIMER_QUEUE_FWD_H */
-
diff --git a/dep/include/ace/Timer_Wheel.h b/dep/include/ace/Timer_Wheel.h
deleted file mode 100644
index b8a7e9b03ac..00000000000
--- a/dep/include/ace/Timer_Wheel.h
+++ /dev/null
@@ -1,42 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Timer_Wheel.h
- *
- * $Id: Timer_Wheel.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Darrell Brunsch (brunsch@cs.wustl.edu)
- */
-//=============================================================================
-
-#ifndef ACE_TIMER_WHEEL_H
-#define ACE_TIMER_WHEEL_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Timer_Wheel_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// The following typedefs are here for ease of use and backward
-// compatibility.
-
-typedef ACE_Timer_Wheel_T<ACE_Event_Handler *,
- ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>,
- ACE_SYNCH_RECURSIVE_MUTEX>
- ACE_Timer_Wheel;
-
-typedef ACE_Timer_Wheel_Iterator_T<ACE_Event_Handler *,
- ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>,
- ACE_SYNCH_RECURSIVE_MUTEX>
- ACE_Timer_Wheel_Iterator;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TIMER_WHEEL_H */
-
diff --git a/dep/include/ace/Timer_Wheel_T.h b/dep/include/ace/Timer_Wheel_T.h
deleted file mode 100644
index 7222837011b..00000000000
--- a/dep/include/ace/Timer_Wheel_T.h
+++ /dev/null
@@ -1,227 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Timer_Wheel_T.h
- *
- * $Id: Timer_Wheel_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Darrell Brunsch <brunsch@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_TIMER_WHEEL_T_H
-#define ACE_TIMER_WHEEL_T_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Timer_Queue_T.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declaration
-template <class TYPE, class FUNCTOR, class ACE_LOCK>
-class ACE_Timer_Wheel_T;
-
-/**
- * @class ACE_Timer_Wheel_Iterator_T
- *
- * @brief Iterates over an ACE_Timer_Wheel.
- *
- * This is a generic iterator that can be used to visit every
- * node of a timer queue. Be aware that it doesn't traverse
- * in the order of timeout values.
- */
-template <class TYPE, class FUNCTOR, class ACE_LOCK>
-class ACE_Timer_Wheel_Iterator_T
- : public ACE_Timer_Queue_Iterator_T <TYPE, FUNCTOR, ACE_LOCK>
-{
-public:
- typedef ACE_Timer_Wheel_T<TYPE, FUNCTOR, ACE_LOCK> Wheel;
- typedef ACE_Timer_Node_T<TYPE> Node;
-
- /// Constructor
- ACE_Timer_Wheel_Iterator_T (Wheel &);
-
- /// Destructor
- ~ACE_Timer_Wheel_Iterator_T (void);
-
- /// Positions the iterator at the earliest node in the Timer Queue
- virtual void first (void);
-
- /// Positions the iterator at the next node in the Timer Queue
- virtual void next (void);
-
- /// Returns true when there are no more nodes in the sequence
- virtual bool isdone (void) const;
-
- /// Returns the node at the current position in the sequence
- virtual ACE_Timer_Node_T<TYPE>* item (void);
-
-protected:
- /// Pointer to the ACE_Timer_List that we are iterating over.
- Wheel& timer_wheel_;
-
- /// Current position in the timing wheel
- u_int spoke_;
-
- /// Pointer to the position in the the <pos_>th list
- ACE_Timer_Node_T<TYPE>* current_node_;
-private:
- void goto_next(u_int start_spoke);
-};
-
-/**
- * @class ACE_Timer_Wheel_T
- *
- * @brief Provides a Timing Wheel version of ACE_Timer_Queue.
- *
- * This implementation uses a hash table of ordered doubly-
- * linked lists of absolute times. The enhancements over the
- * @c ACE_Timer_List include adding a free list and the ability
- * to preallocate nodes. Timer Wheel is based on the timing
- * wheel implementation used in Adam M. Costello and
- * George Varghese's paper "Redesigning the BSD Callout and
- * Timer Facilities"
- * (http://dworkin.wustl.edu/~varghese/PAPERS/newbsd.ps.Z)
- */
-template <class TYPE, class FUNCTOR, class ACE_LOCK>
-class ACE_Timer_Wheel_T : public ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>
-{
-public:
- /// Type of iterator
- typedef ACE_Timer_Wheel_Iterator_T<TYPE, FUNCTOR, ACE_LOCK> Iterator;
- /// Iterator is a friend
- friend class ACE_Timer_Wheel_Iterator_T<TYPE, FUNCTOR, ACE_LOCK>;
- typedef ACE_Timer_Node_T<TYPE> Node;
- /// Type inherited from
- typedef ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK> Base;
- typedef ACE_Free_List<Node> FreeList;
-
- /// Default constructor
- ACE_Timer_Wheel_T (FUNCTOR* upcall_functor = 0, FreeList* freelist = 0);
-
- /// Constructor with opportunities to set the wheelsize and resolution
- ACE_Timer_Wheel_T (u_int spoke_count,
- u_int resolution,
- size_t prealloc = 0,
- FUNCTOR* upcall_functor = 0,
- FreeList* freelist = 0);
-
- /// Destructor
- virtual ~ACE_Timer_Wheel_T (void);
-
- /// True if queue is empty, else false.
- virtual bool is_empty (void) const;
-
- /// Returns the time of the earlier node in the ACE_Timer_Wheel.
- /// Must be called on a non-empty queue.
- virtual const ACE_Time_Value& earliest_time (void) const;
-
- /// Changes the interval of a timer (and can make it periodic or non
- /// periodic by setting it to ACE_Time_Value::zero or not).
- virtual int reset_interval (long timer_id,
- const ACE_Time_Value& interval);
-
- /// Cancel all timer associated with @a type. If <dont_call> is 0
- /// then the <functor> will be invoked. Returns number of timers
- /// cancelled.
- virtual int cancel (const TYPE& type,
- int dont_call_handle_close = 1);
-
- // Cancel a timer, storing the magic cookie in act (if nonzero).
- // Calls the functor if dont_call_handle_close is 0 and returns 1
- // on success
- virtual int cancel (long timer_id,
- const void** act = 0,
- int dont_call_handle_close = 1);
-
- /// Run the <functor> for all timers whose values are <=
- /// <ACE_OS::gettimeofday>. Also accounts for <timer_skew>. Returns
- /// the number of timers canceled.
- virtual int expire (void);
-
- // Run the <functor> for all timers whose values are <= @a current_time.
- // This does not account for <timer_skew>. Returns the number of
- // timers canceled.
- int expire (const ACE_Time_Value& current_time);
-
- /// Returns a pointer to this <ACE_Timer_Queue_T>'s iterator.
- virtual ACE_Timer_Queue_Iterator_T<TYPE, FUNCTOR, ACE_LOCK>& iter (void);
-
- /// Removes the earliest node from the queue and returns it
- virtual ACE_Timer_Node_T<TYPE>* remove_first (void);
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
- /// Reads the earliest node from the queue and returns it.
- virtual ACE_Timer_Node_T<TYPE>* get_first (void);
-
-protected:
-
- /// Schedules a timer.
- virtual long schedule_i (const TYPE& type,
- const void* act,
- const ACE_Time_Value& future_time,
- const ACE_Time_Value& interval);
-
-private:
- // The following are documented in the .cpp file.
- ACE_Timer_Node_T<TYPE>* get_first_i (void) const;
- ACE_Timer_Node_T<TYPE>* remove_first_expired (const ACE_Time_Value& now);
- void open_i (size_t prealloc, u_int spokes, u_int res);
- virtual void reschedule (ACE_Timer_Node_T<TYPE> *);
- ACE_Timer_Node_T<TYPE>* find_spoke_node(u_int spoke, long timer_id) const;
- ACE_Timer_Node_T<TYPE>* find_node(long timer_id) const;
- u_int calculate_spoke(const ACE_Time_Value& expire) const;
- long generate_timer_id(u_int spoke);
- void schedule_i (ACE_Timer_Node_T<TYPE>* n, u_int spoke, const ACE_Time_Value& expire);
- void cancel_i (ACE_Timer_Node_T<TYPE>* n);
- void unlink (ACE_Timer_Node_T<TYPE>* n);
- void recalc_earliest(const ACE_Time_Value& last);
-
-private:
- int power2bits (int n, int min_bits, int max_bits);
-
- /// Timing Wheel.
- ACE_Timer_Node_T<TYPE>** spokes_;
- /// Size of the timing wheel.
- u_int spoke_count_;
- /// Number of timer_id bits used for the spoke
- int spoke_bits_;
- /// Maximum number of timers per spoke
- u_int max_per_spoke_;
- /// Resolution (in microsoconds) of the timing wheel.
- int res_bits_;
- /// Index of the list with the earliest time
- u_int earliest_spoke_;
- /// Iterator used to expire timers.
- Iterator* iterator_;
- /// The total amount of time in one iteration of the wheel. (resolution * spoke_count)
- ACE_Time_Value wheel_time_;
- /// The total number of timers currently scheduled.
- u_int timer_count_;
-
- // = Don't allow these operations for now, don't split into multiple lines
- // breaks sun compilers
- ACE_UNIMPLEMENTED_FUNC (ACE_Timer_Wheel_T (const ACE_Timer_Wheel_T<TYPE, FUNCTOR, ACE_LOCK> &))
- ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Timer_Wheel_T<TYPE, FUNCTOR, ACE_LOCK> &))
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Timer_Wheel_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Timer_Wheel_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TIMER_WHEEL_T_H */
-
diff --git a/dep/include/ace/Token.h b/dep/include/ace/Token.h
deleted file mode 100644
index 405ad28362f..00000000000
--- a/dep/include/ace/Token.h
+++ /dev/null
@@ -1,376 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Token.h
- *
- * $Id: Token.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Original author
- * @author Karl-Heinz Dorn (kdorn@erlh.siemens.de)
- * @author Ported to ACE by
- * @author Douglas C. Schmidt (schmidt@cs.wustl.edu)
- */
-//=============================================================================
-
-#ifndef ACE_TOKEN_H
-#define ACE_TOKEN_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Null_Mutex.h"
-
-#if defined (ACE_HAS_THREADS)
-
-#include "ace/Thread_Mutex.h"
-
-#if (defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)) || defined (ACE_HAS_VXTHREADS)
-// If platforms support semaphores with timed wait, then we use semaphores instead of c.v.
-# define ACE_TOKEN_USES_SEMAPHORE
-#endif /* (ACE_WIN32 && !ACE_HAS_WINCE) || VXWORKS */
-
-#if defined (ACE_TOKEN_USES_SEMAPHORE)
-# include "ace/Semaphore.h"
-#endif /* ACE_TOKEN_USES_SEMAPHORE */
-
-#include "ace/Condition_Thread_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Time_Value;
-
-/**
- * @class ACE_Token
- *
- * @brief Class that acquires, renews, and releases a synchronization
- * token that is serviced in strict FIFO/LIFO ordering and that also
- * supports (1) recursion and (2) readers/writer semantics.
- *
- * This class is a more general-purpose synchronization mechanism
- * than many native OS mutexes. For example, it implements
- * "recursive mutex" semantics, where a thread that owns the token
- * can reacquire it without deadlocking. If the same thread calls
- * <acquire> multiple times, however, it must call <release> an
- * equal number of times before the token is actually released.
- * Threads that are blocked awaiting the token are serviced in
- * strict FIFO/LIFO order as other threads release the token (Solaris
- * and Pthread mutexes don't strictly enforce an acquisition
- * order). There are two lists within the class. Write
- * acquires always have higher priority over read acquires. Which
- * means, if you use both write/read operations, care must be
- * taken to avoid starvation on the readers. Notice that the
- * read/write acquire operations do not have the usual semantic of
- * reader/writer locks. Only one reader can acquire the token at
- * a time (which is different from the usual reader/writer locks
- * where several readers can acquire a lock at the same time as
- * long as there is no writer waiting for the lock). We choose
- * the names to (1) borrow the semantic to give writers higher
- * priority and (2) support a common interface for all locking
- * classes in ACE.
- */
-class ACE_Export ACE_Token
-{
-public:
-
- /**
- * Available queueing strategies.
- */
- enum QUEUEING_STRATEGY
- {
- /// FIFO, First In, First Out.
- FIFO = -1,
- /// LIFO, Last In, First Out
- LIFO = 0
- };
-
- // = Initialization and termination.
-
- /// Constructor
- ACE_Token (const ACE_TCHAR *name = 0, void * = 0);
-
- /// Destructor
- virtual ~ACE_Token (void);
-
- // = Strategies
-
- /// Retrieve the current queueing strategy.
- int queueing_strategy (void);
-
- /// Set the queueing strategy.
- void queueing_strategy (int queueing_strategy);
-
- // = Synchronization operations.
-
- /**
- * Acquire the token, sleeping until it is obtained or until the
- * expiration of @a timeout, which is treated as "absolute" time. If
- * some other thread currently holds the token then <sleep_hook> is
- * called before our thread goes to sleep. This <sleep_hook> can be
- * used by the requesting thread to unblock a token-holder that is
- * sleeping, e.g., by means of writing to a pipe (the ACE
- * ACE_Reactor uses this functionality). Return values: 0 if
- * acquires without calling <sleep_hook> 1 if <sleep_hook> is
- * called. 2 if the token is signaled. -1 if failure or timeout
- * occurs (if timeout occurs errno == ETIME) If @a timeout ==
- * <&ACE_Time_Value::zero> then acquire has polling semantics (and
- * does *not* call <sleep_hook>).
- */
- int acquire (void (*sleep_hook)(void *),
- void *arg = 0,
- ACE_Time_Value *timeout = 0);
-
- /**
- * This behaves just like the previous <acquire> method, except that
- * it invokes the virtual function called <sleep_hook> that can be
- * overridden by a subclass of ACE_Token.
- */
- int acquire (ACE_Time_Value *timeout = 0);
-
- /**
- * This should be overridden by a subclass to define the appropriate
- * behavior before <acquire> goes to sleep. By default, this is a
- * no-op...
- */
- virtual void sleep_hook (void);
-
- /**
- * An optimized method that efficiently reacquires the token if no
- * other threads are waiting. This is useful for situations where
- * you don't want to degrade the quality of service if there are
- * other threads waiting to get the token. If <requeue_position> ==
- * -1 and there are other threads waiting to obtain the token we are
- * queued according to the queueing strategy. If <requeue_position>
- * > -1 then it indicates how many entries to skip over before
- * inserting our thread into the list of waiters (e.g.,
- * <requeue_position> == 0 means "insert at front of the queue").
- * Renew has the rather odd semantics such that if there are other
- * waiting threads it will give up the token even if the
- * nesting_level_ > 1. I'm not sure if this is really the right
- * thing to do (since it makes it possible for shared data to be
- * changed unexpectedly) so use with caution... This method
- * maintians the original token priority. As in <acquire>, the
- * @a timeout value is an absolute time.
- */
- int renew (int requeue_position = 0,
- ACE_Time_Value *timeout = 0);
-
- /// Become interface-compliant with other lock mechanisms (implements
- /// a non-blocking <acquire>).
- int tryacquire (void);
-
- /// Shuts down the ACE_Token instance.
- int remove (void);
-
- /// Relinquish the token. If there are any waiters then the next one
- /// in line gets it.
- int release (void);
-
- /// Behaves like acquire() but at a lower priority. It should probably
- /// be called acquire_yield() since the semantics aren't really
- /// what's commonly expected for readers/writer locks. See the class
- /// documentation above for more details.
- int acquire_read (void);
-
- /// Behaves like acquire() but at a lower priority. It should probably
- /// be called acquire_yield() since the semantics aren't really
- /// what's commonly expected for readers/writer locks. See the class
- /// documentation above for more details.
- int acquire_read (void (*sleep_hook)(void *),
- void *arg = 0,
- ACE_Time_Value *timeout = 0);
-
- /// Calls acquire().
- int acquire_write (void);
-
- /// Calls acquire().
- int acquire_write (void (*sleep_hook)(void *),
- void *arg = 0,
- ACE_Time_Value *timeout = 0);
-
- /// Lower priority try_acquire().
- int tryacquire_read (void);
-
- /// Just calls <tryacquire>.
- int tryacquire_write (void);
-
- /// Assumes the caller has acquired the token and returns 0.
- int tryacquire_write_upgrade (void);
-
- // = Accessor methods.
-
- /// Return the number of threads that are currently waiting to get
- /// the token.
- int waiters (void);
-
- /// Return the id of the current thread that owns the token.
- ACE_thread_t current_owner (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /// The following structure implements a LIFO/FIFO queue of waiter threads
- /// that are asleep waiting to obtain the token.
- struct ACE_Token_Queue_Entry
- {
- /// Constructor
- ACE_Token_Queue_Entry (ACE_Thread_Mutex &m,
- ACE_thread_t t_id);
-
- /// Constructor using a pre-allocated attributes
- ACE_Token_Queue_Entry (ACE_Thread_Mutex &m,
- ACE_thread_t t_id,
- ACE_Condition_Attributes &attributes);
-
- /// Entry blocks on the token.
- int wait (ACE_Time_Value *timeout, ACE_Thread_Mutex &lock);
-
- /// Notify (unblock) the entry.
- int signal (void);
-
- /// Pointer to next waiter.
- ACE_Token_Queue_Entry *next_;
-
- /// ACE_Thread id of this waiter.
- ACE_thread_t thread_id_;
-
-#if defined (ACE_TOKEN_USES_SEMAPHORE)
- /// ACE_Semaphore object used to wake up waiter when it can run again.
- ACE_Semaphore cv_;
-#else
- /// ACE_Condition object used to wake up waiter when it can run again.
- ACE_Condition_Thread_Mutex cv_;
-#endif /* ACE_TOKEN_USES_SEMAPHORE */
-
- /// Ok to run.
- int runable_;
- };
-
-private:
- enum ACE_Token_Op_Type
- {
- READ_TOKEN = 1,
- WRITE_TOKEN
- };
-
- struct ACE_Token_Queue
- {
- /// Constructor
- ACE_Token_Queue (void);
-
- /// Remove a waiter from the queue.
- void remove_entry (ACE_Token_Queue_Entry *);
-
- /// Insert a waiter into the queue.
- void insert_entry (ACE_Token_Queue_Entry &entry,
- int requeue_position = -1);
-
- /// Head of the list of waiting threads.
- ACE_Token_Queue_Entry *head_;
-
- /// Tail of the list of waiting threads.
- ACE_Token_Queue_Entry *tail_;
- };
-
- /// Implements the <acquire> and <tryacquire> methods above.
- int shared_acquire (void (*sleep_hook_func)(void *),
- void *arg,
- ACE_Time_Value *timeout,
- ACE_Token_Op_Type op_type);
-
- /// Wake next in line for ownership.
- void wakeup_next_waiter (void);
-
- /// A queue of writer threads.
- ACE_Token_Queue writers_;
-
- /// A queue of reader threads.
- ACE_Token_Queue readers_;
-
- /// ACE_Thread_Mutex used to lock internal data structures.
- ACE_Thread_Mutex lock_;
-
- /// Current owner of the token.
- ACE_thread_t owner_;
-
- /// Some thread (i.e., <owner_>) is using the token. We need this
- /// extra variable to deal with POSIX pthreads madness...
- int in_use_;
-
- /// Number of waiters.
- int waiters_;
-
- /// Current nesting level.
- int nesting_level_;
-
- /// The attributes for the condition variables, optimizes lock time.
- ACE_Condition_Attributes attributes_;
-
- /// Queueing strategy, LIFO/FIFO.
- int queueing_strategy_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#else
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Export ACE_Token
-{
-public:
- int queueing_strategy (void) { ACE_NOTSUP_RETURN (-1); }
- void queueing_strategy (int /*queueing_strategy*/) { }
- int acquire (ACE_Time_Value * = 0) { ACE_NOTSUP_RETURN (-1); }
- int tryacquire (void) { ACE_NOTSUP_RETURN (-1); }
- int remove (void) { ACE_NOTSUP_RETURN (-1); }
- int release (void) { ACE_NOTSUP_RETURN (-1); }
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_THREADS */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Export ACE_Noop_Token : public ACE_Null_Mutex
-{
-public:
- /// Queueing strategy
- enum QUEUEING_STRATEGY
- {
- FIFO = -1,
- LIFO = 0
- };
-
- /// Get queueing strategy.
- int queueing_strategy (void);
-
- /// Set queueing strategy.
- void queueing_strategy (int queueing_strategy);
-
- int renew (int = 0, ACE_Time_Value * =0);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Token.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TOKEN_H */
-
diff --git a/dep/include/ace/Token.inl b/dep/include/ace/Token.inl
deleted file mode 100644
index f09a0e6f3de..00000000000
--- a/dep/include/ace/Token.inl
+++ /dev/null
@@ -1,176 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Token.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/config-macros.h"
-
-#if defined (ACE_HAS_THREADS)
-
-#include "ace/Guard_T.h"
-#include "ace/Time_Value.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_Token::queueing_strategy (void)
-{
- return this->queueing_strategy_;
-}
-
-ACE_INLINE void
-ACE_Token::queueing_strategy (int queueing_strategy)
-{
- this->queueing_strategy_ = queueing_strategy == -1 ? -1 : 0;
-}
-
-ACE_INLINE int
-ACE_Token::remove (void)
-{
- ACE_TRACE ("ACE_Token::remove");
- // Don't have an implementation for this yet...
- ACE_NOTSUP_RETURN (-1);
-}
-
-ACE_INLINE int
-ACE_Token::tryacquire (void)
-{
- ACE_TRACE ("ACE_Token::tryacquire");
- return this->shared_acquire
- (0, 0, (ACE_Time_Value *) &ACE_Time_Value::zero, ACE_Token::WRITE_TOKEN);
-}
-
-ACE_INLINE int
-ACE_Token::waiters (void)
-{
- ACE_TRACE ("ACE_Token::waiters");
- ACE_GUARD_RETURN (ACE_Thread_Mutex, ace_mon, this->lock_, -1);
-
- int const ret = this->waiters_;
- return ret;
-}
-
-ACE_INLINE ACE_thread_t
-ACE_Token::current_owner (void)
-{
- ACE_TRACE ("ACE_Token::current_owner");
- ACE_GUARD_RETURN (ACE_Thread_Mutex, ace_mon, this->lock_, this->owner_);
-
- return this->owner_;
-}
-
-ACE_INLINE int
-ACE_Token::acquire_read (void)
-{
- ACE_TRACE ("ACE_Token::acquire_read");
- return this->shared_acquire
- (0, 0, 0, ACE_Token::READ_TOKEN);
-}
-
-ACE_INLINE int
-ACE_Token::acquire_write (void)
-{
- ACE_TRACE ("ACE_Token::acquire_write");
- return this->shared_acquire
- (0, 0, 0, ACE_Token::WRITE_TOKEN);
-}
-
-ACE_INLINE int
-ACE_Token::tryacquire_read (void)
-{
- ACE_TRACE ("ACE_Token::tryacquire_read");
- return this->shared_acquire
- (0, 0, (ACE_Time_Value *) &ACE_Time_Value::zero, ACE_Token::READ_TOKEN);
-}
-
-ACE_INLINE int
-ACE_Token::acquire_read (void (*sleep_hook_func)(void *),
- void *arg,
- ACE_Time_Value *timeout)
-{
- ACE_TRACE ("ACE_Token::acquire_read");
- return this->shared_acquire (sleep_hook_func, arg, timeout, ACE_Token::READ_TOKEN);
-}
-
-ACE_INLINE int
-ACE_Token::tryacquire_write (void)
-{
- ACE_TRACE ("ACE_Token::tryacquire_write");
- return this->shared_acquire
- (0, 0, (ACE_Time_Value *) &ACE_Time_Value::zero, ACE_Token::WRITE_TOKEN);
-}
-
-ACE_INLINE int
-ACE_Token::tryacquire_write_upgrade (void)
-{
- ACE_TRACE ("ACE_Token::tryacquire_write_upgrade");
- return 0;
-}
-
-ACE_INLINE int
-ACE_Token::acquire_write (void (*sleep_hook_func)(void *),
- void *arg,
- ACE_Time_Value *timeout)
-{
- ACE_TRACE ("ACE_Token::acquire_write");
- return this->shared_acquire (sleep_hook_func, arg, timeout, ACE_Token::WRITE_TOKEN);
-}
-
-ACE_INLINE int
-ACE_Token::ACE_Token_Queue_Entry::wait (ACE_Time_Value *timeout, ACE_Thread_Mutex &lock)
-{
-#if defined (ACE_TOKEN_USES_SEMAPHORE)
- lock.release ();
- int const retv = (timeout == 0 ?
- this->cv_.acquire () :
- this->cv_.acquire (*timeout));
- lock.acquire ();
- return retv;
-#else
- ACE_UNUSED_ARG (lock);
- return this->cv_.wait (timeout);
-#endif /* ACE_TOKEN_USES_SEMAPHORE */
-}
-
-ACE_INLINE int
-ACE_Token::ACE_Token_Queue_Entry::signal (void)
-{
- return
-#if defined (ACE_TOKEN_USES_SEMAPHORE)
- this->cv_.release ();
-#else
- this->cv_.signal ();
-#endif /* ACE_TOKEN_USES_SEMAPHORE */
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_THREADS */
-
-/*****************************************************************************/
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_Noop_Token::queueing_strategy (void)
-{
- return -1;
-}
-
-ACE_INLINE void
-ACE_Noop_Token::queueing_strategy (int /* queueing_strategy */)
-{
-}
-
-ACE_INLINE int
-ACE_Noop_Token::renew (int, ACE_Time_Value *)
-{
- return 0;
-}
-
-ACE_INLINE void
-ACE_Noop_Token::dump (void) const
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
diff --git a/dep/include/ace/Token_Collection.h b/dep/include/ace/Token_Collection.h
deleted file mode 100644
index c238004756d..00000000000
--- a/dep/include/ace/Token_Collection.h
+++ /dev/null
@@ -1,242 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Token_Collection.h
- *
- * $Id: Token_Collection.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * The ACE_Token class offers methods for acquiring, renewing,
- * and releasing a synchronization token on a per-token basis. The
- * ACE_Token_Collection offers an interface for performing
- * operations on groups of tokens as a whole, or on a single token
- * within the collection.
- *
- * The atomic group operations are not yet implemented.
- *
- *
- * @author Douglas C. Schmidt (schmidt@cs.wustl.edu)
- * @author Tim Harrison (harrison@cs.wustl.edu)
- */
-//=============================================================================
-
-#ifndef ACE_TOKEN_COLLECTION_H
-#define ACE_TOKEN_COLLECTION_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Map_Manager.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_TOKENS_LIBRARY)
-
-#include "ace/Local_Tokens.h"
-#include "ace/Null_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Token_Collection
- *
- * @brief Allows atomic token group operations AND
- * provides a ACE_Token manager interface.
- *
- * There are two types of operations offered by
- * ACE_Token_Collection. The first is atomic operations on
- * collections of Token_Proxies. In this respect, the
- * ACE_Token_Collection can be thought of as a single token
- * consisting of multiple Token_Proxies. The second role of the
- * ACE_Token_Collection is as a ACE_Token manager.
- * ACE_Token_Collection allows individual operations on single
- * members of a collection of Token_Proxies. This provides a
- * single access point for operations on multiple tokens.
- *
- * @bug Although ACE_Token_Collection inherits from ACE_Token_Proxy, it
- * can not be including in a collection. This is because <clone>
- * returns zero for now.
- *
- */
-class ACE_Export ACE_Token_Collection : public ACE_Token_Proxy
-{
-public:
- /**
- * @a debug print out verbose debugging messages. @a name will give a
- * name to the collection. Collections don't really need names, but
- * are sometimes useful for debugging.
- */
- ACE_Token_Collection (bool debug = false,
- const ACE_TCHAR *name = 0);
-
-// Collection Management operations
-
- /**
- * Insert a Token into the collection. All ACE_Token type
- * operations performed on the collection will also be performed on
- * the new_proxy until it is removed. Note that no operations
- * performed prior to the insertion will be performed. Returns: 0
- * on success, -1 on failure with @c errno == problem. If a token
- * proxy already exists in the collection with the same name, the
- * insertion will fail. Also, <token> is copied. Note that during
- * the copy, client_id's are *not* inherited. The client ID of the
- * thread using the collection will be used. Client ID's can be
- * changed explicity on each proxy using is_member.
- */
- int insert (ACE_Token_Proxy &token);
-
- /**
- * Removes the ACE_Token matching the given token_name from the
- * collection. On success, extract returns 0. On failure
- * (token_name was not in the collection,) extract returns -1. On
- * success, the state of the token found is copied into proxy.
- * The returned ACE_Token_Proxy* must be deleted by the user.
- */
- int extract (const ACE_TCHAR *token_name, ACE_Token_Proxy *&proxy);
-
- /// Returns the proxy if true. 0 otherwise.
- ACE_Token_Proxy *is_member (const ACE_TCHAR *token_name);
-
- /**
- * Is the specified token in the collection?
- * 1, yes.
- * 0, no.
- */
- int is_member (const ACE_Token_Proxy &token);
-
-// = Collective operation semantics.
-
-// For acquire, renew, and release, there are two interfaces. Once
-// interface allows an operation on a single token in the
-// collection. The collective interfaces perform atomic operations
-// on the entire collection. For instance, a collective acquire
-// will perform an acquire for each and every token in the
-// collection or the operation will fail. Currently, these
-// operations are performed with no ordering heuristics. That is,
-// the Collection steps through the tokens in the order they were
-// inserted. For each one it performs the operation (acquire,
-// renew, or release).
-
- /**
- * Acquire "atomically" all resources in the collection. This is
- * only successfull if all tokens in the collection could be
- * acquired. options contains the blocking semantics, timeout
- * value, etc. Returns: 0 on success, -1 on failure with @c errno ==
- * problem. If and error or deadlock occurs for one of the tokens,
- * all the tokens will be released and the method will return -1.
- * Note that returning on detection of deadlock prevents livelock
- * between competing collections. If a collection returns after
- * detecting deadlock, it is the application's responsibility to not
- * to blindly loop on the collection::acquire operation. In other
- * words, once the collection reports deadlock, it is out of our
- * hands.
- */
- virtual int acquire (int notify = 0,
- void (*sleep_hook)(void *) = 0,
- ACE_Synch_Options &options =
- ACE_Synch_Options::defaults);
-
- /// Acquire the token corresponding to @a token_name. The other
- /// parameters are passed to <token>::acquire.
- virtual int acquire (const ACE_TCHAR *token_name,
- int notify = 0,
- void (*sleep_hook)(void *) = 0,
- ACE_Synch_Options &options =
- ACE_Synch_Options::defaults);
-
- /// Try to acquire all tokens in collection.
- virtual int tryacquire (void (*sleep_hook)(void *) = 0);
-
- /// Try to acquire @a token_name.
- virtual int tryacquire (const ACE_TCHAR *token_name,
- void (*sleep_hook)(void *) = 0);
-
- /**
- * Renews "atomically" all resources in the collection. This is
- * only successfull if all tokens in the collection could be
- * renewed. options contains the blocking semantics, timeout
- * value, etc. Returns: 0 on success, -1 on failure with @c errno ==
- * problem.
- */
- virtual int renew (int requeue_position = 0,
- ACE_Synch_Options &options =
- ACE_Synch_Options::defaults);
-
- /// Renew the token corresponding to @a token_name. The other
- /// parameters are passed to <token>::renew.
- virtual int renew (const ACE_TCHAR *token_name,
- int requeue_position = 0,
- ACE_Synch_Options &options =
- ACE_Synch_Options::defaults);
-
- /**
- * Releases "atomically" all resources in the collection. This is
- * only successfull if all tokens in the collection could be
- * released. options contains the blocking semantics, timeout
- * value, etc. Returns: 0 on success, -1 on failure with @c errno ==
- * problem.
- */
- virtual int release (ACE_Synch_Options &options =
- ACE_Synch_Options::defaults);
-
- /// Release the token corresponding to <token_name>. The other
- /// parameters are passed to <token>::release.
- virtual int release (const ACE_TCHAR *token_name,
- ACE_Synch_Options &options =
- ACE_Synch_Options::defaults);
-
- ~ACE_Token_Collection (void);
-
- /// Dump the state of the class.
- void dump (void) const;
-
- /// Return the name of the collection. Not very functionally
- /// important, but sometimes a useful debugging tool.
- virtual const ACE_TCHAR *name (void) const;
-
-protected:
-
- typedef ACE_Token_Name TOKEN_NAME;
-
- /// COLLECTION maintains a mapping from token names to ACE_Tokens*
- typedef ACE_Map_Manager<TOKEN_NAME, ACE_Token_Proxy *, ACE_Null_Mutex>
- COLLECTION;
-
- /// Allows iterations through collection_
- /**
- * @deprecated Deprecated typedef. Use COLLECTION::ITERATOR trait instead.
- */
- typedef COLLECTION::ITERATOR COLLECTION_ITERATOR;
-
- /// Allows iterations through collection_
- /**
- * @deprecated Deprecated typedef. Use COLLECTION::ENTRY trait instead.
- */
- typedef COLLECTION::ENTRY COLLECTION_ENTRY;
-
- /// COLLECTION maintains a mapping from token names to ACE_Tokens*.
- COLLECTION collection_;
-
- /// Whether to print out debug messages or not.
- bool debug_;
-
- /// Name of the collection.
- ACE_TCHAR name_[ACE_MAXTOKENNAMELEN];
-
- // = I'm not sure what these mean, but they have to be defined since they're
- // pure virtual in ACE_Token_Proxy.
- virtual ACE_Token_Proxy *clone (void) const;
- virtual ACE_Tokens *create_token (const ACE_TCHAR *name);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Token_Collection.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_TOKENS_LIBRARY */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TOKEN_COLLECTION_H */
-
diff --git a/dep/include/ace/Token_Collection.inl b/dep/include/ace/Token_Collection.inl
deleted file mode 100644
index 73f1e95d76e..00000000000
--- a/dep/include/ace/Token_Collection.inl
+++ /dev/null
@@ -1,17 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Token_Collection.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#if defined (ACE_HAS_TOKENS_LIBRARY)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE const ACE_TCHAR *
-ACE_Token_Collection::name (void) const
-{
- return name_;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_TOKENS_LIBRARY */
diff --git a/dep/include/ace/Token_Invariants.h b/dep/include/ace/Token_Invariants.h
deleted file mode 100644
index 1649e5937b3..00000000000
--- a/dep/include/ace/Token_Invariants.h
+++ /dev/null
@@ -1,246 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Token_Invariants.h
- *
- * $Id: Token_Invariants.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Tim Harrison (harrison@cs.wustl.edu)
- *
- * Allows applications to test that invariants are always
- * satisfied. Can test mutexes and readers/writer locks. Does
- * not test recursive acquisition.
- *
- *
- */
-//=============================================================================
-
-#ifndef ACE_TOKEN_INVARIANTS_H
-#define ACE_TOKEN_INVARIANTS_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_TOKENS_LIBRARY)
-
-#include "ace/Map_Manager.h"
-#include "ace/Local_Tokens.h"
-#include "ace/Null_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Mutex_Invariants
- *
- * @brief Mutex Invariants
- * = INVARIANTS
- * 1. Only one owner at a time.
- */
-class ACE_Export ACE_Mutex_Invariants
-{
-public:
- /// Default construction.
- ACE_Mutex_Invariants (void);
-
- /// Returns 1 on success, 0 when an invariant has been violated and
- /// -1 on error.
- int acquired (void);
-
- /// Updates internal database.
- void releasing (void);
-
- // = Map_Manager operations.
-
- /// Copy construction.
- ACE_Mutex_Invariants (const ACE_Mutex_Invariants &rhs);
-
- /// Copy.
- void operator= (const ACE_Mutex_Invariants &rhs);
-
- /// Dump the state of the class.
- void dump (void) const;
-
-private:
- /// Number of owners. This had better be 0 >= owners_ <= 1;
- int owners_;
-};
-
-/**
- * @class ACE_RWLock_Invariants
- *
- * @brief RWLock Invariants
- *
- * Preserve the following invariants:
- * -# Only one writer at a time.
- * -# If there is an owning writer, there are no owning readers.
- */
-class ACE_Export ACE_RWLock_Invariants
-{
-public:
- /// Default construction.
- ACE_RWLock_Invariants (void);
-
- /// Returns 1 on success, 0 when an invariant has been violated and
- /// -1 on error.
- int writer_acquired (void);
-
- /// Returns 1 on success, 0 when an invariant has been violated and
- /// -1 on error.
- int reader_acquired (void);
-
- /// Updates internal database.
- void releasing (void);
-
- // = Map_Manager operations.
-
- /// Copy construction.
- ACE_RWLock_Invariants (const ACE_RWLock_Invariants &rhs);
-
- /// Copy.
- void operator= (const ACE_RWLock_Invariants &rhs);
-
- /// Dump the state of the class.
- void dump (void) const;
-
-private:
- /// Number of owning writers.
- int writers_;
-
- /// Number of owning readers.
- int readers_;
-};
-
-/**
- * @class ACE_Token_Invariant_Manager
- *
- * @brief Token Invariants
- *
- * The Token Invariant Manager allows applications to test that
- * invariants are always satisfied. Currently, Token_Invariants
- * can test mutexes and readers/writer locks. Does not test
- * recursive acquisition.
- * Note that this class does not ever clean its database. Until
- * destroyed, it's size will forever increase.
- */
-class ACE_Export ACE_Token_Invariant_Manager : public ACE_Cleanup
-{
-public:
-
- /// Singleton access point.
- static ACE_Token_Invariant_Manager *instance (void);
-
- // = Polymorphic methods. Just pass in the proxy and the method
- // figures out the type of the token.
-
- /// Returns 1 on success, 0 when an invariant has been violated and
- /// -1 on error.
- int acquired (const ACE_Token_Proxy *proxy);
-
- /// Updates internal database.
- void releasing (const ACE_Token_Proxy *proxy);
-
- // = Explicit methods. These to not require actual proxies in order
- // to test a scenario.
-
- /// Returns 1 on success, 0 when an invariant has been violated and
- /// -1 on error.
- int mutex_acquired (const ACE_TCHAR *token_name);
-
- /// Updates internal database.
- void mutex_releasing (const ACE_TCHAR *token_name);
-
- /// Returns 1 on success, 0 when an invariant has been violated and
- /// -1 on error.
- int reader_acquired (const ACE_TCHAR *token_name);
-
- /// Returns 1 on success, 0 when an invariant has been violated and
- /// -1 on error.
- int writer_acquired (const ACE_TCHAR *token_name);
-
- /// Updates internal database.
- void rwlock_releasing (const ACE_TCHAR *token_name);
-
- /// Dump the state of the class.
- void dump (void) const;
-
- // = The following two method should be in the protected part of the
- // class. Bugs with certain compilers preclude this.
- /// Prevent non-singleton construction.
- ACE_Token_Invariant_Manager (void);
-
- /// Destruction.
- virtual ~ACE_Token_Invariant_Manager (void);
-
-protected:
- /// Return or create.
- int get_mutex (const ACE_TCHAR *token_name,
- ACE_Mutex_Invariants *&inv);
-
- /// Return or create.
- int get_rwlock (const ACE_TCHAR *token_name,
- ACE_RWLock_Invariants *&inv);
-
- /// ACE_Mutex_Token used to lock internal data structures.
- ACE_TOKEN_CONST::MUTEX lock_;
-
- /// This may be changed to a template type.
- typedef ACE_Token_Name TOKEN_NAME;
-
- /// COLLECTION maintains a mapping from token names to mutexes.
- typedef ACE_Map_Manager<TOKEN_NAME, ACE_Mutex_Invariants *, ACE_Null_Mutex>
- MUTEX_COLLECTION;
-
- /// Allows iterations through collection.
- /**
- * @deprecated Deprecated typedef. Use MUTEX_COLLECTION::ITERATOR trait
- * instead.
- */
- typedef MUTEX_COLLECTION::ITERATOR MUTEX_COLLECTION_ITERATOR;
-
- /// Allows iterations through collection.
- /**
- * @deprecated Deprecated typedef. Use MUTEX_COLLECTION::ENTRY trait
- * instead.
- */
- typedef MUTEX_COLLECTION::ENTRY MUTEX_COLLECTION_ENTRY;
-
- /// MUTEX_COLLECTION maintains a mapping from token names to mutexes.
- MUTEX_COLLECTION mutex_collection_;
-
- /// COLLECTION maintains a mapping from token names to mutexes.
- typedef ACE_Map_Manager<TOKEN_NAME, ACE_RWLock_Invariants *, ACE_Null_Mutex>
- RWLOCK_COLLECTION;
-
- /// Allows iterations through collection.
- /**
- * @deprecated Deprecated typedef. Use RWLOCK_COLLECTION::ITERATOR trait
- * instead.
- */
- typedef RWLOCK_COLLECTION::ITERATOR RWLOCK_COLLECTION_ITERATOR;
-
- /// Allows iterations through collection.
- /**
- * @deprecated Deprecated typedef. Use RWLOCK_COLLECTION::ENTRY trait
- * instead.
- */
- typedef RWLOCK_COLLECTION::ENTRY RWLOCK_COLLECTION_ENTRY;
-
- /// MUTEX_COLLECTION maintains a mapping from token names to mutexes.
- RWLOCK_COLLECTION rwlock_collection_;
-
- /// Singleton pointer.
- static ACE_Token_Invariant_Manager *instance_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_TOKENS_LIBRARY */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TOKEN_INVARIANTS_H */
-
diff --git a/dep/include/ace/Token_Manager.h b/dep/include/ace/Token_Manager.h
deleted file mode 100644
index 6a7c17d4167..00000000000
--- a/dep/include/ace/Token_Manager.h
+++ /dev/null
@@ -1,151 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Token_Manager.h
- *
- * $Id: Token_Manager.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Tim Harrison (harrison@cs.wustl.edu)
- */
-//=============================================================================
-
-#ifndef ACE_TOKEN_MANAGER_H
-#define ACE_TOKEN_MANAGER_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Local_Tokens.h"
-
-#if defined (ACE_HAS_TOKENS_LIBRARY)
-
-#include "ace/Null_Mutex.h"
-#include "ace/Map_Manager.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Local_Mutex;
-class ACE_Mutex_Token;
-
-/**
- * @class ACE_Token_Manager
- *
- * @brief Manages all tokens in a process space.
- *
- * Factory: Proxies use the token manager to obtain token
- * references. This allows multiple proxies to reference the same
- * logical token.
- * Deadlock detection: Tokens use the manager to check for
- * deadlock situations during acquires.
- */
-class ACE_Export ACE_Token_Manager : public ACE_Cleanup
-{
-
- // To add a new type of token (e.g. semaphore), do the following
- // steps: 1. Create a new derivation of ACE_Token. This class
- // defines the semantics of the new Token. 2. Create a
- // derivation of ACE_Token_Manager. You will only need to
- // redefine make_mutex.
-public:
- ACE_Token_Manager (void);
- virtual ~ACE_Token_Manager (void);
-
- /// Get the pointer to token manager singleton.
- static ACE_Token_Manager *instance (void);
-
- /// Set the pointer to token manager singleton.
- void instance (ACE_Token_Manager *);
-
- /**
- * The Token manager uses ACE_Token_Proxy::token_id_ to look for
- * an existing token. If none is found, the Token Manager calls
- * ACE_Token_Proxy::create_token to create a new one. When
- * finished, sets ACE_Token_Proxy::token_. @a token_name uniquely
- * id's the token name.
- */
- void get_token (ACE_Token_Proxy *, const ACE_TCHAR *token_name);
-
- /**
- * Check whether acquire will cause deadlock or not.
- * returns 1 if the acquire will _not_ cause deadlock.
- * returns 0 if the acquire _will_ cause deadlock.
- * This method ignores recursive acquisition. That is, it will not
- * report deadlock if the client holding the token requests the
- * token again. Thus, it assumes recursive mutexes.
- */
- int check_deadlock (ACE_Token_Proxy *proxy);
- int check_deadlock (ACE_Tokens *token, ACE_Token_Proxy *proxy);
-
- /// Notify the token manager that a token has been released. If as a
- /// result, there is no owner of the token, the token is deleted.
- void release_token (ACE_Tokens *&token);
-
- /**
- * This is to allow Tokens to perform atomic transactions. The
- * typical usage is to acquire this mutex, check for a safe_acquire,
- * perform some queueing (if need be) and then release the lock.
- * This is necessary since safe_acquire is implemented in terms of
- * the Token queues.
- */
- ACE_TOKEN_CONST::MUTEX &mutex (void);
-
- /// Dump the state of the class.
- void dump (void) const;
-
- /// Turn debug mode on/off.
- void debug (bool d);
-
-private:
- /// Whether to print debug messages or not.
- bool debug_;
-
- /// pointer to singleton token manager.
- static ACE_Token_Manager *token_manager_;
-
- /// Return the token that the given client_id is waiting for, if any
- ACE_Tokens *token_waiting_for (const ACE_TCHAR *client_id);
-
- /// ACE_Mutex_Token used to lock internal data structures.
- ACE_TOKEN_CONST::MUTEX lock_;
-
- /// This may be changed to a template type.
- typedef ACE_Token_Name TOKEN_NAME;
-
- /// COLLECTION maintains a mapping from token names to ACE_Tokens*
- typedef ACE_Map_Manager<TOKEN_NAME, ACE_Tokens *, ACE_Null_Mutex>
- COLLECTION;
-
- /// Allows iterations through collection_
- /**
- * @deprecated Deprecated typedef. Use COLLECTION::ITERATOR trait
- * instead.
- */
- typedef COLLECTION::ITERATOR COLLECTION_ITERATOR;
-
- /// Allows iterations through collection_
- /**
- * @deprecated Deprecated typedef. Use COLLECTION::ENTRY trait
- * instead.
- */
- typedef COLLECTION::ENTRY COLLECTION_ENTRY;
-
- /// COLLECTION maintains a mapping from token names to ACE_Tokens*.
- COLLECTION collection_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Token_Manager.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_TOKENS_LIBRARY */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TOKEN_MANAGER_H */
-
diff --git a/dep/include/ace/Token_Manager.inl b/dep/include/ace/Token_Manager.inl
deleted file mode 100644
index a44778c89b2..00000000000
--- a/dep/include/ace/Token_Manager.inl
+++ /dev/null
@@ -1,25 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Token_Manager.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#if defined (ACE_HAS_TOKENS_LIBRARY)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ACE_TOKEN_CONST::MUTEX &
-ACE_Token_Manager::mutex (void)
-{
- ACE_TRACE ("ACE_Token_Manager::mutex");
- return lock_;
-}
-
-ACE_INLINE void
-ACE_Token_Manager::debug (bool d)
-{
- ACE_TRACE ("ACE_Token_Manager::debug");
- debug_ = d;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_TOKENS_LIBRARY */
diff --git a/dep/include/ace/Token_Request_Reply.h b/dep/include/ace/Token_Request_Reply.h
deleted file mode 100644
index 18bb0d493cf..00000000000
--- a/dep/include/ace/Token_Request_Reply.h
+++ /dev/null
@@ -1,270 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Token_Request_Reply.h
- *
- * $Id: Token_Request_Reply.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Define the format used to exchange messages between the
- * ACE_Token Server and its clients.
- *
- *
- * @author Douglas C. Schmidt (schmidt@cs.wustl.edu)
- * @author Tim Harrison (harrison@cs.wustl.edu)
- */
-//=============================================================================
-
-#ifndef ACE_TOKEN_REQUEST_REPLY_H
-#define ACE_TOKEN_REQUEST_REPLY_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Local_Tokens.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_TOKENS_LIBRARY)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/// Specifies the size of the fixed length portion of
-/// the Transfer structure in ACE_Token_Request
-#define ACE_TOKEN_REQUEST_HEADER_SIZE 40
-
-/**
- * @class ACE_Token_Request
- *
- * @brief Message format for delivering requests to the ACE_Token Server.
- *
- * This class is implemented to minimize data copying.
- * In particular, all marshaling is done in situ...
- */
-class ACE_Export ACE_Token_Request
-{
-public:
- /// Operation types.
- enum OPERATION
- {
- /// Acquire the token.
- ACQUIRE,
- /// Release the token.
- RELEASE,
- /// Renew the token.
- RENEW,
- /// Remove the token.
- REMOVE,
- // Try to acquire the token.
- TRY_ACQUIRE
- };
-
- /// Default constructor.
- ACE_Token_Request (void);
-
- /**
- * @param token_type MUTEX, RWLOCK
- * @param proxy_type MUTEX, RLOCK, WLOCK (acquires mean different things)
- * @param operation method
- * @param token_name
- * @param client_id
- * @param options We check USE_TIMEOUT and use the arg.
- */
- ACE_Token_Request (int token_type,
- int proxy_type,
- ACE_UINT32 operation,
- const ACE_TCHAR token_name[],
- const ACE_TCHAR client_id[],
- const ACE_Synch_Options &options);
-
- /// Get the length of the encoded/decoded message.
- ACE_UINT32 length (void) const;
-
- /// Set the length of the encoded/decoded message.
- void length (ACE_UINT32);
-
- /// Get the type of proxy
- int proxy_type (void) const;
-
- /// Set the type of proxy
- void proxy_type (int proxy_type);
-
- /// Get the type of token
- int token_type (void) const;
-
- /// Set the type of token
- void token_type (int token_type);
-
- /// Get the type of the operation.
- ACE_UINT32 operation_type (void) const;
-
- /// Set the type of the operation.
- void operation_type (ACE_UINT32);
-
- /// Get the requeue position. These should be used when renew
- /// is the operation type.
- ACE_UINT32 requeue_position (void) const;
-
- /// Set the requeue position. These should be used when renew
- /// is the operation type.
- void requeue_position (ACE_UINT32);
-
- /// Get notify. These should be used when acquire is the operation type.
- ACE_UINT32 notify (void) const;
-
- /// Set notify. These should be used when acquire is the operation type.
- void notify (ACE_UINT32);
-
- /// Get the timeout.
- ACE_Synch_Options &options (void) const;
-
- /// Set the timeout.
- void options (const ACE_Synch_Options &options);
-
- // = Set/get the name of the token and the client id. The set
- // method is combined to make it easier on us. We're copying the
- // names as a contiguous buffer.
- ACE_TCHAR *token_name (void) const;
- ACE_TCHAR *client_id (void) const;
- void token_name (const ACE_TCHAR *token_name, const ACE_TCHAR *client_id);
-
- /// Encode the message before transmission.
- int encode (void *&);
-
- /// Decode message after reception. This must be called to set the
- /// internal options.
- int decode (void);
-
- /// Print out the values of the message for debugging purposes.
- void dump (void) const;
-
-private:
- // = The 5 fields in the <Transfer> struct are transmitted to the server.
- // The remaining 2 fields are not tranferred -- they are used only on
- // the server-side to simplify lookups.
-
- struct Transfer
- {
- /// Length of entire request.
- ACE_UINT32 length_;
-
- /// Type of the request (i.e., MUTEX, RLOCK, WLOCK...
- ACE_UINT32 token_type_;
-
- /// Type of the request (i.e., MUTEX, RLOCK, WLOCK...
- ACE_UINT32 proxy_type_;
-
- /// Type of the request (i.e., <ACQUIRE>, <RELEASE>, <RENEW>, and <REMOVE>).
- ACE_UINT32 operation_type_;
-
- /// this only makes sense when operation type is renew
- ACE_UINT32 requeue_position_;
-
- /// this only makes sense when operation type is renew
- ACE_UINT32 notify_;
-
- // = ACE_Synch_Options stuff
-
- /// Indicates if we should block forever. If 1, then <secTimeout_>
- /// and <usecTimeout_> indicates how long we should wait. If 0,
- /// then we block forever.
- ACE_UINT32 use_timeout_;
-
- /// Max seconds willing to wait for token if not blocking forever.
- ACE_UINT32 sec_;
-
- /// Max micro seconds to wait for token if not blocking forever.
- ACE_UINT32 usec_;
-
- /// value returned in <Token_Reply::arg>;
- ACE_UINT32 arg_;
-
- /// The data portion contains the <tokenName_> including a 0 terminator,
- /// a ':', then the <clientId> including a 0 terminator
- ACE_TCHAR data_[ACE_MAXTOKENNAMELEN + ACE_MAXCLIENTIDLEN + 3];
- } transfer_;
-
- /// Pointer to the beginning of the token name in this->data_.
- ACE_TCHAR *token_name_;
-
- /// Pointer to the beginning of the client id in this->data_;
- ACE_TCHAR *client_id_;
-
- /// Holds arg, sec, usec, etc.
- ACE_Synch_Options options_;
-};
-
-/**
- * @class ACE_Token_Reply
- *
- * @brief Message format for delivering replies from the ACE_Token Server.
- *
- * This class is implemented to minimize data copying.
- * In particular, all marshaling is done in situ...
- */
-class ACE_Export ACE_Token_Reply
-{
-public:
- /// Default constructor.
- ACE_Token_Reply (void);
-
- /// Get the length of the encoded/decoded message.
- ACE_UINT32 length (void) const;
-
- /// Set the length of the encoded/decoded message.
- void length (ACE_UINT32);
-
- /// Get the errno of a reply.
- ACE_UINT32 errnum (void) const;
-
- /// Set the errno of a reply.
- void errnum (ACE_UINT32);
-
- /// Get the arg of a reply.
- ACE_UINT32 arg (void) const;
-
- /// Set the arg of a reply.
- void arg (ACE_UINT32);
-
- /// Encode the message before transfer.
- int encode (void *&);
-
- /// Decode a message after reception.
- int decode (void);
-
- /// Print out the values of the message for debugging purposes.
- void dump (void) const;
-
-private:
- // = The 2 fields in the <Transfer> struct are transmitted to the server.
-
- struct Transfer
- {
- /// Length of entire reply.
- ACE_UINT32 length_;
-
- /// Indicates why error occurred if <this->type_> == <FAILURE>.
- /// Typical reasons include:
- /// @c EWOULDBLOCK (if client requested a non-blocking check for the token).
- /// @c ETIME (if the client timed out after waiting for the token).
- /// <ENOLCK> (if the token lock was removed out from underneath a waiter).
- /// <EACCES> (attempt to renew a token that isn't owned by the client).
- ACE_UINT32 errno_;
-
- /// magic cookie
- ACE_UINT32 arg_;
-
- } transfer_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Token_Request_Reply.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_TOKENS_LIBRARY */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TOKEN_REQUEST_REPLY_H */
-
diff --git a/dep/include/ace/Token_Request_Reply.inl b/dep/include/ace/Token_Request_Reply.inl
deleted file mode 100644
index 4291bfa6089..00000000000
--- a/dep/include/ace/Token_Request_Reply.inl
+++ /dev/null
@@ -1,205 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Token_Request_Reply.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#if defined (ACE_HAS_TOKENS_LIBRARY)
-
-#include "ace/Truncate.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// = Set/get the length of the encoded/decoded message.
-
-ACE_INLINE ACE_UINT32
-ACE_Token_Request::length (void) const
-{
- return ntohl (this->transfer_.length_);
-}
-
-ACE_INLINE void
-ACE_Token_Request::length (ACE_UINT32 l)
-{
- this->transfer_.length_ = htonl (l);
-}
-
-// = Set/get the type of the message.
-ACE_INLINE int
-ACE_Token_Request::token_type (void) const
-{
- return (int) ntohl (this->transfer_.token_type_);
-}
-
-ACE_INLINE void
-ACE_Token_Request::token_type (int t)
-{
- this->transfer_.token_type_ = htonl ((ACE_UINT32) t);
-}
-
-// = Set/get the type of the message.
-ACE_INLINE int
-ACE_Token_Request::proxy_type (void) const
-{
- return (int) ntohl (this->transfer_.proxy_type_);
-}
-
-ACE_INLINE void
-ACE_Token_Request::proxy_type (int t)
-{
- this->transfer_.proxy_type_ = htonl ((ACE_UINT32) t);
-}
-
-// = Set/get the type of the message.
-ACE_INLINE ACE_UINT32
-ACE_Token_Request::operation_type (void) const
-{
- return ntohl (this->transfer_.operation_type_);
-}
-
-ACE_INLINE void
-ACE_Token_Request::operation_type (ACE_UINT32 t)
-{
- this->transfer_.operation_type_ = htonl (t);
-}
-
-// = Set/get the requeue position
-ACE_INLINE ACE_UINT32
-ACE_Token_Request::requeue_position (void) const
-{
- return ntohl (this->transfer_.requeue_position_);
-}
-
-ACE_INLINE void
-ACE_Token_Request::requeue_position (ACE_UINT32 rq)
-{
- this->transfer_.requeue_position_ = htonl (rq);
-}
-
-// = Set/get the requeue position
-ACE_INLINE ACE_UINT32
-ACE_Token_Request::notify (void) const
-{
- return ntohl (this->transfer_.notify_);
-}
-
-ACE_INLINE void
-ACE_Token_Request::notify (ACE_UINT32 rq)
-{
- this->transfer_.notify_ = htonl (rq);
-}
-
-// = Set/get the blocking semantics.
-ACE_INLINE ACE_Synch_Options &
-ACE_Token_Request::options (void) const
-{
- return (ACE_Synch_Options &) options_;
-}
-
-ACE_INLINE void
-ACE_Token_Request::options (const ACE_Synch_Options &opt)
-{
- // fight the friggin const from hell
- ACE_Synch_Options *options = (ACE_Synch_Options *) &opt;
-
- transfer_.use_timeout_ = options->operator[](ACE_Synch_Options::USE_TIMEOUT);
- if (transfer_.use_timeout_ == 1)
- {
- transfer_.usec_ = options->timeout ().usec ();
- if (options->timeout ().sec () > (time_t) ACE_UINT32_MAX)
- transfer_.sec_ = ACE_UINT32_MAX;
- else
- transfer_.sec_ = static_cast<ACE_UINT32> (options->timeout ().sec ());
- }
- else
- {
- transfer_.usec_ = 0;
- transfer_.sec_ = 0;
- }
-}
-
-// = Set/get the name of the token.
-ACE_INLINE ACE_TCHAR *
-ACE_Token_Request::token_name (void) const
-{
- return token_name_;
-}
-
-ACE_INLINE void
-ACE_Token_Request::token_name (const ACE_TCHAR *token_name,
- const ACE_TCHAR *client_id)
-{
- size_t token_name_length = ACE_OS::strlen (token_name) + 1; // Add 1 for '\0'.
- size_t client_id_length = ACE_OS::strlen (client_id) + 1; // Add 1 for '\0'.
-
- // Set up pointers and copy token_name and client_id into request.
- token_name_ = this->transfer_.data_;
- client_id_ = &this->token_name_[token_name_length + 1]; // Add 1 for ':';
- client_id_[-1] = ACE_TEXT (':'); // Insert the ':' before this->clientId_.
-
- (void) ACE_OS::memcpy (this->token_name_,
- token_name,
- token_name_length * sizeof (ACE_TCHAR));
- (void) ACE_OS::memcpy (this->client_id_,
- client_id,
- client_id_length * sizeof (ACE_TCHAR));
-
- // Fixed length header size
- size_t len = ACE_TOKEN_REQUEST_HEADER_SIZE;
-
- // ... then add in the amount of the variable-sized portion.
- len += token_name_length + client_id_length + 1;
- this->length (ACE_Utils::truncate_cast<ACE_UINT32> (len));
-}
-
-// = Set/get the id of the client.
-ACE_INLINE ACE_TCHAR *
-ACE_Token_Request::client_id (void) const
-{
- return this->client_id_;
-}
-
-// ************************************************************
-// ************************************************************
-// ************************************************************
-
-// = Set/get the length of the encoded/decoded message.
-ACE_INLINE ACE_UINT32
-ACE_Token_Reply::length (void) const
-{
- return ntohl (this->transfer_.length_);
-}
-
-ACE_INLINE void
-ACE_Token_Reply::length (ACE_UINT32 l)
-{
- this->transfer_.length_ = htonl (l);
-}
-
-// = Set/get the errno of a failed reply.
-ACE_INLINE ACE_UINT32
-ACE_Token_Reply::errnum (void) const
-{
- return ntohl (this->transfer_.errno_);
-}
-
-ACE_INLINE void
-ACE_Token_Reply::errnum (ACE_UINT32 e)
-{
- this->transfer_.errno_ = htonl (e);
-}
-
-// = Set/get the length of the encoded/decoded message.
-ACE_INLINE ACE_UINT32
-ACE_Token_Reply::arg (void) const
-{
- return ntohl (this->transfer_.arg_);
-}
-
-ACE_INLINE void
-ACE_Token_Reply::arg (ACE_UINT32 arg)
-{
- this->transfer_.arg_ = htonl (arg);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_TOKENS_LIBRARY */
diff --git a/dep/include/ace/Trace.h b/dep/include/ace/Trace.h
deleted file mode 100644
index f1c6aa86037..00000000000
--- a/dep/include/ace/Trace.h
+++ /dev/null
@@ -1,97 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Trace.h
- *
- * $Id: Trace.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_TRACE_H
-#define ACE_TRACE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Trace
- *
- * @brief A C++ trace facility that keeps track of which methods are
- * entered and exited.
- *
- * This class uses C++ constructors and destructors to automate
- * the ACE_Trace nesting. In addition, thread-specific storage
- * is used to enable multiple threads to work correctly.
- */
-class ACE_Export ACE_Trace
-{
-public:
- // = Initialization and termination methods.
-
- /// Perform the first part of the trace, which prints out the string
- /// N, the LINE, and the ACE_FILE as the function is entered.
- ACE_Trace (const ACE_TCHAR *n,
- int line = 0,
- const ACE_TCHAR *file = ACE_TEXT (""));
-
- /// Perform the second part of the trace, which prints out the NAME
- /// as the function is exited.
- ~ACE_Trace (void);
-
- // = Control the tracing level.
- /// Determine if tracing is enabled (return == 1) or not (== 0)
- static int is_tracing(void);
-
- /// Enable the tracing facility.
- static void start_tracing (void);
-
- /// Disable the tracing facility.
- static void stop_tracing (void);
-
- /// Change the nesting indentation level.
- static void set_nesting_indent (int indent);
-
- /// Get the nesting indentation level.
- static int get_nesting_indent (void);
-
- /// Dump the state of an object.
- void dump (void) const;
-
-private:
- // Keeps track of how deeply the call stack is nested (this is
- // maintained in thread-specific storage to ensure correctness in
- // multiple threads of control.
-
- /// Name of the method we are in.
- const ACE_TCHAR *name_;
-
- /// Keeps track of how far to indent per trace call.
- static int nesting_indent_;
-
- /// Is tracing enabled?
- static int enable_tracing_;
-
- /// Default values.
- enum
- {
- DEFAULT_INDENT = 3,
- DEFAULT_TRACING = 1
- };
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_TRACE_H */
-
diff --git a/dep/include/ace/Truncate.h b/dep/include/ace/Truncate.h
deleted file mode 100644
index 0af5b022473..00000000000
--- a/dep/include/ace/Truncate.h
+++ /dev/null
@@ -1,1054 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Truncate.h
- *
- * $Id: Truncate.h 82623 2008-08-13 14:41:09Z johnnyw $
- *
- * @author Steve Huston <shuston@riverace.com>
- * @author Ossama Othman <ossama_othman@symantec.com>
- * @author Russell Mora <russell_mora@symantec.com>
- */
-//=============================================================================
-
-#ifndef ACE_TRUNCATE_H
-#define ACE_TRUNCATE_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Global_Macros.h"
-#include "ace/If_Then_Else.h"
-#include "ace/Numeric_Limits.h"
-
-#if defined (ACE_LACKS_LONGLONG_T) \
- || defined (__BORLANDC__) && __BORLANDC__ < 0x590
-# include "ace/Basic_Types.h"
-#endif /* ACE_LACKS_LONGLONG_T || __BORLANDC__ < 0x590 */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_Utils
-{
-
-#if !defined (__BORLANDC__) || __BORLANDC__ >= 0x590
-
- template<typename T> struct Sign_Check;
-
- // Specialize the unsigned signed cases.
- template<> struct Sign_Check<unsigned char> { ACE_STATIC_CONSTANT (bool, is_signed = 0); };
- template<> struct Sign_Check<unsigned short> { ACE_STATIC_CONSTANT (bool, is_signed = 0); };
- template<> struct Sign_Check<unsigned int> { ACE_STATIC_CONSTANT (bool, is_signed = 0); };
- template<> struct Sign_Check<unsigned long> { ACE_STATIC_CONSTANT (bool, is_signed = 0); };
-#if !(defined(ACE_LACKS_LONGLONG_T) || defined(ACE_LACKS_UNSIGNEDLONGLONG_T))
-# ifdef __GNUC__
- // Silence g++ "-pedantic" warnings regarding use of "long long"
- // type.
- __extension__
-# endif /* __GNUC__ */
- template<> struct Sign_Check<unsigned long long> { ACE_STATIC_CONSTANT (bool, is_signed = 0); };
-#else
- template<> struct Sign_Check<ACE_U_LongLong> { ACE_STATIC_CONSTANT (bool, is_signed = 0); };
-#endif /* !ACE_LACKS_LONGLONG_T */
-
- // Specialize the signed cases.
- template<> struct Sign_Check<signed char> { ACE_STATIC_CONSTANT (bool, is_signed = 1); };
- template<> struct Sign_Check<signed short> { ACE_STATIC_CONSTANT (bool, is_signed = 1); };
- template<> struct Sign_Check<signed int> { ACE_STATIC_CONSTANT (bool, is_signed = 1); };
- template<> struct Sign_Check<signed long> { ACE_STATIC_CONSTANT (bool, is_signed = 1); };
-#ifndef ACE_LACKS_LONGLONG_T
-# ifdef __GNUC__
- // Silence g++ "-pedantic" warnings regarding use of "long long"
- // type.
- __extension__
-# endif /* __GNUC__ */
- template<> struct Sign_Check<signed long long> { ACE_STATIC_CONSTANT (bool, is_signed = 1); };
-#endif /* !ACE_LACKS_LONGLONG_T */
-
- // -----------------------------------------------------
-
- /**
- * @struct To_Unsigned
- *
- * @brief Retrieve unsigned counterpart to given type or value.
- *
- * Retrieve unsigned counterpart to given type or value.
- */
- template<typename T> struct To_Unsigned;
-
- template<>
- struct To_Unsigned<unsigned char>
- {
- typedef unsigned char unsigned_type;
-
- unsigned_type operator() (unsigned_type x) { return x; }
- };
-
- template<>
- struct To_Unsigned<unsigned short>
- {
- typedef unsigned short unsigned_type;
-
- unsigned_type operator() (unsigned_type x) { return x; }
- };
-
- template<>
- struct To_Unsigned<unsigned int>
- {
- typedef unsigned int unsigned_type;
-
- unsigned_type operator() (unsigned_type x) { return x; }
- };
-
- template<>
- struct To_Unsigned<unsigned long>
- {
- typedef unsigned long unsigned_type;
-
- unsigned_type operator() (unsigned_type x) { return x; }
- };
-
-#if !(defined(ACE_LACKS_LONGLONG_T) || defined(ACE_LACKS_UNSIGNEDLONGLONG_T))
-# ifdef __GNUC__
- // Silence g++ "-pedantic" warnings regarding use of "long long"
- // type.
- __extension__
-# endif /* __GNUC__ */
- template<>
- struct To_Unsigned<unsigned long long>
- {
- typedef unsigned long long unsigned_type;
-
- unsigned_type operator() (unsigned_type x) { return x; }
- };
-#else
- template<>
- struct To_Unsigned<ACE_U_LongLong>
- {
- typedef ACE_U_LongLong unsigned_type;
-
- unsigned_type operator() (unsigned_type x) { return x; }
- };
-#endif /* !ACE_LACKS_LONGLONG_T */
-
- // ----------------
-
- template<>
- struct To_Unsigned<signed char>
- {
- typedef signed char signed_type;
- typedef unsigned char unsigned_type;
-
- unsigned_type operator() (signed_type x)
- {
- return static_cast<unsigned_type> (x);
- }
- };
-
- template<>
- struct To_Unsigned<signed short>
- {
- typedef signed short signed_type;
- typedef unsigned short unsigned_type;
-
- unsigned_type operator() (signed_type x)
- {
- return static_cast<unsigned_type> (x);
- }
- };
-
- template<>
- struct To_Unsigned<signed int>
- {
- typedef signed int signed_type;
- typedef unsigned int unsigned_type;
-
- unsigned_type operator() (signed_type x)
- {
- return static_cast<unsigned_type> (x);
- }
- };
-
- template<>
- struct To_Unsigned<signed long>
- {
- typedef signed long signed_type;
- typedef unsigned long unsigned_type;
-
- unsigned_type operator() (signed_type x)
- {
- return static_cast<unsigned_type> (x);
- }
- };
-
-#if !(defined(ACE_LACKS_LONGLONG_T) || defined(ACE_LACKS_UNSIGNEDLONGLONG_T))
-# ifdef __GNUC__
- // Silence g++ "-pedantic" warnings regarding use of "long long"
- // type.
- __extension__
-# endif /* __GNUC__ */
- template<>
- struct To_Unsigned<signed long long>
- {
- typedef signed long long signed_type;
- typedef unsigned long long unsigned_type;
-
- unsigned_type operator() (signed_type x)
- {
- return static_cast<unsigned_type> (x);
- }
- };
-#endif /* !ACE_LACKS_LONGLONG_T */
-
- // -----------------------------------------------------
-
- /**
- * @struct Safe_Comparator
- *
- * @brief Conservative comparison of types that may not be safely
- * promoted and/or converted to each other.
- *
- * The comparison operations provided by this structure perform
- * negative value checking when necessary to prevent wrap-around
- * when explicitly casting to an unsigned type.
- *
- * @internal This structure is not meant for general use.
- */
- template<typename LEFT,
- typename RIGHT,
- bool IS_LEFT_SIGNED,
- bool IS_RIGHT_SIGNED> struct Safe_Comparator;
-
- // LEFT: signed, RIGHT: unsigned
- template<typename LEFT, typename RIGHT>
- struct Safe_Comparator<LEFT, RIGHT, true, false>
- {
- static bool greater_than (LEFT lhs, RIGHT rhs)
- {
- // Prevent wrap-around when casting to unsigned.
- if (lhs < 0)
- return false; // since rhs is always positive
- else
- {
- // Implicit promotion of unsigned LEFT and RIGHT types here.
- return To_Unsigned<LEFT>() (lhs) > rhs;
- }
- }
- };
-
- // LEFT: unsigned, RIGHT: signed
- template<typename LEFT, typename RIGHT>
- struct Safe_Comparator<LEFT, RIGHT, false, true>
- {
- static bool greater_than (LEFT lhs, RIGHT rhs)
- {
- // Prevent wrap-around when casting to unsigned.
- if (rhs < 0)
- return true; // since lhs is always positive
- else
- {
- // Implicit promotion of unsigned LEFT and RIGHT types here.
- return lhs > To_Unsigned<RIGHT>() (rhs);
- }
- }
- };
-
- // LEFT: unsigned, RIGHT: unsigned
- template<typename LEFT, typename RIGHT>
- struct Safe_Comparator<LEFT, RIGHT, false, false>
- {
- static bool greater_than (LEFT lhs, RIGHT rhs)
- {
- // Implicit promotion of unsigned LEFT and RIGHT types here.
- return lhs > rhs;
- }
- };
-
- // LEFT: signed, RIGHT: signed
- template<typename LEFT, typename RIGHT>
- struct Safe_Comparator<LEFT, RIGHT, true, true>
- {
- static bool greater_than (LEFT lhs, RIGHT rhs)
- {
- // Implicit promotion of signed LEFT and RIGHT types here.
- return lhs > rhs;
- }
- };
-
- // -----------------------------------------------------
-
- /**
- * @struct Fast_Comparator
- *
- * @brief Quick comparison of types that can be safely promoted
- * and/or converted to each other.
- *
- * The comparison operations provided by this structure perform no
- * negative value checking, meaning it is not applicable to all
- * types. Check the value of the @c USABLE enumerator to determine
- * if it applies to the types in question.
- *
- * @internal This structure is not meant for general use.
- */
- template<typename LEFT, typename RIGHT>
- struct Fast_Comparator
- {
- ACE_STATIC_CONSTANT (
- bool,
- USE_LEFT = ((sizeof (LEFT) > sizeof (RIGHT)
- && (Sign_Check<LEFT>::is_signed == 1
- || Sign_Check<RIGHT>::is_signed == 0))
-
- // The following is basically the case where LEFT
- // and RIGHT are the same integral type.
- || (sizeof (LEFT) == sizeof (RIGHT)
- // Can't portably do
- // Sign_Check<LEFT>::is_signed ==
- // Sign_Check<RIGHT>::is_signed,
- // i.e. comparison of anonymous enumerations,
- // without triggering a compiler diagnostic
- // so expand the comparison.
- && ((Sign_Check<LEFT>::is_signed == 1
- && Sign_Check<RIGHT>::is_signed == 1)
- || (Sign_Check<LEFT>::is_signed == 0
- && Sign_Check<RIGHT>::is_signed == 0)))));
-
- ACE_STATIC_CONSTANT (
- bool,
- USE_RIGHT = (sizeof (RIGHT) > sizeof (LEFT)
- && (Sign_Check<RIGHT>::is_signed == 1
- || Sign_Check<LEFT>::is_signed == 0)));
-
- ACE_STATIC_CONSTANT (bool, USABLE = (USE_LEFT || USE_RIGHT));
-
- typedef typename ACE::If_Then_Else<
- USE_LEFT,
- LEFT,
- typename ACE::If_Then_Else<
- USE_RIGHT,
- RIGHT,
- void>::result_type>::result_type promote_type;
-
- static bool greater_than (LEFT lhs, RIGHT rhs)
- {
- // The explicit cast is assumed to change the type of rhs without
- // changing its value.
- return
- (static_cast<promote_type> (lhs) > static_cast<promote_type> (rhs));
- }
-
- };
-
- // -----------------------------------------------------
-
- /**
- * @struct Comparator
- *
- * @brief Structure that provides optimal comparison operation for
- * given types.
- *
- * The comparison operations provided by this structure are chosen
- * at compile time based on the signs and sizes of types being
- * compared.
- * @par
- * Comparisons of values with the same sign or those with types that
- * can be promoted safely are done quickly, without any range
- * checking.
- * @par
- * Comparisons of values of different types that cannot be safely
- * promoted incur an additional check for a negative value to allow
- * the compiler to perform the appropriate implicit unsigned type
- * promotion.
- *
- * @note In general, the operations found in this structure should
- * not be used to work around compiler diagnostics regarding
- * comparison of signed and unsigned types. Verify that your
- * types are correct before relying on those operations.
- *
- * @internal This structure is not meant for general use.
- */
- template<typename LEFT, typename RIGHT>
- struct Comparator
- {
- typedef typename ACE::If_Then_Else<
- Fast_Comparator<LEFT, RIGHT>::USABLE,
- Fast_Comparator<LEFT, RIGHT>,
- Safe_Comparator<LEFT,
- RIGHT,
- Sign_Check<LEFT>::is_signed,
- Sign_Check<RIGHT>::is_signed> >::result_type comp_type;
- };
-
- // -----------------------------------------------------
-
- /**
- * @struct Truncator
- *
- * @brief Truncate value of type @c FROM to value of type @c TO.
- *
- * Truncate a value of type @c FROM to value of type @c TO, if the
- * value is larger than the maximum of value of type @c TO.
- */
- template<typename FROM, typename TO>
- struct Truncator
- {
- ACE_STATIC_CONSTANT (
- bool,
- // max FROM always greater than max TO
- MAX_FROM_GT_MAX_TO = (sizeof(FROM) > sizeof (TO)
- || (sizeof(FROM) == sizeof (TO)
- && Sign_Check<FROM>::is_signed == 0)));
-
- typedef typename ACE::If_Then_Else<
- MAX_FROM_GT_MAX_TO,
- FROM,
- TO>::result_type comp_to_type;
-
- // Take advantage of knowledge that we're casting a positive value
- // to a type large enough to hold it so that we can bypass
- // negative value checks at compile-time. Otherwise fallback on
- // the safer comparison.
- typedef typename ACE::If_Then_Else<
- MAX_FROM_GT_MAX_TO,
- Fast_Comparator<FROM, comp_to_type>,
- typename Comparator<FROM, comp_to_type>::comp_type>::result_type comparator;
-
- /// Truncate a value of type @c FROM to value of type @c TO, if
- /// the value is larger than the maximum of value of type @c TO.
- TO operator() (FROM val)
- {
- return
- (comparator::greater_than (val, ACE_Numeric_Limits<TO>::max ())
- ? ACE_Numeric_Limits<TO>::max ()
- : static_cast<TO> (val));
- }
-
- };
-
- // Partial specialization for the case where the types are the same.
- // No truncation is necessary.
- template<typename T>
- struct Truncator<T, T>
- {
- T operator() (T val)
- {
- return val;
- }
- };
-
-#if defined (ACE_LACKS_LONGLONG_T) || defined (ACE_LACKS_UNSIGNEDLONGLONG_T)
- // Partial specialization for the case where we're casting from
- // ACE_U_LongLong to a smaller integer. We assume that we're always
- // truncating from ACE_U_LongLong to a smaller type. The partial
- // specialization above handles the case where both the FROM and TO
- // types are ACE_U_LongLong.
- template<typename TO>
- struct Truncator<ACE_U_LongLong, TO>
- {
- TO operator() (ACE_U_LongLong const & val)
- {
- // If val less than or equal to ACE_Numeric_Limits<TO>::max(),
- // val.lo() must be less than or equal to
- // ACE_Numeric_Limits<TO>::max (), as well.
- return
- (val > ACE_Numeric_Limits<TO>::max ()
- ? ACE_Numeric_Limits<TO>::max ()
- : static_cast<TO> (val.lo ()));
- }
- };
-#endif /* ACE_LACKS_LONGLONG_T || ACE_LACKS_UNSIGNEDLONGLONG_T */
-
- // -----------------------------------------------------
- /**
- * @struct Noop_Truncator
- *
- * @brief No-op truncation.
- *
- * This structure/functor performs no truncation since it assumes
- * that @c sizeof(FROM) @c < @c sizeof(TO), meaning that
- * @c numeric_limits<FROM>::max() @c < @c numeric_limits<TO>::max().
- */
- template<typename FROM, typename TO>
- struct Noop_Truncator
- {
- TO operator() (FROM val)
- {
- return static_cast<TO> (val);
- }
- };
- // -----------------------------------------------------
-
- /**
- * @class truncate_cast
- *
- * @brief Helper function to truncate an integral value to the
- * maximum value of the given type.
- *
- * Very useful since ACE methods return @c int very often and
- * the value's source is often a different-size integral
- * type, such as @c size_t. This function hides the
- * truncation logic and resolves compiler diagnostics.
- *
- * @internal Internal use only.
- */
- template<typename TO, typename FROM>
- inline TO truncate_cast (FROM val)
- {
- // If the size of FROM is less than the size of TO, "val" will
- // never be greater than the maximum "TO" value, so there is no
- // need to attempt to truncate.
- typedef typename ACE::If_Then_Else<
- (sizeof (FROM) < sizeof (TO)),
- Noop_Truncator<FROM, TO>,
- Truncator<FROM, TO> >::result_type truncator;
-
- return truncator() (val);
- }
-
-#else
-
- // Borland can't handle the template meta-programming above so
- // provide explicit specializations for a few types. More will be
- // added if necessary.
-
- /**
- * @deprecated Borland ACE_Utils::Truncator<> specializations should
- * be removed.
- */
-
- template<typename FROM, typename TO> struct Truncator;
-
- //----------------------------------------------------------
- // sizeof(FROM) > sizeof(TO)
- //----------------------------------------------------------
-
- template<>
- struct Truncator<ACE_INT32, ACE_INT8>
- {
- ACE_INT8 operator() (ACE_INT32 val)
- {
- return
- (val > ACE_Numeric_Limits<ACE_INT8>::max ()
- ? ACE_Numeric_Limits<ACE_INT8>::max ()
- : static_cast<ACE_INT8> (val));
- }
- };
-
- template<>
- struct Truncator<ACE_UINT32, ACE_UINT8>
- {
- ACE_UINT8 operator() (ACE_UINT32 val)
- {
- return
- (val > static_cast<ACE_UINT32> (ACE_Numeric_Limits<ACE_UINT8>::max ())
- ? ACE_Numeric_Limits<ACE_UINT8>::max ()
- : static_cast<ACE_UINT8> (val));
- }
- };
-
- template<>
- struct Truncator<ACE_INT32, ACE_UINT8>
- {
- ACE_UINT8 operator() (ACE_INT32 val)
- {
- return
- (val > static_cast<ACE_INT32> (ACE_Numeric_Limits<ACE_UINT8>::max ())
- ? ACE_Numeric_Limits<ACE_UINT8>::max ()
- : static_cast<ACE_UINT8> (val));
- }
- };
-
- template<>
- struct Truncator<ACE_UINT32, ACE_INT8>
- {
- ACE_INT8 operator() (ACE_UINT32 val)
- {
- return
- (val > static_cast<ACE_UINT32> (ACE_Numeric_Limits<ACE_INT8>::max ())
- ? ACE_Numeric_Limits<ACE_INT8>::max ()
- : static_cast<ACE_INT8> (val));
- }
- };
-
-#if defined (ACE_SIZEOF_LONG) && ACE_SIZEOF_LONG < 8
- template<>
- struct Truncator<ACE_INT64, signed long>
- {
- signed long operator() (ACE_INT64 val)
- {
- return
- (val > ACE_Numeric_Limits<signed long>::max ()
- ? ACE_Numeric_Limits<signed long>::max ()
- : static_cast<signed long> (val));
- }
- };
-
- template<>
- struct Truncator<ACE_INT64, unsigned long>
- {
- unsigned long operator() (ACE_INT64 val)
- {
- return
- (val > static_cast<ACE_INT64> (ACE_Numeric_Limits<unsigned long>::max ())
- ? ACE_Numeric_Limits<unsigned long>::max ()
- : static_cast<unsigned long> (val));
- }
- };
-
- template<>
- struct Truncator<ACE_UINT64, unsigned long>
- {
- unsigned long operator() (ACE_UINT64 val)
- {
- return
- (val > static_cast<ACE_UINT64> (ACE_Numeric_Limits<unsigned long>::max ())
- ? ACE_Numeric_Limits<unsigned long>::max ()
- : static_cast<unsigned long> (val));
- }
- };
-
- template<>
- struct Truncator<ACE_UINT64, signed long>
- {
- signed long operator() (ACE_UINT64 val)
- {
- return
- (val > static_cast<ACE_UINT64> (ACE_Numeric_Limits<signed long>::max ())
- ? ACE_Numeric_Limits<signed long>::max ()
- : static_cast<signed long> (val));
- }
- };
-
- template<>
- struct Truncator<const ACE_UINT64, signed long>
- {
- signed long operator() (const ACE_UINT64 val)
- {
- return
- (val > static_cast<ACE_UINT64> (ACE_Numeric_Limits<signed long>::max ())
- ? ACE_Numeric_Limits<signed long>::max ()
- : static_cast<signed long> (val));
- }
- };
-
-#endif /* ACE_SIZEOF_LONG < 8 */
-
-#if defined (ACE_SIZEOF_INT) && ACE_SIZEOF_INT < 8
- template<>
- struct Truncator<ACE_INT64, signed int>
- {
- ACE_INT32 operator() (ACE_INT64 val)
- {
- return
- (val > ACE_Numeric_Limits<signed int>::max ()
- ? ACE_Numeric_Limits<signed int>::max ()
- : static_cast<signed int> (val));
- }
- };
-
- template<>
- struct Truncator<ACE_INT64, unsigned int>
- {
- ACE_UINT32 operator() (ACE_INT64 val)
- {
- return
- (val > static_cast<ACE_INT64> (ACE_Numeric_Limits<unsigned int>::max ())
- ? ACE_Numeric_Limits<unsigned int>::max ()
- : static_cast<unsigned int> (val));
- }
- };
-
- template<>
- struct Truncator<ACE_UINT64, unsigned int>
- {
- ACE_UINT32 operator() (ACE_UINT64 val)
- {
- return
- (val > static_cast<ACE_UINT64> (ACE_Numeric_Limits<unsigned int>::max ())
- ? ACE_Numeric_Limits<unsigned int>::max ()
- : static_cast<unsigned int> (val));
- }
- };
-
- template<>
- struct Truncator<ACE_UINT64, signed int>
- {
- signed int operator() (ACE_UINT64 val)
- {
- return
- (val > static_cast<ACE_UINT64> (ACE_Numeric_Limits<signed int>::max ())
- ? ACE_Numeric_Limits<signed int>::max ()
- : static_cast<signed int> (val));
- }
- };
-
-#endif /* ACE_SIZEOF_INT < 8 */
-
- //----------------------------------------------------------
- // sizeof(FROM) == sizeof(TO)
- //----------------------------------------------------------
-
- template<>
- struct Truncator<unsigned int, char>
- {
- char operator() (unsigned int val)
- {
- return static_cast<char> (val);
- }
- };
-
- template<>
- struct Truncator<unsigned int, wchar_t>
- {
- wchar_t operator() (unsigned int val)
- {
- return static_cast<wchar_t> (val);
- }
- };
-
- template<>
- struct Truncator<signed int, unsigned int>
- {
- unsigned int operator() (signed int val)
- {
- return static_cast<unsigned int> (val);
- }
- };
-
- template<>
- struct Truncator<unsigned int, signed int>
- {
- signed int operator() (unsigned int val)
- {
- return
- (val > static_cast<unsigned int> (ACE_Numeric_Limits<signed int>::max ())
- ? ACE_Numeric_Limits<signed int>::max ()
- : static_cast<signed int> (val));
- }
- };
-
- template<>
- struct Truncator<const unsigned int, signed int>
- {
- signed int operator() (const unsigned int val)
- {
- return
- (val > static_cast<unsigned int> (ACE_Numeric_Limits<signed int>::max ())
- ? ACE_Numeric_Limits<signed int>::max ()
- : static_cast<signed int> (val));
- }
- };
-
- template<>
- struct Truncator<signed long, unsigned long>
- {
- unsigned long operator() (signed long val)
- {
- return static_cast<unsigned long> (val);
- }
- };
-
- template<>
- struct Truncator<unsigned long, signed long>
- {
- signed long operator() (unsigned long val)
- {
- return
- (val > static_cast<unsigned long> (ACE_Numeric_Limits<signed long>::max ())
- ? ACE_Numeric_Limits<signed long>::max ()
- : static_cast<signed long> (val));
- }
- };
-
-#if defined (ACE_SIZEOF_INT) && defined (ACE_SIZEOF_LONG) \
- && ACE_SIZEOF_INT == ACE_SIZEOF_LONG
-
- template<>
- struct Truncator<signed int, unsigned long>
- {
- unsigned long operator() (signed int val)
- {
- return static_cast<unsigned long> (val);
- }
- };
-
- template<>
- struct Truncator<signed int, signed long>
- {
- signed long operator() (signed int val)
- {
- return static_cast<signed long> (val);
- }
- };
-
- template<>
- struct Truncator<unsigned long, signed int>
- {
- signed int operator() (unsigned long val)
- {
- return
- (val > static_cast<unsigned long> (ACE_Numeric_Limits<signed int>::max ())
- ? ACE_Numeric_Limits<signed int>::max ()
- : static_cast<signed int> (val));
- }
- };
-
- template<>
- struct Truncator<signed long, signed int>
- {
- signed int operator() (signed long val)
- {
- return static_cast<signed int> (val);
-// This code causes asserts and compiler crashes with BCB6 Static and
-// BCB2007 Static
-// return
-// (val > static_cast<signed long> (ACE_Numeric_Limits<signed int>::max ())
-// ? ACE_Numeric_Limits<signed int>::max ()
-// : static_cast<signed int> (val));
- }
- };
-
- template<>
- struct Truncator<signed long, unsigned int>
- {
- unsigned int operator() (signed long val)
- {
- return static_cast<unsigned int> (val);
- }
- };
-
- template<>
- struct Truncator<const signed long, unsigned int>
- {
- unsigned int operator() (const signed long val)
- {
- return static_cast<unsigned int> (val);
- }
- };
-
- template<>
- struct Truncator<unsigned int, signed long>
- {
- signed long operator() (unsigned int val)
- {
- return
- (val > static_cast<unsigned int> (ACE_Numeric_Limits<signed long>::max ())
- ? ACE_Numeric_Limits<signed long>::max ()
- : static_cast<signed long> (val));
- }
- };
-
-#endif /* ACE_SIZEOF_INT == ACE_SIZEOF_LONG */
-
- template<>
- struct Truncator<ACE_INT64, ACE_UINT64>
- {
- ACE_UINT64 operator() (ACE_INT64 val)
- {
- return static_cast<ACE_UINT64> (val);
- }
- };
-
- template<>
- struct Truncator<ACE_UINT64, ACE_INT64>
- {
- ACE_INT64 operator() (ACE_UINT64 val)
- {
- return
- (val > static_cast<ACE_UINT64> (ACE_Numeric_Limits<ACE_INT64>::max ())
- ? ACE_Numeric_Limits<ACE_INT64>::max ()
- : static_cast<ACE_INT64> (val));
- }
- };
-
- //----------------------------------------------------------
- // sizeof(FROM) < sizeof(TO)
- //----------------------------------------------------------
-
- template<>
- struct Truncator<ACE_INT8, ACE_INT32>
- {
- ACE_INT32 operator() (ACE_INT8 val)
- {
- return static_cast<ACE_INT32> (val);
- }
- };
-
- template<>
- struct Truncator<ACE_UINT8, ACE_UINT32>
- {
- ACE_UINT32 operator() (ACE_UINT8 val)
- {
- return static_cast<ACE_UINT32> (val);
- }
- };
-
- template<>
- struct Truncator<ACE_UINT8, ACE_INT32>
- {
- ACE_INT32 operator() (ACE_UINT8 val)
- {
- return static_cast<ACE_INT32> (val);
- }
- };
-
- template<>
- struct Truncator<ACE_INT8, ACE_UINT32>
- {
- ACE_UINT32 operator() (ACE_INT8 val)
- {
- return static_cast<ACE_UINT32> (val);
- }
- };
-
-#if defined (ACE_SIZEOF_LONG) && ACE_SIZEOF_LONG < 8
- template<>
- struct Truncator<signed long, ACE_INT64>
- {
- ACE_INT64 operator() (signed long val)
- {
- return static_cast<ACE_INT64> (val);
- }
- };
-
- template<>
- struct Truncator<signed long, ACE_UINT64>
- {
- ACE_UINT64 operator() (signed long val)
- {
- return static_cast<ACE_UINT64> (val);
- }
- };
-
- template<>
- struct Truncator<const signed long, ACE_UINT64>
- {
- ACE_UINT64 operator() (const signed long val)
- {
- return
- (val > static_cast<ACE_UINT64> (ACE_Numeric_Limits<signed long>::max ())
- ? ACE_Numeric_Limits<signed long>::max ()
- : static_cast<signed long> (val));
- }
- };
-
- template<>
- struct Truncator<unsigned long, ACE_UINT64>
- {
- ACE_UINT64 operator() (unsigned long val)
- {
- return static_cast<ACE_UINT64> (val);
- }
- };
-
- template<>
- struct Truncator<unsigned long, ACE_INT64>
- {
- ACE_INT64 operator() (unsigned long val)
- {
- return static_cast<ACE_INT64> (val);
- }
- };
-#endif /* ACE_SIZEOF_LONG < 8 */
-
-#if defined (ACE_SIZEOF_INT) && ACE_SIZEOF_INT < 8
- template<>
- struct Truncator<signed int, ACE_INT64>
- {
- ACE_INT64 operator() (signed int val)
- {
- return static_cast<ACE_INT64> (val);
- }
- };
-
- template<>
- struct Truncator<signed int, ACE_UINT64>
- {
- ACE_UINT64 operator() (signed int val)
- {
- return static_cast<ACE_UINT64> (val);
- }
- };
-
- template<>
- struct Truncator<unsigned int, ACE_UINT64>
- {
- ACE_UINT64 operator() (unsigned int val)
- {
- return static_cast<ACE_UINT64> (val);
- }
- };
-
- template<>
- struct Truncator<unsigned int, ACE_INT64>
- {
- ACE_INT64 operator() (unsigned int val)
- {
- return static_cast<ACE_INT64> (val);
- }
- };
-#endif /* ACE_SIZEOF_INT < 8 */
-
- template<>
- struct Truncator<size_t, unsigned long>
- {
- unsigned long operator() (size_t val)
- {
- return
- (val > static_cast<unsigned long> (ACE_Numeric_Limits<size_t>::max ())
- ? ACE_Numeric_Limits<size_t>::max ()
- : static_cast<size_t> (val));
- }
- };
-
- // Partial specialization for the case where the types are the same.
- // No truncation is necessary.
- template<typename T>
- struct Truncator<T, T>
- {
- T operator() (T val)
- {
- return val;
- }
- };
-
- // Partial specialization for the case where the types are the same,
- // but the from type is const. No truncation is necessary.
- //
- // This is only necessary to workaround a problem with the BCB6
- // compiler.
- template<typename T>
- struct Truncator<T const, T>
- {
- T operator() (T val)
- {
- return val;
- }
- };
-
- // -------------------------------------
-
- template<typename TO, typename FROM>
- inline TO truncate_cast (FROM val)
- {
- typedef Truncator<FROM, TO> truncator;
-
- return truncator() (val);
- }
-
-#endif /* !__BORLANDC__ || __BORLANDC__ >= 0x590 */
-
-} // namespace ACE_Utils
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_TRUNCATE_H*/
-
diff --git a/dep/include/ace/Typed_SV_Message.h b/dep/include/ace/Typed_SV_Message.h
deleted file mode 100644
index 714907bbb22..00000000000
--- a/dep/include/ace/Typed_SV_Message.h
+++ /dev/null
@@ -1,107 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Typed_SV_Message.h
- *
- * $Id: Typed_SV_Message.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//==========================================================================
-
-#ifndef ACE_TYPED_SV_MESSAGE_H
-#define ACE_TYPED_SV_MESSAGE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Typed_SV_Message
- *
- * @brief Defines the header file for the C++ wrapper for System V
- * message queues.
- */
-template <class T>
-class ACE_Typed_SV_Message
-{
-public:
- // = Initialization and termination methods.
- ACE_Typed_SV_Message (long type = 0,
- int length = sizeof (T),
- int max_size = sizeof (T));
- ACE_Typed_SV_Message (const T &data,
- long type = 0,
- int length = sizeof (T),
- int max_size = sizeof (T));
- ~ACE_Typed_SV_Message (void);
-
- /// Get the type of the message.
- long type (void) const;
-
- /// Set the type of the message.
- void type (long type);
-
- /// Get the length of the message.
- int length (void) const;
-
- /// Set the length of the message.
- void length (int l);
-
- /// Get the maximum size of the message.
- int max_size (void) const;
-
- /// Set the maximum size of the message.
- void max_size (int m);
-
- /// Get a pointer to the data in the message.
- T &data (void);
-
- /// Set a pointer to the data in the message.
- void data (const T &data);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Type of message.
- long type_;
-
- /// Length of this message.
- int length_;
-
- /// Maximum length of any message.
- int max_;
-
- /// Data stored in a message.
- T data_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Typed_SV_Message.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Typed_SV_Message.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Typed_SV_Message.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_TYPED_SV_MESSAGE_H */
-
diff --git a/dep/include/ace/Typed_SV_Message.inl b/dep/include/ace/Typed_SV_Message.inl
deleted file mode 100644
index 6d8ea702321..00000000000
--- a/dep/include/ace/Typed_SV_Message.inl
+++ /dev/null
@@ -1,96 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Typed_SV_Message.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/config-all.h"
-#include "ace/Global_Macros.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class T> ACE_INLINE
-ACE_Typed_SV_Message<T>::ACE_Typed_SV_Message (long t,
- int l,
- int m)
- : type_ (t)
-{
- ACE_TRACE ("ACE_Typed_SV_Message<T>::ACE_Typed_SV_Message");
- this->length (l);
- this->max_size (m);
-}
-
-template <class T> ACE_INLINE
-ACE_Typed_SV_Message<T>::ACE_Typed_SV_Message (const T &d,
- long t,
- int l,
- int m)
- : type_ (t),
- data_ (d)
-{
- ACE_TRACE ("ACE_Typed_SV_Message<T>::ACE_Typed_SV_Message");
- this->length (l);
- this->max_size (m);
-}
-
-template <class T> ACE_INLINE
-ACE_Typed_SV_Message<T>::~ACE_Typed_SV_Message (void)
-{
- ACE_TRACE ("ACE_Typed_SV_Message<T>::~ACE_Typed_SV_Message");
-}
-
-template <class T> ACE_INLINE long
-ACE_Typed_SV_Message<T>::type (void) const
-{
- ACE_TRACE ("ACE_Typed_SV_Message<T>::type");
- return this->type_;
-}
-
-template <class T> ACE_INLINE void
-ACE_Typed_SV_Message<T>::type (long t)
-{
- ACE_TRACE ("ACE_Typed_SV_Message<T>::type");
- this->type_ = t;
-}
-
-template <class T> ACE_INLINE int
-ACE_Typed_SV_Message<T>::length (void) const
-{
- ACE_TRACE ("ACE_Typed_SV_Message<T>::length");
- return this->length_;
-}
-
-template <class T> ACE_INLINE void
-ACE_Typed_SV_Message<T>::length (int len)
-{
- ACE_TRACE ("ACE_Typed_SV_Message<T>::length");
- this->length_ = len + (sizeof *this - (sizeof this->type_ + sizeof this->data_));
-}
-
-template <class T> ACE_INLINE int
-ACE_Typed_SV_Message<T>::max_size (void) const
-{
- ACE_TRACE ("ACE_Typed_SV_Message<T>::max_size");
- return this->max_;
-}
-
-template <class T> ACE_INLINE void
-ACE_Typed_SV_Message<T>::max_size (int m)
-{
- ACE_TRACE ("ACE_Typed_SV_Message<T>::max_size");
- this->max_ = m + (sizeof *this - (sizeof this->type_ + sizeof this->data_));
-}
-
-template <class T> T &
-ACE_Typed_SV_Message<T>::data (void)
-{
- ACE_TRACE ("ACE_Typed_SV_Message<T>::data");
- return this->data_;
-}
-
-template <class T> void
-ACE_Typed_SV_Message<T>::data (const T &d)
-{
- ACE_TRACE ("ACE_Typed_SV_Message<T>::data");
- this->data_ = d;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Typed_SV_Message_Queue.h b/dep/include/ace/Typed_SV_Message_Queue.h
deleted file mode 100644
index f5f336b010d..00000000000
--- a/dep/include/ace/Typed_SV_Message_Queue.h
+++ /dev/null
@@ -1,93 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Typed_SV_Message_Queue.h
- *
- * $Id: Typed_SV_Message_Queue.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_TYPED_MESSAGE_QUEUE_H
-#define ACE_TYPED_MESSAGE_QUEUE_H
-#include /**/ "ace/pre.h"
-
-#include "ace/SV_Message_Queue.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/Typed_SV_Message.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Typed_SV_Message_Queue
- *
- * @brief Defines the header file for the C++ wrapper facade for typed message queues.
- */
-template <class T>
-class ACE_Typed_SV_Message_Queue
-{
-public:
- enum
- {
- ACE_CREATE = IPC_CREAT,
- ACE_OPEN = 0,
- ACE_NOWAIT = IPC_NOWAIT
- };
-
- // = Initialization and termination operations.
- ACE_Typed_SV_Message_Queue (void);
- ACE_Typed_SV_Message_Queue (key_t external_id,
- int create = ACE_OPEN,
- int perms = ACE_DEFAULT_FILE_PERMS);
- int open (key_t external_id,
- int create = ACE_OPEN,
- int perms = ACE_DEFAULT_FILE_PERMS);
- int close (void);
- int remove (void);
- ~ACE_Typed_SV_Message_Queue (void);
-
- /// Send method.
- int send (const ACE_Typed_SV_Message<T> &mb, int mflags = 0);
-
- /// Recv method.
- int recv (ACE_Typed_SV_Message<T> &mb, int mflags = 0);
-
- /// Return the id of the underlying ACE_SV_Message_Queue.
- int get_id (void) const;
-
- /// Control the underlying message queue.
- int control (int option, void *arg = 0);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- ACE_SV_Message_Queue message_queue_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Typed_SV_Message_Queue.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Typed_SV_Message_Queue.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Typed_SV_Message_Queue.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_TYPED_MESSAGE_QUEUE_H */
-
diff --git a/dep/include/ace/Typed_SV_Message_Queue.inl b/dep/include/ace/Typed_SV_Message_Queue.inl
deleted file mode 100644
index 90539936e62..00000000000
--- a/dep/include/ace/Typed_SV_Message_Queue.inl
+++ /dev/null
@@ -1,80 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Typed_SV_Message_Queue.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/SV_Message_Queue.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class T> ACE_INLINE int
-ACE_Typed_SV_Message_Queue<T>::open (key_t external_id,
- int create,
- int perms)
-{
- ACE_TRACE ("ACE_Typed_SV_Message_Queue<T>::open");
- return this->message_queue_.open (external_id, create, perms);
-}
-
-// What does it mean to close a message queue?!
-
-template <class T> ACE_INLINE int
-ACE_Typed_SV_Message_Queue<T>::close (void)
-{
- ACE_TRACE ("ACE_Typed_SV_Message_Queue<T>::close");
- return 1;
-}
-
-template <class T> ACE_INLINE int
-ACE_Typed_SV_Message_Queue<T>::recv (ACE_Typed_SV_Message<T> &mb,
- int mflags)
-{
- ACE_TRACE ("ACE_Typed_SV_Message_Queue<T>::recv");
-
- int length =
- this->message_queue_.recv (reinterpret_cast<ACE_SV_Message &> (mb),
- mb.max_size (),
- mb.type (),
- mflags);
- if (length != -1)
- mb.length (length);
-
- return length;
-}
-
-template <class T> ACE_INLINE int
-ACE_Typed_SV_Message_Queue<T>::send (const ACE_Typed_SV_Message<T> &mb,
- int mflags)
-{
- ACE_TRACE ("ACE_Typed_SV_Message_Queue<T>::send");
- return
- this->message_queue_.send (
- reinterpret_cast<ACE_SV_Message &> (
- const_cast<ACE_Typed_SV_Message<T> &> (mb)),
- mb.length (),
- mflags);
-}
-
-template <class T> ACE_INLINE int
-ACE_Typed_SV_Message_Queue<T>::remove (void)
-{
- ACE_TRACE ("ACE_Typed_SV_Message_Queue<T>::remove");
-
- return this->message_queue_.remove ();
-}
-
-template <class T> ACE_INLINE int
-ACE_Typed_SV_Message_Queue<T>::control (int option,
- void *arg)
-{
- ACE_TRACE ("ACE_Typed_SV_Message_Queue<T>::control");
-
- return this->message_queue_.control (option, arg);
-}
-
-template <class T> ACE_INLINE int
-ACE_Typed_SV_Message_Queue<T>::get_id (void) const
-{
- return this->message_queue_.get_id ();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/UNIX_Addr.h b/dep/include/ace/UNIX_Addr.h
deleted file mode 100644
index 253748dfa02..00000000000
--- a/dep/include/ace/UNIX_Addr.h
+++ /dev/null
@@ -1,117 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file UNIX_Addr.h
- *
- * $Id: UNIX_Addr.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_UNIX_ADDR_H
-#define ACE_UNIX_ADDR_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_UNIX_DOMAIN_SOCKETS)
-
-#include "ace/Addr.h"
-#include "ace/Log_Msg.h"
-#include "ace/ACE.h"
-#include "ace/os_include/sys/os_un.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_UNIX_Addr
- *
- * @brief Defines the ``UNIX domain address family'' address format.
- */
-class ACE_Export ACE_UNIX_Addr : public ACE_Addr
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_UNIX_Addr (void);
-
- /// Copy constructor.
- ACE_UNIX_Addr (const ACE_UNIX_Addr &sa);
-
- /// Creates an ACE_UNIX_Addr from a string.
- ACE_UNIX_Addr (const char rendezvous_point[]);
-
- /// Creates an ACE_INET_Addr from a sockaddr_un structure.
- ACE_UNIX_Addr (const sockaddr_un *, int len);
-
- /// Creates an ACE_UNIX_Addr from another ACE_UNIX_Addr.
- int set (const ACE_UNIX_Addr &sa);
-
- /// Creates an ACE_UNIX_Addr from a string.
- int set (const char rendezvous_point[]);
-
- /// Creates an ACE_UNIX_Addr from a sockaddr_un structure.
- int set (const sockaddr_un *, int len);
-
- /// Return a pointer to the underlying network address.
- virtual void *get_addr (void) const;
-
- /// Set a pointer to the underlying network address.
- virtual void set_addr (void *addr, int len);
-
- /// Transform the current address into string format.
- virtual int addr_to_string (ACE_TCHAR addr[], size_t) const;
-
- /// Transform the string into the current addressing format.
- virtual int string_to_addr (const char addr[]);
-
-#if defined (ACE_HAS_WCHAR)
- /// Creates an ACE_UNIX_Addr from a string.
- ACE_UNIX_Addr (const wchar_t rendezvous_point[]);
-
- /// Creates an ACE_UNIX_Addr from a string.
- int set (const wchar_t rendezvous_point[]);
-#endif /* ACE_HAS_WCHAR */
-
- /// Compare two addresses for equality.
- bool operator == (const ACE_UNIX_Addr &SAP) const;
-
- /// Compare two addresses for inequality.
- bool operator != (const ACE_UNIX_Addr &SAP) const;
-
- /// Return the path name of the underlying rendezvous point.
- const char *get_path_name (void) const;
-
- /// Computes and returns hash value.
- virtual u_long hash (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Underlying socket address.
- sockaddr_un unix_addr_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/UNIX_Addr.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_LACKS_UNIX_DOMAIN_SOCKETS */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_UNIX_ADDR_H */
-
diff --git a/dep/include/ace/UNIX_Addr.inl b/dep/include/ace/UNIX_Addr.inl
deleted file mode 100644
index 7262f0f4250..00000000000
--- a/dep/include/ace/UNIX_Addr.inl
+++ /dev/null
@@ -1,55 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: UNIX_Addr.inl 80826 2008-03-04 14:51:23Z wotte $
-
-#include "ace/OS_NS_string.h"
-
-#if !defined (ACE_LACKS_UNIX_DOMAIN_SOCKETS)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-#if defined (ACE_HAS_WCHAR)
-/// Creates an ACE_UNIX_Addr from a string.
-ACE_INLINE
-ACE_UNIX_Addr::ACE_UNIX_Addr (const wchar_t rendezvous_point[])
-{
- this->set (ACE_Wide_To_Ascii (rendezvous_point).char_rep ());
-}
-
-/// Creates an ACE_UNIX_Addr from a string.
-ACE_INLINE int
-ACE_UNIX_Addr::set (const wchar_t rendezvous_point[])
-{
- return this->set (ACE_Wide_To_Ascii (rendezvous_point).char_rep ());
-}
-#endif /* ACE_HAS_WCHAR */
-
-// Compare two addresses for equality.
-
-ACE_INLINE bool
-ACE_UNIX_Addr::operator == (const ACE_UNIX_Addr &sap) const
-{
- return ACE_OS::strncmp (this->unix_addr_.sun_path,
- sap.unix_addr_.sun_path,
- sizeof this->unix_addr_.sun_path) == 0;
-}
-
-// Compare two addresses for inequality.
-
-ACE_INLINE bool
-ACE_UNIX_Addr::operator != (const ACE_UNIX_Addr &sap) const
-{
- return !((*this) == sap); // This is lazy, of course... ;-)
-}
-
-// Return the path name used for the rendezvous point.
-
-ACE_INLINE const char *
-ACE_UNIX_Addr::get_path_name (void) const
-{
- return this->unix_addr_.sun_path;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_LACKS_UNIX_DOMAIN_SOCKETS */
diff --git a/dep/include/ace/UPIPE_Acceptor.h b/dep/include/ace/UPIPE_Acceptor.h
deleted file mode 100644
index c180a16f2fb..00000000000
--- a/dep/include/ace/UPIPE_Acceptor.h
+++ /dev/null
@@ -1,99 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file UPIPE_Acceptor.h
- *
- * $Id: UPIPE_Acceptor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Gerhard Lenzer
- * @author Douglas C. Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_UPIPE_ACCEPTOR_H
-#define ACE_UPIPE_ACCEPTOR_H
-#include /**/ "ace/pre.h"
-
-#include "ace/UPIPE_Stream.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_THREADS)
-
-#include "ace/SPIPE_Acceptor.h"
-#include "ace/Thread_Manager.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_UPIPE_Acceptor
- *
- * @brief Defines the format and interface for the listener side of the
- * ACE_UPIPE_Stream.
- */
-class ACE_Export ACE_UPIPE_Acceptor : public ACE_SPIPE_Acceptor
-{
-public:
- // = Initialization and termination.
- /// Default constructor.
- ACE_UPIPE_Acceptor (void);
-
- /// Initialize passive endpoint.
- ACE_UPIPE_Acceptor (const ACE_UPIPE_Addr &local_sap,
- int reuse_addr = 0);
-
- /// Initialize passive endpoint.
- int open (const ACE_UPIPE_Addr &local_sap,
- int reuse_addr = 0);
-
- /// Close down and release resources.
- ~ACE_UPIPE_Acceptor (void);
-
- /// Close down and release resources.
- int close (void);
-
- /// Close down and release resources and remove the underlying SPIPE
- /// rendezvous point.
- int remove (void);
-
- // = Passive connection acceptance method.
- /**
- * Accept a new data transfer connection. A @a timeout of 0 means
- * block forever, a @a timeout of {0, 0} means poll. @a restart == 1
- * means "restart if interrupted."
- */
- int accept (ACE_UPIPE_Stream &server_stream,
- ACE_UPIPE_Addr *remote_addr = 0,
- ACE_Time_Value *timeout = 0,
- int restart = 1,
- int reset_new_handle = 0);
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Manage threads.
- ACE_Thread_Manager tm;
-
- /// To confirm connection establishment.
- ACE_Message_Block mb_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/UPIPE_Acceptor.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_THREADS */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_UPIPE_ACCEPTOR_H */
-
diff --git a/dep/include/ace/UPIPE_Acceptor.inl b/dep/include/ace/UPIPE_Acceptor.inl
deleted file mode 100644
index 9432ad7bb88..00000000000
--- a/dep/include/ace/UPIPE_Acceptor.inl
+++ /dev/null
@@ -1,14 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: UPIPE_Acceptor.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE int
-ACE_UPIPE_Acceptor::remove (void)
-{
- ACE_TRACE ("ACE_UPIPE_Acceptor::remove");
- return this->ACE_SPIPE_Acceptor::remove ();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/UPIPE_Addr.h b/dep/include/ace/UPIPE_Addr.h
deleted file mode 100644
index ca1db7a67aa..00000000000
--- a/dep/include/ace/UPIPE_Addr.h
+++ /dev/null
@@ -1,33 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file UPIPE_Addr.h
- *
- * $Id: UPIPE_Addr.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Doug Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_UPIPE_ADDR_H
-#define ACE_UPIPE_ADDR_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/SPIPE_Addr.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-typedef ACE_SPIPE_Addr ACE_UPIPE_Addr;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_UPIPE_ADDR_H */
-
diff --git a/dep/include/ace/UPIPE_Connector.h b/dep/include/ace/UPIPE_Connector.h
deleted file mode 100644
index 69beb1a965b..00000000000
--- a/dep/include/ace/UPIPE_Connector.h
+++ /dev/null
@@ -1,115 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file UPIPE_Connector.h
- *
- * $Id: UPIPE_Connector.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Gerhard Lenzer and Douglas C. Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_UPIPE_CONNECTOR_H
-#define ACE_UPIPE_CONNECTOR_H
-#include /**/ "ace/pre.h"
-
-#include "ace/UPIPE_Stream.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_THREADS)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_UPIPE_Connector
- *
- * @brief Defines an active connection factory for the
- * ACE_UPIPE_STREAM wrappers.
- */
-class ACE_Export ACE_UPIPE_Connector
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_UPIPE_Connector (void);
-
- /**
- * Actively connect and produce a @a new_stream if things go well.
- * The @a addr is the address that we are trying to connect
- * with. The @a timeout is the amount of time to wait to connect.
- * If it's 0 then we block indefinitely. If *timeout == {0, 0} then
- * the connection is done using non-blocking mode. In this case, if
- * the connection can't be made immediately the value of -1 is
- * returned with @c errno == EWOULDBLOCK. If *timeout > {0, 0} then
- * this is the maximum amount of time to wait before timing out. If the
- * time expires before the connection is made @c errno == ETIME. The
- * @a local_sap is the value of local address to bind to. If it's
- * the default value of ACE_Addr::sap_any then the user is letting
- * the OS do the binding. If @a reuse_addr == 1 then the
- * @a local_addr is reused, even if it hasn't been cleanedup yet.
- * The @a flags and @a perms arguments are passed down to the open()
- * method.
- */
- ACE_UPIPE_Connector (ACE_UPIPE_Stream &new_stream,
- const ACE_UPIPE_Addr &addr,
- ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = O_RDWR,
- int perms = 0);
-
- /**
- * Actively connect and produce a @a new_stream if things go well.
- * The @a addr is the address that we are trying to connect
- * with. The @a timeout is the amount of time to wait to connect.
- * If it's 0 then we block indefinitely. If *timeout == {0, 0} then
- * the connection is done using non-blocking mode. In this case, if
- * the connection can't be made immediately the value of -1 is
- * returned with @c errno == EWOULDBLOCK. If *timeout > {0, 0} then
- * this is the maximum amount of time to wait before timing out. If the
- * time expires before the connection is made @c errno == ETIME. The
- * @a local_sap is the value of local address to bind to. If it's
- * the default value of ACE_Addr::sap_any then the user is letting
- * the OS do the binding. If @a reuse_addr == 1 then the
- * @a local_addr is reused, even if it hasn't been cleanedup yet.
- * The @a flags and @a perms arguments are passed down to the open()
- * method.
- */
- int connect (ACE_UPIPE_Stream &new_stream,
- const ACE_UPIPE_Addr &addr,
- ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = O_RDWR,
- int perms = 0);
-
- /// Resets any event associations on this handle
- int reset_new_handle (ACE_HANDLE handle);
-
- // = Meta-type info
- typedef ACE_UPIPE_Addr PEER_ADDR;
- typedef ACE_UPIPE_Stream PEER_STREAM;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/UPIPE_Connector.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_THREADS */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_UPIPE_CONNECTOR_H */
-
diff --git a/dep/include/ace/UPIPE_Connector.inl b/dep/include/ace/UPIPE_Connector.inl
deleted file mode 100644
index fa43dbea326..00000000000
--- a/dep/include/ace/UPIPE_Connector.inl
+++ /dev/null
@@ -1,34 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: UPIPE_Connector.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Creates a Local ACE_UPIPE.
-ACE_INLINE
-ACE_UPIPE_Connector::ACE_UPIPE_Connector (ACE_UPIPE_Stream &new_stream,
- const ACE_UPIPE_Addr &addr,
- ACE_Time_Value *timeout,
- const ACE_Addr &local_sap,
- int reuse_addr,
- int flags,
- int perms)
-{
- ACE_TRACE ("ACE_UPIPE_Connector::ACE_UPIPE_Connector");
- if (this->connect (new_stream, addr, timeout, local_sap,
- reuse_addr, flags, perms) == -1
- && timeout != 0 && !(errno == EWOULDBLOCK || errno == ETIME))
- ACE_ERROR ((LM_ERROR,
- ACE_TEXT ("address %s, %p\n"),
- addr.get_path_name (),
- ACE_TEXT ("ACE_UPIPE_Connector")));
-}
-
-ACE_INLINE int
-ACE_UPIPE_Connector::reset_new_handle (ACE_HANDLE /* handle */)
-{
- // Nothing to do here since the handle is not a socket
- return 0;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/UPIPE_Stream.h b/dep/include/ace/UPIPE_Stream.h
deleted file mode 100644
index 89b8d793cf5..00000000000
--- a/dep/include/ace/UPIPE_Stream.h
+++ /dev/null
@@ -1,140 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file UPIPE_Stream.h
- *
- * $Id: UPIPE_Stream.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Gerhard Lenzer
- * @author Douglas C. Schmidt
- */
-//=============================================================================
-
-#ifndef ACE_UPIPE_STREAM_H
-#define ACE_UPIPE_STREAM_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Stream.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_THREADS)
-
-#include "ace/SPIPE.h"
-#include "ace/Message_Queue.h"
-#include "ace/UPIPE_Addr.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_UPIPE_Stream
- *
- * @brief Defines the method that transfer data on a UPIPE.
- */
-class ACE_Export ACE_UPIPE_Stream : public ACE_SPIPE
-{
-public:
- friend class ACE_UPIPE_Acceptor;
- friend class ACE_UPIPE_Connector;
-
- typedef ACE_Stream<ACE_SYNCH> MT_Stream;
-
- // = Initialization and Termination.
-
- ACE_UPIPE_Stream (void);
-
- virtual ~ACE_UPIPE_Stream (void);
-
- /// Shut down the UPIPE and release resources.
- int close (void);
-
- /// Return the underlying I/O handle.
- ACE_HANDLE get_handle (void) const;
-
- // = Send/recv ACE Message_Blocks.
- /// Send a message through the message queue. Returns -1 on error,
- /// else 0.
- int send (ACE_Message_Block *mb_p,
- ACE_Time_Value *timeout = 0);
-
- /// Recv a message from the message queue. Returns -1 on error, else
- /// 0.
- int recv (ACE_Message_Block *&mb_p,
- ACE_Time_Value *timeout = 0);
-
- // = Send/recv char buffers.
- /// Send a buffer of @a n bytes through the message queue. Returns -1
- /// on error, else number of bytes sent.
- ssize_t send (const char *buffer,
- size_t n,
- ACE_Time_Value *timeout = 0);
-
- /// Recv a buffer of upto @a n bytes from the message queue. Returns
- /// -1 on error, else number of bytes read.
- ssize_t recv (char *buffer,
- size_t n,
- ACE_Time_Value *timeout = 0);
-
- /// Send a buffer of exactly @a n bytes to the message queue. Returns
- /// -1 on error, else number of bytes written (which should == n).
- ssize_t send_n (const char *buffer,
- size_t n,
- ACE_Time_Value *timeout = 0);
-
- /// Recv a buffer of exactly @a n bytes from the message queue.
- /// Returns -1 on error, else the number of bytes read.
- ssize_t recv_n (char *buffer,
- size_t n,
- ACE_Time_Value *timeout = 0);
-
- /// Perform control operations on the UPIPE_Stream.
- int control (int cmd, void *val) const;
-
- /// Return the remote address we are connected to.
- int get_remote_addr (ACE_UPIPE_Addr &remote_sap) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- // = Meta-type info
- typedef ACE_UPIPE_Addr PEER_ADDR;
-
-private:
- /// To hold the last ACE_Message_Block read out of the stream. Thus
- /// allowing subsequent reads from one ACE_Message_Block
- ACE_Message_Block *mb_last_;
-
- /// Address of who we are connected to.
- ACE_UPIPE_Addr remote_addr_;
-
- /// Stream component used by the @c UPIPE_Acceptor and
- /// @c UPIPE_Connector to link together two UPIPE_Streams.
- MT_Stream stream_;
-
- /// Keep track of whether the sender and receiver have both shutdown.
- int reference_count_;
-
-#if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
- /// Ensure that we are thread-safe.
- ACE_Thread_Mutex lock_;
-#endif /* ACE_MT_SAFE */
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/UPIPE_Stream.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_THREADS */
-
-#include /**/ "ace/post.h"
-
-#endif /*ACE_UPIPE_STREAM_H */
-
diff --git a/dep/include/ace/UPIPE_Stream.inl b/dep/include/ace/UPIPE_Stream.inl
deleted file mode 100644
index 7a0d73c3179..00000000000
--- a/dep/include/ace/UPIPE_Stream.inl
+++ /dev/null
@@ -1,14 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: UPIPE_Stream.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE ACE_HANDLE
-ACE_UPIPE_Stream::get_handle (void) const
-{
- ACE_TRACE ("ACE_UPIPE_Stream::get_handle");
- return this->ACE_SPIPE::get_handle ();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/UTF16_Encoding_Converter.h b/dep/include/ace/UTF16_Encoding_Converter.h
deleted file mode 100644
index 231ce158dfa..00000000000
--- a/dep/include/ace/UTF16_Encoding_Converter.h
+++ /dev/null
@@ -1,87 +0,0 @@
-// -*- C++ -*-
-
-//=========================================================================
-/**
- * @file UTF16_Encoding_Converter.h
- *
- * $Id: UTF16_Encoding_Converter.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * This class contains declarations for methods that convert between
- * UTF-16 (both BE and LE) and UTF-8
- *
- * @author Chad Elliott <elliott_c@ociweb.com>
- */
-//=========================================================================
-
-#ifndef ACE_UTF16_ENCODING_CONVERTER_H
-#define ACE_UTF16_ENCODING_CONVERTER_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Encoding_Converter.h"
-
-#if defined (ACE_USES_WCHAR)
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/** Convert from UTF-16 to UTF-8 and from UTF-8 to UTF-16.
- * This class implements the ACE_Encoding_Converter interface.
- */
-class ACE_UTF16_Encoding_Converter: public ACE_Encoding_Converter
-{
-public:
- /// The swap parameter determines whether we need to swap byte order on
- /// the stream as each word is pulled off when converting to UTF-8.
- ACE_UTF16_Encoding_Converter (bool swap = false);
-
- /// This is a do nothing destructor.
- virtual ~ACE_UTF16_Encoding_Converter (void);
-
- /// Convert the source from UTF-16 to UTF-8 and store it in the
- /// provided target buffer.
- virtual Result to_utf8 (const void* source,
- size_t source_size,
- ACE_Byte* target,
- size_t target_size,
- bool strict = true);
-
- /// Convert the UTF-8 source into a UTF-16 encoding and store it
- /// in the provided target buffer.
- virtual Result from_utf8 (const ACE_Byte* source,
- size_t source_size,
- void* target,
- size_t target_size,
- bool strict = true);
-
- /// This factory helper method determines if the source stream is UTF-16
- /// encoded. If it is, allocate an ACE_UTF16_Encoding_Converter and
- /// return it. The caller then owns the allocated object.
- static ACE_UTF16_Encoding_Converter* encoded (const ACE_Byte* source,
- size_t source_size);
-
-protected:
- /// Determines if the source buffer is legal UTF-8
- bool is_legal_utf8 (const ACE_Byte* source,
- size_t length) const;
-
- static ACE_UINT32 get_UNI_SUR_HIGH_START (void);
- static ACE_UINT32 get_UNI_SUR_LOW_END (void);
- static ACE_UINT32 get_UNI_REPLACEMENT_CHAR (void);
- static const ACE_Byte* get_first_byte_mark (void);
- static const ACE_Byte* get_trailing_bytes_for_utf8 (void);
- static const ACE_UINT32* get_offsets_from_utf8 (void);
-
- bool swap_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/UTF16_Encoding_Converter.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_USES_WCHAR */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_UTF16_ENCODING_CONVERTER_H */
-
diff --git a/dep/include/ace/UTF16_Encoding_Converter.inl b/dep/include/ace/UTF16_Encoding_Converter.inl
deleted file mode 100644
index e5292757889..00000000000
--- a/dep/include/ace/UTF16_Encoding_Converter.inl
+++ /dev/null
@@ -1,76 +0,0 @@
-/* -*- C++ -*- */
-// $Id: UTF16_Encoding_Converter.inl 80826 2008-03-04 14:51:23Z wotte $
-
-// ======================================================================
-//
-// The actual conversion methods are covered by the copyright information
-// below.
-// Chad Elliott 4/28/2005
-//
-// Copyright 2001-2004 Unicode, Inc.
-//
-// Limitations on Rights to Redistribute This Code
-//
-// Unicode, Inc. hereby grants the right to freely use the information
-// supplied in this file in the creation of products supporting the
-// Unicode Standard, and to make copies of this file in any form
-// for internal or external distribution as long as this notice
-// remains attached.
-//
-// ======================================================================
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE bool
-ACE_UTF16_Encoding_Converter::is_legal_utf8 (const ACE_Byte* source,
- size_t length) const
-{
- ACE_Byte a;
- const ACE_Byte* srcptr = source + length;
-
- switch (length)
- {
- default:
- return false;
-
- // Everything else falls through when "true"...
- case 4: if ((a = (*--srcptr)) < 0x80 || a > 0xBF) return false;
- case 3: if ((a = (*--srcptr)) < 0x80 || a > 0xBF) return false;
- case 2: if ((a = (*--srcptr)) > 0xBF) return false;
-
- switch (*source)
- {
- // no fall-through in this inner switch
- case 0xE0:
- if (a < 0xA0)
- return false;
- break;
- case 0xED:
- if (a > 0x9F)
- return false;
- break;
- case 0xF0:
- if (a < 0x90)
- return false;
- break;
- case 0xF4:
- if (a > 0x8F)
- return false;
- break;
- default:
- if (a < 0x80)
- return false;
- }
-
- case 1:
- if (*source >= 0x80 && *source < 0xC2)
- return false;
- }
-
- if (*source > 0xF4)
- return false;
-
- return true;
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/UTF32_Encoding_Converter.h b/dep/include/ace/UTF32_Encoding_Converter.h
deleted file mode 100644
index dc811d7251d..00000000000
--- a/dep/include/ace/UTF32_Encoding_Converter.h
+++ /dev/null
@@ -1,68 +0,0 @@
-// -*- C++ -*-
-
-//=========================================================================
-/**
- * @file UTF32_Encoding_Converter.h
- *
- * $Id: UTF32_Encoding_Converter.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * This class contains declarations for methods that convert between
- * UTF-32 (both BE and LE) and UTF-8
- *
- * @author Chad Elliott <elliott_c@ociweb.com>
- */
-//=========================================================================
-
-#ifndef ACE_UTF32_ENCODING_CONVERTER_H
-#define ACE_UTF32_ENCODING_CONVERTER_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/UTF16_Encoding_Converter.h"
-
-#if defined (ACE_USES_WCHAR)
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/** Convert from UTF-32 to UTF-8 and from UTF-8 to UTF-32.
- * This class implements the ACE_Encoding_Converter interface.
- */
-class ACE_UTF32_Encoding_Converter: public ACE_UTF16_Encoding_Converter
-{
-public:
- /// This class has some similarities to the UTF16 converter, so
- /// we just construct our base class and pass the swap parameter.
- ACE_UTF32_Encoding_Converter (bool swap = false);
-
- /// This is a do nothing destructor.
- virtual ~ACE_UTF32_Encoding_Converter (void);
-
- /// Convert the source from UTF-32 to UTF-8 and store it in the
- /// provided target buffer.
- virtual Result to_utf8 (const void* source,
- size_t source_size,
- ACE_Byte* target,
- size_t target_size,
- bool strict = true);
-
- /// Convert the UTF-8 source into a UTF-32 encoding and store it
- /// in the provided target buffer.
- virtual Result from_utf8 (const ACE_Byte* source,
- size_t source_size,
- void* target,
- size_t target_size,
- bool strict = true);
-
- /// This factory helper method determines if the source stream is UTF-32
- /// encoded. If it is, allocate an ACE_UTF32_Encoding_Converter and
- /// return it. The caller then owns the allocated object.
- static ACE_UTF32_Encoding_Converter* encoded (const ACE_Byte* source,
- size_t source_size);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-#endif /* ACE_USES_WCHAR */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_UTF32_ENCODING_CONVERTER_H */
-
diff --git a/dep/include/ace/UTF8_Encoding_Converter.h b/dep/include/ace/UTF8_Encoding_Converter.h
deleted file mode 100644
index a38cffbc0ff..00000000000
--- a/dep/include/ace/UTF8_Encoding_Converter.h
+++ /dev/null
@@ -1,72 +0,0 @@
-// -*- C++ -*-
-
-//=========================================================================
-/**
- * @file UTF8_Encoding_Converter.h
- *
- * $Id: UTF8_Encoding_Converter.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * This class contains declarations for methods that convert between
- * UTF-8 and the native ACE_TCHAR representation.
- *
- * @author Chad Elliott <elliott_c@ociweb.com>
- */
-//=========================================================================
-
-#ifndef ACE_UTF8_ENCODING_CONVERTER_H
-#define ACE_UTF8_ENCODING_CONVERTER_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Encoding_Converter.h"
-
-#if defined (ACE_USES_WCHAR)
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/** Convert from UTF-16 or UTF-32 to UTF-8.
- * This class implements the ACE_Encoding_Converter interface.
- */
-class ACE_UTF8_Encoding_Converter: public ACE_Encoding_Converter
-{
-public:
- /// Allocate the converter to be used by the from_utf8() method based
- /// on the size of the native wide character.
- ACE_UTF8_Encoding_Converter (void);
-
- /// De-allocate the native converter.
- virtual ~ACE_UTF8_Encoding_Converter (void);
-
- /// Since the source *must be* UTF-8, there is no conversion required.
- /// This method just copies the source to the target given that there
- /// is enough space.
- virtual Result to_utf8 (const void* source,
- size_t source_size,
- ACE_Byte* target,
- size_t target_size,
- bool strict = true);
-
- /// Utilize the native converter to convert the UTF-8 source into an
- /// alternate encoding and store it in the provided target buffer.
- virtual Result from_utf8 (const ACE_Byte* source,
- size_t source_size,
- void* target,
- size_t target_size,
- bool strict = true);
-
- /// This factory helper method determines if the source stream is UTF-8
- /// encoded. If it is, allocate an ACE_UTF8_Encoding_Converter and
- /// return it. The caller then owns the allocated object.
- static ACE_UTF8_Encoding_Converter* encoded (const ACE_Byte* source,
- size_t source_size);
-
-private:
- ACE_Encoding_Converter* native_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-#endif /* ACE_USES_WCHAR */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_UTF8_ENCODING_CONVERTER_H */
-
diff --git a/dep/include/ace/UUID.h b/dep/include/ace/UUID.h
deleted file mode 100644
index f2dceff3e51..00000000000
--- a/dep/include/ace/UUID.h
+++ /dev/null
@@ -1,240 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file UUID.h
- *
- * $Id: UUID.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Andrew T. Finnel <andrew@activesol.net>
- * @author Yamuna Krishnmaurthy <yamuna@oomworks.com>
- */
-//=============================================================================
-
-#ifndef ACE_UUID_H
-#define ACE_UUID_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/SString.h"
-#include "ace/Singleton.h"
-#include "ace/Synch_Traits.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_Utils
-{
- /// Class to hold a MAC address
- class ACE_Export UUID_Node
- {
- public:
-
- /// Constructor
- UUID_Node (void);
-
- enum {NODE_ID_SIZE = 6};
- typedef u_char Node_ID[NODE_ID_SIZE];
-
- Node_ID &node_ID (void);
- void node_ID (Node_ID&);
-
- ///// Equality Operations
- bool operator == (const UUID_Node& right) const;
- bool operator != (const UUID_Node& right) const;
-
- ///// Relational Operations
- //bool operator < (const UUID_Node& right) const;
-
- private:
- Node_ID node_ID_;
- };
-
- /**
- * @class ACE_UUID
- *
- * ACE_UUID represents a Universally Unique IDentifier (UUID) as
- * described in (the expired) INTERNET-DRAFT specification entitled
- * UUIDs and GUIDs. All instances of UUID are of the time-based
- * variety. That is, the version number part of the timeHiAndVersion
- * field is 1.
- *
- * The default constructor creates a nil UUID.
- *
- * UUIDs have value semantics. In addition, they may be compared for
- * ordering and equality.
- *
- * Additionally in this implementation provisions have been made to include
- * process and thread ids to make the UUIDs more unique. The variant 0xc0
- * has been added to facilitate this.
- */
- class ACE_Export UUID
- {
- public:
-
- /// Constructor
- UUID (void);
-
- /// Constructs a UUID from a string representation.
- UUID (const ACE_CString& uuidString);
-
- UUID (const UUID &right);
-
- // Destructor
- ~UUID (void);
-
- ACE_UINT32 time_low (void) const;
- void time_low (ACE_UINT32);
-
- ACE_UINT16 time_mid (void) const;
- void time_mid (ACE_UINT16);
-
- ACE_UINT16 time_hi_and_version (void) const;
- void time_hi_and_version (ACE_UINT16);
-
- u_char clock_seq_hi_and_reserved (void) const;
- void clock_seq_hi_and_reserved (u_char);
-
- u_char clock_seq_low (void) const;
- void clock_seq_low (u_char);
-
- UUID_Node* node (void) const;
- void node (UUID_Node*);
-
- ACE_CString* thr_id (void);
- void thr_id (char*);
-
- ACE_CString* pid (void);
- void pid (char*);
-
- /// Returns a string representation of the UUID
- const ACE_CString* to_string (void);
-
- /// Set the value using a string
- void from_string (const ACE_CString& uuid_string);
-
- static UUID NIL_UUID;
-
- /// Equality Operations
- bool operator== (const UUID &right) const;
- bool operator!= (const UUID &right) const;
-
- /// Relational Operations
- //bool operator< (const UUID &right) const;
- //bool operator> (const UUID &right) const;
- //bool operator<= (const UUID &right) const;
- //bool operator>= (const UUID &right) const;
-
- private:
- void from_string_i (const ACE_CString& uuid_string);
-
- UUID& operator= (const UUID&);
-
- /// Data Members for Class Attributes
- ACE_UINT32 time_low_;
- ACE_UINT16 time_mid_;
- ACE_UINT16 time_hi_and_version_;
- u_char clock_seq_hi_and_reserved_;
- u_char clock_seq_low_;
- UUID_Node* node_;
- bool node_release_;
- ACE_CString thr_id_;
- ACE_CString pid_;
-
- /// The string representation of the UUID. This is created and
- /// updated only on demand.
- ACE_CString *as_string_;
- };
-
- /**
- * @class ACE_UUID_Generator
- *
- * Singleton class that generates UUIDs.
- *
- */
- class ACE_Export UUID_Generator
- {
- public:
-
- enum {ACE_UUID_CLOCK_SEQ_MASK = 0x3FFF};
-
- UUID_Generator();
- ~UUID_Generator();
-
- void init (void);
-
- /// Format timestamp, clockseq, and nodeID into an UUID of the
- /// specified version and variant. For generating UUID's with
- /// thread and process ids use variant=0xc0
- void generate_UUID (UUID&, ACE_UINT16 version=0x0001, u_char variant=0x80);
-
- /// Format timestamp, clockseq, and nodeID into a VI UUID. For
- /// generating UUID's with thread and process ids use variant=0xc0
- UUID* generate_UUID (ACE_UINT16 version=0x0001, u_char variant=0x80);
-
- /// Type to represent UTC as a count of 100 nanosecond intervals
- /// since 00:00:00.00, 15 October 1582.
- typedef ACE_UINT64 UUID_Time;
-
- /// The locking strategy prevents multiple generators from accessing
- /// the UUID_state at the same time. Get the locking strategy.
- ACE_SYNCH_MUTEX* lock (void);
-
- /// Set a new locking strategy and return the old one.
- void lock (ACE_SYNCH_MUTEX* lock,
- bool release_lock);
-
- private:
-
- /// The system time when that last uuid was generated.
- UUID_Time time_last_;
-
- /// Type to contain the UUID generator persistent state. This will
- /// be kept in memory mapped shared memory
- struct UUID_State
- {
- UUID_Time timestamp;
- UUID_Node node;
- ACE_UINT16 clock_sequence;
- };
-
- /// Obtain a UUID timestamp. Compensate for the fact that the time
- /// obtained from getSystem time has a resolution less than 100ns.
- void get_timestamp (UUID_Time& timestamp);
-
- /// Obtain a UUID timestamp and clock sequence. Compensate for the
- /// fact that the time obtained from getSystem time has a
- /// resolution less than 100ns.
- void get_timestamp_and_clocksequence (UUID_Time& timestamp,
- ACE_UINT16& clockSequence);
-
- /// Obtain the system time in UTC as a count of 100 nanosecond intervals
- /// since 00:00:00.00, 15 October 1582 (the date of Gregorian reform to
- /// the Christian calendar).
- void get_systemtime( UUID_Time& timeNow);
-
- /// The UUID generator persistent state.
- UUID_State uuid_state_;
-
- ACE_SYNCH_MUTEX* lock_;
- bool destroy_lock_;
- };
-
- typedef ACE_Singleton<UUID_Generator, ACE_SYNCH_MUTEX> UUID_GENERATOR;
-
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/UUID.inl"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-#endif // ACE_UUID_H
-
-
diff --git a/dep/include/ace/UUID.inl b/dep/include/ace/UUID.inl
deleted file mode 100644
index a60fb6ce17f..00000000000
--- a/dep/include/ace/UUID.inl
+++ /dev/null
@@ -1,200 +0,0 @@
-// -*- C++ -*-
-//
-//$Id: UUID.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE_Utils
-{
-
- /// Data Members for Class Attributes
- ACE_INLINE ACE_UINT32
- UUID::time_low (void) const
- {
- return this->time_low_;
- }
-
- ACE_INLINE void
- UUID::time_low (ACE_UINT32 timelow)
- {
- this->time_low_ = timelow;
- }
-
- ACE_INLINE ACE_UINT16
- UUID::time_mid (void) const
- {
- return this->time_mid_;
- }
-
- ACE_INLINE void
- UUID::time_mid (ACE_UINT16 time_mid)
- {
- this->time_mid_ = time_mid;
- }
-
- ACE_INLINE ACE_UINT16
- UUID::time_hi_and_version (void) const
- {
- return this->time_hi_and_version_;
- }
-
- ACE_INLINE void
- UUID::time_hi_and_version (ACE_UINT16 time_hi_and_version)
- {
- this->time_hi_and_version_ = time_hi_and_version;
- }
-
- ACE_INLINE u_char
- UUID::clock_seq_hi_and_reserved (void) const
- {
- return this->clock_seq_hi_and_reserved_;
- }
-
- ACE_INLINE void
- UUID::clock_seq_hi_and_reserved (u_char clock_seq_hi_and_reserved)
- {
- this->clock_seq_hi_and_reserved_ = clock_seq_hi_and_reserved;
- }
-
- ACE_INLINE u_char
- UUID::clock_seq_low (void) const
- {
- return this->clock_seq_low_;
- }
-
- ACE_INLINE void
- UUID::clock_seq_low (u_char clock_seq_low)
- {
- this->clock_seq_low_ = clock_seq_low;
- }
-
- ACE_INLINE UUID_Node*
- UUID::node (void) const
- {
- return this->node_;
- }
-
- ACE_INLINE void
- UUID::node (UUID_Node* node)
- {
- if (node_release_)
- delete node_;
-
- this->node_ = node;
- node_release_ = false;
- }
-
- ACE_INLINE ACE_CString*
- UUID::thr_id (void)
- {
- return &this->thr_id_;
- }
-
- ACE_INLINE void
- UUID::thr_id (char* thr_id)
- {
- this->thr_id_ = thr_id;
- }
-
- ACE_INLINE ACE_CString*
- UUID::pid (void)
- {
- return &this->pid_;
- }
-
- ACE_INLINE void
- UUID::pid (char* pid)
- {
- this->pid_ = pid;
- }
-
- ACE_INLINE void
- UUID::from_string (const ACE_CString& uuidString)
- {
- this->from_string_i (uuidString);
- }
-
- ACE_INLINE bool
- UUID::operator == (const UUID &right) const
- {
- if ((this->time_low_ != right.time_low ()) ||
- (this->time_mid_ != right.time_mid ()) ||
- (this->time_hi_and_version_ != right.time_hi_and_version ()) ||
- (this->clock_seq_hi_and_reserved_ != right.clock_seq_hi_and_reserved ()) ||
- (this->clock_seq_low_ != right.clock_seq_low ()) ||
- (*this->node_ != *right.node ()))
- return false;
-
- return true;
- }
-
- ACE_INLINE bool
- UUID::operator != (const UUID &right) const
- {
- return !(*this == right);
- }
-
-// ACE_INLINE bool
-//UUID::operator < (const UUID &rt) const
-// {
-// UUID right (rt);
-// if ((timeLow_ < right.timeLow ()) ||
-// (timeMid_ < right.timeMid ()) ||
-// (timeHiAndVersion_ < right.timeHiAndVersion ()) ||
-// (clockSeqHiAndReserved_ < right.clockSeqHiAndReserved ()) ||
-// (clockSeqLow_ < right.clockSeqLow ()) ||
-// (node_ < right.node ()))
-// {
-// return true;
-// }
-//
-// return false;
-// }
-//
-// ACE_INLINE bool
-// UUID::operator > (const UUID &right) const
-// {
-// return right < *this;
-// }
-//
-// ACE_INLINE bool
-// UUID::operator <= (const UUID &right) const
-// {
-// return !(*this > right);
-// }
-//
-// ACE_INLINE bool
-// UUID::operator >= (const UUID &right) const
-// {
-// return !(*this < right);
-// }
-//
- ACE_INLINE bool
- UUID_Node::operator == (const UUID_Node& rt) const
- {
- for (size_t i = 0; i < NODE_ID_SIZE; ++i)
- if (node_ID_ [i] != rt.node_ID_ [i])
- return false;
-
- return true;
- }
-
- ACE_INLINE bool
- UUID_Node::operator != (const UUID_Node& right) const
- {
- return !(*this == right);
- }
-
-// ACE_INLINE bool
-// UUID_node::operator < (const UUID_node& rt) const
-// {
-// UUID_node right = rt;
-// for (size_t i = 0; i < NODE_ID_SIZE; ++i)
-// if (nodeID_ [i] < right.nodeID ()[i])
-// return true;
-//
-// return false;
-// }
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Unbounded_Queue.h b/dep/include/ace/Unbounded_Queue.h
deleted file mode 100644
index 0c16ac23388..00000000000
--- a/dep/include/ace/Unbounded_Queue.h
+++ /dev/null
@@ -1,298 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Unbounded_Queue.h
- *
- * $Id: Unbounded_Queue.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_UNBOUNDED_QUEUE_H
-#define ACE_UNBOUNDED_QUEUE_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Node.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_stddef.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Allocator;
-
-template <class T>
-class ACE_Unbounded_Queue;
-
-/**
- * @class ACE_Unbounded_Queue_Iterator
- *
- * @brief Implement an iterator over an unbounded queue.
- */
-template <class T>
-class ACE_Unbounded_Queue_Iterator
-{
-public:
- // = Initialization method.
- ACE_Unbounded_Queue_Iterator (ACE_Unbounded_Queue<T> &q, int end = 0);
-
- // = Iteration methods.
-
- /// Pass back the @a next_item that hasn't been seen in the queue.
- /// Returns 0 when all items have been seen, else 1.
- int next (T *&next_item);
-
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the queue have been seen, else 1.
- int advance (void);
-
- /// Move to the first element in the queue. Returns 0 if the
- /// queue is empty, else 1.
- int first (void);
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Pointer to the current node in the iteration.
- ACE_Node<T> *current_;
-
- /// Pointer to the queue we're iterating over.
- ACE_Unbounded_Queue<T> &queue_;
-};
-
-/**
- * @class ACE_Unbounded_Queue_Const_Iterator
- *
- * @brief Implement an iterator over an const unbounded queue.
- */
-template <class T>
-class ACE_Unbounded_Queue_Const_Iterator
-{
-public:
- // = Initialization method.
- ACE_Unbounded_Queue_Const_Iterator (const ACE_Unbounded_Queue<T> &q, int end = 0);
-
- // = Iteration methods.
-
- /// Pass back the @a next_item that hasn't been seen in the queue.
- /// Returns 0 when all items have been seen, else 1.
- int next (T *&next_item);
-
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the queue have been seen, else 1.
- int advance (void);
-
- /// Move to the first element in the queue. Returns 0 if the
- /// queue is empty, else 1.
- int first (void);
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Pointer to the current node in the iteration.
- ACE_Node<T> *current_;
-
- /// Pointer to the queue we're iterating over.
- const ACE_Unbounded_Queue<T> &queue_;
-};
-
-/**
- * @class ACE_Unbounded_Queue
- *
- * @brief A Queue of "infinite" length.
- *
- * This implementation of an unbounded queue uses a circular
- * linked list with a dummy node.
- *
- * <b> Requirements and Performance Characteristics</b>
- * - Internal Structure
- * Circular linked list
- * - Duplicates allowed?
- * Yes
- * - Random access allowed?
- * No
- * - Search speed
- * N/A
- * - Insert/replace speed
- * N/A
- * - Iterator still valid after change to container?
- * Yes
- * - Frees memory for removed elements?
- * Yes
- * - Items inserted by
- * Value
- * - Requirements for contained type
- * -# Default constructor
- * -# Copy constructor
- * -# operator=
- *
- */
-template <class T>
-class ACE_Unbounded_Queue
-{
-public:
- friend class ACE_Unbounded_Queue_Iterator<T>;
- friend class ACE_Unbounded_Queue_Const_Iterator<T>;
-
- // Trait definition.
- typedef ACE_Unbounded_Queue_Iterator<T> ITERATOR;
- typedef ACE_Unbounded_Queue_Const_Iterator<T> CONST_ITERATOR;
-
- // = Initialization and termination methods.
- /// Construction. Use user specified allocation strategy
- /// if specified.
- /**
- * Initialize an empty queue using the strategy provided.
- */
- ACE_Unbounded_Queue (ACE_Allocator *alloc = 0);
-
- /// Copy constructor.
- /**
- * Initialize the queue to be a copy of the provided queue.
- */
- ACE_Unbounded_Queue (const ACE_Unbounded_Queue<T> &);
-
- /// Assignment operator.
- /**
- * Perform a deep copy of rhs.
- */
- void operator= (const ACE_Unbounded_Queue<T> &);
-
- /// Destructor.
- /**
- * Clean up the memory for the queue.
- */
- ~ACE_Unbounded_Queue (void);
-
- // = Check boundary conditions.
-
- /// Returns 1 if the container is empty, otherwise returns 0.
- /**
- * Constant time check to see if the queue is empty.
- */
- int is_empty (void) const;
-
- /// Returns 0.
- /**
- * The queue cannot be full, so it always returns 0.
- */
- int is_full (void) const;
-
- // = Classic queue operations.
-
- /// Adds @a new_item to the tail of the queue. Returns 0 on success,
- /// -1 on failure.
- /**
- * Insert an item at the end of the queue.
- */
- int enqueue_tail (const T &new_item);
-
- /// Adds @a new_item to the head of the queue. Returns 0 on success,
- /// -1 on failure.
- /**
- * Insert an item at the head of the queue.
- */
- int enqueue_head (const T &new_item);
-
- /// Removes and returns the first @a item on the queue. Returns 0 on
- /// success, -1 if the queue was empty.
- /**
- * Remove an item from the head of the queue.
- */
- int dequeue_head (T &item);
-
- // = Additional utility methods.
-
- /// Reset the ACE_Unbounded_Queue to be empty and release all its
- /// dynamically allocated resources.
- /**
- * Delete the queue nodes.
- */
- void reset (void);
-
- /// Get the @a slot th element in the set. Returns -1 if the element
- /// isn't in the range {0..#cur_size_ - 1}, else 0.
- /**
- * Find the item in the queue between 0 and the provided index of the
- * queue.
- */
- int get (T *&item, size_t slot = 0) const;
-
- /// Set the @a slot th element of the queue to @a item.
- /**
- * Set the @a slot th element in the set. Will pad out the set with
- * empty nodes if @a slot is beyond the range {0..#cur_size_ - 1}.
- * Returns -1 on failure, 0 if @a slot isn't initially in range, and
- * 0 otherwise.
- */
- int set (const T &item, size_t slot);
-
- /// The number of items in the queue.
- /**
- * Return the size of the queue.
- */
- size_t size (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL-styled unidirectional iterator factory.
- ACE_Unbounded_Queue_Iterator<T> begin (void);
- ACE_Unbounded_Queue_Iterator<T> end (void);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-protected:
- /// Delete all the nodes in the queue.
- void delete_nodes (void);
-
- /// Copy nodes into this queue.
- void copy_nodes (const ACE_Unbounded_Queue<T> &);
-
- /// Pointer to the dummy node in the circular linked Queue.
- ACE_Node<T> *head_;
-
- /// Current size of the queue.
- size_t cur_size_;
-
- /// Allocation Strategy of the queue.
- ACE_Allocator *allocator_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Unbounded_Queue.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Unbounded_Queue.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Unbounded_Queue.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_UNBOUNDED_QUEUE_H */
-
diff --git a/dep/include/ace/Unbounded_Queue.inl b/dep/include/ace/Unbounded_Queue.inl
deleted file mode 100644
index 0758412b984..00000000000
--- a/dep/include/ace/Unbounded_Queue.inl
+++ /dev/null
@@ -1,27 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Unbounded_Queue.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class T> ACE_INLINE size_t
-ACE_Unbounded_Queue<T>::size (void) const
-{
- return this->cur_size_;
-}
-
-template <class T> ACE_INLINE int
-ACE_Unbounded_Queue<T>::is_empty (void) const
-{
- // ACE_TRACE ("ACE_Unbounded_Queue<T>::is_empty");
- return this->head_ == this->head_->next_;
-}
-
-template <class T> ACE_INLINE int
-ACE_Unbounded_Queue<T>::is_full (void) const
-{
- // ACE_TRACE ("ACE_Unbounded_Queue<T>::is_full");
- return 0; // We should implement a "node of last resort for this..."
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Unbounded_Set.h b/dep/include/ace/Unbounded_Set.h
deleted file mode 100644
index 44fb84068ee..00000000000
--- a/dep/include/ace/Unbounded_Set.h
+++ /dev/null
@@ -1,104 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Unbounded_Set.h
- *
- * $Id: Unbounded_Set.h 81642 2008-05-07 19:30:35Z shuston $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_UNBOUNDED_SET_H
-#define ACE_UNBOUNDED_SET_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Unbounded_Set_Ex.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Allocator;
-
-/**
- * @struct ACE_Unbounded_Set_Default_Comparator
- * @brief Simple comparator that evaluates equality using == operator.
- */
-template<typename T>
-struct ACE_Unbounded_Set_Default_Comparator
-{
- bool operator() (const T&lhs, const T&rhs) const;
-};
-
-template<typename T>
-class ACE_Unbounded_Set;
-
-/**
- * @class ACE_Unbounded_Set_Iterator
- * @brief Compatibility wrapper for ACE_Unbounded_Set_Ex_Iterator.
- */
-template <typename T>
-class ACE_Unbounded_Set_Iterator : public
- ACE_Unbounded_Set_Ex_Iterator<T, ACE_Unbounded_Set_Default_Comparator<T> >
-{
-public:
- typedef ACE_Unbounded_Set_Ex_Iterator<T, ACE_Unbounded_Set_Default_Comparator<T> > base_type;
-
- // = Initialization method.
- ACE_Unbounded_Set_Iterator (ACE_Unbounded_Set<T> &s, bool end = false);
-
- ACE_Unbounded_Set_Iterator (const base_type &s);
-};
-
-/**
- * @class ACE_Unbounded_Set_Const_Iterator
- * @brief Compatibility wrapper for ACE_Unbounded_Set_Ex_Const_Iterator.
- */
-template <class T>
-class ACE_Unbounded_Set_Const_Iterator : public
- ACE_Unbounded_Set_Ex_Const_Iterator<T, ACE_Unbounded_Set_Default_Comparator<T> >
-{
-public:
-
- typedef ACE_Unbounded_Set_Ex_Const_Iterator<T, ACE_Unbounded_Set_Default_Comparator<T> > base_type;
-
- // = Initialization method.
- ACE_Unbounded_Set_Const_Iterator (const ACE_Unbounded_Set<T> &s,
- bool end = false);
-
- ACE_Unbounded_Set_Const_Iterator (const base_type &s);
-};
-
-/**
- * @class ACE_Unbounded_Set
- * @brief Compatibility wrapper for ACE_Unbounded_Set_Ex.
- */
-template<typename T>
-class ACE_Unbounded_Set : public
- ACE_Unbounded_Set_Ex<T, ACE_Unbounded_Set_Default_Comparator<T> >
-{
-public:
- ACE_Unbounded_Set (ACE_Allocator *alloc = 0);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Unbounded_Set.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Unbounded_Set.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Unbounded_Set.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_UNBOUNDED_SET_H */
-
diff --git a/dep/include/ace/Unbounded_Set.inl b/dep/include/ace/Unbounded_Set.inl
deleted file mode 100644
index 36190c6638c..00000000000
--- a/dep/include/ace/Unbounded_Set.inl
+++ /dev/null
@@ -1,48 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Unbounded_Set.inl 81642 2008-05-07 19:30:35Z shuston $
-
-#include "ace/Global_Macros.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <typename T> ACE_INLINE bool
-ACE_Unbounded_Set_Default_Comparator<T>::operator () (const T &lhs, const T &rhs) const
-{
- return lhs == rhs;
-}
-
-template<typename T>
-ACE_Unbounded_Set_Iterator<T>::ACE_Unbounded_Set_Iterator (ACE_Unbounded_Set<T> &s,
- bool end)
- : base_type (s, end)
-{
-}
-
-template<typename T>
-ACE_Unbounded_Set_Iterator<T>::ACE_Unbounded_Set_Iterator (const base_type & s)
- : base_type (s)
-{
-}
-
-template<typename T>
-ACE_Unbounded_Set_Const_Iterator<T>::
-ACE_Unbounded_Set_Const_Iterator (const ACE_Unbounded_Set<T> &s,
- bool end)
- : base_type (s, end)
-{
-}
-
-template<typename T>
-ACE_Unbounded_Set_Const_Iterator<T>::ACE_Unbounded_Set_Const_Iterator (const base_type & s)
- : base_type (s)
-{
-}
-
-template<typename T>
-ACE_Unbounded_Set<T>::ACE_Unbounded_Set (ACE_Allocator *alloc)
- : ACE_Unbounded_Set_Ex<T, ACE_Unbounded_Set_Default_Comparator<T> > (alloc)
-{
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Unbounded_Set_Ex.h b/dep/include/ace/Unbounded_Set_Ex.h
deleted file mode 100644
index ab16a54be86..00000000000
--- a/dep/include/ace/Unbounded_Set_Ex.h
+++ /dev/null
@@ -1,348 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Unbounded_Set_Ex.h
- *
- * $Id: Unbounded_Set_Ex.h 81624 2008-05-06 17:14:57Z wotte $
- *
- * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_UNBOUNDED_SET_EX_H
-#define ACE_UNBOUNDED_SET_EX_H
-#include /**/ "ace/pre.h"
-
-#include "ace/Node.h"
-#include "ace/os_include/os_stddef.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class ACE_Allocator;
-
-template <class T, class C>
-class ACE_Unbounded_Set_Ex_Iterator;
-
-template <class T, class C>
-class ACE_Unbounded_Set_Ex_Const_Iterator;
-
-template <class T, class C>
-class ACE_Unbounded_Set_Ex;
-
-/**
- * @class ACE_Unbounded_Set_Ex_Iterator
- *
- * @brief Implement an iterator over an unbounded set.
- */
-template <class T, class C>
-class ACE_Unbounded_Set_Ex_Iterator
-{
-public:
- // = Initialization method.
- ACE_Unbounded_Set_Ex_Iterator (ACE_Unbounded_Set_Ex<T, C> &s, bool end = false);
-
- // = Iteration methods.
-
- /// Pass back the <next_item> that hasn't been seen in the Set.
- /// Returns 0 when all items have been seen, else 1.
- int next (T *&next_item);
-
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Move to the first element in the set. Returns 0 if the
- /// set is empty, else 1.
- int first (void);
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL styled iteration, compare, and reference functions.
-
- /// Postfix advance.
- ACE_Unbounded_Set_Ex_Iterator<T, C> operator++ (int);
-
- /// Prefix advance.
- ACE_Unbounded_Set_Ex_Iterator<T, C>& operator++ (void);
-
- /// Returns a reference to the internal element @c this is pointing to.
- T& operator* (void);
-
- /// Check if two iterators point to the same position
- bool operator== (const ACE_Unbounded_Set_Ex_Iterator<T, C> &) const;
- bool operator!= (const ACE_Unbounded_Set_Ex_Iterator<T, C> &) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-
- /// Pointer to the current node in the iteration.
- ACE_Node<T, C> *current_;
-
- /// Pointer to the set we're iterating over.
- ACE_Unbounded_Set_Ex<T, C> *set_;
-};
-
-/**
- * @class ACE_Unbounded_Set_Ex_Const_Iterator
- *
- * @brief Implement an const iterator over an unbounded set.
- */
-template <class T, class C>
-class ACE_Unbounded_Set_Ex_Const_Iterator
-{
-public:
- // = Initialization method.
- ACE_Unbounded_Set_Ex_Const_Iterator (const ACE_Unbounded_Set_Ex<T, C> &s,
- bool end = false);
-
- // = Iteration methods.
-
- /// Pass back the @a next_item that hasn't been seen in the Set.
- /// @return Returns 0 when all items have been seen, else 1.
- int next (T *&next_item);
-
- /// Move forward by one element in the set. Returns 0 when all the
- /// items in the set have been seen, else 1.
- int advance (void);
-
- /// Move to the first element in the set. Returns 0 if the
- /// set is empty, else 1.
- int first (void);
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- // = STL styled iteration, compare, and reference functions.
-
- /// Postfix advance.
- ACE_Unbounded_Set_Ex_Const_Iterator<T, C> operator++ (int);
-
- /// Prefix advance.
- ACE_Unbounded_Set_Ex_Const_Iterator<T, C>& operator++ (void);
-
- /// Returns a reference to the internal element @c this is pointing to.
- T& operator* (void);
-
- /// Check if two iterators point to the same position
- bool operator== (const ACE_Unbounded_Set_Ex_Const_Iterator<T, C> &) const;
- bool operator!= (const ACE_Unbounded_Set_Ex_Const_Iterator<T, C> &) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
-
- /// Pointer to the current node in the iteration.
- ACE_Node<T, C> *current_;
-
- /// Pointer to the set we're iterating over.
- const ACE_Unbounded_Set_Ex<T, C> *set_;
-};
-
-/**
- * @class ACE_Unbounded_Set_Ex
- *
- * @brief Implement a simple unordered set of <T> of unbounded size.
- *
- * This implementation of an unordered set uses a circular
- * linked list with a dummy node. This implementation does not
- * allow duplicates, but it maintains FIFO ordering of insertions.
- *
- * This implementation may also be parameterized with a comparator
- * functor, which must implement bool operator () (const T&, const T&) const,
- * returning true if the given items are equivalent. The default comparator
- * is sufficient for objects reliably compared with operator==.
- *
- * <b> Requirements and Performance Characteristics</b>
- * - Internal Structure
- * Circular linked list
- * - Duplicates allowed?
- * No
- * - Random access allowed?
- * No
- * - Search speed
- * Linear
- * - Insert/replace speed
- * Linear
- * - Iterator still valid after change to container?
- * Yes
- * - Frees memory for removed elements?
- * Yes
- * - Items inserted by
- * Value
- * - Requirements for contained type
- * -# Default constructor
- * -# Copy constructor
- * -# operator=
- * -# operator== const
- *
- */
-template <class T, class C>
-class ACE_Unbounded_Set_Ex
-{
-public:
- friend class ACE_Unbounded_Set_Ex_Iterator<T, C>;
- friend class ACE_Unbounded_Set_Ex_Const_Iterator<T, C>;
-
- // Trait definition.
- typedef ACE_Unbounded_Set_Ex_Iterator<T, C> ITERATOR;
- typedef ACE_Unbounded_Set_Ex_Iterator<T, C> iterator;
- typedef ACE_Unbounded_Set_Ex_Const_Iterator<T, C> CONST_ITERATOR;
- typedef ACE_Unbounded_Set_Ex_Const_Iterator<T, C> const_iterator;
- typedef C COMP;
- typedef ACE_Node<T, C> NODE;
-
- // = Initialization and termination methods.
- /// Constructor. Use user specified allocation strategy
- /// if specified.
- /**
- * Initialize an empty set using the allocation strategy of the user if
- * provided.
- */
- ACE_Unbounded_Set_Ex (ACE_Allocator *alloc = 0);
-
- /**
- * Initialize an empty set using the allocation strategy of the user if
- * provided, and a given comparator functor.
- */
- ACE_Unbounded_Set_Ex (const C &comparator, ACE_Allocator *alloc = 0);
-
- /// Copy constructor.
- /**
- * Initialize this set to be an exact copy of the set provided.
- */
- ACE_Unbounded_Set_Ex (const ACE_Unbounded_Set_Ex<T, C> &);
-
- /// Assignment operator.
- /**
- * Perform a deep copy of the rhs into the lhs.
- */
- ACE_Unbounded_Set_Ex<T, C> & operator= (const ACE_Unbounded_Set_Ex<T, C> &);
-
- /// Destructor.
- /**
- * Destroy the nodes of the set.
- */
- ~ACE_Unbounded_Set_Ex (void);
-
- // = Check boundary conditions.
-
- /// Returns @c true if the container is empty, otherwise returns @c false.
- /**
- * Constant time is_empty check.
- */
- bool is_empty (void) const;
-
- /// Returns @c false.
- /**
- * Always returns @c false since the set can never fill up.
- */
- bool is_full (void) const;
-
- // = Classic unordered set operations.
-
- /// Linear insertion of an item.
- /**
- * Insert @a new_item into the set (doesn't allow duplicates).
- * Returns -1 if failures occur, 1 if item is already present, else
- * 0.
- */
- int insert (const T &new_item);
-
- /// Insert @a item at the tail of the set (doesn't check for
- /// duplicates).
- /**
- * Constant time insert at the end of the set.
- */
- int insert_tail (const T &item);
-
- /// Linear remove operation.
- /**
- * Remove first occurrence of @a item from the set. Returns 0 if
- * it removes the item, -1 if it can't find the item, and -1 if a
- * failure occurs.
- */
- int remove (const T &item);
-
- /// Finds if @a item occurs in the set. Returns 0 if find succeeds,
- /// else -1.
- /**
- * Performs a linear find operation.
- */
- int find (const T &item) const;
-
- /// Size of the set.
- /**
- * Access the size of the set.
- */
- size_t size (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Reset the ACE_Unbounded_Set_Ex to be empty.
- /**
- * Delete the nodes of the set.
- */
- void reset (void);
-
- // = STL-styled unidirectional iterator factory.
- iterator begin (void);
- iterator end (void);
- const_iterator begin (void) const;
- const_iterator end (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Delete all the nodes in the Set.
- void delete_nodes (void);
-
- /// Copy nodes into this set.
- void copy_nodes (const ACE_Unbounded_Set_Ex<T, C> &);
-
- /// Head of the linked list of Nodes.
- NODE *head_;
-
- /// Current size of the set.
- size_t cur_size_;
-
- /// Allocation strategy of the set.
- ACE_Allocator *allocator_;
-
- /// Comparator to be used
- COMP comp_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Unbounded_Set_Ex.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Unbounded_Set_Ex.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Unbounded_Set_Ex.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_UNBOUNDED_SET_H */
-
diff --git a/dep/include/ace/Unbounded_Set_Ex.inl b/dep/include/ace/Unbounded_Set_Ex.inl
deleted file mode 100644
index 356a1f58f1d..00000000000
--- a/dep/include/ace/Unbounded_Set_Ex.inl
+++ /dev/null
@@ -1,23 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Unbounded_Set_Ex.inl 81624 2008-05-06 17:14:57Z wotte $
-
-#include "ace/Global_Macros.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class T, class C> ACE_INLINE bool
-ACE_Unbounded_Set_Ex<T,C>::is_empty (void) const
-{
- ACE_TRACE ("ACE_Unbounded_Set_Ex<T>::is_empty");
- return this->head_ == this->head_->next_;
-}
-
-template <class T, class C> ACE_INLINE bool
-ACE_Unbounded_Set_Ex<T, C>::is_full (void) const
-{
- ACE_TRACE ("ACE_Unbounded_Set_Ex<T>::is_full");
- return 0; // We should implement a "node of last resort for this..."
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/Value_Ptr.h b/dep/include/ace/Value_Ptr.h
deleted file mode 100644
index f42beba0c99..00000000000
--- a/dep/include/ace/Value_Ptr.h
+++ /dev/null
@@ -1,168 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Value_Ptr.h
- *
- * $Id: Value_Ptr.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * Value_Ptr implementation based on code in Herb Sutter's book "More
- * Exceptional C++".
- *
- * @author Ossama Othman <ossama@dre.vanderbilt.edu>
- */
-//==========================================================================
-
-#ifndef ACE_VALUE_PTR_H
-#define ACE_VALUE_PTR_H
-
-#include "ace/config-lite.h"
-
-#include <algorithm>
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-namespace ACE
-{
- /**
- * @struct VP_traits
- *
- * @brief @c Value_Ptr traits template structure.
- *
- * The @c Value_Ptr template class delegates some operations to this
- * template traits structure.
- *
- * Specialize this trait template if cloning through copy
- * construction is not sufficient. For example, to avoid slicing
- * when copying an object through a base class pointer, one can
- * implement a virtual "clone" method that can be used to
- * polymorphically invoke the appropriate cloning operation(s).
- * That virtual method would then be invoked by the @c VP_traits\<\>
- * specialization.
- */
- template <typename T>
- struct VP_traits
- {
- /// Copy the given object.
- static T * clone (T const * p) { return new T (*p); }
- };
-
- /**
- * @class Value_Ptr
- *
- * @brief Smart pointer implementation designed for use as a class
- * member.
- *
- * Using a @c std::auto_ptr\<\> as a class member is sometimes
- * problematic since ownership of memory is transferred when copying
- * such members. This @c Value_Ptr class is explicitly designed to
- * avoid such problems by performing copies of the underlying object
- * rather than transfer ownership. This, for example, allows it to
- * be readily used as a member in classes placed inside STL
- * containers.
- *
- * @see Item 31 in "More Exceptional C++" by Herb Sutter.
- */
- template <typename T>
- class Value_Ptr
- {
- public:
-
- /// Constructor.
- explicit Value_Ptr (T * p = 0) : p_ (p) { }
-
- /// Destructor.
- ~Value_Ptr (void) { delete this->p_; }
-
- /// Deference operator.
- T & operator* (void) const { return *this->p_; }
-
- /// Pointer operator.
- T * operator-> (void) const { return this->p_; }
-
- /// Non-throwing swap operation used to make assignment strongly
- /// exception-safe.
- /**
- * @note As implemented, the swap operation may not work correctly
- * for @c auto_ptr\<\>s, but why would one use an @c
- * auto_ptr\<\> as the template argument for this particular
- * template class!?
- */
- void swap (Value_Ptr & other) { std::swap (this->p_, other.p_); }
-
- /// Copy constructor.
- Value_Ptr (Value_Ptr const & other)
- : p_ (create_from (other.p_)) { }
-
- /// Assignment operator.
- Value_Ptr & operator= (Value_Ptr const & other)
- {
- // Strongly exception-safe.
- Value_Ptr temp (other);
- this->swap (temp);
- return *this;
- }
-
-#ifndef ACE_LACKS_MEMBER_TEMPLATES
-
- // Compiler can't handle member templates so we lose converting
- // copy operations.
-
- /// Converting copy constructor.
- template <typename U>
- Value_Ptr (Value_Ptr<U> const & other)
- : p_ (create_from (other.p_)) { }
-
- /// Converting assignment operator.
- template <typename U>
- Value_Ptr & operator= (Value_Ptr<U> const & other)
- {
- // Strongly exception-safe.
- Value_Ptr temp (other);
- this->swap (temp);
- return *this;
- }
-
-#endif /* !ACE_LACKS_MEMBER_TEMPLATES */
-
- private:
-
-#ifndef ACE_LACKS_MEMBER_TEMPLATES
-
- /// Copying method invoked when copy constructing.
- template <typename U>
- T * create_from (U const * p) const
- {
- return p ? VP_traits<U>::clone (p) : 0;
- }
-
-#else
-
- // Compiler can't handle member templates so we lose converting
- // copy operations.
-
- /// Copying method invoked when copy constructing.
- T * create_from (T const * p) const
- {
- return p ? VP_traits<T>::clone (p) : 0;
- }
-
-#endif /* !ACE_LACKS_MEMBER_TEMPLATES */
-
- private:
-
-#ifndef ACE_LACKS_MEMBER_TEMPLATES
- template <typename U> friend class Value_Ptr;
-#endif /* !ACE_LACKS_MEMBER_TEMPLATES */
-
- /// Object owned by this @c Value_Ptr.
- T * p_;
-
- };
-
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_VALUE_PTR_H */
-
diff --git a/dep/include/ace/Vector_T.h b/dep/include/ace/Vector_T.h
deleted file mode 100644
index c8c6a5112ac..00000000000
--- a/dep/include/ace/Vector_T.h
+++ /dev/null
@@ -1,316 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file Vector_T.h
- *
- * $Id: Vector_T.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Craig L. Ching <cching@mqsoftware.com>
- * @author Gonzalo Diethelm <gonzalo.diethelm@aditiva.com>
- */
-//==========================================================================
-
-#ifndef ACE_VECTOR_T_H
-#define ACE_VECTOR_T_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/Array.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/*
- * Default size for an ACE_Vector.
- */
-static const size_t ACE_VECTOR_DEFAULT_SIZE = 32;
-
-// Forward declaration.
-template <class T, size_t DEFAULT_SIZE> class ACE_Vector_Iterator;
-
-/**
- * @class ACE_Vector
- *
- * @brief Defines an STL-like vector container.
- *
- * This is an STL-like template vector container, a wrapper around
- * ACE_Array. It provides at least the basic std::vector look and
- * feel: push_back(), clear(), resize(), capacity(). This template
- * class uses the copy semantic paradigm, though it is okay to use
- * reference counted smart pointers (see ACE_Ptr&lt;T&gt;) with this
- * template class.
- *
- * <b> Requirements and Performance Characteristics</b>
- * - Internal Structure
- * ACE_Array
- * - Duplicates allowed?
- * Yes
- * - Random access allowed?
- * No
- * - Search speed
- * N/A
- * - Insert/replace speed
- * Linear
- * - Iterator still valid after change to container?
- * Yes
- * - Frees memory for removed elements?
- * No
- * - Items inserted by
- * Value
- * - Requirements for contained type
- * -# Default constructor
- * -# Copy constructor
- * -# operator=
- */
-template<class T, size_t DEFAULT_SIZE = ACE_VECTOR_DEFAULT_SIZE>
-class ACE_Vector : public ACE_Array<T>
-{
-public:
- /**
- * A short name for iterator for ACE_Vector.
- */
- typedef ACE_Vector_Iterator<T, DEFAULT_SIZE> Iterator;
-
- /**
- * General constructor.
- *
- * @param init_size Initial size of the vector with the default
- * value of DEFAULT_SIZE
- * @param alloc Pointer to an ACE allocator. If it is NULL then the
- * default ACE allocator is used
- */
- ACE_Vector (const size_t init_size = DEFAULT_SIZE,
- ACE_Allocator* alloc = 0);
-
- /**
- * Destructor.
- */
- ~ACE_Vector ();
-
- /**
- * Returns the current vector capacity, that is, the currently
- * allocated buffer size.
- *
- * @return Current buffer size of the vector
- */
- size_t capacity (void) const;
-
- /**
- * Returns the vector's dynamic size / actual current size of the
- * vector. Do not confuse it with ACE_Array::size(), which returns
- * the array's capacity. Unfortunately, ACE is not very consistent
- * with the function names.
- *
- * @return Dynamic size / actual current size of the vector.
- */
- size_t size (void) const;
-
- /**
- * Clears out the vector. It does not reallocate the vector's
- * buffer, it is just sets the vector's dynamic size to 0.
- */
- void clear (void);
-
- /**
- * Resizes the vector to the new capacity. If the vector's current
- * capacity is smaller than the size to be specified, then the
- * buffer gets reallocated. If the new capacity is less than the
- * current capacity of the vector, the buffer size stays the same.
- *
- * @param new_size New capacity of the vector
- * @param t A filler value (of the class T) for initializing the
- * elements of the vector with. By default, if this
- * parameter is not specified, the default value of the
- * class T will be used (for more detail, see the
- * initialization clause for this parameter).
- */
- void resize (const size_t new_size,
- const T& t);
-
- /**
- * Appends a new element to the vector ("push back"). If the
- * dynamic size of the vector is equal to the capacity of the vector
- * (vector is at capacity), the vector automatically doubles its
- * capacity.
- *
- * @param elem A reference to the new element to be appended. By
- * default, this parameters gets initialized with the
- * default value of the class T.
- */
- void push_back (const T& elem);
-
- /**
- * Deletes the last element from the vector ("pop back"). What this
- * function really does is decrement the dynamic size of the
- * vector. The vector's buffer does not get reallocated for
- * performance.
- */
- void pop_back (void);
-
- /**
- * This function dumps the content of the vector. TO BE MOVED out
- * of this class. It needs to be implemented as a global template
- * function that accepts a const ACE_Vector&lt;T&gt;, in order to
- * make instances of this class compile on Linux, AIX. G++ and xlC
- * have template instantiation algoriths, which are different from
- * the one in Visual C++. The algorithms try to instantiate ALL
- * methods declared in the template class, regardless of whether the
- * functions are used or not. That is, all of the classes, that are
- * used as elements in ACE_Vector's, have to have the dump() methods
- * defined in them (seems to be overkill).
- *
- * This function calls T::dump() for each element of the vector.
- */
- void dump (void) const;
-
- // = Compare operators
-
- ///Equality comparison operator.
- /**
- * Compare this vector with @arg s for equality. Two vectors are equal
- * if their sizes are equal and all the elements are equal.
- */
- bool operator== (const ACE_Vector<T, DEFAULT_SIZE> &s) const;
-
- ///Inequality comparison operator.
- /**
- * Compare this vector with @arg s for inequality such that @c *this !=
- * @arg s is always the complement of the boolean return value of
- * @c *this == @arg s.
- */
- bool operator!= (const ACE_Vector<T, DEFAULT_SIZE> &s) const;
-
- void swap (ACE_Vector &rhs);
-
-protected:
-
- /**
- * Dynamic size (length) of the vector.
- */
- size_t length_;
-
- /**
- * Current capacity (buffer size) of the vector.
- */
- size_t curr_max_size_;
-
- friend class ACE_Vector_Iterator<T, DEFAULT_SIZE>;
-};
-
-#if 0
-/*
- * Not sure about including these functions, if for no other reason,
- * because they polute the global namespace!
- */
-
-/**
- * Compare two vectors in the range of [from_ndx..to_ndx]. This
- * template function requires class T to have the bool operator!=()
- * declared in the class. It is safe to define vectors of scalar data
- * types, like int, double, etc., including class ACE_TString.
- *
- * @param v1 The first vector (out of the two) to be compared.
- * @param v2 The Second vector (out of the two) to be compared.
- * @param from_ndx Compare vector v1 and v2, starting with the
- * "from_ndx" index .
- * @param to_ndx Compare vector v1 and v2, from "from_ndx" to
- * "to_ndx".
- * @return Returns true if v1==v2 in the specified index range,
- * returns false otherwise. Also, returns false in case if
- * v1's size is not equal to v2's size.
- */
-template<class T>
-int compare (const ACE_Vector<T>& v1,
- const ACE_Vector<T>& v2,
- const size_t from_ndx,
- const size_t to_ndx);
-
-/**
- * Does a partial comparison of two vectors in the range of
- * [from_ndx..to_ndx]. The only difference between this function and
- * the template compare&lt;T&gt; function is that this function does
- * not require v1 and v2 to be of equal size.
- *
- * @param v1 The first vector (out of the two) to be compared.
- * @param v2 The Second vector (out of the two) to be compared.
- * @param from_ndx Compare vector v1 and v2, starting with the
- * "from_ndx" index .
- * @param to_ndx Compare vector v1 and v2, from "from_ndx" to
- * "to_ndx".
- * @return Returns true if vector v1 and v2 are equal in the specified
- * index range.
- */
-
-template<class T>
-int partial_compare (const ACE_Vector<T>& v1,
- const ACE_Vector<T>& v2,
- const size_t from_ndx,
- const size_t to_ndx);
-#endif /* 0 */
-// ****************************************************************
-
-/**
- * @class ACE_Vector_Iterator
- *
- * @brief Implement an iterator over an ACE_Vector.
- *
- * This iterator is safe in the face of vector element deletions.
- * But it is NOT safe if the vector is resized via the assignment
- * operator during iteration. That would be very odd, and dangerous.
- */
-template <class T, size_t DEFAULT_SIZE = ACE_VECTOR_DEFAULT_SIZE>
-class ACE_Vector_Iterator
-{
-public:
- // = Initialization method.
- ACE_Vector_Iterator (ACE_Vector<T, DEFAULT_SIZE> &);
-
- // = Iteration methods.
-
- /// Pass back the <next_item> that hasn't been seen in the vector.
- /// Returns 0 when all items have been seen, else 1.
- int next (T *&next_item);
-
- /// Move forward by one element in the vector. Returns 0 when all the
- /// items in the vector have been seen, else 1.
- int advance (void);
-
- /// Returns 1 when all items have been seen, else 0.
- int done (void) const;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
-private:
- /// Pointer to the current item in the iteration.
- size_t current_;
-
- /// Reference to the vector we're iterating over.
- ACE_Vector<T, DEFAULT_SIZE> &vector_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/Vector_T.inl"
-#endif /* __ACE_INLINE__ */
-
-#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-#include "ace/Vector_T.cpp"
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-
-#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
-#pragma implementation ("Vector_T.cpp")
-#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_VECTOR_T_H */
-
diff --git a/dep/include/ace/Vector_T.inl b/dep/include/ace/Vector_T.inl
deleted file mode 100644
index 4b773109a84..00000000000
--- a/dep/include/ace/Vector_T.inl
+++ /dev/null
@@ -1,107 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: Vector_T.inl 81478 2008-04-28 13:22:26Z schmidt $
-
-#include <algorithm>
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template <class T, size_t DEFAULT_SIZE> ACE_INLINE
-ACE_Vector<T, DEFAULT_SIZE>::ACE_Vector (const size_t init_size,
- ACE_Allocator* alloc)
- : ACE_Array<T> (init_size == 0 ? DEFAULT_SIZE : init_size, alloc),
- length_ (0)
-{
- this->curr_max_size_ = this->max_size ();
-}
-
-template <class T, size_t DEFAULT_SIZE> ACE_INLINE
-ACE_Vector<T, DEFAULT_SIZE>::~ACE_Vector ()
-{
-}
-
-template <class T, size_t DEFAULT_SIZE> ACE_INLINE
-size_t ACE_Vector<T, DEFAULT_SIZE>::capacity (void) const
-{
- return curr_max_size_;
-}
-
-template <class T, size_t DEFAULT_SIZE> ACE_INLINE
-size_t ACE_Vector<T, DEFAULT_SIZE>::size (void) const
-{
- return length_;
-}
-
-template <class T, size_t DEFAULT_SIZE> ACE_INLINE
-void ACE_Vector<T, DEFAULT_SIZE>::clear (void)
-{
- length_ = 0;
-}
-
-template <class T, size_t DEFAULT_SIZE> ACE_INLINE
-void ACE_Vector<T, DEFAULT_SIZE>::pop_back (void)
-{
- if (length_ > 0)
- {
- --length_;
- ACE_Array<T>::size (length_);
- }
-}
-
-// Compare this vector with <s> for inequality.
-
-template <class T, size_t DEFAULT_SIZE> ACE_INLINE bool
-ACE_Vector<T, DEFAULT_SIZE>::operator!= (const ACE_Vector<T, DEFAULT_SIZE> &s) const
-{
- return !(*this == s);
-}
-
-template <class T, size_t DEFAULT_SIZE> ACE_INLINE void
-ACE_Vector<T, DEFAULT_SIZE>::swap (ACE_Vector &rhs)
-{
- ACE_Array<T>::swap (rhs);
- std::swap (this->length_, rhs.length_);
- std::swap (this->curr_max_size_, rhs.curr_max_size_);
-}
-
-// ****************************************************************
-
-template <class T, size_t DEFAULT_SIZE> ACE_INLINE void
-ACE_Vector_Iterator<T, DEFAULT_SIZE>::dump (void) const
-{
- // ACE_TRACE ("ACE_Vector_Iterator<T>::dump");
-}
-
-template <class T, size_t DEFAULT_SIZE> ACE_INLINE
-ACE_Vector_Iterator<T, DEFAULT_SIZE>::ACE_Vector_Iterator (ACE_Vector<T, DEFAULT_SIZE> &v)
- : current_ (0),
- vector_ (v)
-{
- // ACE_TRACE ("ACE_Vector_Iterator<T>::ACE_Vector_Iterator");
-}
-
-template <class T, size_t DEFAULT_SIZE> ACE_INLINE int
-ACE_Vector_Iterator<T, DEFAULT_SIZE>::advance (void)
-{
- // ACE_TRACE ("ACE_Vector_Iterator<T>::advance");
-
- if (this->current_ < vector_.size ())
- {
- ++this->current_;
- return 1;
- }
- else
- // Already finished iterating.
- return 0;
-}
-
-template <class T, size_t DEFAULT_SIZE> ACE_INLINE int
-ACE_Vector_Iterator<T, DEFAULT_SIZE>::done (void) const
-{
- ACE_TRACE ("ACE_Vector_Iterator<T>::done");
-
- return this->current_ >= vector_.size ();
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
diff --git a/dep/include/ace/Version.h b/dep/include/ace/Version.h
deleted file mode 100644
index ff3f3e64074..00000000000
--- a/dep/include/ace/Version.h
+++ /dev/null
@@ -1,10 +0,0 @@
-
-// -*- C++ -*-
-// $Id: Version.h 82705 2008-09-15 11:08:20Z sma $
-// This is file was automatically generated by \$ACE_ROOT/bin/make_release.
-
-#define ACE_MAJOR_VERSION 5
-#define ACE_MINOR_VERSION 6
-#define ACE_BETA_VERSION 6
-#define ACE_VERSION "5.6.6"
-
diff --git a/dep/include/ace/Versioned_Namespace.h b/dep/include/ace/Versioned_Namespace.h
deleted file mode 100644
index 8dc3f9ed3e1..00000000000
--- a/dep/include/ace/Versioned_Namespace.h
+++ /dev/null
@@ -1,51 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Versioned_Namespace.h
- *
- * $Id$
- *
- * Versioned namespace support.
- *
- * Useful for preventing conflicts when using a third party library.
- *
- * @author Ossama Othman <ossama@dre.vanderbilt.edu>
- */
-//=============================================================================
-
-#ifndef ACE_VERSIONED_NAMESPACE_H
-#define ACE_VERSIONED_NAMESPACE_H
-
-#ifndef ACE_CONFIG_MACROS_H
-# error This header is only meant to be included by or after "ace/config-lite.h".
-#endif /* !ACE_CONFIG_LITE_H */
-
-#if defined (ACE_HAS_VERSIONED_NAMESPACE) && ACE_HAS_VERSIONED_NAMESPACE == 1
-
-# ifndef ACE_VERSIONED_NAMESPACE_NAME
-//# include "ace/Version.h"
-
-// Preprocessor symbols will not be expanded if they are
-// concatenated. Force the preprocessor to expand them during the
-// argument prescan by calling a macro that itself calls another that
-// performs the actual concatenation.
-# define ACE_MAKE_VERSIONED_NAMESPACE_NAME_IMPL(MAJOR,MINOR,BETA) ACE_ ## MAJOR ## _ ## MINOR ## _ ## BETA
-# define ACE_MAKE_VERSIONED_NAMESPACE_NAME(MAJOR,MINOR,BETA) ACE_MAKE_VERSIONED_NAMESPACE_NAME_IMPL(MAJOR,MINOR,BETA)
-# define ACE_VERSIONED_NAMESPACE_NAME ACE_MAKE_VERSIONED_NAMESPACE_NAME(ACE_MAJOR_VERSION,ACE_MINOR_VERSION,ACE_BETA_VERSION)
-# endif /* !ACE_VERSIONED_NAMESPACE_NAME */
-
-# define ACE_BEGIN_VERSIONED_NAMESPACE_DECL namespace ACE_VERSIONED_NAMESPACE_NAME {
-# define ACE_END_VERSIONED_NAMESPACE_DECL } \
- using namespace ACE_VERSIONED_NAMESPACE_NAME;
-
-#else
-
-# define ACE_VERSIONED_NAMESPACE_NAME
-# define ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-# define ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_VERSIONED_NAMESPACE */
-
-#endif /* !ACE_VERSIONED_NAMESPACE_H */
-
diff --git a/dep/include/ace/WFMO_Reactor.h b/dep/include/ace/WFMO_Reactor.h
deleted file mode 100644
index 4bd5a514dd1..00000000000
--- a/dep/include/ace/WFMO_Reactor.h
+++ /dev/null
@@ -1,1368 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file WFMO_Reactor.h
- *
- * $Id: WFMO_Reactor.h 81138 2008-03-28 09:18:15Z johnnyw $
- *
- * @author Irfan Pyarali <irfan@cs.wustl.edu>
- * @author Tim Harrison <harrison@cs.wustl.edu>
- * @author Doug Schmidt <schmidt@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_WFMO_REACTOR_H
-#define ACE_WFMO_REACTOR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_WIN32)
-
-#include "ace/Signal.h"
-#include "ace/Timer_Queue.h"
-#include "ace/Event_Handler.h"
-#include "ace/Auto_Event.h"
-#include "ace/Manual_Event.h"
-#include "ace/Condition_Thread_Mutex.h"
-#include "ace/Lock_Adapter_T.h"
-#include "ace/Reactor_Impl.h"
-#include "ace/Message_Queue.h"
-#include "ace/Process_Mutex.h"
-
-// If we don't have WinSOCK2, we need these defined
-#if !defined (ACE_HAS_WINSOCK2) || (ACE_HAS_WINSOCK2 == 0)
-/*
- * WinSock 2 extension -- bit values and indices for FD_XXX network events
- */
-#define FD_READ_BIT 0
-#define FD_WRITE_BIT 1
-#define FD_OOB_BIT 2
-#define FD_ACCEPT_BIT 3
-#define FD_CONNECT_BIT 4
-#define FD_CLOSE_BIT 5
-#define FD_QOS_BIT 6
-#define FD_GROUP_QOS_BIT 7
-
-#define FD_QOS (1 << FD_QOS_BIT)
-#define FD_GROUP_QOS (1 << FD_GROUP_QOS_BIT)
-
-#define FD_MAX_EVENTS 8
-#define FD_ALL_EVENTS ((1 << FD_MAX_EVENTS) - 1)
-
-#define WSAEVENT HANDLE
-
-typedef struct _WSANETWORKEVENTS
-{
- long lNetworkEvents;
- int iErrorCode[FD_MAX_EVENTS];
-} WSANETWORKEVENTS, FAR * LPWSANETWORKEVENTS;
-
-int WSAEventSelect (SOCKET s,
- WSAEVENT hEventObject,
- long lNetworkEvents);
-
-int WSAEnumNetworkEvents (SOCKET s,
- WSAEVENT hEventObject,
- LPWSANETWORKEVENTS lpNetworkEvents);
-
-#endif /* !defined ACE_HAS_WINSOCK2 */
-
-class ACE_WFMO_Reactor_Test; // Must be out of versioned namespace.
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward decl.
-class ACE_WFMO_Reactor;
-class ACE_Handle_Set;
-
-/**
- * @class ACE_Wakeup_All_Threads_Handler
- *
- * @brief This is a helper class whose sole purpose is to handle events
- * on <ACE_WFMO_Reactor->wakeup_all_threads_>
- */
-class ACE_Export ACE_Wakeup_All_Threads_Handler : public ACE_Event_Handler
-{
-public:
- /// Called when the <ACE_WFMO_Reactor->wakeup_all_threads_>
- virtual int handle_signal (int signum, siginfo_t * = 0, ucontext_t * = 0);
-};
-
-/**
- * @class ACE_WFMO_Reactor_Handler_Repository
- *
- * @internal This class is for internal ACE use only.
- *
- * @brief Used to map ACE_HANDLEs onto the appropriate
- * ACE_Event_Handler * and other information.
- */
-class ACE_Export ACE_WFMO_Reactor_Handler_Repository
-{
-public:
- friend class ACE_WFMO_Reactor;
- friend class ACE_WFMO_Reactor_Test;
-
- /**
- * @class Common_Info
- *
- * @brief This struct contains the necessary information for every
- * <Event_Handler> entry. The reason the event is not in this
- * structure is because we need to pass an event array into
- * WaitForMultipleObjects and therefore keeping the events
- * seperate makes sense.
- */
- class Common_Info
- {
- public:
- /// This indicates whether this entry is for I/O or for a regular
- /// event
- bool io_entry_;
-
- /// The assosiated <Event_Handler>
- ACE_Event_Handler *event_handler_;
-
- /// The I/O handle related to the <Event_Handler>. This entry is
- /// only valid if the <io_entry_> flag is true.
- ACE_HANDLE io_handle_;
-
- /**
- * This is the set of events that the <Event_Handler> is
- * interested in. This entry is only valid if the <io_entry_> flag
- * is true.
- */
- long network_events_;
-
- /**
- * This flag indicates that <WFMO_Reactor> created the event on
- * behalf of the user. Therefore we need to clean this up when the
- * <Event_Handler> removes itself from <WFMO_Reactor>. This entry
- * is only valid if the <io_entry_> flag is true.
- */
- bool delete_event_;
-
- /// This is set when the entry needed to be deleted.
- bool delete_entry_;
-
- /**
- * These are the masks related to <handle_close> for the
- * <Event_Handler>. This is only valid when <delete_entry_> is
- * set.
- */
- ACE_Reactor_Mask close_masks_;
-
- /// Constructor used for initializing the structure
- Common_Info (void);
-
- /// Reset the state of the structure
- void reset (void);
-
- /// Set the structure to these new values
- void set (bool io_entry,
- ACE_Event_Handler *event_handler,
- ACE_HANDLE io_handle,
- long network_events,
- bool delete_event,
- bool delete_entry,
- ACE_Reactor_Mask close_masks);
-
- /// Set the structure to these new values
- void set (Common_Info &common_info);
-
- /// Dump the state of an object.
- void dump (void) const;
- };
-
- /**
- * @class Current_Info
- *
- * @brief This structure inherits from the common structure to add
- * information for current entries.
- */
- class Current_Info : public Common_Info
- {
- public:
- /// This is set when the entry needed to be suspended.
- bool suspend_entry_;
-
- /// Default constructor
- Current_Info (void);
-
- /// Reset the state of the structure
- void reset (void);
-
- /// Set the structure to these new values
- void set (bool io_entry,
- ACE_Event_Handler *event_handler,
- ACE_HANDLE io_handle,
- long network_events,
- bool delete_event,
- bool delete_entry = false,
- ACE_Reactor_Mask close_masks = ACE_Event_Handler::NULL_MASK,
- bool suspend_entry = false);
-
- /// Set the structure to these new values
- void set (Common_Info &common_info,
- bool suspend_entry = false);
-
- /// Dump the state of an object.
- void dump (ACE_HANDLE event_handle) const;
- };
-
- /**
- * @class To_Be_Added_Info
- *
- * @brief This structure inherits from the common structure to add
- * information for <to_be_added> entries.
- */
- class To_Be_Added_Info : public Common_Info
- {
- public:
- /// Handle for the event
- ACE_HANDLE event_handle_;
-
- /// This is set when the entry needed to be suspended.
- bool suspend_entry_;
-
- /// Default constructor
- To_Be_Added_Info (void);
-
- /// Reset the state of the structure
- void reset (void);
-
- /// Set the structure to these new values
- void set (ACE_HANDLE event_handle,
- bool io_entry,
- ACE_Event_Handler *event_handler,
- ACE_HANDLE io_handle,
- long network_events,
- bool delete_event,
- bool delete_entry = false,
- ACE_Reactor_Mask close_masks = ACE_Event_Handler::NULL_MASK,
- bool suspend_entry = false);
-
- /// Set the structure to these new values
- void set (ACE_HANDLE event_handle,
- Common_Info &common_info,
- bool suspend_entry = false);
-
- /// Dump the state of an object.
- void dump (void) const;
- };
-
- /**
- * @class Suspended_Info
- *
- * @brief This structure inherits from the common structure to add
- * information for suspended entries.
- */
- class Suspended_Info : public Common_Info
- {
- public:
- /// Handle for the event
- ACE_HANDLE event_handle_;
-
- /// This is set when the entry needed to be resumed.
- bool resume_entry_;
-
- /// Constructor used for initializing the structure
- Suspended_Info (void);
-
- /// Reset the state of the structure
- void reset (void);
-
- /// Set the structure to these new values
- void set (ACE_HANDLE event_handle,
- bool io_entry,
- ACE_Event_Handler *event_handler,
- ACE_HANDLE io_handle,
- long network_events,
- bool delete_event,
- bool delete_entry = false,
- ACE_Reactor_Mask close_masks = 0,
- bool resume_entry = false);
-
- /// Set the structure to these new values
- void set (ACE_HANDLE event_handle,
- Common_Info &common_info,
- bool resume_entry = false);
-
- /// Dump the state of an object.
- void dump (void) const;
- };
-
- /// Constructor.
- ACE_WFMO_Reactor_Handler_Repository (ACE_WFMO_Reactor &wfmo_reactor);
-
- /// Destructor.
- virtual ~ACE_WFMO_Reactor_Handler_Repository (void);
-
- /// Initialize the repository of the approriate @a size.
- int open (size_t size);
-
- /// Close down the handler repository.
- int close (void);
-
- // = Search structure operations.
-
- /// Bind the <ACE_Event_Handler *> to the ACE_HANDLE. This is for
- /// the simple event entry.
- int bind (ACE_HANDLE, ACE_Event_Handler *);
-
- /// Insert I/O <Event_Handler> entry into the system. This method
- /// assumes that the lock are head *before* this method is invoked.
- int bind_i (bool io_entry,
- ACE_Event_Handler *event_handler,
- long network_events,
- ACE_HANDLE io_handle,
- ACE_HANDLE event_handle,
- bool delete_event);
-
- /// Remove the binding of ACE_HANDLE in accordance with the @a mask.
- int unbind (ACE_HANDLE,
- ACE_Reactor_Mask mask);
-
- /// Non-lock-grabbing version of <unbind>
- int unbind_i (ACE_HANDLE,
- ACE_Reactor_Mask mask,
- bool &changes_required);
-
- /// Remove all bindings of <ACE_HANDLE, ACE_Event_Handler> tuples.
- void unbind_all (void);
-
- // = Sanity checking.
-
- // Check the <handle> to make sure it's a valid ACE_HANDLE
- int invalid_handle (ACE_HANDLE handle) const;
-
- // = Accessors.
- /// Maximum ACE_HANDLE value, plus 1.
- DWORD max_handlep1 (void) const;
-
- /// Pointer to the beginning of the current array of ACE_HANDLE
- /// *'s.
- ACE_HANDLE *handles (void) const;
-
- /// Pointer to the beginning of the current array of
- /// ACE_Event_Handler *'s.
- Current_Info *current_info (void) const;
-
- /// Check if changes to the handle set are required.
- virtual bool changes_required (void);
-
- /// Make changes to the handle set
- virtual int make_changes (void);
-
- /// Check to see if @a slot has been scheduled for deletion
- int scheduled_for_deletion (size_t slot) const;
-
- /**
- * This method is used to calculate the network mask after a mask_op
- * request to <WFMO_Reactor>. Note that because the <Event_Handler>
- * may already be in the handler repository, we may have to find the
- * old event and the old network events
- */
- int modify_network_events_i (ACE_HANDLE io_handle,
- ACE_Reactor_Mask new_masks,
- ACE_Reactor_Mask &old_masks,
- long &new_network_events,
- ACE_HANDLE &event_handle,
- bool &delete_event,
- int operation);
-
- /// This method is used to change the network mask left (if any)
- /// after a remove request to <WFMO_Reactor>
- ACE_Reactor_Mask bit_ops (long &existing_masks,
- ACE_Reactor_Mask to_be_removed_masks,
- int operation);
-
- /// Temporarily suspend entry
- int suspend_handler_i (ACE_HANDLE handle,
- bool &changes_required);
-
- /// Resume suspended entry
- int resume_handler_i (ACE_HANDLE handle,
- bool &changes_required);
-
- /// Deletions and suspensions in current_info_
- int make_changes_in_current_infos (void);
-
- /// Deletions and resumptions in current_suspended_info_
- int make_changes_in_suspension_infos (void);
-
- /// Deletions in to_be_added_info_, or transfers to current_info_ or
- /// current_suspended_info_ from to_be_added_info_
- int make_changes_in_to_be_added_infos (void);
-
- /// Removes the ACE_Event_Handler at @a slot from the table.
- int remove_handler_i (size_t slot,
- ACE_Reactor_Mask mask);
-
- /// Removes the ACE_Event_Handler at @a slot from the table.
- int remove_suspended_handler_i (size_t slot,
- ACE_Reactor_Mask mask);
-
- /// Removes the ACE_Event_Handler at @a slot from the table.
- int remove_to_be_added_handler_i (size_t slot,
- ACE_Reactor_Mask to_be_removed_masks);
-
- /**
- * Return the Event_Handler associated with <handle>. Return 0 if
- * <handle> is not registered.
- */
- ACE_Event_Handler *find_handler (ACE_HANDLE handle);
-
- /**
- * Check to see if <handle> is associated with a valid Event_Handler
- * bound to @a mask. Return the <event_handler> associated with this
- * @a handler if <event_handler> != 0.
- */
- int handler (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- ACE_Event_Handler **event_handler = 0);
-
- /**
- * Check to see if <handle> is associated with a valid
- * Event_Handler. Return Event_Handler and associated masks.
- */
- ACE_Event_Handler *handler (ACE_HANDLE handle,
- long &existing_masks);
-
- /// Dump the state of an object.
- void dump (void) const;
-
-protected:
- /// Reference to our <WFMO_Reactor>.
- ACE_WFMO_Reactor &wfmo_reactor_;
-
- /// Maximum number of handles.
- size_t max_size_;
-
- /**
- * Array of <ACE_HANDLEs> passed to <WaitForMultipleObjects>. This
- * is not part of the structure as the handle array needs to be
- * passed directly to <WaitForMultipleObjects>.
- */
- ACE_HANDLE *current_handles_;
-
- /// Array of current entries in the table
- Current_Info *current_info_;
-
- /// A count of the number of active handles.
- DWORD max_handlep1_;
-
- /// Information for entries to be added
- To_Be_Added_Info *to_be_added_info_;
-
- /// Number of records to be added
- size_t handles_to_be_added_;
-
- /// Currently suspended handles
- Suspended_Info *current_suspended_info_;
-
- /// Number of currently suspended handles
- size_t suspended_handles_;
-
- /// Number of records to be suspended
- size_t handles_to_be_suspended_;
-
- /// Number of records to be resumed
- size_t handles_to_be_resumed_;
-
- /// Number of records to be deleted
- size_t handles_to_be_deleted_;
-
-};
-
-/**
- * @class ACE_WFMO_Reactor_Notify
- *
- * @brief Unblock the <ACE_WFMO_Reactor> from its event loop, passing
- * it an optional ACE_Event_Handler to dispatch.
- *
- * This implementation is necessary for cases where the
- * <ACE_WFMO_Reactor> is run in a multi-threaded program. In
- * this case, we need to be able to unblock
- * <WaitForMultipleObjects> when updates occur other than in the
- * main <ACE_WFMO_Reactor> thread. To do this, we signal an
- * auto-reset event the <ACE_WFMO_Reactor> is listening on. If
- * an ACE_Event_Handler and ACE_Reactor_Mask is passed to
- * <notify>, the appropriate <handle_*> method is dispatched.
- */
-class ACE_Export ACE_WFMO_Reactor_Notify : public ACE_Reactor_Notify
-{
-public:
- /// Constructor
- ACE_WFMO_Reactor_Notify (size_t max_notifies = 1024);
-
- /// Initialization. <timer_queue> is stored to call <gettimeofday>.
- virtual int open (ACE_Reactor_Impl *wfmo_reactor,
- ACE_Timer_Queue *timer_queue,
- int disable_notify = 0);
-
- /// No-op.
- virtual int close (void);
-
- /**
- * Special trick to unblock <WaitForMultipleObjects> when updates
- * occur. All we do is enqueue <event_handler> and @a mask onto the
- * ACE_Message_Queue and wakeup the <WFMO_Reactor> by signaling
- * its <ACE_Event> handle. The ACE_Time_Value indicates how long
- * to blocking trying to notify the <WFMO_Reactor>. If @a timeout ==
- * 0, the caller will block until action is possible, else will wait
- * until the relative time specified in @a timeout elapses).
- */
- virtual int notify (ACE_Event_Handler *event_handler = 0,
- ACE_Reactor_Mask mask = ACE_Event_Handler::EXCEPT_MASK,
- ACE_Time_Value *timeout = 0);
-
- /// No-op.
- virtual int dispatch_notifications (int &number_of_active_handles,
- ACE_Handle_Set &rd_mask);
-
- /// Returns a handle to the <ACE_Auto_Event>.
- virtual ACE_HANDLE get_handle (void) const;
-
- /// Returns the ACE_HANDLE of the notify pipe on which the reactor
- /// is listening for notifications so that other threads can unblock
- /// the <Reactor_Impl>
- virtual ACE_HANDLE notify_handle (void);
-
- /// Handle one of the notify call on the <handle>. This could be
- /// because of a thread trying to unblock the <Reactor_Impl>
- virtual int dispatch_notify (ACE_Notification_Buffer &buffer);
-
- /// Verify whether the buffer has dispatchable info or not.
- virtual int is_dispatchable (ACE_Notification_Buffer &buffer);
-
- /// Read one of the notify call on the <handle> into the
- /// <buffer>. This could be because of a thread trying to unblock
- /// the <Reactor_Impl>
- virtual int read_notify_pipe (ACE_HANDLE handle,
- ACE_Notification_Buffer &buffer);
-
- /**
- * Set the maximum number of times that the
- * <ACE_WFMO_Reactor_Notify::handle_input> method will iterate and
- * dispatch the <ACE_Event_Handlers> that are passed in via the
- * notify queue before breaking out of its
- * <ACE_Message_Queue::dequeue> loop. By default, this is set to
- * -1, which means "iterate until the queue is empty." Setting this
- * to a value like "1 or 2" will increase "fairness" (and thus
- * prevent starvation) at the expense of slightly higher dispatching
- * overhead.
- */
- void max_notify_iterations (int);
-
- /**
- * Get the maximum number of times that the
- * <ACE_WFMO_Reactor_Notify::handle_input> method will iterate and
- * dispatch the <ACE_Event_Handlers> that are passed in via the
- * notify queue before breaking out of its
- * <ACE_Message_Queue::dequeue> loop.
- */
- int max_notify_iterations (void);
-
- /**
- * Purge any notifications pending in this reactor for the specified
- * ACE_Event_Handler object. If <eh> == 0, all notifications for all
- * handlers are removed (but not any notifications posted just to wake up
- * the reactor itself). Returns the number of notifications purged.
- * Returns -1 on error.
- */
- virtual int purge_pending_notifications (ACE_Event_Handler *,
- ACE_Reactor_Mask = ACE_Event_Handler::ALL_EVENTS_MASK);
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
-private:
- /// Pointer to the wfmo_reactor's timer queue.
- ACE_Timer_Queue *timer_queue_;
-
- /**
- * Called when the notification event waited on by
- * <ACE_WFMO_Reactor> is signaled. This dequeues all pending
- * <ACE_Event_Handlers> and dispatches them.
- */
- virtual int handle_signal (int signum, siginfo_t * = 0, ucontext_t * = 0);
-
- /// An auto event is used so that we can <signal> it to wakeup one
- /// thread up (e.g., when the <notify> method is called).
- ACE_Auto_Event wakeup_one_thread_;
-
- /// Message queue that keeps track of pending <ACE_Event_Handlers>.
- /// This queue must be thread-safe because it can be called by
- /// multiple threads of control.
- ACE_Message_Queue<ACE_MT_SYNCH> message_queue_;
-
- /**
- * Keeps track of the maximum number of times that the
- * <ACE_WFMO_Reactor_Notify::handle_input> method will iterate and
- * dispatch the <ACE_Event_Handlers> that are passed in via the
- * notify queue before breaking out of its
- * <ACE_Message_Queue::dequeue> loop. By default, this is set to
- * -1, which means "iterate until the queue is empty."
- */
- int max_notify_iterations_;
-};
-
-/**
- * @class ACE_WFMO_Reactor
- *
- * @brief An object oriented event demultiplexor and event handler.
- * ACE_WFMO_Reactor is a Windows-only implementation of the ACE_Reactor
- * interface that uses the WaitForMultipleObjects() event demultiplexer.
- *
- * Like the other ACE Reactors, ACE_WFMO_Reactor can schedule timers.
- * It also reacts to signalable handles, such as events (see the documentation
- * for WaitForMultipleObjects() for a complete list of signalable handle
- * types). Therefore, I/O handles are not directly usable for registering
- * for input, output, and exception notification. The exception to this
- * is ACE_SOCK-based handles, which can be registered for input, output, and
- * exception notification just as with other platforms. See Chapter 4 in
- * C++NPv2 for complete details.
- *
- * Note that changes to the state of ACE_WFMO_Reactor are not
- * instantaneous. Most changes (registration, removal,
- * suspension, and resumption of handles, and changes in
- * ownership) are made when the ACE_WFMO_Reactor reaches a stable
- * state. Users should be careful, especially when removing
- * handlers. This is because the ACE_WFMO_Reactor will call
- * handle_close() on the handler when it is finally removed and
- * not when remove_handler() is called. If the registered handler's pointer
- * is not valid when ACE_WFMO_Reactor calls ACE_Event_Handler::handle_close(),
- * use the DONT_CALL flag with remove_handler(). Preferably, use dynamically
- * allocated event handlers and call "delete this" inside the handle_close()
- * hook method.
- *
- * Note that although multiple threads can concurrently run the
- * ACE_WFMO_Reactor event loop, the concept of the reactor "owner" is still
- * important. Only the owner thread can expire timers and wait on the
- * notifications handle. Thus, be careful to properly set the owner thread
- * when spawning threads to run the event loop while you are using timers
- * or notifications.
- */
-class ACE_Export ACE_WFMO_Reactor : public ACE_Reactor_Impl
-{
-public:
- friend class ACE_WFMO_Reactor_Handler_Repository;
- friend class ACE_WFMO_Reactor_Test;
-
- enum
- {
- /// Default size of the WFMO_Reactor's handle table.
- /**
- * Two slots will be added to the @a size parameter in the
- * constructor and open methods which will store handles used for
- * internal management purposes.
- */
- DEFAULT_SIZE = MAXIMUM_WAIT_OBJECTS - 2
- };
-
- // = Initialization and termination methods.
-
- /// Initialize ACE_WFMO_Reactor with the default size.
- ACE_WFMO_Reactor (ACE_Sig_Handler * = 0,
- ACE_Timer_Queue * = 0,
- ACE_Reactor_Notify * = 0);
-
- /**
- * Initialize ACE_WFMO_Reactor with the specified size.
- *
- * @param size The maximum number of handles the reactor can
- * register. The value should not exceed
- * ACE_WFMO_Reactor::DEFAULT_SIZE. Two slots will be
- * added to the @a size parameter which will store handles
- * used for internal management purposes.
- */
- ACE_WFMO_Reactor (size_t size,
- int unused = 0,
- ACE_Sig_Handler * = 0,
- ACE_Timer_Queue * = 0,
- ACE_Reactor_Notify * = 0);
-
- /**
- * Initialize ACE_WFMO_Reactor with the specified size.
- *
- * @param size The maximum number of handles the reactor can
- * register. The value should not exceed
- * ACE_WFMO_Reactor::DEFAULT_SIZE. Two slots will be
- * added to the @a size parameter which will store handles
- * used for internal management purposes.
- */
- virtual int open (size_t size = ACE_WFMO_Reactor::DEFAULT_SIZE,
- int restart = 0,
- ACE_Sig_Handler * = 0,
- ACE_Timer_Queue * = 0,
- int disable_notify_pipe = 0,
- ACE_Reactor_Notify * = 0);
-
- /// Returns -1 (not used in this implementation);
- virtual int current_info (ACE_HANDLE, size_t & /* size */);
-
- /// Use a user specified signal handler instead.
- virtual int set_sig_handler (ACE_Sig_Handler *signal_handler);
-
- /// Set a user-specified timer queue.
- virtual int timer_queue (ACE_Timer_Queue *tq);
-
- /// Return the current ACE_Timer_Queue.
- virtual ACE_Timer_Queue *timer_queue (void) const;
-
- /// Close down the ACE_WFMO_Reactor and release all of its resources.
- virtual int close (void);
-
- /// Close down the ACE_WFMO_Reactor and release all of its resources.
- virtual ~ACE_WFMO_Reactor (void);
-
- // = Event loop drivers.
-
- /**
- * This method is not currently implemented. We recommend that you
- * use handle_events (ACE_Time_Value::zero) to get basically the
- * same effect, i.e., it won't block the caller if there are no events.
- */
- virtual int work_pending (const ACE_Time_Value &max_wait_time = ACE_Time_Value::zero);
-
- /**
- * This event loop driver blocks for up to @a max_wait_time before
- * returning. It will return earlier if timer events, I/O events,
- * or signal events occur. Note that @a max_wait_time can be 0, in
- * which case this method blocks indefinitely until events occur.
- *
- * @a max_wait_time is decremented to reflect how much time this call
- * took. For instance, if a time value of 3 seconds is passed to
- * handle_events and an event occurs after 2 seconds,
- * @a max_wait_time will equal 1 second. This can be used if an
- * application wishes to handle events for some fixed amount of
- * time.
- *
- * <WaitForMultipleObjects> is used as the demultiplexing call
- *
- * Returns the total number of I/O and timer ACE_Event_Handlers
- * that were dispatched, 0 if the @a max_wait_time elapsed without
- * dispatching any handlers, or -1 if an error occurs.
- *
- * The only difference between <alertable_handle_events> and
- * <handle_events> is that in the alertable case, TRUE is passed to
- * <WaitForMultipleObjects> for the <bAlertable> option.
- */
- virtual int handle_events (ACE_Time_Value *max_wait_time = 0);
- virtual int alertable_handle_events (ACE_Time_Value *max_wait_time = 0);
-
- /**
- * This method is just like the one above, except the
- * @a max_wait_time value is a reference and can therefore never be
- * NULL.
- *
- * The only difference between <alertable_handle_events> and
- * <handle_events> is that in the alertable case, TRUE is passed to
- * <WaitForMultipleObjects> for the <bAlertable> option.
- */
- virtual int handle_events (ACE_Time_Value &max_wait_time);
- virtual int alertable_handle_events (ACE_Time_Value &max_wait_time);
-
- // = Event handling control.
-
- /**
- * Return the status of Reactor. If this function returns 0, the reactor is
- * actively handling events. If it returns non-zero, <handling_events> and
- * <handle_alertable_events> return -1 immediately.
- */
- virtual int deactivated (void);
-
- /**
- * Control whether the Reactor will handle any more incoming events or not.
- * If <do_stop> == 1, the Reactor will be disabled. By default, a reactor
- * is in active state and can be deactivated/reactived as wish.
- */
- virtual void deactivate (int do_stop);
-
- // = Register and remove Handlers.
-
- /**
- * Register an ACE_Event_Handler <event_handler>. Since no Event
- * Mask is passed through this interface, it is assumed that the
- * <handle> being passed in is an event handle and when the event
- * becomes signaled, <WFMO_Reactor> will call handle_signal on
- * <event_handler>. If <handle> == <ACE_INVALID_HANDLE> the
- * <ACE_WFMO_Reactor> will call the <get_handle> method of
- * <event_handler> to extract the underlying event handle.
- */
- virtual int register_handler (ACE_Event_Handler *event_handler,
- ACE_HANDLE event_handle = ACE_INVALID_HANDLE);
-
- /**
- * Register an ACE_Event_Handler <event_handle>. @a mask specifies
- * the network events that the <event_handler> is interested in. If
- * <io_handle> == <ACE_INVALID_HANDLE> the <ACE_WFMO_Reactor> will
- * call the <get_handle> method of <event_handler> to extract the
- * underlying I/O handle. If the <event_handle> ==
- * <ACE_INVALID_HANDLE>, WFMO_Reactor will create an event for
- * associating it with the I/O handle. When the <event_handle> is
- * signalled, the appropriate <handle_*> callback will be invoked on
- * the <Event_Handler>
- */
- virtual int register_handler (ACE_HANDLE event_handle,
- ACE_HANDLE io_handle,
- ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask);
-
- /**
- * This is a simple version of the above <register_handler> method
- * where the I/O handle is passed in and the event handle will
- * always be created by <WFMO_Reactor>
- */
- virtual int register_handler (ACE_HANDLE io_handle,
- ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask);
-
- /**
- * This is a simple version of the above <register_handler> method
- * where the I/O handle will always come from <get_handle> on the
- * <Event_Handler> and the event handle will always be created by
- * <WFMO_Reactor>
- */
- virtual int register_handler (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask);
-
- /// Register <event_handler> with all the <handles> in the
- /// <Handle_Set>.
- virtual int register_handler (const ACE_Handle_Set &handles,
- ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask);
-
- /**
- * Register <new_sh> to handle the signal @a signum using the
- * <new_disp>. Returns the <old_sh> that was previously registered
- * (if any), along with the <old_disp> of the signal handler.
- */
- virtual int register_handler (int signum,
- ACE_Event_Handler *new_sh,
- ACE_Sig_Action *new_disp = 0,
- ACE_Event_Handler **old_sh = 0,
- ACE_Sig_Action *old_disp = 0);
-
- /// Registers <new_sh> to handle a set of signals <sigset> using the
- /// <new_disp>.
- virtual int register_handler (const ACE_Sig_Set &sigset,
- ACE_Event_Handler *new_sh,
- ACE_Sig_Action *new_disp = 0);
-
- /**
- * Removes <event_handler> from the <ACE_WFMO_Reactor>. Note that
- * the <ACE_WFMO_Reactor> will call the <get_handle> method of
- * <event_handler> to extract the underlying handle. If @a mask ==
- * ACE_Event_Handler::DONT_CALL then the <handle_close> method of
- * the <event_handler> is not invoked. Note that the <handle> can
- * either be the <event_handle> or the <io_handle>
- */
- virtual int remove_handler (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask);
-
- /**
- * Removes <handle> from the <ACE_WFMO_Reactor>. If @a mask ==
- * ACE_Event_Handler::DONT_CALL then the <handle_close> method of
- * the <event_handler> is not invoked. Note that the <handle> can
- * either be the <event_handle> or the <io_handle>
- *
- * For the case of I/O entries, this removes the @a mask binding of
- * <Event_Handler> whose handle is <handle> from <WFMO_Reactor>. If
- * there are no more bindings for this <event_handler> then it is
- * removed from the WFMO_Reactor. For simple event entries, mask is
- * mostly ignored and the <Event_Handler> is always removed from
- * <WFMO_Reactor>
- */
- virtual int remove_handler (ACE_HANDLE handle,
- ACE_Reactor_Mask mask);
-
- /**
- * Removes all the @a mask bindings for handles in the <handle_set>
- * bind of <Event_Handler>. If there are no more bindings for any
- * of these handles then they are removed from WFMO_Reactor.
- */
- virtual int remove_handler (const ACE_Handle_Set &handle_set,
- ACE_Reactor_Mask);
-
- /**
- * Remove the ACE_Event_Handler currently associated with @a signum.
- * <sigkey> is ignored in this implementation since there is only
- * one instance of a signal handler. Install the new disposition
- * (if given) and return the previous disposition (if desired by the
- * caller). Returns 0 on success and -1 if @a signum is invalid.
- */
- virtual int remove_handler (int signum,
- ACE_Sig_Action *new_disp,
- ACE_Sig_Action *old_disp = 0,
- int sigkey = -1);
-
- /// Calls <remove_handler> for every signal in <sigset>.
- virtual int remove_handler (const ACE_Sig_Set &sigset);
-
- // = Suspend and resume Handlers.
-
- /// Suspend <event_handler> temporarily. Use
- /// <ACE_Event_Handler::get_handle> to get the handle.
- virtual int suspend_handler (ACE_Event_Handler *event_handler);
-
- /// Suspend <handle> temporarily.
- virtual int suspend_handler (ACE_HANDLE handle);
-
- /// Suspend all <handles> in handle set temporarily.
- virtual int suspend_handler (const ACE_Handle_Set &handles);
-
- /// Suspend all <handles> temporarily.
- virtual int suspend_handlers (void);
-
- /// Resume <event_handler>. Use <ACE_Event_Handler::get_handle> to
- /// get the handle.
- virtual int resume_handler (ACE_Event_Handler *event_handler);
-
- /// Resume <handle>.
- virtual int resume_handler (ACE_HANDLE handle);
-
- /// Resume all <handles> in handle set.
- virtual int resume_handler (const ACE_Handle_Set &handles);
-
- /// Resume all <handles>.
- virtual int resume_handlers (void);
-
- /// Does the reactor allow the application to resume the handle on
- /// its own ie. can it pass on the control of handle resumption to
- /// the application. A positive value indicates that the handlers
- /// are application resumable. A value of 0 indicates otherwise.
- virtual int resumable_handler (void);
-
- /**
- * Return 1 if we any event associations were made by the reactor
- * for the handles that it waits on, 0 otherwise. Since the
- * WFMO_Reactor does use event associations, this function always
- * return 1.
- */
- virtual int uses_event_associations (void);
-
- // Timer management.
-
- /**
- * Schedule an ACE_Event_Handler that will expire after an amount
- * of time. The return value of this method, a timer_id value,
- * uniquely identifies the event_handler in the ACE_Reactor's
- * internal list of timers.
- * This timer_id value can be used to cancel the timer
- * with the cancel_timer() call.
- *
- * @see cancel_timer()
- * @see reset_timer_interval()
- *
- * @param event_handler event handler to schedule on reactor
- * @param arg argument passed to the handle_timeout() method of event_handler
- * @param delay time interval after which the timer will expire
- * @param interval time interval after which the timer will be automatically rescheduled
- * @return -1 on failure, a timer_id value on success
- */
- virtual long schedule_timer (ACE_Event_Handler *event_handler,
- const void *arg,
- const ACE_Time_Value &delay,
- const ACE_Time_Value &interval = ACE_Time_Value::zero);
-
- /**
- * Resets the interval of the timer represented by @a timer_id to
- * @a interval, which is specified in relative time to the current
- * <gettimeofday>. If @a interval is equal to
- * ACE_Time_Value::zero, the timer will become a non-rescheduling
- * timer. Returns 0 if successful, -1 if not.
- */
- virtual int reset_timer_interval (long timer_id,
- const ACE_Time_Value &interval);
-
- /// Cancel all Event_Handlers that match the address of
- /// <event_handler>. Returns number of handler's cancelled.
- virtual int cancel_timer (ACE_Event_Handler *event_handler,
- int dont_call_handle_close = 1);
-
- /**
- * Cancel the single Event_Handler that matches the @a timer_id value
- * (which was returned from the schedule method). If arg is
- * non-NULL then it will be set to point to the ``magic cookie''
- * argument passed in when the Event_Handler was registered. This
- * makes it possible to free up the memory and avoid memory leaks.
- * Returns 1 if cancellation succeeded and 0 if the @a timer_id
- * wasn't found.
- */
- virtual int cancel_timer (long timer_id,
- const void **arg = 0,
- int dont_call_handle_close = 1);
-
- // = High-level Event_Handler scheduling operations
-
- /**
- * Add @a masks_to_be_added to the <event_handler>'s entry in
- * WFMO_Reactor. <event_handler> must already have been registered
- * with WFMO_Reactor.
- */
- virtual int schedule_wakeup (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask masks_to_be_added);
-
- /**
- * Add @a masks_to_be_added to the @a handle's entry in WFMO_Reactor.
- * The Event_Handler associated with <handle> must already have been
- * registered with WFMO_Reactor.
- */
- virtual int schedule_wakeup (ACE_HANDLE handle,
- ACE_Reactor_Mask masks_to_be_added);
-
- /**
- * Remove <masks_to_be_deleted> to the <handle>'s entry in
- * WFMO_Reactor. The Event_Handler associated with <handle> must
- * already have been registered with WFMO_Reactor.
- */
- virtual int cancel_wakeup (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask masks_to_be_deleted);
-
- /**
- * Remove <masks_to_be_deleted> to the <handle>'s entry in
- * WFMO_Reactor. The Event_Handler associated with <handle> must
- * already have been registered with WFMO_Reactor.
- */
- virtual int cancel_wakeup (ACE_HANDLE handle,
- ACE_Reactor_Mask masks_to_be_deleted);
-
- // = Notification methods.
-
- /**
- * Wakeup one <ACE_WFMO_Reactor> thread if it is currently blocked
- * in <WaitForMultipleObjects>. The ACE_Time_Value indicates how
- * long to blocking trying to notify the <WFMO_Reactor>. If
- * @a timeout == 0, the caller will block until action is possible,
- * else will wait until the relative time specified in @a timeout
- * elapses).
- */
- virtual int notify (ACE_Event_Handler * = 0,
- ACE_Reactor_Mask = ACE_Event_Handler::EXCEPT_MASK,
- ACE_Time_Value * = 0);
-
- /**
- * Set the maximum number of times that the
- * <ACE_WFMO_Reactor_Notify::handle_input> method will iterate and
- * dispatch the <ACE_Event_Handlers> that are passed in via the
- * notify queue before breaking out of its
- * <ACE_Message_Queue::dequeue> loop. By default, this is set to
- * -1, which means "iterate until the queue is empty." Setting this
- * to a value like "1 or 2" will increase "fairness" (and thus
- * prevent starvation) at the expense of slightly higher dispatching
- * overhead.
- */
- virtual void max_notify_iterations (int);
-
- /**
- * Get the maximum number of times that the
- * <ACE_WFMO_Reactor_Notify::handle_input> method will iterate and
- * dispatch the <ACE_Event_Handlers> that are passed in via the
- * notify queue before breaking out of its
- * <ACE_Message_Queue::dequeue> loop.
- */
- virtual int max_notify_iterations (void);
-
- /**
- * Purge any notifications pending in this reactor for the specified
- * ACE_Event_Handler object. Returns the number of notifications
- * purged. Returns -1 on error.
- */
- virtual int purge_pending_notifications (ACE_Event_Handler * = 0,
- ACE_Reactor_Mask = ACE_Event_Handler::ALL_EVENTS_MASK);
-
- // = Assorted helper methods.
-
- /**
- * Return the Event_Handler associated with <handle>. Return 0 if
- * <handle> is not registered.
- */
- ACE_Event_Handler *find_handler (ACE_HANDLE handle);
-
- /**
- * Check to see if <handle> is associated with a valid Event_Handler
- * bound to @a mask. Return the <event_handler> associated with this
- * @a handler if <event_handler> != 0.
- */
- virtual int handler (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- ACE_Event_Handler **event_handler = 0);
-
- /**
- * Check to see if @a signum is associated with a valid Event_Handler
- * bound to a signal. Return the <event_handler> associated with
- * this @a handler if <event_handler> != 0.
- */
- virtual int handler (int signum,
- ACE_Event_Handler ** = 0);
-
- /// Returns true if WFMO_Reactor has been successfully initialized, else
- /// false.
- virtual bool initialized (void);
-
- /// Returns the current size of the WFMO_Reactor's internal
- /// descriptor table.
- virtual size_t size (void) const;
-
- /// Returns a reference to the WFMO_Reactor's internal lock.
- virtual ACE_Lock &lock (void);
-
- /// Wake up all threads in WaitForMultipleObjects so that they can
- /// reconsult the handle set
- virtual void wakeup_all_threads (void);
-
- /**
- * Transfers ownership of the WFMO_Reactor to the <new_owner>. The
- * transfer will not complete until all threads are ready (just like
- * the handle set).
- */
- virtual int owner (ACE_thread_t new_owner, ACE_thread_t *old_owner = 0);
-
- /// Return the ID of the "owner" thread.
- virtual int owner (ACE_thread_t *owner);
-
- /// Get the existing restart value.
- virtual int restart (void);
-
- /// Set a new value for restart and return the original value.
- virtual int restart (int r);
-
- /// Not implemented
- virtual void requeue_position (int);
-
- /// Not implemented
- virtual int requeue_position (void);
-
- // = Low-level wait_set mask manipulation methods.
-
- /**
- * Modify @a masks of the <event_handler>'s entry in WFMO_Reactor
- * depending upon <operation>. <event_handler> must already have
- * been registered with WFMO_Reactor.
- */
- virtual int mask_ops (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask masks,
- int operation);
-
- /**
- * Modify @a masks of the <handle>'s entry in WFMO_Reactor depending
- * upon <operation>. <handle> must already have been registered
- * with WFMO_Reactor.
- */
- virtual int mask_ops (ACE_HANDLE handle,
- ACE_Reactor_Mask masks,
- int ops);
-
- // = Low-level ready_set mask manipulation methods.
-
- /// Not implemented
- virtual int ready_ops (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask,
- int ops);
-
- /// Not implemented
- virtual int ready_ops (ACE_HANDLE handle,
- ACE_Reactor_Mask,
- int ops);
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-
- /// Dump the state of an object.
- virtual void dump (void) const;
-
-protected:
- /// Registration workhorse
- virtual int register_handler_i (ACE_HANDLE event_handle,
- ACE_HANDLE io_handle,
- ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask);
-
- /// Event handling workhorse
- virtual int event_handling (ACE_Time_Value *max_wait_time = 0,
- int alertable = 0);
-
- /// Bit masking workhorse
- virtual int mask_ops_i (ACE_HANDLE io_handle,
- ACE_Reactor_Mask masks,
- int operation);
-
- /// Return the ID of the "owner" thread. Does not do any locking.
- virtual ACE_thread_t owner_i (void);
-
- /// Wait up to @a max_wait_time until it's ok to enter
- /// WaitForMultipleObjects. Returns 1 (and holding lock_) if ok to wait;
- /// -1 (and not holding lock_) if not.
- virtual int ok_to_wait (ACE_Time_Value *max_wait_time,
- int alertable);
-
- /// Wait for timer and I/O events to occur.
- virtual DWORD wait_for_multiple_events (int timeout,
- int alertable);
-
- /// Check for activity on remaining handles.
- virtual DWORD poll_remaining_handles (DWORD slot);
-
- /// Expire timers. Only the owner thread does useful stuff in this
- /// function.
- virtual int expire_timers (void);
-
- /// Dispatches the timers and I/O handlers.
- virtual int dispatch (DWORD wait_status);
-
- /// Protect against structured exceptions caused by user code when
- /// dispatching handles
- virtual int safe_dispatch (DWORD wait_status);
-
- /**
- * Dispatches any active handles from handles_[@a slot] to
- * handles_[active_handles_] using <WaitForMultipleObjects> to poll
- * through our handle set looking for active handles.
- */
- virtual int dispatch_handles (DWORD slot);
-
- /// Dispatches a single handler. Returns 0 on success, -1 if the
- /// handler was removed.
- virtual int dispatch_handler (DWORD slot,
- DWORD max_handlep1);
-
- /// Dispatches a single handler. Returns 0 on success, -1 if the
- /// handler was removed.
- virtual int simple_dispatch_handler (DWORD slot,
- ACE_HANDLE event_handle);
-
- /// Dispatches a single handler. Returns 0 on success, -1 if the
- /// handler was removed.
- virtual int complex_dispatch_handler (DWORD slot,
- ACE_HANDLE event_handle);
-
- /// Dispatches window messages. Noop for WFMO_Reactor.
- virtual int dispatch_window_messages (void);
-
- virtual ACE_Reactor_Mask upcall (ACE_Event_Handler *event_handler,
- ACE_HANDLE io_handle,
- WSANETWORKEVENTS &events);
-
- /// Used to caluculate the next timeout
- virtual int calculate_timeout (ACE_Time_Value *time);
-
- /// Update the state of the handler repository
- virtual int update_state (void);
-
- /// Check to see if we have a new owner
- virtual int new_owner (void);
-
- /// Set owner to new owner
- virtual int change_owner (void);
-
- /// Handle signals without requiring global/static variables.
- ACE_Sig_Handler *signal_handler_;
-
- /// Keeps track of whether we should delete the signal handler (if we
- /// didn't create it, then we don't delete it).
- bool delete_signal_handler_;
-
- /// Defined as a pointer to allow overriding by derived classes...
- ACE_Timer_Queue *timer_queue_;
-
- /// Keeps track of whether we should delete the timer queue (if we
- /// didn't create it, then we don't delete it).
- bool delete_timer_queue_;
-
- /// Keeps track of whether we should delete the handler repository
- bool delete_handler_rep_;
-
- /// Used when <notify> is called.
- ACE_Reactor_Notify *notify_handler_;
-
- /// Keeps track of whether we should delete the notify handler.
- bool delete_notify_handler_;
-
- /**
- * Synchronization for the ACE_WFMO_Reactor.
- *
- * A Process Mutex is used here because of two reasons:
- * (a) The implementation of ACE_Thread_Mutex uses CriticalSections
- * CriticalSections are not waitable using ::WaitForMultipleObjects
- * (b) This is really not a process mutex because it is not
- * named. No other process can use this mutex.
- */
- ACE_Process_Mutex lock_;
-
- /// Adapter used to return internal lock to outside world.
- ACE_Lock_Adapter<ACE_Process_Mutex> lock_adapter_;
-
- /// Table that maps <ACE_HANDLEs> to <ACE_Event_Handler *>'s.
- ACE_WFMO_Reactor_Handler_Repository handler_rep_;
-
- /// A manual event used to block threads from proceeding into
- /// WaitForMultipleObjects
- ACE_Manual_Event ok_to_wait_;
-
- /**
- * A manual event is used so that we can wake everyone up (e.g.,
- * when <ACE_Event_Handlers> are bounded and unbound from the
- * handler repository).
- */
- ACE_Manual_Event wakeup_all_threads_;
-
- /// Used when <wakeup_all_threads_> is signaled
- ACE_Wakeup_All_Threads_Handler wakeup_all_threads_handler_;
-
- /// The changing thread waits on this event, till all threads are not
- /// active anymore
- ACE_Auto_Event waiting_to_change_state_;
-
- /// Count of currently active threads
- size_t active_threads_;
-
- /**
- * The thread which is "owner" of the WFMO_Reactor. The owner
- * concept is used because we don't want multiple threads to try to
- * expire timers. Therefore the "owner" thread is the only one
- * allowed to expire timers. Also, the owner thread is the only
- * thread which waits on the notify handle. Note that the ownership
- * can be transferred.
- */
- ACE_thread_t owner_;
-
- /// The owner to be of the WFMO_Reactor
- ACE_thread_t new_owner_;
-
- /// This is the thread which is responsible for the changing the
- /// state of the <WFMO_Reactor> handle set
- ACE_thread_t change_state_thread_;
-
- /// This is an array of ACE_HANDLEs which keep track of the <lock_>
- /// and <ok_to_wait_> handles
- ACE_HANDLE atomic_wait_array_ [2];
-
- /// This flag is used to keep track of whether we are already closed.
- bool open_for_business_;
-
- /// This flag is used to keep track of whether we are actively handling
- /// events or not.
- sig_atomic_t deactivated_;
-
-private:
- /// Deny access since member-wise won't work...
- ACE_WFMO_Reactor (const ACE_WFMO_Reactor &);
- ACE_WFMO_Reactor &operator = (const ACE_WFMO_Reactor &);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/WFMO_Reactor.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_WIN32 */
-#include /**/ "ace/post.h"
-#endif /* ACE_WFMO_REACTOR_H */
-
diff --git a/dep/include/ace/WFMO_Reactor.inl b/dep/include/ace/WFMO_Reactor.inl
deleted file mode 100644
index a155019d841..00000000000
--- a/dep/include/ace/WFMO_Reactor.inl
+++ /dev/null
@@ -1,1200 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: WFMO_Reactor.inl 81138 2008-03-28 09:18:15Z johnnyw $
-
-#include "ace/Handle_Set.h"
-#include "ace/Reactor.h"
-#include "ace/Thread.h"
-#include "ace/Sig_Handler.h"
-#include "ace/OS_NS_errno.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/************************************************************/
-
-ACE_INLINE int
-ACE_Wakeup_All_Threads_Handler::handle_signal (int /* signum */,
- siginfo_t * /* siginfo */,
- ucontext_t *)
-{
- // This will get called when <WFMO_Reactor->wakeup_all_threads_> event
- // is signaled. There is nothing to be done here.
- // ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("(%t) waking up to get updated handle set info\n")));
- return 0;
-}
-
-#if defined (ACE_WIN32)
-
-/************************************************************/
-
-ACE_INLINE
-ACE_WFMO_Reactor_Handler_Repository::Common_Info::Common_Info (void)
- : io_entry_ (false),
- event_handler_ (0),
- io_handle_ (ACE_INVALID_HANDLE),
- network_events_ (0),
- delete_event_ (false),
- delete_entry_ (false),
- close_masks_ (ACE_Event_Handler::NULL_MASK)
-{
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor_Handler_Repository::Common_Info::reset (void)
-{
- this->event_handler_ = 0;
- this->io_entry_ = false;
- this->io_handle_ = ACE_INVALID_HANDLE;
- this->network_events_ = 0;
- this->delete_event_ = false;
- this->delete_entry_ = false;
- this->close_masks_ = ACE_Event_Handler::NULL_MASK;
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor_Handler_Repository::Common_Info::set (bool io_entry,
- ACE_Event_Handler *event_handler,
- ACE_HANDLE io_handle,
- long network_events,
- bool delete_event,
- bool delete_entry,
- ACE_Reactor_Mask close_masks)
-{
- this->event_handler_ = event_handler;
- this->io_entry_ = io_entry;
- this->io_handle_ = io_handle;
- this->network_events_ = network_events;
- this->delete_event_ = delete_event;
- this->delete_entry_ = delete_entry;
- this->close_masks_ = close_masks;
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor_Handler_Repository::Common_Info::set (Common_Info &common_info)
-{
- *this = common_info;
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor_Handler_Repository::Common_Info::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_WFMO_Reactor_Handler_Repository::Common_Info::dump");
-
- ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this));
-
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("I/O Entry = %d\n"),
- this->io_entry_));
-
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("Event Handler = %d\n"),
- this->event_handler_));
-
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("I/O Handle = %d\n"),
- this->io_handle_));
-
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("Network Events = %d\n"),
- this->network_events_));
-
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("Delete Event = %d\n"),
- this->delete_event_));
-
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("Delete Entry = %d\n"),
- this->delete_entry_));
-
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("Close Masks = %d\n"),
- this->close_masks_));
-
- ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP));
-#endif /* ACE_HAS_DUMP */
-}
-
-/************************************************************/
-
-ACE_INLINE
-ACE_WFMO_Reactor_Handler_Repository::Current_Info::Current_Info (void)
- : suspend_entry_ (false)
-{
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor_Handler_Repository::Current_Info::set (bool io_entry,
- ACE_Event_Handler *event_handler,
- ACE_HANDLE io_handle,
- long network_events,
- bool delete_event,
- bool delete_entry,
- ACE_Reactor_Mask close_masks,
- bool suspend_entry)
-{
- this->suspend_entry_ = suspend_entry;
- Common_Info::set (io_entry,
- event_handler,
- io_handle,
- network_events,
- delete_event,
- delete_entry,
- close_masks);
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor_Handler_Repository::Current_Info::set (Common_Info &common_info,
- bool suspend_entry)
-{
- this->suspend_entry_ = suspend_entry;
- Common_Info::set (common_info);
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor_Handler_Repository::Current_Info::reset (void)
-{
- this->suspend_entry_ = false;
- Common_Info::reset ();
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor_Handler_Repository::Current_Info::dump (ACE_HANDLE event_handle) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_WFMO_Reactor_Handler_Repository::Current_Info::dump");
-
- ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this));
-
- Common_Info::dump ();
-
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("Event Handle = %d\n"),
- event_handle));
-
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("Suspend Entry = %d\n"),
- this->suspend_entry_));
-
- ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP));
-#else /* !ACE_HAS_DUMP */
- ACE_UNUSED_ARG (event_handle);
-#endif /* ACE_HAS_DUMP */
-}
-
-/************************************************************/
-
-ACE_INLINE
-ACE_WFMO_Reactor_Handler_Repository::To_Be_Added_Info::To_Be_Added_Info (void)
- : event_handle_ (ACE_INVALID_HANDLE),
- suspend_entry_ (false)
-{
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor_Handler_Repository::To_Be_Added_Info::set (ACE_HANDLE event_handle,
- bool io_entry,
- ACE_Event_Handler *event_handler,
- ACE_HANDLE io_handle,
- long network_events,
- bool delete_event,
- bool delete_entry,
- ACE_Reactor_Mask close_masks,
- bool suspend_entry)
-{
- this->event_handle_ = event_handle;
- this->suspend_entry_ = suspend_entry;
- Common_Info::set (io_entry,
- event_handler,
- io_handle,
- network_events,
- delete_event,
- delete_entry,
- close_masks);
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor_Handler_Repository::To_Be_Added_Info::set (ACE_HANDLE event_handle,
- Common_Info &common_info,
- bool suspend_entry)
-{
- this->event_handle_ = event_handle;
- this->suspend_entry_ = suspend_entry;
- Common_Info::set (common_info);
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor_Handler_Repository::To_Be_Added_Info::reset (void)
-{
- this->event_handle_ = ACE_INVALID_HANDLE;
- this->suspend_entry_ = false;
- Common_Info::reset ();
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor_Handler_Repository::To_Be_Added_Info::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_WFMO_Reactor_Handler_Repository::To_Be_Added_Info::dump");
-
- ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this));
-
- Common_Info::dump ();
-
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("Event Handle = %d\n"),
- this->event_handle_));
-
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("Suspend Entry = %d\n"),
- this->suspend_entry_));
-
- ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP));
-#endif /* ACE_HAS_DUMP */
-}
-
-/************************************************************/
-
-ACE_INLINE
-ACE_WFMO_Reactor_Handler_Repository::Suspended_Info::Suspended_Info (void)
- : event_handle_ (ACE_INVALID_HANDLE),
- resume_entry_ (false)
-{
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor_Handler_Repository::Suspended_Info::reset (void)
-{
- this->event_handle_ = ACE_INVALID_HANDLE;
- this->resume_entry_ = false;
- Common_Info::reset ();
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor_Handler_Repository::Suspended_Info::set (ACE_HANDLE event_handle,
- bool io_entry,
- ACE_Event_Handler *event_handler,
- ACE_HANDLE io_handle,
- long network_events,
- bool delete_event,
- bool delete_entry,
- ACE_Reactor_Mask close_masks,
- bool resume_entry)
-{
- this->event_handle_ = event_handle;
- this->resume_entry_ = resume_entry;
- Common_Info::set (io_entry,
- event_handler,
- io_handle,
- network_events,
- delete_event,
- delete_entry,
- close_masks);
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor_Handler_Repository::Suspended_Info::set (ACE_HANDLE event_handle,
- Common_Info &common_info,
- bool resume_entry)
-{
- this->event_handle_ = event_handle;
- this->resume_entry_ = resume_entry;
- Common_Info::set (common_info);
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor_Handler_Repository::Suspended_Info::dump (void) const
-{
-#if defined (ACE_HAS_DUMP)
- ACE_TRACE ("ACE_WFMO_Reactor_Handler_Repository::Suspended_Info::dump");
-
- ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this));
-
- Common_Info::dump ();
-
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("Event Handle = %d\n"),
- this->event_handle_));
-
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("Resume Entry = %d\n"),
- this->resume_entry_));
-
- ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP));
-#endif /* ACE_HAS_DUMP */
-}
-
-/************************************************************/
-
-ACE_INLINE int
-ACE_WFMO_Reactor_Handler_Repository::close (void)
-{
- // Let all the handlers know that the <WFMO_Reactor> is closing down
- this->unbind_all ();
-
- return 0;
-}
-
-ACE_INLINE ACE_HANDLE *
-ACE_WFMO_Reactor_Handler_Repository::handles (void) const
-{
- // This code is probably too subtle to be useful in the long run...
- // The basic idea is that all threads wait on all user handles plus
- // the <wakeup_all_threads_> handle. The owner thread additional
- // waits on the <notify_> handle. This is to ensure that only the
- // <owner_> thread get to expire timers and handle event on the
- // notify pipe.
- if (ACE_Thread::self () == this->wfmo_reactor_.owner_i ())
- return this->current_handles_;
- else
- return this->current_handles_ + 1;
-}
-
-ACE_INLINE ACE_WFMO_Reactor_Handler_Repository::Current_Info *
-ACE_WFMO_Reactor_Handler_Repository::current_info (void) const
-{
- if (ACE_Thread::self () == this->wfmo_reactor_.owner_i ())
- return this->current_info_;
- else
- return this->current_info_ + 1;
-}
-
-ACE_INLINE DWORD
-ACE_WFMO_Reactor_Handler_Repository::max_handlep1 (void) const
-{
- if (ACE_Thread::self () == this->wfmo_reactor_.owner_i ())
- return this->max_handlep1_;
- else
- return this->max_handlep1_ - 1;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor_Handler_Repository::scheduled_for_deletion (size_t slot) const
-{
- if (ACE_Thread::self () == this->wfmo_reactor_.owner_i ())
- return this->current_info_[slot].delete_entry_ == true;
- else
- return this->current_info_[slot + 1].delete_entry_ == true;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor_Handler_Repository::invalid_handle (ACE_HANDLE handle) const
-{
- ACE_TRACE ("ACE_WFMO_Reactor_Handler_Repository::invalid_handle");
- // It's too expensive to perform more exhaustive validity checks on
- // Win32 due to the way that they implement SOCKET HANDLEs.
- if (handle == ACE_INVALID_HANDLE)
- {
- errno = EINVAL;
- return 1;
- }
- else
- return 0;
-}
-
-ACE_INLINE bool
-ACE_WFMO_Reactor_Handler_Repository::changes_required (void)
-{
- // Check if handles have be scheduled for additions or removal
- return this->handles_to_be_added_ > 0
- || this->handles_to_be_deleted_ > 0
- || this->handles_to_be_suspended_ > 0
- || this->handles_to_be_resumed_ > 0;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor_Handler_Repository::make_changes (void)
-{
- // This method must ONLY be called by the
- // <WFMO_Reactor->change_state_thread_>. We therefore assume that
- // there will be no contention for this method and hence no guards
- // are neccessary.
-
- // Deletions and suspensions in current_info_
- this->make_changes_in_current_infos ();
-
- // Deletions and resumptions in current_suspended_info_
- this->make_changes_in_suspension_infos ();
-
- // Deletions in to_be_added_info_, or transfers to current_info_ or
- // current_suspended_info_ from to_be_added_info_
- this->make_changes_in_to_be_added_infos ();
-
- return 0;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor_Handler_Repository::unbind (ACE_HANDLE handle,
- ACE_Reactor_Mask mask)
-{
- if (this->invalid_handle (handle))
- return -1;
-
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->wfmo_reactor_.lock_, -1);
-
- bool changes_required = false;
- int const result = this->unbind_i (handle,
- mask,
- changes_required);
-
- if (changes_required)
- // Wake up all threads in WaitForMultipleObjects so that they can
- // reconsult the handle set
- this->wfmo_reactor_.wakeup_all_threads ();
-
- return result;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::reset_timer_interval
- (long timer_id,
- const ACE_Time_Value &interval)
-{
- ACE_TRACE ("ACE_WFMO_Reactor::reset_timer_interval");
-
- if (0 != this->timer_queue_)
- {
- long result = this->timer_queue_->reset_interval
- (timer_id,
- interval);
-
- // Wakeup the owner thread so that it gets the latest timer values
- this->notify ();
-
- return result;
- }
-
- errno = ESHUTDOWN;
- return -1;
-}
-
-ACE_INLINE long
-ACE_WFMO_Reactor::schedule_timer (ACE_Event_Handler *handler,
- const void *arg,
- const ACE_Time_Value &delay_time,
- const ACE_Time_Value &interval)
-{
- ACE_TRACE ("ACE_WFMO_Reactor::schedule_timer");
-
- if (0 != this->timer_queue_)
- {
- long result = this->timer_queue_->schedule
- (handler,
- arg,
- timer_queue_->gettimeofday () + delay_time,
- interval);
-
- // Wakeup the owner thread so that it gets the latest timer values
- this->notify ();
-
- return result;
- }
-
- errno = ESHUTDOWN;
- return -1;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::cancel_timer (ACE_Event_Handler *handler,
- int dont_call_handle_close)
-{
- ACE_TRACE ("ACE_WFMO_Reactor::cancel_timer");
- if (0 != this->timer_queue_)
- return this->timer_queue_->cancel (handler, dont_call_handle_close);
- return 0;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::cancel_timer (long timer_id,
- const void **arg,
- int dont_call_handle_close)
-{
- ACE_TRACE ("ACE_WFMO_Reactor::cancel_timer");
- if (0 != this->timer_queue_)
- return this->timer_queue_->cancel (timer_id, arg, dont_call_handle_close);
- return 0;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::register_handler (ACE_Event_Handler *event_handler,
- ACE_HANDLE event_handle)
-{
- // This GUARD is necessary since we are updating shared state.
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, -1);
-
- return this->handler_rep_.bind_i (0,
- event_handler,
- 0,
- ACE_INVALID_HANDLE,
- event_handle,
- 0);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::register_handler (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask)
-{
- // This GUARD is necessary since we are updating shared state.
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, -1);
-
- return this->register_handler_i (ACE_INVALID_HANDLE,
- ACE_INVALID_HANDLE,
- event_handler,
- mask);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::register_handler (ACE_HANDLE io_handle,
- ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask)
-{
- // This GUARD is necessary since we are updating shared state.
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, -1);
-
- return this->register_handler_i (ACE_INVALID_HANDLE,
- io_handle,
- event_handler,
- mask);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::register_handler (ACE_HANDLE event_handle,
- ACE_HANDLE io_handle,
- ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask)
-{
- // This GUARD is necessary since we are updating shared state.
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, -1);
-
- return this->register_handler_i (event_handle,
- io_handle,
- event_handler,
- mask);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::register_handler (const ACE_Handle_Set &handles,
- ACE_Event_Handler *handler,
- ACE_Reactor_Mask mask)
-{
- // This GUARD is necessary since we are updating shared state.
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, -1);
-
- ACE_Handle_Set_Iterator handle_iter (handles);
- ACE_HANDLE h;
-
- while ((h = handle_iter ()) != ACE_INVALID_HANDLE)
- if (this->register_handler_i (h,
- ACE_INVALID_HANDLE,
- handler,
- mask) == -1)
- return -1;
-
- return 0;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::schedule_wakeup (ACE_HANDLE io_handle,
- ACE_Reactor_Mask masks_to_be_added)
-{
- // This GUARD is necessary since we are updating shared state.
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, -1);
-
- return this->mask_ops_i (io_handle,
- masks_to_be_added,
- ACE_Reactor::ADD_MASK);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::schedule_wakeup (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask masks_to_be_added)
-{
- // This GUARD is necessary since we are updating shared state.
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, -1);
-
- return this->mask_ops_i (event_handler->get_handle (),
- masks_to_be_added,
- ACE_Reactor::ADD_MASK);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::cancel_wakeup (ACE_HANDLE io_handle,
- ACE_Reactor_Mask masks_to_be_removed)
-{
- // This GUARD is necessary since we are updating shared state.
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, -1);
-
- return this->mask_ops_i (io_handle,
- masks_to_be_removed,
- ACE_Reactor::CLR_MASK);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::cancel_wakeup (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask masks_to_be_removed)
-{
- // This GUARD is necessary since we are updating shared state.
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, -1);
-
- return this->mask_ops_i (event_handler->get_handle (),
- masks_to_be_removed,
- ACE_Reactor::CLR_MASK);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::remove_handler (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask)
-{
- return this->handler_rep_.unbind (event_handler->get_handle (),
- mask);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::remove_handler (ACE_HANDLE handle,
- ACE_Reactor_Mask mask)
-{
- return this->handler_rep_.unbind (handle,
- mask);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::remove_handler (const ACE_Handle_Set &handles,
- ACE_Reactor_Mask mask)
-{
- ACE_Handle_Set_Iterator handle_iter (handles);
- ACE_HANDLE h;
- bool changes_required = false;
-
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, -1);
-
- while ((h = handle_iter ()) != ACE_INVALID_HANDLE)
- if (this->handler_rep_.unbind_i (h,
- mask,
- changes_required) == -1)
- return -1;
-
- // Wake up all threads in WaitForMultipleObjects so that they can
- // reconsult the handle set
- this->wakeup_all_threads ();
-
- return 0;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::suspend_handler (ACE_HANDLE handle)
-{
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, -1);
-
- bool changes_required = false;
- int const result =
- this->handler_rep_.suspend_handler_i (handle,
- changes_required);
-
- if (changes_required)
- // Wake up all threads in WaitForMultipleObjects so that they can
- // reconsult the handle set
- this->wakeup_all_threads ();
-
- return result;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::suspend_handler (ACE_Event_Handler *event_handler)
-{
- return this->suspend_handler (event_handler->get_handle ());
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::suspend_handler (const ACE_Handle_Set &handles)
-{
- ACE_Handle_Set_Iterator handle_iter (handles);
- ACE_HANDLE h;
- bool changes_required = false;
-
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, -1);
-
- while ((h = handle_iter ()) != ACE_INVALID_HANDLE)
- if (this->handler_rep_.suspend_handler_i (h,
- changes_required) == -1)
- return -1;
-
- // Wake up all threads in WaitForMultipleObjects so that they can
- // reconsult the handle set
- this->wakeup_all_threads ();
-
- return 0;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::suspend_handlers (void)
-{
- bool error = false;
- int result = 0;
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, -1);
-
- // First suspend all current handles
- bool changes_required = false;
-
- for (size_t i = 0;
- i < this->handler_rep_.max_handlep1_ && !error;
- i++)
- {
- result =
- this->handler_rep_.suspend_handler_i (this->handler_rep_.current_handles_[i],
- changes_required);
- if (result == -1)
- error = true;
- }
-
- // Then suspend all to_be_added_handles
- for (size_t i = 0;
- i < this->handler_rep_.handles_to_be_added_ && !error;
- i++)
- {
- if (this->handler_rep_.to_be_added_info_[i].io_entry_)
- {
- result =
- this->handler_rep_.suspend_handler_i (this->handler_rep_.to_be_added_info_[i].io_handle_,
- changes_required);
- }
- else
- {
- result =
- this->handler_rep_.suspend_handler_i (this->handler_rep_.to_be_added_info_[i].event_handle_,
- changes_required);
- }
- if (result == -1)
- error = true;
- }
-
- // Wake up all threads in WaitForMultipleObjects so that they can
- // reconsult the handle set
- this->wakeup_all_threads ();
-
- return error ? -1 : 0;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::resume_handler (ACE_HANDLE handle)
-{
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, -1);
-
- bool changes_required = false;
- int result =
- this->handler_rep_.resume_handler_i (handle, changes_required);
-
- if (changes_required)
- // Wake up all threads in WaitForMultipleObjects so that they can
- // reconsult the handle set
- this->wakeup_all_threads ();
-
- return result;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::resume_handler (ACE_Event_Handler *event_handler)
-{
- return this->resume_handler (event_handler->get_handle ());
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::resume_handler (const ACE_Handle_Set &handles)
-{
- ACE_Handle_Set_Iterator handle_iter (handles);
- ACE_HANDLE h;
- bool changes_required = false;
-
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, -1);
-
- while ((h = handle_iter ()) != ACE_INVALID_HANDLE)
- if (this->handler_rep_.resume_handler_i (h,
- changes_required) == -1)
- return -1;
-
- // Wake up all threads in WaitForMultipleObjects so that they can
- // reconsult the handle set
- this->wakeup_all_threads ();
-
- return 0;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::resume_handlers (void)
-{
- bool error = false;
- int result = 0;
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, -1);
-
- bool changes_required = false;
- for (size_t i = 0;
- i < this->handler_rep_.suspended_handles_ && !error;
- i++)
- {
- result =
- this->handler_rep_.resume_handler_i (this->handler_rep_.current_suspended_info_[i].event_handle_,
- changes_required);
- if (result == -1)
- error = true;
- }
-
- // Then resume all to_be_added_handles
- for (size_t i = 0;
- i < this->handler_rep_.handles_to_be_added_ && !error;
- i++)
- {
- if (this->handler_rep_.to_be_added_info_[i].io_entry_)
- {
- result =
- this->handler_rep_.resume_handler_i (this->handler_rep_.to_be_added_info_[i].io_handle_,
- changes_required);
- }
- else
- {
- result =
- this->handler_rep_.resume_handler_i (this->handler_rep_.to_be_added_info_[i].event_handle_,
- changes_required);
- }
- if (result == -1)
- error = true;
- }
-
- // Wake up all threads in WaitForMultipleObjects so that they can
- // reconsult the handle set
- this->wakeup_all_threads ();
-
- return error ? -1 : 0;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::uses_event_associations (void)
-{
- // Since the WFMO_Reactor does use event associations, this function
- // always return 1.
- return 1;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::handle_events (ACE_Time_Value &how_long)
-{
- return this->event_handling (&how_long, FALSE);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::alertable_handle_events (ACE_Time_Value &how_long)
-{
- return this->event_handling (&how_long, TRUE);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::handle_events (ACE_Time_Value *how_long)
-{
- return this->event_handling (how_long, FALSE);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::alertable_handle_events (ACE_Time_Value *how_long)
-{
- return this->event_handling (how_long, TRUE);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::deactivated (void)
-{
- return this->deactivated_;
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor::deactivate (int do_stop)
-{
- this->deactivated_ = do_stop;
- this->wakeup_all_threads ();
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::owner (ACE_thread_t *t)
-{
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, -1);
- *t = this->owner_i ();
- return 0;
-}
-
-ACE_INLINE ACE_thread_t
-ACE_WFMO_Reactor::owner_i (void)
-{
- return this->owner_;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::owner (ACE_thread_t new_owner, ACE_thread_t *old_owner)
-{
- ACE_GUARD_RETURN (ACE_Process_Mutex, monitor, this->lock_, -1);
- this->new_owner_ = new_owner;
-
- if (old_owner != 0)
- *old_owner = this->owner_i ();
-
- // Wake up all threads in WaitForMultipleObjects so that they can
- // reconsult the new owner responsibilities
- this->wakeup_all_threads ();
-
- return 0;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::new_owner (void)
-{
- return this->new_owner_ != ACE_thread_t (0);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::change_owner (void)
-{
- this->owner_ = this->new_owner_;
- this->new_owner_ = ACE_thread_t (0);
- return 0;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::safe_dispatch (DWORD wait_status)
-{
- int result = -1;
- ACE_SEH_TRY
- {
- result = this->dispatch (wait_status);
- }
- ACE_SEH_FINALLY
- {
- this->update_state ();
- }
-
- return result;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::dispatch_window_messages (void)
-{
- return 0;
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor::wakeup_all_threads (void)
-{
- this->wakeup_all_threads_.signal ();
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::notify (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask,
- ACE_Time_Value *timeout)
-{
- return this->notify_handler_->notify (event_handler, mask, timeout);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::register_handler (int signum,
- ACE_Event_Handler *new_sh,
- ACE_Sig_Action *new_disp,
- ACE_Event_Handler **old_sh,
- ACE_Sig_Action *old_disp)
-{
- return this->signal_handler_->register_handler (signum,
- new_sh, new_disp,
- old_sh, old_disp);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::register_handler (const ACE_Sig_Set &sigset,
- ACE_Event_Handler *new_sh,
- ACE_Sig_Action *new_disp)
-{
- int result = 0;
-
-#if (ACE_NSIG > 0)
- for (int s = 1; s < ACE_NSIG; s++)
- if (sigset.is_member (s)
- && this->signal_handler_->register_handler (s,
- new_sh,
- new_disp) == -1)
- result = -1;
-#else
- ACE_UNUSED_ARG (sigset);
- ACE_UNUSED_ARG (new_sh);
- ACE_UNUSED_ARG (new_disp);
-#endif /* ACE_NSIG */
-
- return result;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::remove_handler (int signum,
- ACE_Sig_Action *new_disp,
- ACE_Sig_Action *old_disp,
- int sigkey)
-{
- return this->signal_handler_->remove_handler (signum,
- new_disp,
- old_disp,
- sigkey);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::remove_handler (const ACE_Sig_Set &sigset)
-{
- int result = 0;
-
-#if (ACE_NSIG > 0)
- for (int s = 1; s < ACE_NSIG; s++)
- if (sigset.is_member (s)
- && this->signal_handler_->remove_handler (s) == -1)
- result = -1;
-#else
- ACE_UNUSED_ARG (sigset);
-#endif /* ACE_NSIG */
-
- return result;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::handler (int signum, ACE_Event_Handler **eh)
-{
- ACE_Event_Handler *handler =
- this->signal_handler_->handler (signum);
-
- if (handler == 0)
- return -1;
- else if (eh != 0)
- *eh = handler;
- return 0;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::mask_ops (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask,
- int operation)
-{
- ACE_GUARD_RETURN (ACE_Process_Mutex, monitor, this->lock_, -1);
-
- return this->mask_ops_i (event_handler->get_handle (),
- mask,
- operation);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::mask_ops (ACE_HANDLE io_handle,
- ACE_Reactor_Mask mask,
- int operation)
-{
- ACE_GUARD_RETURN (ACE_Process_Mutex, monitor, this->lock_, -1);
-
- return this->mask_ops_i (io_handle,
- mask,
- operation);
-}
-
-ACE_INLINE void
-ACE_WFMO_Reactor::requeue_position (int)
-{
- // Not implemented
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::requeue_position (void)
-{
- // Don't have an implementation for this yet...
- ACE_NOTSUP_RETURN (-1);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::restart (void)
-{
- return 0;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::restart (int)
-{
- return 0;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::ready_ops (ACE_Event_Handler *event_handler,
- ACE_Reactor_Mask mask,
- int ops)
-{
- // Don't have an implementation for this yet...
- ACE_UNUSED_ARG (event_handler);
- ACE_UNUSED_ARG (mask);
- ACE_UNUSED_ARG (ops);
- ACE_NOTSUP_RETURN (-1);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::ready_ops (ACE_HANDLE handle,
- ACE_Reactor_Mask,
- int ops)
-{
- // Don't have an implementation for this yet...
- ACE_UNUSED_ARG (handle);
- ACE_UNUSED_ARG (ops);
- ACE_NOTSUP_RETURN (-1);
-}
-
-ACE_INLINE ACE_Event_Handler *
-ACE_WFMO_Reactor::find_handler (ACE_HANDLE handle)
-{
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, 0);
-
- return this->handler_rep_.find_handler (handle);
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor::handler (ACE_HANDLE handle,
- ACE_Reactor_Mask mask,
- ACE_Event_Handler **event_handler)
-{
- ACE_GUARD_RETURN (ACE_Process_Mutex, ace_mon, this->lock_, -1);
-
- return this->handler_rep_.handler (handle,
- mask,
- event_handler);
-}
-
-ACE_INLINE bool
-ACE_WFMO_Reactor::initialized (void)
-{
- return this->open_for_business_;
-}
-
-ACE_INLINE ACE_Lock &
-ACE_WFMO_Reactor::lock (void)
-{
- return this->lock_adapter_;
-}
-
-ACE_INLINE size_t
-ACE_WFMO_Reactor::size (void) const
-{
- // Size of repository minus the 2 used for internal purposes
- return this->handler_rep_.max_size_ - 2;
-}
-#else
-ACE_INLINE bool
-ACE_WFMO_Reactor_Handler_Repository::changes_required (void)
-{
- return false;
-}
-
-ACE_INLINE int
-ACE_WFMO_Reactor_Handler_Repository::make_changes (void)
-{
- return 0;
-}
-
-ACE_INLINE
-ACE_WFMO_Reactor_Handler_Repository::~ACE_WFMO_Reactor_Handler_Repository (void)
-{
-}
-
-#endif /* ACE_WIN32 */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/WIN32_Asynch_IO.h b/dep/include/ace/WIN32_Asynch_IO.h
deleted file mode 100644
index f88ff3d45e6..00000000000
--- a/dep/include/ace/WIN32_Asynch_IO.h
+++ /dev/null
@@ -1,1936 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file WIN32_Asynch_IO.h
- *
- * $Id: WIN32_Asynch_IO.h 80826 2008-03-04 14:51:23Z wotte $
- *
- *
- * These classes only works on Win32 platforms.
- *
- * The implementation of ACE_Asynch_Transmit_File,
- * ACE_Asynch_Accept, and ACE_Asynch_Connect are only supported if
- * ACE_HAS_WINSOCK2 is defined or you are on WinNT 4.0 or higher.
- *
- *
- * @author Irfan Pyarali <irfan@cs.wustl.edu>
- * @author Tim Harrison <harrison@cs.wustl.edu>
- * @author Alexander Babu Arulanthu <alex@cs.wustl.edu>
- * @author Roger Tragin <r.tragin@computer.org>
- * @author Alexander Libman <alibman@ihug.com.au>
- */
-//=============================================================================
-
-#ifndef ACE_WIN32_ASYNCH_IO_H
-#define ACE_WIN32_ASYNCH_IO_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_WIN32_OVERLAPPED_IO) && \
- (defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 == 1))
-
-#include "ace/Asynch_IO_Impl.h"
-#include "ace/Addr.h"
-#include "ace/Event_Handler.h"
-#include "ace/Handle_Set.h"
-#include "ace/Map_Manager.h"
-#include "ace/Null_Mutex.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declaration
-class ACE_WIN32_Proactor;
-
-/**
- * @class ACE_WIN32_Asynch_Result
- *
- * @brief An abstract class which adds information to the OVERLAPPED
- * structure to make it more useful.
- *
- * An abstract base class from which you can obtain some basic
- * information like the number of bytes transferred, the ACT
- * associated with the asynchronous operation, indication of
- * success or failure, etc. Subclasses may want to store more
- * information that is particular to the asynchronous operation
- * it represents.
- */
-class ACE_Export ACE_WIN32_Asynch_Result : public virtual ACE_Asynch_Result_Impl,
- public OVERLAPPED
-{
- /// Factory class has special permissions.
- friend class ACE_WIN32_Asynch_Accept;
-
- /// Proactor class has special permission.
- friend class ACE_WIN32_Proactor;
-
-public:
- /// Number of bytes transferred by the operation.
- size_t bytes_transferred (void) const;
-
- /// ACT associated with the operation.
- const void *act (void) const;
-
- /// Did the operation succeed?
- int success (void) const;
-
- /**
- * This returns the ACT associated with the handle when it was
- * registered with the I/O completion port. This ACT is not the
- * same as the ACT associated with the asynchronous operation.
- */
- const void *completion_key (void) const;
-
- /// Error value if the operation fail.
- u_long error (void) const;
-
- /// Event associated with the OVERLAPPED structure.
- ACE_HANDLE event (void) const;
-
- /// This really make sense only when doing file I/O.
- u_long offset (void) const;
-
- /// Offset_high associated with the OVERLAPPED structure.
- u_long offset_high (void) const;
-
- /// The priority of the asynchronous operation. Currently, this is
- /// not supported on Win32.
- int priority (void) const;
-
- /// Returns 0.
- int signal_number (void) const;
-
- /// Post @c this to the Proactor's completion port.
- int post_completion (ACE_Proactor_Impl *proactor);
-
- /// Destructor.
- virtual ~ACE_WIN32_Asynch_Result (void);
-
- /// Simulate error value to use in the post_completion ()
- void set_error (u_long errcode);
-
- /// Simulate value to use in the post_completion ()
- void set_bytes_transferred (size_t nbytes);
-
-protected:
- /// Constructor.
- ACE_WIN32_Asynch_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- const void* act,
- ACE_HANDLE event,
- u_long offset,
- u_long offset_high,
- int priority,
- int signal_number = 0);
-
- /// Proxy for the ACE_Handler that will be called back.
- ACE_Handler::Proxy_Ptr handler_proxy_;
-
- /// ACT for this operation.
- const void *act_;
-
- /// Bytes transferred by this operation.
- size_t bytes_transferred_;
-
- /// Success indicator.
- int success_;
-
- /// ACT associated with handle.
- const void *completion_key_;
-
- /// Error if operation failed.
- u_long error_;
-};
-
-/**
- * @class ACE_WIN32_Asynch_Operation
- *
- * @brief This class abstracts out the common things needed for
- * implementing Asynch_Operation for WIN32 platform.
- *
- */
-class ACE_Export ACE_WIN32_Asynch_Operation : public virtual ACE_Asynch_Operation_Impl
-{
-public:
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call. If (<handle> == ACE_INVALID_HANDLE),
- * <ACE_Handler::handle> will be called on the @a handler to get the
- * correct handle.
- */
- int open (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- const void *completion_key,
- ACE_Proactor *proactor);
-
- /**
- * This cancels all pending accepts operations that were issued by
- * the calling thread. The function does not cancel asynchronous
- * operations issued by other threads.
- */
- int cancel (void);
-
- // = Access methods.
-
- /// Return the underlying proactor.
- ACE_Proactor* proactor (void) const;
-
-protected:
- /// Constructor.
- ACE_WIN32_Asynch_Operation (ACE_WIN32_Proactor *win32_proactor);
-
- /// Destructor.
- virtual ~ACE_WIN32_Asynch_Operation (void);
-
- /// Win32 Proactor.
- ACE_WIN32_Proactor *win32_proactor_;
-
- /// Proactor that this asynch IO is registered with.
- ACE_Proactor *proactor_;
-
- /// Handler that will receive the callback.
- ACE_Handler::Proxy_Ptr handler_proxy_;
-
- /// I/O handle used for reading.
- ACE_HANDLE handle_;
-};
-
-/**
- * @class ACE_WIN32_Asynch_Read_Stream_Result
- *
- * @brief This class provides concrete implementation for
- * ACE_Asynch_Read_Stream::Result class.
- */
-class ACE_Export ACE_WIN32_Asynch_Read_Stream_Result : public virtual ACE_Asynch_Read_Stream_Result_Impl,
- public ACE_WIN32_Asynch_Result
-{
- /// Factory class will have special permissions.
- friend class ACE_WIN32_Asynch_Read_Stream;
-
- /// Proactor class has special permission.
- friend class ACE_WIN32_Proactor;
-
-public:
- /// The number of bytes which were requested at the start of the
- /// asynchronous read.
- size_t bytes_to_read (void) const;
-
- /// Message block which contains the read data.
- ACE_Message_Block &message_block (void) const;
-
- /// I/O handle used for reading.
- ACE_HANDLE handle (void) const;
-
- // Base class operations. These operations are here to kill
- // dominance warnings. These methods call the base class methods.
-
- /// Number of bytes transferred by the operation.
- size_t bytes_transferred (void) const;
-
- /// ACT associated with the operation.
- const void *act (void) const;
-
- /// Did the operation succeed?
- int success (void) const;
-
- /**
- * This returns the ACT associated with the handle when it was
- * registered with the I/O completion port. This ACT is not the
- * same as the ACT associated with the asynchronous operation.
- */
- const void *completion_key (void) const;
-
- /// Error value if the operation fail.
- u_long error (void) const;
-
- /// Event associated with the OVERLAPPED structure.
- ACE_HANDLE event (void) const;
-
- /// This really make sense only when doing file I/O.
- u_long offset (void) const;
-
- /// Offset_high associated with the OVERLAPPED structure.
- u_long offset_high (void) const;
-
- /// The priority of the asynchronous operation. Currently, this is
- /// not supported on Win32.
- int priority (void) const;
-
- /// No-op. Returns 0.
- int signal_number (void) const;
-
- /// Post @c this to the Proactor's completion port.
- int post_completion (ACE_Proactor_Impl *proactor);
-
- /// Accessor for the scatter read flag
- int scatter_enabled (void) const;
-
-protected:
- /// Constructor is protected since creation is limited to
- /// ACE_Asynch_Read_Stream factory.
- ACE_WIN32_Asynch_Read_Stream_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0,
- int scatter_enabled = 0);
-
- /// Proactor will call this method when the read completes.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error);
-
- /// Destructor.
- virtual ~ACE_WIN32_Asynch_Read_Stream_Result (void);
-
- /// Bytes requested when the asynchronous read was initiated.
- size_t bytes_to_read_;
-
- /// Message block for reading the data into.
- ACE_Message_Block &message_block_;
-
- /// I/O handle used for reading.
- ACE_HANDLE handle_;
-
- /// Flag for scatter read
- int scatter_enabled_;
-};
-
-/**
- * @class ACE_WIN32_Asynch_Read_Stream
- *
- * @brief This class is a factory for starting off asynchronous reads
- * on a stream.
- *
- * Once <open> is called, multiple asynchronous <read>s can
- * started using this class. An ACE_Asynch_Read_Stream::Result
- * will be passed back to the @a handler when the asynchronous
- * reads completes through the <ACE_Handler::handle_read_stream>
- * callback.
- */
-class ACE_Export ACE_WIN32_Asynch_Read_Stream : public virtual ACE_Asynch_Read_Stream_Impl,
- public ACE_WIN32_Asynch_Operation
-{
-
-public:
- /// Constructor.
- ACE_WIN32_Asynch_Read_Stream (ACE_WIN32_Proactor *win32_proactor);
-
- /// This starts off an asynchronous read. Upto @a bytes_to_read will
- /// be read and stored in the @a message_block.
- int read (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void *act,
- int priority,
- int signal_number = 0);
-
- /**
- * Same as above but with scatter support, through chaining of composite
- * message blocks using the continuation field.
- */
- int readv (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void *act,
- int priority,
- int signal_number = 0);
-
- /// Destructor.
- virtual ~ACE_WIN32_Asynch_Read_Stream (void);
-
- // Methods belong to ACE_WIN32_Asynch_Operation base class. These
- // methods are defined here to avoid VC++ warnings. They route the
- // call to the ACE_WIN32_Asynch_Operation base class.
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call. If (<handle> == ACE_INVALID_HANDLE),
- * <ACE_Handler::handle> will be called on the @a handler to get the
- * correct handle.
- */
- int open (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- const void *completion_key,
- ACE_Proactor *proactor);
-
- /**
- * This cancels all pending accepts operations that were issued by
- * the calling thread. The function does not cancel asynchronous
- * operations issued by other threads.
- */
- int cancel (void);
-
- /// Return the underlying proactor.
- ACE_Proactor* proactor (void) const;
-
-protected:
- /// This is the method which does the real work and is there so that
- /// the ACE_Asynch_Read_File class can use it too.
- int shared_read (ACE_WIN32_Asynch_Read_Stream_Result *result);
-};
-
-/**
- * @class ACE_WIN32_Asynch_Write_Stream_Result
- *
- * @brief This class provides concrete implementation for
- * ACE_Asynch_Write_Stream::Result class.
- */
-class ACE_Export ACE_WIN32_Asynch_Write_Stream_Result : public virtual ACE_Asynch_Write_Stream_Result_Impl,
- public ACE_WIN32_Asynch_Result
-{
- /// Factory class willl have special permissions.
- friend class ACE_WIN32_Asynch_Write_Stream;
-
- /// Proactor class has special permission.
- friend class ACE_WIN32_Proactor;
-
-public:
- /// The number of bytes which were requested at the start of the
- /// asynchronous write.
- size_t bytes_to_write (void) const;
-
- /// Message block that contains the data to be written.
- ACE_Message_Block &message_block (void) const;
-
- /// I/O handle used for writing.
- ACE_HANDLE handle (void) const;
-
- // = Base class operations. These operations are here to kill some
- // warnings. These methods call the base class methods.
-
- /// Number of bytes transferred by the operation.
- size_t bytes_transferred (void) const;
-
- /// ACT associated with the operation.
- const void *act (void) const;
-
- /// Did the operation succeed?
- int success (void) const;
-
- /**
- * This returns the ACT associated with the handle when it was
- * registered with the I/O completion port. This ACT is not the
- * same as the ACT associated with the asynchronous operation.
- */
- const void *completion_key (void) const;
-
- /// Error value if the operation fail.
- u_long error (void) const;
-
- /// Event associated with the OVERLAPPED structure.
- ACE_HANDLE event (void) const;
-
- /// This really make sense only when doing file I/O.
- u_long offset (void) const;
-
- /// Offset_high associated with the OVERLAPPED structure.
- u_long offset_high (void) const;
-
- /// The priority of the asynchronous operation. Currently, this is
- /// not supported on Win32.
- int priority (void) const;
-
- /// No-op. Returns 0.
- int signal_number (void) const;
-
- /// Post @c this to the Proactor's completion port.
- int post_completion (ACE_Proactor_Impl *proactor);
-
- /// Accessor for the gather write flag
- int gather_enabled (void) const;
-
-protected:
- /// Constructor is protected since creation is limited to
- /// ACE_Asynch_Write_Stream factory.
- ACE_WIN32_Asynch_Write_Stream_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0,
- int gather_enabled = 0);
-
- /// ACE_Proactor will call this method when the write completes.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error);
-
- /// Destructor.
- virtual ~ACE_WIN32_Asynch_Write_Stream_Result (void);
-
- /// The number of bytes which were requested at the start of the
- /// asynchronous write.
- size_t bytes_to_write_;
-
- /// Message block that contains the data to be written.
- ACE_Message_Block &message_block_;
-
- /// I/O handle used for writing.
- ACE_HANDLE handle_;
-
- /// Flag for gather write
- int gather_enabled_;
-};
-
-/**
- * @class ACE_WIN32_Asynch_Write_Stream
- *
- * @brief This class is a factory for starting off asynchronous writes
- * on a stream.
- *
- *
- * Once <open> is called, multiple asynchronous <writes>s can
- * started using this class. A ACE_Asynch_Write_Stream::Result
- * will be passed back to the @a handler when the asynchronous
- * write completes through the
- * <ACE_Handler::handle_write_stream> callback.
- */
-class ACE_Export ACE_WIN32_Asynch_Write_Stream : public virtual ACE_Asynch_Write_Stream_Impl,
- public ACE_WIN32_Asynch_Operation
-{
-public:
- /// Constructor.
- ACE_WIN32_Asynch_Write_Stream (ACE_WIN32_Proactor *win32_proactor);
-
- /// This starts off an asynchronous write. Upto @a bytes_to_write
- /// will be written from the @a message_block.
- int write (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void *act,
- int priority,
- int signal_number = 0);
-
- /**
- * Same as above but with gather support, through chaining of composite
- * message blocks using the continuation field.
- */
- int writev (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void *act,
- int priority,
- int signal_number = 0);
-
- /// Destructor.
- virtual ~ACE_WIN32_Asynch_Write_Stream (void);
-
- // = Methods belonging to <ACE_WIN32_Asynch_Operation> base class.
-
- // These methods are defined here to avoid VC++ warnings. They route
- // the call to the <ACE_WIN32_Asynch_Operation> base class.
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call. If (<handle> == ACE_INVALID_HANDLE),
- * <ACE_Handler::handle> will be called on the @a handler to get the
- * correct handle.
- */
- int open (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- const void *completion_key,
- ACE_Proactor *proactor);
-
- /**
- * This cancels all pending accepts operations that were issued by
- * the calling thread. The function does not cancel asynchronous
- * operations issued by other threads.
- */
- int cancel (void);
-
- /// Return the underlying proactor.
- ACE_Proactor* proactor (void) const;
-
-protected:
- /// This is the method which does the real work and is there so that
- /// the ACE_Asynch_Write_File class can use it too.
- int shared_write (ACE_WIN32_Asynch_Write_Stream_Result *result);
-};
-
-/**
- * @class ACE_WIN32_Asynch_Read_File_Result
- *
- * @brief This class provides concrete implementation for
- * ACE_Asynch_Read_File::Result class.
- */
-class ACE_Export ACE_WIN32_Asynch_Read_File_Result : public virtual ACE_Asynch_Read_File_Result_Impl,
- public ACE_WIN32_Asynch_Read_Stream_Result
-{
- /// Factory class will have special permissions.
- friend class ACE_WIN32_Asynch_Read_File;
-
- /// Proactor class has special permission.
- friend class ACE_WIN32_Proactor;
-
-public:
- // = These methods belong to ACE_WIN32_Asynch_Result class base
- // class. These operations are here to kill some warnings. These
- // methods call the base class methods.
-
- /// Number of bytes transferred by the operation.
- size_t bytes_transferred (void) const;
-
- /// ACT associated with the operation.
- const void *act (void) const;
-
- /// Did the operation succeed?
- int success (void) const;
-
- /**
- * This returns the ACT associated with the handle when it was
- * registered with the I/O completion port. This ACT is not the
- * same as the ACT associated with the asynchronous operation.
- */
- const void *completion_key (void) const;
-
- /// Error value if the operation fail.
- u_long error (void) const;
-
- /// Event associated with the OVERLAPPED structure.
- ACE_HANDLE event (void) const;
-
- /// This really make sense only when doing file I/O.
- u_long offset (void) const;
-
- /// Offset_high associated with the OVERLAPPED structure.
- u_long offset_high (void) const;
-
- /// The priority of the asynchronous operation. Currently, this is
- /// not supported on Win32.
- int priority (void) const;
-
- /// No-op. Returns 0.
- int signal_number (void) const;
-
- // The following methods belong to
- // ACE_WIN32_Asynch_Read_Stream_Result. They are here to avoid VC++
- // dominance warnings. These methods route their call to the
- // ACE_WIN32_Asynch_Read_Stream_Result base class.
-
- /// The number of bytes which were requested at the start of the
- /// asynchronous read.
- size_t bytes_to_read (void) const;
-
- /// Message block which contains the read data.
- ACE_Message_Block &message_block (void) const;
-
- /// I/O handle used for reading.
- ACE_HANDLE handle (void) const;
-
- /// Post @c this to the Proactor's completion port.
- int post_completion (ACE_Proactor_Impl *proactor);
-
-protected:
- /// Constructor is protected since creation is limited to
- /// ACE_Asynch_Read_File factory.
- ACE_WIN32_Asynch_Read_File_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void* act,
- u_long offset,
- u_long offset_high,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0,
- int scatter_enabled = 0);
-
- /// ACE_Proactor will call this method when the read completes.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error);
-
- /// Destructor.
- virtual ~ACE_WIN32_Asynch_Read_File_Result (void);
-};
-
-/**
- * @class ACE_WIN32_Asynch_Read_File
- *
- * @brief This class is a factory for starting off asynchronous reads
- * on a file.
- *
- * Once <open> is called, multiple asynchronous <read>s can
- * started using this class. A ACE_Asynch_Read_File::Result
- * will be passed back to the @a handler when the asynchronous
- * reads completes through the <ACE_Handler::handle_read_file>
- * callback.
- *
- * This class differs slightly from ACE_Asynch_Read_Stream as it
- * allows the user to specify an offset for the read.
- */
-class ACE_Export ACE_WIN32_Asynch_Read_File : public virtual ACE_Asynch_Read_File_Impl,
- public ACE_WIN32_Asynch_Read_Stream
-{
-
-public:
- /// Constructor.
- ACE_WIN32_Asynch_Read_File (ACE_WIN32_Proactor *win32_proactor);
-
- /**
- * This starts off an asynchronous read. Upto @a bytes_to_read will
- * be read and stored in the @a message_block. The read will start
- * at @a offset from the beginning of the file.
- */
- int read (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- u_long offset,
- u_long offset_high,
- const void *act,
- int priority,
- int signal_number = 0);
-
- /**
- * Same as above but with scatter support, through chaining of
- * composite message blocks using the continuation field.
- * @note Each data block payload must be at least the size of a
- * system memory page and must be aligned on a system memory page
- * size boundary
- */
- int readv (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- u_long offset,
- u_long offset_high,
- const void *act,
- int priority,
- int signal_number = 0);
-
- /// Destructor.
- virtual ~ACE_WIN32_Asynch_Read_File (void);
-
- // = Methods belong to ACE_WIN32_Asynch_Operation base class. These
- // methods are defined here to avoid VC++ warnings. They route the
- // call to the ACE_WIN32_Asynch_Operation base class.
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call. If (<handle> == ACE_INVALID_HANDLE),
- * <ACE_Handler::handle> will be called on the @a handler to get the
- * correct handle.
- */
- int open (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- const void *completion_key,
- ACE_Proactor *proactor);
-
- /**
- * This cancels all pending accepts operations that were issued by
- * the calling thread. The function does not cancel asynchronous
- * operations issued by other threads.
- */
- int cancel (void);
-
- /// Return the underlying proactor.
- ACE_Proactor* proactor (void) const;
-
-private:
- /**
- * This method belongs to ACE_WIN32_Asynch_Read_Stream. It is here
- * to avoid the compiler warnings. We forward this call to the
- * ACE_WIN32_Asynch_Read_Stream class.
- */
- int read (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void *act,
- int priority,
- int signal_number = 0);
-
- /**
- * Same as above but with scatter support, through chaining of composite
- * message blocks using the continuation field.
- */
- int readv (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void *act,
- int priority,
- int signal_number = 0);
-};
-
-/**
- * @class ACE_WIN32_Asynch_Write_File_Result
- *
- * @brief This class provides implementation for
- * ACE_Asynch_Write_File_Result for WIN32 platforms.
- *
- * This class has all the information necessary for the
- * @a handler to uniquiely identify the completion of the
- * asynchronous write.
- *
- * This class differs slightly from
- * ACE_Asynch_Write_Stream::Result as it calls back
- * <ACE_Handler::handle_write_file> on the @a handler instead
- * of <ACE_Handler::handle_write_stream>. No additional state
- * is required by this class as ACE_Asynch_Result can store
- * the @a offset.
- */
-class ACE_Export ACE_WIN32_Asynch_Write_File_Result : public virtual ACE_Asynch_Write_File_Result_Impl,
- public ACE_WIN32_Asynch_Write_Stream_Result
-{
- /// Factory class will have special permission.
- friend class ACE_WIN32_Asynch_Write_File;
-
- /// Proactor class has special permission.
- friend class ACE_WIN32_Proactor;
-
-public:
- // = Base class operations. These operations are here to kill some
- // warnings. These methods call the base class methods.
-
- /// Number of bytes transferred by the operation.
- size_t bytes_transferred (void) const;
-
- /// ACT associated with the operation.
- const void *act (void) const;
-
- /// Did the operation succeed?
- int success (void) const;
-
- /**
- * This returns the ACT associated with the handle when it was
- * registered with the I/O completion port. This ACT is not the
- * same as the ACT associated with the asynchronous operation.
- */
- const void *completion_key (void) const;
-
- /// Error value if the operation fail.
- u_long error (void) const;
-
- /// Event associated with the OVERLAPPED structure.
- ACE_HANDLE event (void) const;
-
- /// This really make sense only when doing file I/O.
- u_long offset (void) const;
-
- /// Offset_high associated with the OVERLAPPED structure.
- u_long offset_high (void) const;
-
- /// The priority of the asynchronous operation. Currently, this is
- /// not supported on Win32.
- int priority (void) const;
-
- /// No-op. Returns 0.
- int signal_number (void) const;
-
- // The following methods belong to
- // ACE_WIN32_Asynch_Read_Stream_Result. They are here to avoid VC++
- // warnings. These methods route their call to the
- // ACE_WIN32_Asynch_Read_Stream_Result base class.
-
- /// The number of bytes which were requested at the start of the
- /// asynchronous write.
- size_t bytes_to_write (void) const;
-
- /// Message block that contains the data to be written.
- ACE_Message_Block &message_block (void) const;
-
- /// I/O handle used for writing.
- ACE_HANDLE handle (void) const;
-
- /// Post @c this to the Proactor's completion port.
- int post_completion (ACE_Proactor_Impl *proactor);
-
-protected:
- /// Constructor is protected since creation is limited to
- /// ACE_Asynch_Write_File factory.
- ACE_WIN32_Asynch_Write_File_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void* act,
- u_long offset,
- u_long offset_high,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0,
- int gather_enabled = 0);
-
- /// ACE_Proactor will call this method when the write completes.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error);
-
- /// Destructor.
- virtual ~ACE_WIN32_Asynch_Write_File_Result (void);
-};
-
-/**
- * @class ACE_WIN32_Asynch_Write_File
- *
- * @brief This class is a factory for starting off asynchronous writes
- * on a file.
- *
- * Once <open> is called, multiple asynchronous <write>s can be
- * started using this class. A ACE_Asynch_Write_File::Result
- * will be passed back to the @a handler when the asynchronous
- * writes completes through the <ACE_Handler::handle_write_file>
- * callback.
- */
-class ACE_Export ACE_WIN32_Asynch_Write_File : public virtual ACE_Asynch_Write_File_Impl,
- public ACE_WIN32_Asynch_Write_Stream
-{
-public:
- /// Constructor.
- ACE_WIN32_Asynch_Write_File (ACE_WIN32_Proactor *win32_proactor);
-
- /**
- * This starts off an asynchronous write. Upto @a bytes_to_write
- * will be write and stored in the @a message_block. The write will
- * start at @a offset from the beginning of the file.
- */
- int write (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- u_long offset,
- u_long offset_high,
- const void *act,
- int priority,
- int signal_number = 0);
-
- /**
- * Same as above but with gather support, through chaining of
- * composite message blocks using the continuation field.
- * @note Each data block payload must be at least the size of a
- * system memory page and must be aligned on a system memory page
- * size boundary
- */
- int writev (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- u_long offset,
- u_long offset_high,
- const void *act,
- int priority,
- int signal_number = 0);
-
- /// Destrcutor.
- virtual ~ACE_WIN32_Asynch_Write_File (void);
-
- // = Methods belong to ACE_WIN32_Asynch_Operation base class. These
- // methods are defined here to avoid VC++ warnings. They route the
- // call to the ACE_WIN32_Asynch_Operation base class.
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call. If (<handle> == ACE_INVALID_HANDLE),
- * <ACE_Handler::handle> will be called on the @a handler to get the
- * correct handle.
- */
- int open (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- const void *completion_key,
- ACE_Proactor *proactor);
-
- /**
- * This cancels all pending accepts operations that were issued by
- * the calling thread. The function does not cancel asynchronous
- * operations issued by other threads.
- */
- int cancel (void);
-
- /// Return the underlying proactor.
- ACE_Proactor* proactor (void) const;
-
-private:
- /**
- * This method belongs to ACE_WIN32_Asynch_Write_Stream. It is here
- * to avoid compiler warnings. This method is forwarded to the
- * ACE_WIN32_Asynch_Write_Stream class.
- */
- int write (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void *act,
- int priority,
- int signal_number = 0);
-
- /**
- * Same as above but with gather support, through chaining of composite
- * message blocks using the continuation field.
- */
- int writev (ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void *act,
- int priority,
- int signal_number = 0);
-};
-
-/**
- * @class ACE_WIN32_Asynch_Accept_Result
- *
- * @brief This class implements ACE_Asynch_Accept::Result for WIN32
- * platform.
- *
- * This class has all the information necessary for the
- * @a handler to uniquiely identify the completion of the
- * asynchronous accept.
- */
-class ACE_Export ACE_WIN32_Asynch_Accept_Result : public virtual ACE_Asynch_Accept_Result_Impl,
- public ACE_WIN32_Asynch_Result
-{
- /// Factory will have special permission.
- friend class ACE_WIN32_Asynch_Accept;
-
- /// Proactor class has special permission.
- friend class ACE_WIN32_Proactor;
-
-public:
- /// The number of bytes which were requested at the start of the
- /// asynchronous accept.
- size_t bytes_to_read (void) const;
-
- /// Message block which contains the read data.
- ACE_Message_Block &message_block (void) const;
-
- /// I/O handle used for accepting new connections.
- ACE_HANDLE listen_handle (void) const;
-
- /// I/O handle for the new connection.
- ACE_HANDLE accept_handle (void) const;
-
- // = Base class operations. These operations are here to kill some
- // warnings. These methods call the base class methods.
-
- /// Number of bytes transferred by the operation.
- size_t bytes_transferred (void) const;
-
- /// ACT associated with the operation.
- const void *act (void) const;
-
- /// Did the operation succeed?
- int success (void) const;
-
- /**
- * This returns the ACT associated with the handle when it was
- * registered with the I/O completion port. This ACT is not the
- * same as the ACT associated with the asynchronous operation.
- */
- const void *completion_key (void) const;
-
- /// Error value if the operation fail.
- u_long error (void) const;
-
- /// Event associated with the OVERLAPPED structure.
- ACE_HANDLE event (void) const;
-
- /// This really make sense only when doing file I/O.
- u_long offset (void) const;
-
- /// Offset_high associated with the OVERLAPPED structure.
- u_long offset_high (void) const;
-
- /// The priority of the asynchronous operation. Currently, this is
- /// not supported on Win32.
- int priority (void) const;
-
- /// No-op. Returns 0.
- int signal_number (void) const;
-
- /// Post @c this to the Proactor's completion port.
- int post_completion (ACE_Proactor_Impl *proactor);
-
-protected:
- /// Constructor is protected since creation is limited to
- /// ACE_Asynch_Accept factory.
- ACE_WIN32_Asynch_Accept_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE listen_handle,
- ACE_HANDLE accept_handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0);
-
- /// ACE_Proactor will call this method when the accept completes.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error);
-
- /// Destructor.
- virtual ~ACE_WIN32_Asynch_Accept_Result (void);
-
- /// Bytes requested when the asynchronous read was initiated.
- size_t bytes_to_read_;
-
- /// Message block for reading the data into.
- ACE_Message_Block &message_block_;
-
- /// I/O handle used for accepting new connections.
- ACE_HANDLE listen_handle_;
-
- /// I/O handle for the new connection.
- ACE_HANDLE accept_handle_;
-};
-
-/**
- * @class ACE_WIN32_Asynch_Accept
- *
- * @brief This class is a factory for starting off asynchronous accepts
- * on a listen handle.
- *
- * Once <open> is called, multiple asynchronous <accept>s can
- * started using this class. A ACE_Asynch_Accept::Result will
- * be passed back to the @a handler when the asynchronous accept
- * completes through the <ACE_Handler::handle_accept>
- * callback.
- */
-class ACE_Export ACE_WIN32_Asynch_Accept : public virtual ACE_Asynch_Accept_Impl,
- public ACE_WIN32_Asynch_Operation
-{
-public:
- /// Constructor.
- ACE_WIN32_Asynch_Accept (ACE_WIN32_Proactor *win32_proactor);
-
- /**
- * This starts off an asynchronous accept. The asynchronous accept
- * call also allows any initial data to be returned to the
- * @a handler. Upto @a bytes_to_read will be read and stored in the
- * @a message_block. The <accept_handle> will be used for the
- * <accept> call. If (<accept_handle> == INVALID_HANDLE), a new
- * handle will be created.
- *
- * @a message_block must be specified. This is because the address of
- * the new connection is placed at the end of this buffer.
- */
- int accept (ACE_Message_Block &message_block,
- size_t bytes_to_read,
- ACE_HANDLE accept_handle,
- const void *act,
- int priority,
- int signal_number = 0,
- int addr_family = AF_INET);
-
- /// Destructor.
- ~ACE_WIN32_Asynch_Accept (void);
-
- // Methods belong to ACE_WIN32_Asynch_Operation base class. These
- // methods are defined here to avoid VC++ warnings. They route the
- // call to the ACE_WIN32_Asynch_Operation base class.
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call. If (<handle> == ACE_INVALID_HANDLE),
- * <ACE_Handler::handle> will be called on the @a handler to get the
- * correct handle.
- */
- int open (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- const void *completion_key,
- ACE_Proactor *proactor);
-
- /**
- * This cancels all pending accepts operations that were issued by
- * the calling thread. The function does not cancel asynchronous
- * operations issued by other threads.
- */
- int cancel (void);
-
- /// Return the underlying proactor.
- ACE_Proactor* proactor (void) const;
-};
-
-/**
- * @class ACE_WIN32_Asynch_Connect_Result
- *
- * @brief This is that class which will be passed back to the
- * completion handler when the asynchronous connect completes.
- *
- * This class has all the information necessary for the
- * completion handler to uniquiely identify the completion of the
- * asynchronous connect.
- */
-class ACE_Export ACE_WIN32_Asynch_Connect_Result : public virtual ACE_Asynch_Connect_Result_Impl,
- public ACE_WIN32_Asynch_Result
-{
- /// Factory classes will have special permissions.
- friend class ACE_WIN32_Asynch_Connect;
-
- /// The Proactor constructs the Result class for faking results.
- friend class ACE_WIN32_Proactor;
-
-public:
-
- /// I/O handle for the connection.
- ACE_HANDLE connect_handle (void) const;
-
- // = Base class operations. These operations are here to kill some
- // warnings. These methods call the base class methods.
-
- /// Number of bytes transferred by the operation.
- size_t bytes_transferred (void) const;
-
- /// ACT associated with the operation.
- const void *act (void) const;
-
- /// Did the operation succeed?
- int success (void) const;
-
- /**
- * Returns the ACT associated with the handle when it was
- * registered with the I/O completion port. This ACT is not the
- * same as the ACT associated with the asynchronous operation.
- */
- const void *completion_key (void) const;
-
- /// Error value if the operation fail.
- u_long error (void) const;
-
- /// Event associated with the OVERLAPPED structure.
- ACE_HANDLE event (void) const;
-
- /// This really make sense only when doing file I/O.
- u_long offset (void) const;
-
- /// Offset_high associated with the OVERLAPPED structure.
- u_long offset_high (void) const;
-
- /// The priority of the asynchronous operation. Currently, this is
- /// not supported on Win32.
- int priority (void) const;
-
- /// No-op. Returns 0.
- int signal_number (void) const;
-
- /// Post this object to the Proactor's completion port.
- int post_completion (ACE_Proactor_Impl *proactor);
-
-protected:
- /// Constructor is protected since creation is limited to
- /// ACE_Asynch_Connect factory.
- ACE_WIN32_Asynch_Connect_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE connect_handle,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number);
-
- /// ACE_Proactor will call this method when the accept completes.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error);
-
- /// Destructor.
- virtual ~ACE_WIN32_Asynch_Connect_Result (void);
-
- /// Set the I/O handle for the new connection.
- void connect_handle (ACE_HANDLE handle);
-
- ACE_HANDLE connect_handle_;
-};
-
-/**
- * @class ACE_WIN32_Asynch_Connect
- */
-class ACE_Export ACE_WIN32_Asynch_Connect :
- public virtual ACE_Asynch_Connect_Impl,
- public ACE_WIN32_Asynch_Operation,
- public ACE_Event_Handler
-{
-public:
-
- /// Constructor.
- ACE_WIN32_Asynch_Connect (ACE_WIN32_Proactor * win32_proactor);
-
- /// Destructor.
- virtual ~ACE_WIN32_Asynch_Connect (void);
-
- /**
- * This open belongs to ACE_WIN32_Asynch_Operation. We forward
- * this call to that method. We have put this here to avoid the
- * compiler warnings.
- */
- int open (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- const void *completion_key,
- ACE_Proactor *proactor = 0);
-
- /**
- * Start an asynchronous connect.
- *
- * @param connect_handle Handle to use for the connect. If the value
- * ACE_INVALID_HANDLE, a new handle will be created.
- *
- * @retval 0 Success
- * @retval -1 Error
- */
- int connect (ACE_HANDLE connect_handle,
- const ACE_Addr &remote_sap,
- const ACE_Addr &local_sap,
- int reuse_addr,
- const void *act,
- int priority,
- int signal_number = 0);
-
- /**
- * Cancel all pending pseudo-asynchronus requests
- * Behavior as usual AIO request
- */
- int cancel (void);
-
- /**
- * Close performs cancellation of all pending requests
- * and close the connect handle
- */
- int close (void);
-
- /// Virtual from ACE_Event_Handler
- ACE_HANDLE get_handle (void) const;
-
- /// Virtual from ACE_Event_Handler
- void set_handle (ACE_HANDLE handle);
-
- /// Virtual from ACE_Event_Handler
- int handle_input ( ACE_HANDLE handle);
- int handle_output ( ACE_HANDLE handle);
- int handle_exception ( ACE_HANDLE handle);
-
- /// Virtual from ACE_Event_Handler
- int handle_close (ACE_HANDLE handle, ACE_Reactor_Mask close_mask) ;
-
- // = Methods belong to ACE_WIN32_Asynch_Operation base class. These
- // methods are defined here to avoid dominace warnings. They route
- // the call to the ACE_WIN32_Asynch_Operation base class.
- /// Return the underlying proactor.
- ACE_Proactor* proactor (void) const;
-
-private:
- int connect_i (ACE_WIN32_Asynch_Connect_Result *result,
- const ACE_Addr &remote_sap,
- const ACE_Addr &local_sap,
- int reuse_addr);
-
- int post_result (ACE_WIN32_Asynch_Connect_Result *result, bool flg_post);
-
- /// Cancel uncompleted connect operations.
- /**
- * @param flg_notify Indicates whether or not to send notification about
- * canceled connect operations. If false, don't send
- * notifications. If true, notify user about canceled
- * connects.
- * According WIN32 standards we should receive
- * notifications on canceled AIO requests.
- *
- * @param set Receives the set of I/O handles on which asynchronous
- * connect requests were canceled as a result of this
- * method. The contents of @a set are completely
- * replaced.
- */
- int cancel_uncompleted (bool flg_notify, ACE_Handle_Set &set);
-
- /// true - Connect is registered in ACE_Asynch_Pseudo_Task
- /// false - Accept is deregisted in ACE_Asynch_Pseudo_Task
- bool flg_open_ ;
-
- typedef ACE_Map_Manager<ACE_HANDLE, ACE_WIN32_Asynch_Connect_Result *, ACE_SYNCH_NULL_MUTEX>
- MAP_MANAGER;
-
- /// Map of Result pointers that correspond to all the <accept>'s
- /// pending.
- MAP_MANAGER result_map_;
-
- /// The lock to protect the result map which is shared. The queue
- /// is updated by main thread in the register function call and
- /// through the auxillary thread in the asynch pseudo task.
- ACE_SYNCH_MUTEX lock_;
-};
-
-/**
- * @class ACE_WIN32_Asynch_Transmit_File_Result
- *
- *
- * @brief This class implements ACE_Asynch_Transmit_File::Result for
- * WIN32 platforms.
- *
- * This class has all the information necessary for the
- * @a handler to uniquiely identify the completion of the
- * asynchronous transmit file.
- */
-class ACE_Export ACE_WIN32_Asynch_Transmit_File_Result : public virtual ACE_Asynch_Transmit_File_Result_Impl,
- public ACE_WIN32_Asynch_Result
-{
- /// Factory class will have special permission.
- friend class ACE_WIN32_Asynch_Transmit_File;
-
- /// Proactor class has special permission.
- friend class ACE_WIN32_Proactor;
-
-public:
- /// Socket used for transmitting the file.
- ACE_HANDLE socket (void) const;
-
- /// File from which the data is read.
- ACE_HANDLE file (void) const;
-
- /// Header and trailer data associated with this transmit file.
- ACE_Asynch_Transmit_File::Header_And_Trailer *header_and_trailer (void) const;
-
- /// The number of bytes which were requested at the start of the
- /// asynchronous transmit file.
- size_t bytes_to_write (void) const;
-
- /// Number of bytes per send requested at the start of the transmit
- /// file.
- size_t bytes_per_send (void) const;
-
- /// Flags which were passed into transmit file.
- u_long flags (void) const;
-
- // Base class operations. These operations are here to kill some
- // warnings. These methods call the base class methods.
-
- /// Number of bytes transferred by the operation.
- size_t bytes_transferred (void) const;
-
- /// ACT associated with the operation.
- const void *act (void) const;
-
- /// Did the operation succeed?
- int success (void) const;
-
- /**
- * This returns the ACT associated with the handle when it was
- * registered with the I/O completion port. This ACT is not the
- * same as the ACT associated with the asynchronous operation.
- */
- const void *completion_key (void) const;
-
- /// Error value if the operation fail.
- u_long error (void) const;
-
- /// Event associated with the OVERLAPPED structure.
- ACE_HANDLE event (void) const;
-
- /// This really make sense only when doing file I/O.
- u_long offset (void) const;
-
- /// Offset_high associated with the OVERLAPPED structure.
- u_long offset_high (void) const;
-
- /// The priority of the asynchronous operation. Currently, this is
- /// not supported on Win32.
- int priority (void) const;
-
- /// No-op. Returns 0.
- int signal_number (void) const;
-
- /// Post @c this to the Proactor's completion port.
- int post_completion (ACE_Proactor_Impl *proactor);
-
-protected:
- /// Constructor is protected since creation is limited to
- /// ACE_Asynch_Transmit_File factory.
- ACE_WIN32_Asynch_Transmit_File_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE socket,
- ACE_HANDLE file,
- ACE_Asynch_Transmit_File::Header_And_Trailer *header_and_trailer,
- size_t bytes_to_write,
- u_long offset,
- u_long offset_high,
- size_t bytes_per_send,
- u_long flags,
- const void *act,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0);
-
- /// Proactor will call this method when the write completes.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error);
-
- /// Destructor.
- virtual ~ACE_WIN32_Asynch_Transmit_File_Result (void);
-
- /// Network I/O handle.
- ACE_HANDLE socket_;
-
- /// File I/O handle.
- ACE_HANDLE file_;
-
- /// Header and trailer data associated with this transmit file.
- ACE_Asynch_Transmit_File::Header_And_Trailer *header_and_trailer_;
-
- /// The number of bytes which were requested at the start of the
- /// asynchronous transmit file.
- size_t bytes_to_write_;
-
- /// Number of bytes per send requested at the start of the transmit
- /// file.
- size_t bytes_per_send_;
-
- /// Flags which were passed into transmit file.
- u_long flags_;
-};
-
-/**
- * @class ACE_WIN32_Asynch_Transmit_File
- *
- * @brief This class is a factory for starting off asynchronous
- * transmit files on a stream.
- *
- * Once <open> is called, multiple asynchronous <transmit_file>s
- * can started using this class. A
- * ACE_Asynch_Transmit_File::Result will be passed back to the
- * @a handler when the asynchronous transmit file completes
- * through the <ACE_Handler::handle_transmit_file> callback.
- *
- * The transmit_file function transmits file data over a
- * connected network connection. The function uses the operating
- * system's cache manager to retrieve the file data. This
- * function provides high-performance file data transfer over
- * network connections. This function would be of great use in
- * a Web Server, Image Server, etc.
- */
-class ACE_Export ACE_WIN32_Asynch_Transmit_File : public virtual ACE_Asynch_Transmit_File_Impl,
- public ACE_WIN32_Asynch_Operation
-{
-public:
- /// Constructor.
- ACE_WIN32_Asynch_Transmit_File (ACE_WIN32_Proactor *win32_proactor);
-
- /**
- * This starts off an asynchronous transmit file. The <file> is a
- * handle to an open file. <header_and_trailer> is a pointer to a
- * data structure that contains pointers to data to send before and
- * after the file data is sent. Set this parameter to 0 if you only
- * want to transmit the file data. Upto @a bytes_to_write will be
- * written to the <socket>. If you want to send the entire file,
- * let @a bytes_to_write = 0. @a bytes_per_send is the size of each
- * block of data sent per send operation. Please read the Win32
- * documentation on what the flags should be.
- */
- int transmit_file (ACE_HANDLE file,
- ACE_Asynch_Transmit_File::Header_And_Trailer *header_and_trailer,
- size_t bytes_to_write,
- u_long offset,
- u_long offset_high,
- size_t bytes_per_send,
- u_long flags,
- const void *act,
- int priority,
- int signal_number = 0);
-
- /// Destructor.
- ~ACE_WIN32_Asynch_Transmit_File (void);
-
- // Methods belong to ACE_WIN32_Asynch_Operation base class. These
- // methods are defined here to avoid VC++ warnings. They route the
- // call to the ACE_WIN32_Asynch_Operation base class.
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call. If (<handle> == ACE_INVALID_HANDLE),
- * <ACE_Handler::handle> will be called on the @a handler to get the
- * correct handle.
- */
- int open (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- const void *completion_key,
- ACE_Proactor *proactor);
-
- /**
- * This cancels all pending accepts operations that were issued by
- * the calling thread. The function does not cancel asynchronous
- * operations issued by other threads.
- */
- int cancel (void);
-
- /// Return the underlying proactor.
- ACE_Proactor* proactor (void) const;
-};
-
-/**
- * @class ACE_WIN32_Asynch_Read_Dgram_Result
- *
- * @brief This class provides concrete implementation for
- * ACE_Asynch_Read_Dgram::Result class.
- */
-class ACE_Export ACE_WIN32_Asynch_Read_Dgram_Result : public virtual ACE_Asynch_Read_Dgram_Result_Impl,
- public ACE_WIN32_Asynch_Result
-{
- /// Factory class will have special permissions.
- friend class ACE_WIN32_Asynch_Read_Dgram;
-
- /// Proactor class has special permission.
- friend class ACE_WIN32_Proactor;
-
-public:
- /// The number of bytes which were requested at the start of the
- /// asynchronous read.
- size_t bytes_to_read (void) const;
-
- /// Message block which contains the read data
- ACE_Message_Block *message_block (void) const;
-
- /// The address of where the packet came from
- int remote_address (ACE_Addr& addr) const;
-
- sockaddr *saddr () const;
-
- /// The flags used in the read
- int flags (void) const;
-
- /// I/O handle used for reading.
- ACE_HANDLE handle (void) const;
-
- // Base class operations. These operations are here to kill
- // dominance warnings. These methods call the base class methods.
-
- /// Number of bytes transferred by the operation.
- size_t bytes_transferred (void) const;
-
- /// ACT associated with the operation.
- const void *act (void) const;
-
- /// Did the operation succeed?
- int success (void) const;
-
- /**
- * This returns the ACT associated with the handle when it was
- * registered with the I/O completion port. This ACT is not the
- * same as the ACT associated with the asynchronous operation.
- */
- const void *completion_key (void) const;
-
- /// Error value if the operation fail.
- u_long error (void) const;
-
- /// Event associated with the OVERLAPPED structure.
- ACE_HANDLE event (void) const;
-
- /// This really make sense only when doing file I/O.
- u_long offset (void) const;
-
- /// Offset_high associated with the OVERLAPPED structure.
- u_long offset_high (void) const;
-
- /// The priority of the asynchronous operation. Currently, this is
- /// not supported on Win32.
- int priority (void) const;
-
- /// No-op. Returns 0.
- int signal_number (void) const;
-
- /// Post @c this to the Proactor's completion port.
- int post_completion (ACE_Proactor_Impl *proactor);
-
-protected:
- /// Constructor is protected since creation is limited to
- /// ACE_Asynch_Read_Dgram factory.
- ACE_WIN32_Asynch_Read_Dgram_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block *message_block,
- size_t bytes_to_read,
- int flags,
- int protocol_family,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0);
-
- /// Proactor will call this method when the read completes.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error);
-
- /// Destructor.
- virtual ~ACE_WIN32_Asynch_Read_Dgram_Result (void);
-
- /// Bytes requested when the asynchronous read was initiated.
- size_t bytes_to_read_;
-
- /// Message block for reading the data into.
- ACE_Message_Block *message_block_;
-
- /// The address of where the packet came from
- ACE_Addr *remote_address_;
-
- int addr_len_;
-
- /// The flags used in the read
- int flags_;
-
- /// I/O handle used for reading.
- ACE_HANDLE handle_;
-};
-
-/**
- * @class ACE_WIN32_Asynch_Read_Dgram
- *
- * @brief This class is a factory for starting off asynchronous reads
- * on a UDP socket.
- *
- * Once <open> is called, multiple asynchronous <read>s can be
- * started using this class. An ACE_Asynch_Read_Dgram::Result
- * will be passed back to the @a handler when the asynchronous
- * reads completes through the <ACE_Handler::handle_read_stream>
- * callback.
- *
- */
-class ACE_Export ACE_WIN32_Asynch_Read_Dgram : public virtual ACE_Asynch_Read_Dgram_Impl,
- public ACE_WIN32_Asynch_Operation
-{
-public:
- /// Constructor.
- ACE_WIN32_Asynch_Read_Dgram (ACE_WIN32_Proactor *win32_proactor);
-
- /// Destructor.
- virtual ~ACE_WIN32_Asynch_Read_Dgram (void);
-
- /** This starts off an asynchronous read. Upto
- * <message_block->total_size()> will be read and stored in the
- * @a message_block. @a message_block's <wr_ptr> will be updated to reflect
- * the added bytes if the read operation is successfully completed.
- * Return code of 1 means immediate success and <number_of_bytes_recvd>
- * will contain number of bytes read. The <ACE_Handler::handle_read_dgram>
- * method will still be called. Return code of 0 means the IO will
- * complete proactively. Return code of -1 means there was an error, use
- * errno to get the error code.
- *
- * Scatter/gather is supported on WIN32 by using the <message_block->cont()>
- * method. Up to ACE_IOV_MAX @a message_block's are supported. Upto
- * <message_block->size()> bytes will be read into each <message block> for
- * a total of <message_block->total_size()> bytes. All @a message_block's
- * <wr_ptr>'s will be updated to reflect the added bytes for each
- * @a message_block
- */
- virtual ssize_t recv (ACE_Message_Block *message_block,
- size_t &number_of_bytes_recvd,
- int flags,
- int protocol_family,
- const void *act,
- int priority,
- int signal_number);
-
- // Methods belong to ACE_WIN32_Asynch_Operation base class. These
- // methods are defined here to avoid VC++ warnings. They route the
- // call to the ACE_WIN32_Asynch_Operation base class.
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call. If (<handle> == ACE_INVALID_HANDLE),
- * <ACE_Handler::handle> will be called on the @a handler to get the
- * correct handle.
- */
- int open (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- const void *completion_key,
- ACE_Proactor *proactor);
-
- /**
- * This cancels all pending accepts operations that were issued by
- * the calling thread. The function does not cancel asynchronous
- * operations issued by other threads.
- */
- int cancel (void);
-
- /// Return the underlying proactor.
- ACE_Proactor* proactor (void) const;
-
-protected:
- /// Do-nothing constructor.
- ACE_WIN32_Asynch_Read_Dgram (void);
-};
-
-/**
- * @class ACE_WIN32_Asynch_Write_Dgram_Result
- *
- * @brief This class provides concrete implementation for
- * ACE_Asynch_Write_Dgram::Result class.
- */
-class ACE_Export ACE_WIN32_Asynch_Write_Dgram_Result : public virtual ACE_Asynch_Write_Dgram_Result_Impl,
- public ACE_WIN32_Asynch_Result
-{
- /// Factory class willl have special permissions.
- friend class ACE_WIN32_Asynch_Write_Dgram;
-
- /// Proactor class has special permission.
- friend class ACE_WIN32_Proactor;
-
-public:
- /// The number of bytes which were requested at the start of the
- /// asynchronous write.
- size_t bytes_to_write (void) const;
-
- /// Message block which contains the sent data
- ACE_Message_Block *message_block (void) const;
-
- /// The flags using in the write
- int flags (void) const;
-
- /// I/O handle used for writing.
- ACE_HANDLE handle (void) const;
-
- // = Base class operations. These operations are here to kill some
- // warnings. These methods call the base class methods.
-
- /// Number of bytes transferred by the operation.
- size_t bytes_transferred (void) const;
-
- /// ACT associated with the operation.
- const void *act (void) const;
-
- /// Did the operation succeed?
- int success (void) const;
-
- /**
- * This returns the ACT associated with the handle when it was
- * registered with the I/O completion port. This ACT is not the
- * same as the ACT associated with the asynchronous operation.
- */
- const void *completion_key (void) const;
-
- /// Error value if the operation fail.
- u_long error (void) const;
-
- /// Event associated with the OVERLAPPED structure.
- ACE_HANDLE event (void) const;
-
- /// This really make sense only when doing file I/O.
- u_long offset (void) const;
-
- /// Offset_high associated with the OVERLAPPED structure.
- u_long offset_high (void) const;
-
- /// The priority of the asynchronous operation. Currently, this is
- /// not supported on Win32.
- int priority (void) const;
-
- /// No-op. Returns 0.
- int signal_number (void) const;
-
- /// Post @c this to the Proactor's completion port.
- int post_completion (ACE_Proactor_Impl *proactor);
-
-protected:
- /// Constructor is protected since creation is limited to
- /// ACE_Asynch_Write_Stream factory.
- ACE_WIN32_Asynch_Write_Dgram_Result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block *message_block,
- size_t bytes_to_write,
- int flags,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0);
-
- /// ACE_Proactor will call this method when the write completes.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error);
-
- /// Destructor.
- virtual ~ACE_WIN32_Asynch_Write_Dgram_Result (void);
-
- /// The number of bytes which were requested at the start of the
- /// asynchronous write.
- size_t bytes_to_write_;
-
- /// Message block used for the send.
- ACE_Message_Block *message_block_;
-
- /// The flags using in the write
- int flags_;
-
- /// I/O handle used for writing.
- ACE_HANDLE handle_;
-};
-
-/**
- * @class ACE_WIN32_Asynch_Write_Dgram
- *
- * @brief This class is a factory for starting off asynchronous writes
- * on a UDP socket.
- *
- *
- * Once <open> is called, multiple asynchronous <writes>s can
- * started using this class. A ACE_Asynch_Write_Stream::Result
- * will be passed back to the @a handler when the asynchronous
- * write completes through the
- * <ACE_Handler::handle_write_stream> callback.
- */
-class ACE_Export ACE_WIN32_Asynch_Write_Dgram : public virtual ACE_Asynch_Write_Dgram_Impl,
- public ACE_WIN32_Asynch_Operation
-{
-public:
- /// Constructor.
- ACE_WIN32_Asynch_Write_Dgram (ACE_WIN32_Proactor *win32_proactor);
-
- /// Destructor.
- virtual ~ACE_WIN32_Asynch_Write_Dgram (void);
-
- /** This starts off an asynchronous send. Upto
- * <message_block->total_length()> will be sent. @a message_block's
- * <rd_ptr> will be updated to reflect the sent bytes if the send operation
- * is successfully completed.
- * Return code of 1 means immediate success and <number_of_bytes_sent>
- * is updated to number of bytes sent. The <ACE_Handler::handle_write_dgram>
- * method will still be called. Return code of 0 means the IO will
- * complete proactively. Return code of -1 means there was an error, use
- * errno to get the error code.
- *
- * Scatter/gather is supported on WIN32 by using the <message_block->cont()>
- * method. Up to ACE_IOV_MAX @a message_block's are supported. Upto
- * <message_block->length()> bytes will be sent from each <message block>
- * for a total of <message_block->total_length()> bytes. All
- * @a message_block's <rd_ptr>'s will be updated to reflect the bytes sent
- * from each @a message_block.
- */
- virtual ssize_t send (ACE_Message_Block *message_block,
- size_t &number_of_bytes_sent,
- int flags,
- const ACE_Addr &addr,
- const void *act,
- int priority,
- int signal_number);
-
- // = Methods belonging to <ACE_WIN32_Asynch_Operation> base class.
-
- // These methods are defined here to avoid VC++ warnings. They route
- // the call to the <ACE_WIN32_Asynch_Operation> base class.
-
- /**
- * Initializes the factory with information which will be used with
- * each asynchronous call. If (<handle> == ACE_INVALID_HANDLE),
- * <ACE_Handler::handle> will be called on the @a handler to get the
- * correct handle.
- */
- int open (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- const void *completion_key,
- ACE_Proactor *proactor);
-
- /**
- * This cancels all pending accepts operations that were issued by
- * the calling thread. The function does not cancel asynchronous
- * operations issued by other threads.
- */
- int cancel (void);
-
- /// Return the underlying proactor.
- ACE_Proactor* proactor (void) const;
-
-protected:
- /// Do-nothing constructor.
- ACE_WIN32_Asynch_Write_Dgram (void);
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_WIN32_OVERLAPPED_IO && ACE_HAS_WINSOCK2 */
-#include /**/ "ace/post.h"
-#endif /* ACE_WIN32_ASYNCH_IO_H */
-
diff --git a/dep/include/ace/WIN32_Proactor.h b/dep/include/ace/WIN32_Proactor.h
deleted file mode 100644
index 49cec039b38..00000000000
--- a/dep/include/ace/WIN32_Proactor.h
+++ /dev/null
@@ -1,325 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file WIN32_Proactor.h
- *
- * $Id: WIN32_Proactor.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Irfan Pyarali (irfan@cs.wustl.edu)
- * @author Tim Harrison (harrison@cs.wustl.edu)
- * @author Alexander Babu Arulanthu <alex@cs.wustl.edu>
- * @author Roger Tragin <r.tragin@computer.org>
- * @author Alexander Libman <alibman@ihug.com.au>
- */
-//=============================================================================
-
-#ifndef ACE_WIN32_PROACTOR_H
-#define ACE_WIN32_PROACTOR_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_WIN32) && defined (ACE_HAS_WIN32_OVERLAPPED_IO)
-// WIN32 implementation of the Proactor.
-
-#include "ace/WIN32_Asynch_IO.h"
-#include "ace/Event_Handler.h"
-
-#include "ace/Proactor_Impl.h"
-#include "ace/Asynch_Pseudo_Task.h"
-#include "ace/Auto_Event.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Forward declarations.
-class ACE_WIN32_Asynch_Result;
-class ACE_WIN32_Proactor_Timer_Handler;
-
-/**
- * @class ACE_WIN32_Proactor
- *
- * @brief A manager for asynchronous event demultiplexing on Win32.
- *
- * See the Proactor pattern description at
- * http://www.cs.wustl.edu/~schmidt/PDF/proactor.pdf for more
- * details.
- */
-class ACE_Export ACE_WIN32_Proactor : public ACE_Proactor_Impl
-{
- friend class ACE_WIN32_Asynch_Connect;
-
-public:
- /// A do nothing constructor.
- ACE_WIN32_Proactor (size_t number_of_threads = 0,
- bool used_with_reactor_event_loop = false);
-
- /// Virtual destruction.
- virtual ~ACE_WIN32_Proactor (void);
-
- /// Close the IO completion port.
- virtual int close (void);
-
- /// This method adds the @a handle to the I/O completion port. This
- /// function is a no-op function for Unix systems.
- virtual int register_handle (ACE_HANDLE handle,
- const void *completion_key);
-
- /**
- * Dispatch a single set of events. If @a wait_time elapses before
- * any events occur, return 0. Return 1 on success i.e., when a
- * completion is dispatched, non-zero (-1) on errors and errno is
- * set accordingly.
- */
- virtual int handle_events (ACE_Time_Value &wait_time);
-
- /**
- * Block indefinitely until at least one event is dispatched.
- * Dispatch a single set of events. Return 1 on success i.e., when a
- * completion is dispatched, non-zero (-1) on errors and errno is
- * set accordingly.
- */
- virtual int handle_events (void);
-
- /**
- * Post a result to the completion port of the Proactor. If errors
- * occur, the result will be deleted by this method. If successful,
- * the result will be deleted by the Proactor when the result is
- * removed from the completion port. Therefore, the result should
- * have been dynamically allocated and should be orphaned by the
- * user once this method is called.
- */
- virtual int post_completion (ACE_WIN32_Asynch_Result *result);
-
- /// Add wakeup dispatch threads (reinit).
- int wake_up_dispatch_threads (void);
-
- /// Close all dispatch threads.
- int close_dispatch_threads (int wait);
-
- /// Get number of thread used as a parameter to @c CreateIoCompletionPort.
- size_t number_of_threads (void) const;
-
- /// Set number of thread used as a parameter to @c CreateIoCompletionPort.
- void number_of_threads (size_t threads);
-
- /// Get the event handle.
- virtual ACE_HANDLE get_handle (void) const;
-
- virtual ACE_Asynch_Read_Stream_Impl *create_asynch_read_stream (void);
- virtual ACE_Asynch_Write_Stream_Impl *create_asynch_write_stream (void);
- virtual ACE_Asynch_Read_File_Impl *create_asynch_read_file (void);
- virtual ACE_Asynch_Write_File_Impl *create_asynch_write_file (void);
- virtual ACE_Asynch_Read_Dgram_Impl *create_asynch_read_dgram (void);
- virtual ACE_Asynch_Write_Dgram_Impl *create_asynch_write_dgram (void);
- virtual ACE_Asynch_Accept_Impl *create_asynch_accept (void);
- virtual ACE_Asynch_Connect_Impl *create_asynch_connect (void);
- virtual ACE_Asynch_Transmit_File_Impl *create_asynch_transmit_file (void);
-
- // Methods used to create Asynch_IO_Result objects. We create the right
- // objects here in these methods.
-
- virtual ACE_Asynch_Read_Stream_Result_Impl *create_asynch_read_stream_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0);
-
- virtual ACE_Asynch_Write_Stream_Result_Impl *create_asynch_write_stream_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0);
-
- virtual ACE_Asynch_Read_File_Result_Impl *create_asynch_read_file_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void* act,
- u_long offset,
- u_long offset_high,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0);
-
- virtual ACE_Asynch_Write_File_Result_Impl *create_asynch_write_file_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_write,
- const void* act,
- u_long offset,
- u_long offset_high,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0);
-
- /// Create the correct implementation class for ACE_Asynch_Read_Dgram::Result.
- virtual ACE_Asynch_Read_Dgram_Result_Impl *create_asynch_read_dgram_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block *message_block,
- size_t bytes_to_read,
- int flags,
- int protocol_family,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0);
-
- /// Create the correct implementation class for ACE_Asynch_Write_Dgram::Result.
- virtual ACE_Asynch_Write_Dgram_Result_Impl *create_asynch_write_dgram_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE handle,
- ACE_Message_Block *message_block,
- size_t bytes_to_write,
- int flags,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0);
-
- virtual ACE_Asynch_Accept_Result_Impl *create_asynch_accept_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE listen_handle,
- ACE_HANDLE accept_handle,
- ACE_Message_Block &message_block,
- size_t bytes_to_read,
- const void* act,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0);
-
- virtual ACE_Asynch_Connect_Result_Impl *create_asynch_connect_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE connect_handle,
- const void *act,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0);
-
- virtual ACE_Asynch_Transmit_File_Result_Impl *create_asynch_transmit_file_result (const ACE_Handler::Proxy_Ptr &handler_proxy,
- ACE_HANDLE socket,
- ACE_HANDLE file,
- ACE_Asynch_Transmit_File::Header_And_Trailer *header_and_trailer,
- size_t bytes_to_write,
- u_long offset,
- u_long offset_high,
- size_t bytes_per_send,
- u_long flags,
- const void *act,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0);
-
- /// Create a timer result object which can be used with the Timer
- /// mechanism of the Proactor.
- virtual ACE_Asynch_Result_Impl *create_asynch_timer (const ACE_Handler::Proxy_Ptr &handler_proxy,
- const void *act,
- const ACE_Time_Value &tv,
- ACE_HANDLE event,
- int priority,
- int signal_number = 0);
-
-protected:
- /// Task to process pseudo-asynchronous operations
- ACE_Asynch_Pseudo_Task & get_asynch_pseudo_task (void);
-
- /// Called when object is signaled by OS (either via UNIX signals or
- /// when a Win32 object becomes signaled).
- virtual int handle_signal (int signum, siginfo_t * = 0, ucontext_t * = 0);
-
- /// Called when object is removed from the ACE_Reactor.
- virtual int handle_close (ACE_HANDLE handle,
- ACE_Reactor_Mask close_mask);
-
- /**
- * Dispatch a single set of events. If @a milli_seconds elapses
- * before any events occur, return 0. Return 1 if a completion is
- * dispatched. Return -1 on errors.
- */
- virtual int handle_events (unsigned long milli_seconds);
-
- /// Protect against structured exceptions caused by user code when
- /// dispatching handles.
- void application_specific_code (ACE_WIN32_Asynch_Result *asynch_result,
- size_t bytes_transferred,
- const void *completion_key,
- u_long error);
-
- /**
- * Post @a how_many completions to the completion port so that all
- * threads can wake up. This is used in conjunction with the
- * run_event_loop().
- */
- virtual int post_wakeup_completions (int how_many);
-
- /// Handle for the completion port. Unix doesnt have completion
- /// ports.
- ACE_HANDLE completion_port_;
-
- /// This number is passed to the @c CreateIOCompletionPort system
- /// call.
- DWORD number_of_threads_;
-
- /// This event is used in conjunction with Reactor when we try to
- /// integrate the event loops of Reactor and the Proactor.
- ACE_Auto_Event event_;
-
- /// Flag that indicates whether we are used in conjunction with
- /// Reactor.
- bool const used_with_reactor_event_loop_;
-
- /// Handler to handle the wakeups. This works in conjunction with the
- /// ACE_Proactor::run_event_loop().
- ACE_Handler wakeup_handler_;
-
- /// Pseudo-task for asynch connect ( NT/2000)
- /// In future should removed in XP with ConnectEx support
- ACE_Asynch_Pseudo_Task pseudo_task_;
-};
-
-/**
- * @class ACE_WIN32_Asynch_Timer
- *
- * @brief This class is posted to the completion port when a timer
- * expires. When the complete method of this object is
- * called, the @a handler's handle_timeout method will be
- * called.
- */
-class ACE_WIN32_Asynch_Timer : public ACE_WIN32_Asynch_Result
-{
- /// The factory method for this class is with the POSIX_Proactor
- /// class.
- friend class ACE_WIN32_Proactor;
-
-protected:
- /// Constructor.
- ACE_WIN32_Asynch_Timer (const ACE_Handler::Proxy_Ptr &handler_proxy,
- const void *act,
- const ACE_Time_Value &tv,
- ACE_HANDLE event = ACE_INVALID_HANDLE,
- int priority = 0,
- int signal_number = 0);
-
- /// This method calls the @a handler's handle_timeout method.
- virtual void complete (size_t bytes_transferred,
- int success,
- const void *completion_key,
- u_long error = 0);
-
- /// Time value requested by caller
- ACE_Time_Value time_;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_WIN32 */
-#include /**/ "ace/post.h"
-#endif /* ACE_PROACTOR_H */
-
diff --git a/dep/include/ace/XML_Svc_Conf.h b/dep/include/ace/XML_Svc_Conf.h
deleted file mode 100644
index c14e30035bc..00000000000
--- a/dep/include/ace/XML_Svc_Conf.h
+++ /dev/null
@@ -1,65 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file XML_Svc_Conf.h
- *
- * $Id: XML_Svc_Conf.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Nanbor Wang <nanbor@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_XML_SVC_CONF_H
-#define ACE_XML_SVC_CONF_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/ACE_export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if (ACE_USES_CLASSIC_SVC_CONF==0)
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_XML_Svc_Conf
- *
- * @brief This abstract class defines the common operations
- * ACE_Service_Config expects when using the XML Service Config Parser.
- *
- * When implementing a concret XML_Svc_Conf class, be sure to overload
- * the new/delete function so the dynamically created concret XML_Svc_Conf
- * instance can be deleted from the original heap in the DLL/SO. The
- * concret XML_Svc_Conf implementation will be put into a DLL/SO that
- * ACE applications can link to dynamically using the ACE_DLL class.
- * This DLL should include an operation as follow:
- *
- * extern "C" ACE_XML_Svc_Conf_Parser * _ACEXML_create_XML_Svc_Conf_Object (void);
- *
- *
- */
-
-class ACE_Export ACE_XML_Svc_Conf
-{
-public:
- typedef ACE_XML_Svc_Conf *(*Factory)(void);
-
- virtual ~ACE_XML_Svc_Conf (void) = 0;
-
- virtual int parse_file (const ACE_TCHAR file[]) = 0;
-
- virtual int parse_string (const ACE_TCHAR str[]) = 0;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_USES_CLASSIC_SVC_CONF == 0 */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_XML_SVC_CONF_H */
-
diff --git a/dep/include/ace/XTI_ATM_Mcast.h b/dep/include/ace/XTI_ATM_Mcast.h
deleted file mode 100644
index b701d842b67..00000000000
--- a/dep/include/ace/XTI_ATM_Mcast.h
+++ /dev/null
@@ -1,137 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file XTI_ATM_Mcast.h
- *
- * $Id: XTI_ATM_Mcast.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Joe Hoffert
- */
-//=============================================================================
-
-#ifndef ACE_XTI_ATM_MCAST_H
-#define ACE_XTI_ATM_MCAST_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-#pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_XTI_ATM)
-
-#include "ace/TLI_Connector.h"
-#include "ace/ATM_Addr.h"
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_XTI_ATM_Mcast
- *
- * @brief Defines an active connection factory for the ACE_TLI C++
- * wrappers to support XTI/ATM multicast.
- */
-class ACE_Export ACE_XTI_ATM_Mcast : public ACE_TLI_Connector
-{
-public:
- // = Initialization methods.
- /// Default constructor.
- ACE_XTI_ATM_Mcast (void);
-
- /**
- * Actively connect and produce a @a new_stream if things go well.
- * The @a remote_sap is the address that we are trying to connect
- * with. The @a timeout is the amount of time to wait to connect.
- * If it's 0 then we block indefinitely. If *timeout == {0, 0} then
- * the connection is done using non-blocking mode. In this case, if
- * the connection can't be made immediately the value of -1 is
- * returned with @c errno == EWOULDBLOCK. If *timeout > {0, 0} then
- * this is the amount of time to wait before timing out. If the
- * time expires before the connection is made @c errno == ETIME. The
- * @a local_sap is the value of local address to bind to. If it's
- * the default value of ACE_Addr::sap_any then the user is letting
- * the OS do the binding. If @a reuse_addr == 1 then the
- * <local_addr> is reused, even if it hasn't been cleanedup yet.
- */
- ACE_XTI_ATM_Mcast (ACE_TLI_Stream &new_stream,
- const ACE_Addr &remote_sap,
- ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = O_RDWR,
- int perms = 0,
- const char device[] = ACE_XTI_ATM_DEVICE,
- struct t_info *info = 0,
- int rw_flag = 1,
- struct netbuf *udata = 0,
- struct netbuf *opt = 0);
-
- /**
- * Actively connect and produce a @a new_stream if things go well.
- * The @a remote_sap is the address that we are trying to connect
- * with. The @a timeout is the amount of time to wait to connect.
- * If it's 0 then we block indefinitely. If *timeout == {0, 0} then
- * the connection is done using non-blocking mode. In this case, if
- * the connection can't be made immediately the value of -1 is
- * returned with @c errno == EWOULDBLOCK. If *timeout > {0, 0} then
- * this is the amount of time to wait before timing out. If the
- * time expires before the connection is made @c errno == ETIME. The
- * @a local_sap is the value of local address to bind to. If it's
- * the default value of ACE_Addr::sap_any then the user is letting
- * the OS do the binding. If @a reuse_addr == 1 then the
- * <local_addr> is reused, even if it hasn't been cleanedup yet.
- */
- int connect (ACE_TLI_Stream &new_stream,
- const ACE_Addr &remote_sap,
- ACE_Time_Value *timeout = 0,
- const ACE_Addr &local_sap = ACE_Addr::sap_any,
- int reuse_addr = 0,
- int flags = O_RDWR,
- int perms = 0,
- const char device[] = ACE_XTI_ATM_DEVICE,
- struct t_info *info = 0,
- int rw_flag = 1,
- struct netbuf *udata = 0,
- struct netbuf *opt = 0);
-
- /**
- * Actively add a leaf to the currently connected stream (i.e.,
- * multicast). The @a remote_sap is the address of the leaf that we
- * are trying to add. The @a timeout is the amount of time to wait to
- * connect. If it's 0 then we block indefinitely. If *timeout ==
- * {0, 0} then the connection is done using non-blocking mode. In
- * this case, if the connection can't be made immediately the value
- * of -1 is returned with @c errno == EWOULDBLOCK. If *timeout >
- * {0, 0} then this is the amount of time to wait before timing out.
- * If the time expires before the connection is made @c errno == ETIME.
- */
- int add_leaf (ACE_TLI_Stream &current_stream,
- const ACE_Addr &remote_sap,
- ACE_INT32 leaf_id,
- ACE_Time_Value *timeout = 0);
-
- // = Meta-type info
- typedef ACE_ATM_Addr PEER_ADDR;
- typedef ACE_TLI_Stream PEER_STREAM;
-
- /// Dump the state of an object.
- void dump (void) const;
-
- /// Declare the dynamic allocation hooks.
- ACE_ALLOC_HOOK_DECLARE;
-};
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-#include "ace/XTI_ATM_Mcast.inl"
-#endif /* __ACE_INLINE__ */
-
-#endif /* ACE_HAS_XTI_ATM */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_XTI_ATM_MCAST_H */
-
diff --git a/dep/include/ace/XTI_ATM_Mcast.inl b/dep/include/ace/XTI_ATM_Mcast.inl
deleted file mode 100644
index b182bb41b20..00000000000
--- a/dep/include/ace/XTI_ATM_Mcast.inl
+++ /dev/null
@@ -1,65 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: XTI_ATM_Mcast.inl 80826 2008-03-04 14:51:23Z wotte $
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-ACE_INLINE
-ACE_XTI_ATM_Mcast::ACE_XTI_ATM_Mcast (ACE_TLI_Stream &new_stream,
- const ACE_Addr &remote_sap,
- ACE_Time_Value *timeout,
- const ACE_Addr &local_sap,
- int reuse_addr,
- int flags,
- int perms,
- const char device[],
- struct t_info *info,
- int rw_flag,
- struct netbuf *udata,
- struct netbuf *opt)
-{
- ACE_TRACE ("ACE_XTI_ATM_Mcast::ACE_XTI_ATM_Mcast");
- if (this->connect (new_stream, remote_sap, timeout, local_sap, reuse_addr,
- flags, perms, device,
- info, rw_flag,
- udata, opt) == ACE_INVALID_HANDLE
- && timeout != 0 && !(errno == EWOULDBLOCK || errno == ETIME))
- ACE_ERROR ((LM_ERROR, ACE_TEXT ("%p\n"), ACE_TEXT ("ACE_TLI_Stream::ACE_TLI_Stream")));
-}
-
-// Connect the <new_stream> to the <remote_sap>, waiting up to
-// <timeout> amount of time if necessary. This is simple a pass-
-// through function to ACE_TLI_Connector::connect(). It is over-
-// ridden to change the default device from TCP to XTI/ATM.
-
-ACE_INLINE
-int
-ACE_XTI_ATM_Mcast::connect (ACE_TLI_Stream &new_stream,
- const ACE_Addr &remote_sap,
- ACE_Time_Value *timeout,
- const ACE_Addr &local_sap,
- int reuse_addr,
- int flags,
- int perms,
- const char device[],
- struct t_info *info,
- int rw_flag,
- struct netbuf *udata,
- struct netbuf *opt)
-{
- ACE_TRACE ("ACE_XTI_ATM_Mcast::connect");
- return ACE_TLI_Connector::connect(new_stream,
- remote_sap,
- timeout,
- local_sap,
- reuse_addr,
- flags,
- perms,
- device,
- info,
- rw_flag,
- udata,
- opt);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
diff --git a/dep/include/ace/ace_wchar.h b/dep/include/ace/ace_wchar.h
deleted file mode 100644
index 75afa83968b..00000000000
--- a/dep/include/ace/ace_wchar.h
+++ /dev/null
@@ -1,386 +0,0 @@
-//* -*- C++ -*- */
-
-//=============================================================================
-/**
- * @file ace_wchar.h
- *
- * $Id: ace_wchar.h 82441 2008-07-28 13:04:13Z johnnyw $
- *
- * @author Darrell Brunsch <brunsch@uci.edu>
- */
-//=============================================================================
-
-#ifndef ACE_WCHAR_H
-#define ACE_WCHAR_H
-
-#include "ace/config-macros.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// These macros have been deprecated and should be replaced by their
-// ACE_TEXT_* equivalents. These macros are just hacks and may not
-// completely provide the old functionality.
-#if defined (ACE_LEGACY_MODE)
-// Convert the old unicode indicators
-# if defined (ACE_HAS_MOSTLY_UNICODE_APIS)
-# define ACE_USES_WCHAR
-# endif /* ACE_HAS_MOSTLY_UNICODE_APIS */
-# if defined (ACE_HAS_UNICODE)
-# define ACE_HAS_WCHAR
-# endif /* ACE_HAS_UNICODE */
-
-// These are defined to get older stuff to compile
-// FUZZ: disable check_for_tchar
-# define ASYS_TCHAR ACE_TCHAR
-# define ASYS_TEXT ACE_TEXT
-# define ASYS_ONLY_MULTIBYTE_STRING ACE_TEXT_ALWAYS_CHAR
-# define ASYS_MULTIBYTE_STRING ACE_TEXT_CHAR_TO_TCHAR
-# define ASYS_WIDE_STRING ACE_TEXT_CHAR_TO_TCHAR
-# define ACE_WIDE_STRING ACE_TEXT_CHAR_TO_TCHAR
-
-# if defined (ACE_USES_WCHAR)
-# define ASYS_ONLY_WIDE_STRING(STRING) STRING
-# else /* ACE_USES_WCHAR */
-# define ASYS_ONLY_WIDE_STRING(STRING) \
- ACE_Ascii_To_Wide (STRING).wchar_rep ()
-# endif /* ACE_USES_WCHAR */
-
-# define ACE_TEXT_STRING ACE_TString
-
-#endif /* ACE_LEGACY_MODE */
-
-#if defined (ACE_HAS_XPG4_MULTIBYTE_CHAR)
-# if !defined (ACE_HAS_WCHAR)
-# define ACE_HAS_WCHAR
-# endif
-# include /**/ <wchar.h>
-#endif /* ACE_HAS_XPG4_MULTIBYTE_CHAR */
-
-#if defined (ACE_HAS_WCHAR)
-# if defined (ACE_VXWORKS)
-# include /**/ <types/vxTypes.h> /* For wchar_t */
-# include /**/ <stdlib.h> /* For mbstowcs, etc. */
-# include /**/ <string.h> /* For strlen */
-# if !defined (__RTP__)
-# define wint_t unsigned int /* VxWorks has wchar_t but not wint_t */
-# else
-# include /**/ <wchar.h>
-# include /**/ <wctype.h>
-# endif
-# elif defined (ACE_OPENVMS)
-# include /**/ <wchar.h>
-# include /**/ <wctype.h>
-# elif defined (ACE_HAS_STANDARD_CPP_LIBRARY) && \
- (ACE_HAS_STANDARD_CPP_LIBRARY != 0)
-# include /**/ <cwchar>
-# include /**/ <cwctype>
-# elif defined (ACE_HAS_WINCE)
-# include /**/ <wtypes.h>
-# else
-# include /**/ <wchar.h>
-# endif /* ACE_HAS_STANDARD_CPP_LIBRARY */
-#endif /* ACE_HAS_WCHAR */
-
-#if defined (ACE_HAS_ICONV)
-# include /**/ <iconv.h>
-# if !defined (ACE_MAX_ICONV_BUFFER)
-# define ACE_MAX_ICONV_BUFFER 16*1024
-# endif
-#endif /* ACE_HAS_ICONV */
-
-#if defined (ACE_USES_STD_NAMESPACE_FOR_STDC_LIB) && \
- (ACE_USES_STD_NAMESPACE_FOR_STDC_LIB != 0)
-using std::size_t;
-#endif /* ACE_USES_STD_NAMESPACE_FOR_STDC_LIB */
-
-// This makes the somewhat dubious assumption that if a platform lacks
-// a native wchar_t type, then it will typedef it as unsigned short.
-#if defined (ACE_HAS_WCHAR) && !defined (ACE_LACKS_NATIVE_WCHAR_T)
-# if !defined (ACE_WSTRING_HAS_USHORT_SUPPORT)
-# define ACE_WSTRING_HAS_USHORT_SUPPORT
-# endif /* ACE_WSTRING_HAS_USHORT_SUPPORT */
-#endif /* ACE_HAS_WCHAR && !ACE_LACKS_NATIVE_WCHAR_T */
-
-// Set the default behaviour for ACE_TEXT_WIDE to use the L-prefix
-#if !defined (ACE_USES_L_PREFIX)
-# define ACE_USES_L_PREFIX 1
-#endif /* ACE_USES_L_PREFIX */
-
-// Define the unicode/wchar related macros correctly
-
-# if !defined (ACE_TEXT_WIDE)
-# if (ACE_USES_L_PREFIX == 1)
-# define ACE_TEXT_WIDE_I(STRING) L##STRING
-# else /* ACE_USES_L_PREFIX */
-# define ACE_TEXT_WIDE_I(STRING) STRING
-# endif /* ACE_USES_L_PREFIX */
-# define ACE_TEXT_WIDE(STRING) ACE_TEXT_WIDE_I (STRING)
-# endif /* ACE_TEXT_WIDE */
-
-#if defined (ACE_USES_WCHAR)
-typedef wchar_t ACE_TCHAR;
-typedef char ACE_ANTI_TCHAR;
-# define ACE_TEXT(STRING) ACE_TEXT_WIDE (STRING)
-# if !defined (ACE_LACKS_DEPRECATED_MACROS)
-# define ACE_LIB_TEXT(STRING) ACE_TEXT_WIDE (STRING)
-# endif
-# define ACE_TEXT_ALWAYS_CHAR(STRING) ACE_Wide_To_Ascii (STRING).char_rep ()
-# define ACE_TEXT_ALWAYS_WCHAR(STRING) STRING
-# define ACE_TEXT_CHAR_TO_TCHAR(STRING) ACE_Ascii_To_Wide (STRING).wchar_rep ()
-# define ACE_TEXT_WCHAR_TO_TCHAR(STRING) STRING
-# define ACE_TEXT_ANTI_TO_TCHAR(STRING) ACE_Ascii_To_Wide (STRING).wchar_rep ()
-#else /* ACE_USES_WCHAR */
-typedef char ACE_TCHAR;
-typedef wchar_t ACE_ANTI_TCHAR;
-# define ACE_TEXT(STRING) STRING
-# if !defined (ACE_LACKS_DEPRECATED_MACROS)
-# define ACE_LIB_TEXT(STRING) STRING
-# endif
-# define ACE_TEXT_ALWAYS_CHAR(STRING) STRING
-# define ACE_TEXT_ALWAYS_WCHAR(STRING) ACE_Ascii_To_Wide (STRING).wchar_rep ()
-# define ACE_TEXT_CHAR_TO_TCHAR(STRING) STRING
-# define ACE_TEXT_WCHAR_TO_TCHAR(STRING) ACE_Wide_To_Ascii (STRING).char_rep ()
-# define ACE_TEXT_ANTI_TO_TCHAR(STRING) ACE_Wide_To_Ascii (STRING).char_rep ()
-#endif /* ACE_USES_WCHAR */
-
-// The OS_String module defines some wide-char functions that are not
-// universally available. In particular, they're not part of the
-// XPG4 Worldwide Portability Interface wide-character string handling
-// functions. So, if ACE_HAS_XPG4_MULTIBYTE_CHAR is defined, note that
-// these functions are missing.
-#if defined (ACE_HAS_XPG4_MULTIBYTE_CHAR)
-
-# if !defined (ACE_LACKS_ITOW)
-# define ACE_LACKS_ITOW
-# endif
-
-# if !defined (ACE_LACKS_WCSICMP)
-# define ACE_LACKS_WCSICMP
-# endif
-
-# if !defined (ACE_LACKS_WCSNICMP)
-# define ACE_LACKS_WCSNICMP
-# endif
-
-# if !defined (ACE_LACKS_WCSDUP)
-# define ACE_LACKS_WCSDUP
-# endif
-
-#endif /* ACE_HAS_XPG4_MULTIBYTE_CHAR */
-
-#if defined ACE_HAS_WCHAR
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class ACE_Wide_To_Ascii
- *
- * @brief A lightweight wchar* to char* string conversion class.
- *
- * The purpose of this class is to perform conversion from
- * wchar* to char* strings. It is not intended for general
- * purpose use.
- */
-class ACE_Wide_To_Ascii
-{
-public:
- /// Ctor must take a wchar string.
- ACE_Wide_To_Ascii (const wchar_t *s);
-
- /// Dtor will free up the memory.
- ~ACE_Wide_To_Ascii (void);
-
- /// Return the internal char* representation.
- char *char_rep (void);
-
- /// Converts an wchar_t string to ascii and returns a new string.
- static char *convert (const wchar_t *wstr);
-
-private:
- /// Internal pointer to the converted string.
- char *s_;
-
-#if defined (ACE_HAS_ICONV)
- static iconv_t ACE_Wide_To_Ascii_iconv_env;
-#endif /* ACE_HAS_ICONV */
-
- /// Disallow these operation.
- ACE_Wide_To_Ascii (void);
- ACE_Wide_To_Ascii (ACE_Wide_To_Ascii &);
- ACE_Wide_To_Ascii& operator= (ACE_Wide_To_Ascii &);
-};
-
-/**
- * @class ACE_Ascii_To_Wide
- *
- * @brief A lightweight char* to wchar* string conversion class.
- *
- * The purpose of this class is to perform conversion from
- * char* to wchar* strings. It is not intended for general
- * purpose use.
- */
-class ACE_Ascii_To_Wide
-{
-public:
- /// Ctor must take a wchar string.
- ACE_Ascii_To_Wide (const char *s);
-
- /// Dtor will free up the memory.
- ~ACE_Ascii_To_Wide (void);
-
- /// Return the internal wchar* representation.
- wchar_t *wchar_rep (void);
-
- /// Converts an char string to unicode/wide and returns a new string.
- static wchar_t *convert (const char *str);
-
-private:
- /// Internal pointer to the converted string.
- wchar_t *s_;
-
-#if defined (ACE_HAS_ICONV)
- static iconv_t ACE_Ascii_To_Wide_iconv_env;
-#endif /* ACE_HAS_ICONV */
-
- /// Disallow these operation.
- ACE_Ascii_To_Wide (void);
- ACE_Ascii_To_Wide (ACE_Ascii_To_Wide &);
- ACE_Ascii_To_Wide operator= (ACE_Ascii_To_Wide &);
-};
-
-#if defined (ACE_LEGACY_MODE)
-typedef ACE_Ascii_To_Wide ACE_OS_CString;
-typedef ACE_Wide_To_Ascii ACE_OS_WString;
-#endif /* ACE_LEGACY_MODE */
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_WCHAR */
-
-#if defined (ACE_WIN32)
-#if defined (ACE_USES_WCHAR)
-#define ACE_LPSTR LPWSTR
-#define ACE_TEXT_SERVICE_TABLE_ENTRY SERVICE_TABLE_ENTRYW
-#define ACE_TEXT_STARTUPINFO STARTUPINFOW
-#define ACE_TEXT_WIN32_FIND_DATA WIN32_FIND_DATAW
-#define ACE_TEXT_OSVERSIONINFO OSVERSIONINFOW
-#define ACE_TEXT_EXPLICIT_ACCESS EXPLICIT_ACCESS_W
-
-#define ACE_TEXT_CreateEvent ::CreateEventW
-#define ACE_TEXT_CreateFile ::CreateFileW
-#define ACE_TEXT_CreateFileMapping ::CreateFileMappingW
-#define ACE_TEXT_CreateMutex ::CreateMutexW
-#define ACE_TEXT_CreateProcess ::CreateProcessW
-#define ACE_TEXT_CreateSemaphore ::CreateSemaphoreW
-#define ACE_TEXT_CreateService ::CreateServiceW
-#define ACE_TEXT_ExpandEnvironmentStrings ::ExpandEnvironmentStringsW
-#define ACE_TEXT_FindFirstChangeNotification ::FindFirstChangeNotificationW
-#define ACE_TEXT_FindFirstFile ::FindFirstFileW
-#define ACE_TEXT_FindNextFile ::FindNextFileW
-#define ACE_TEXT_FormatMessage ::FormatMessageW
-#define ACE_TEXT_FreeEnvironmentStrings ::FreeEnvironmentStringsW
-#define ACE_TEXT_GetComputerName ::GetComputerNameW
-#define ACE_TEXT_GetEnvironmentStrings ::GetEnvironmentStringsW
-#define ACE_TEXT_GetFileAttributes ::GetFileAttributesW
-#define ACE_TEXT_GetModuleFileName ::GetModuleFileNameW
-#define ACE_TEXT_GetTempPath ::GetTempPathW
-#define ACE_TEXT_GetUserName ::GetUserNameW
-#define ACE_TEXT_GetUserNameEx ::GetUserNameExW
-#define ACE_TEXT_GetVersionEx ::GetVersionExW
-#define ACE_TEXT_LoadLibrary ::LoadLibraryW
-#define ACE_TEXT_MoveFileEx ::MoveFileExW
-#define ACE_TEXT_WaitNamedPipe ::WaitNamedPipeW
-#define ACE_TEXT_OpenFileMapping ::OpenFileMappingW
-#define ACE_TEXT_OpenSCManager ::OpenSCManagerW
-#define ACE_TEXT_OpenService ::OpenServiceW
-#define ACE_TEXT_OutputDebugString ::OutputDebugStringW
-#define ACE_TEXT_RegisterEventSource ::RegisterEventSourceW
-#define ACE_TEXT_RegisterServiceCtrlHandler ::RegisterServiceCtrlHandlerW
-#define ACE_TEXT_RegConnectRegistry ::RegConnectRegistryW
-#define ACE_TEXT_RegCreateKeyEx ::RegCreateKeyExW
-#define ACE_TEXT_RegDeleteKey ::RegDeleteKeyW
-#define ACE_TEXT_RegDeleteValue ::RegDeleteValueW
-#define ACE_TEXT_RegEnumKeyEx ::RegEnumKeyExW
-#define ACE_TEXT_RegEnumValue ::RegEnumValueW
-#define ACE_TEXT_RegCreateKey ::RegCreateKeyW
-#define ACE_TEXT_RegOpenKey ::RegOpenKeyW
-#define ACE_TEXT_RegOpenKeyEx ::RegOpenKeyExW
-#define ACE_TEXT_RegQueryValueEx ::RegQueryValueExW
-#define ACE_TEXT_RegSetValueEx ::RegSetValueExW
-#define ACE_TEXT_ReportEvent ::ReportEventW
-#define ACE_TEXT_SearchPath ::SearchPathW
-#define ACE_TEXT_StartService ::StartServiceW
-#define ACE_TEXT_StartServiceCtrlDispatcher ::StartServiceCtrlDispatcherW
-#define ACE_TEXT_SetFileSecurity ::SetFileSecurityW
-#define ACE_TEXT_SetEntriesInAcl ::SetEntriesInAclW
-#define ACE_TEXT_PdhExpandCounterPath ::PdhExpandCounterPathW
-#define ACE_TEXT_PdhOpenQuery ::PdhOpenQueryW
-#define ACE_TEXT_PdhAddCounter ::PdhAddCounterW
-
-#else /* ACE_USES_WCHAR */
-#define ACE_LPSTR LPSTR
-#define ACE_TEXT_SERVICE_TABLE_ENTRY SERVICE_TABLE_ENTRYA
-#define ACE_TEXT_STARTUPINFO STARTUPINFOA
-#define ACE_TEXT_WIN32_FIND_DATA WIN32_FIND_DATAA
-#define ACE_TEXT_OSVERSIONINFO OSVERSIONINFOA
-#define ACE_TEXT_EXPLICIT_ACCESS EXPLICIT_ACCESS_A
-
-#define ACE_TEXT_CreateEvent ::CreateEventA
-#define ACE_TEXT_CreateFile ::CreateFileA
-#define ACE_TEXT_CreateFileMapping ::CreateFileMappingA
-#define ACE_TEXT_CreateMutex ::CreateMutexA
-#define ACE_TEXT_CreateProcess ::CreateProcessA
-#define ACE_TEXT_CreateSemaphore ::CreateSemaphoreA
-#define ACE_TEXT_CreateService ::CreateServiceA
-#define ACE_TEXT_ExpandEnvironmentStrings ::ExpandEnvironmentStringsA
-#define ACE_TEXT_FindFirstChangeNotification ::FindFirstChangeNotificationA
-#define ACE_TEXT_FindFirstFile ::FindFirstFileA
-#define ACE_TEXT_FindNextFile ::FindNextFileA
-#define ACE_TEXT_FormatMessage ::FormatMessageA
-#define ACE_TEXT_FreeEnvironmentStrings ::FreeEnvironmentStringsA
-#define ACE_TEXT_GetComputerName ::GetComputerNameA
-#define ACE_TEXT_GetEnvironmentStrings ::GetEnvironmentStringsA
-#define ACE_TEXT_GetFileAttributes ::GetFileAttributesA
-#define ACE_TEXT_GetModuleFileName ::GetModuleFileNameA
-#define ACE_TEXT_GetTempPath ::GetTempPathA
-#define ACE_TEXT_GetUserName ::GetUserNameA
-#define ACE_TEXT_GetUserNameEx ::GetUserNameExA
-#define ACE_TEXT_GetVersionEx ::GetVersionExA
-#define ACE_TEXT_LoadLibrary ::LoadLibraryA
-#define ACE_TEXT_MoveFileEx ::MoveFileExA
-#define ACE_TEXT_WaitNamedPipe ::WaitNamedPipeA
-#define ACE_TEXT_OpenFileMapping ::OpenFileMappingA
-#define ACE_TEXT_OpenSCManager ::OpenSCManagerA
-#define ACE_TEXT_OpenService ::OpenServiceA
-#define ACE_TEXT_OutputDebugString ::OutputDebugStringA
-#define ACE_TEXT_RegisterEventSource ::RegisterEventSourceA
-#define ACE_TEXT_RegisterServiceCtrlHandler ::RegisterServiceCtrlHandlerA
-#define ACE_TEXT_RegConnectRegistry ::RegConnectRegistryA
-#define ACE_TEXT_RegCreateKeyEx ::RegCreateKeyExA
-#define ACE_TEXT_RegDeleteKey ::RegDeleteKeyA
-#define ACE_TEXT_RegDeleteValue ::RegDeleteValueA
-#define ACE_TEXT_RegEnumKeyEx ::RegEnumKeyExA
-#define ACE_TEXT_RegEnumValue ::RegEnumValueA
-#define ACE_TEXT_RegCreateKey ::RegCreateKeyA
-#define ACE_TEXT_RegOpenKey ::RegOpenKeyA
-#define ACE_TEXT_RegOpenKeyEx ::RegOpenKeyExA
-#define ACE_TEXT_RegQueryValueEx ::RegQueryValueExA
-#define ACE_TEXT_RegSetValueEx ::RegSetValueExA
-#define ACE_TEXT_ReportEvent ::ReportEventA
-#define ACE_TEXT_SearchPath ::SearchPathA
-#define ACE_TEXT_StartService ::StartServiceA
-#define ACE_TEXT_StartServiceCtrlDispatcher ::StartServiceCtrlDispatcherA
-#define ACE_TEXT_SetFileSecurity ::SetFileSecurityA
-#define ACE_TEXT_SetEntriesInAcl ::SetEntriesInAclA
-#define ACE_TEXT_PdhExpandCounterPath ::PdhExpandCounterPathA
-#define ACE_TEXT_PdhOpenQuery ::PdhOpenQueryA
-#define ACE_TEXT_PdhAddCounter ::PdhAddCounterA
-#endif /* ACE_USES_WCHAR */
-#endif /* ACE_WIN32 */
-
-#include "ace/ace_wchar.inl"
-
-#endif /* ACE_WCHAR_H */
-
diff --git a/dep/include/ace/ace_wchar.inl b/dep/include/ace/ace_wchar.inl
deleted file mode 100644
index 744b44f5e73..00000000000
--- a/dep/include/ace/ace_wchar.inl
+++ /dev/null
@@ -1,183 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: ace_wchar.inl 80826 2008-03-04 14:51:23Z wotte $
-
-// These are always inlined
-// FUZZ: disable check_for_inline
-
-#if defined (ACE_HAS_WCHAR)
-
-#if !defined (ACE_WIN32)
-# include /**/ <string.h> // Need to see strlen()
-#endif /* ACE_WIN32 */
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-inline
-ACE_Wide_To_Ascii::~ACE_Wide_To_Ascii (void)
-{
- delete [] this->s_;
-}
-
-inline char *
-ACE_Wide_To_Ascii::char_rep (void)
-{
- return this->s_;
-}
-
-inline char *
-ACE_Wide_To_Ascii::convert (const wchar_t *wstr)
-{
- // Short circuit null pointer case
- if (wstr == 0)
- return 0;
-
-# if defined (ACE_WIN32)
- UINT const cp = GetACP (); // Codepage
- int const len = ::WideCharToMultiByte (cp,
- 0,
- wstr,
- -1,
- 0,
- 0,
- 0,
- 0);
-# elif defined (ACE_LACKS_WCSLEN)
- const wchar_t * wtemp = wstr;
- while ((*wtemp) != 0) // Hopefully the string is null terminated!
- ++wtemp;
-
- int const len = wtemp - wstr + 1;
-# else /* ACE_WIN32 */
- size_t const len = ::wcslen (wstr) + 1;
-# endif /* ACE_WIN32 */
-
-#if !defined (ACE_HAS_ICONV)
- char *str = new char[len];
-#endif
-
-# if defined (ACE_WIN32)
- ::WideCharToMultiByte (cp, 0, wstr, -1, str, len, 0, 0);
-# elif defined (ACE_VXWORKS)
- ::wcstombs (str, wstr, len);
-# elif defined (ACE_HAS_ICONV)
- wchar_t * wstri = const_cast<wchar_t*> (wstr);
- size_t lensi = ACE_MAX_ICONV_BUFFER;
- size_t lenwi = len * sizeof(wchar_t);
- char buf[ACE_MAX_ICONV_BUFFER];
- char *stri = buf;
-
- size_t hr = iconv (ACE_Wide_To_Ascii_iconv_env, (char**)&wstri, &lenwi, &stri, &lensi);
- if ((hr==size_t(-1))||(lensi==ACE_MAX_ICONV_BUFFER))
- {
- char *str=new char[len];
- for (size_t i = 0; i < len; i++)
- {
- wchar_t *t = const_cast <wchar_t *> (wstr);
- str[i] = static_cast<char> (*(t + i));
- }
-
- return str;
- }
- char *str = new char[ACE_MAX_ICONV_BUFFER-lensi];
- ::memcpy(str, buf, ACE_MAX_ICONV_BUFFER-lensi);
-# else /* ACE_HAS_ICONV */
- for (size_t i = 0; i < len; ++i)
- {
- wchar_t *t = const_cast <wchar_t *> (wstr);
- str[i] = static_cast<char> (*(t + i));
- }
-# endif /* ACE_WIN32 */
- return str;
-}
-
-inline
-ACE_Wide_To_Ascii::ACE_Wide_To_Ascii (const wchar_t *s)
-{
-#if defined(ACE_HAS_ICONV)
- if (ACE_Wide_To_Ascii_iconv_env == 0)
- {
- ACE_Wide_To_Ascii_iconv_env = iconv_open("", "WCHAR_T");
- }
-#endif
- s_ = ACE_Wide_To_Ascii::convert (s);
-}
-
-inline
-ACE_Ascii_To_Wide::~ACE_Ascii_To_Wide (void)
-{
- delete [] this->s_;
-}
-
-inline wchar_t *
-ACE_Ascii_To_Wide::wchar_rep (void)
-{
- return this->s_;
-}
-
-inline wchar_t *
-ACE_Ascii_To_Wide::convert (const char *str)
-{
- // Short circuit null pointer case
- if (str == 0)
- return 0;
-
-# if defined (ACE_WIN32)
- UINT const cp = GetACP (); // Codepage
- int const len = ::MultiByteToWideChar (cp, 0, str, -1, 0, 0);
-# else /* ACE_WIN32 */
- size_t const len = strlen (str) + 1;
-# endif /* ACE_WIN32 */
-
-#if !defined (ACE_HAS_ICONV)
- wchar_t *wstr = new wchar_t[len];
-#endif
-
-# if defined (ACE_WIN32)
- ::MultiByteToWideChar (cp, 0, str, -1, wstr, len);
-# elif defined (ACE_VXWORKS)
- ::mbstowcs (wstr, str, len);
-# elif defined (ACE_HAS_ICONV) /* ACE_VXWORKS */
- char *stri = const_cast<char*>(str);
- size_t lensi = len;
- size_t lenwi = ACE_MAX_ICONV_BUFFER;
- wchar_t buf[ACE_MAX_ICONV_BUFFER/sizeof(wchar_t)];
- wchar_t *wstri=buf;
-
- size_t hr=iconv(ACE_Ascii_To_Wide_iconv_env, &stri, &lensi, (char**)&wstri, &lenwi);
- if((hr==size_t(-1))||(lenwi==ACE_MAX_ICONV_BUFFER)){
- wchar_t *wstr=new wchar_t[len*sizeof(wchar_t)];
- for (size_t i = 0; i < len; i++){
- char *t = const_cast<char *> (str);
- wstr[i] = static_cast<wchar_t> (*((unsigned char*)t + i));
- }
-
- return wstr;
- }
- wchar_t *wstr=new wchar_t[(ACE_MAX_ICONV_BUFFER-lenwi)/sizeof(wchar_t)];
- ::memcpy(wstr,buf,ACE_MAX_ICONV_BUFFER-lenwi);
-# else /* ACE_HAS_ICONV */
- for (size_t i = 0; i < len; ++i)
- {
- char *t = const_cast<char *> (str);
- wstr[i] = static_cast<wchar_t> (*((unsigned char*)(t + i)));
- }
-# endif /* ACE_WIN32 */
- return wstr;
-}
-
-inline
-ACE_Ascii_To_Wide::ACE_Ascii_To_Wide (const char *s)
-{
-#if defined(ACE_HAS_ICONV)
- if (ACE_Ascii_To_Wide_iconv_env == 0)
- {
- ACE_Ascii_To_Wide_iconv_env = iconv_open("WCHAR_T", "");
- }
-#endif
- s_ = ACE_Ascii_To_Wide::convert (s);
-}
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-#endif /* ACE_HAS_WCHAR */
diff --git a/dep/include/ace/checked_iterator.h b/dep/include/ace/checked_iterator.h
deleted file mode 100644
index 3f4c6c14a08..00000000000
--- a/dep/include/ace/checked_iterator.h
+++ /dev/null
@@ -1,59 +0,0 @@
-// -*- C++ -*-
-
-#ifndef ACE_CHECKED_ITERATOR_H
-#define ACE_CHECKED_ITERATOR_H
-
-/**
- * @file checked_iterator.h
- *
- * @brief Checked iterator factory function.
- *
- * Some compilers (e.g. MSVC++ >= 8) issue security related
- * diagnostics if algorithms such as std::copy() are used in an unsafe
- * way. Normally this isn't an issue if STL container iterators are
- * used in conjuction with the standard algorithms. However, in cases
- * where application-specific iterators are use with standard
- * algorithms that could potentially overrun a buffer, extra care must
- * be taken to prevent such an overrun. If supported, checked
- * iterators can be used to address the potential destination buffer
- * overrun.
- *
- * This header provides function templates that generate the
- * appropriate checked iterator. In cases where checked iterators are
- * not supported, the pointer passed to the function is returned
- * instead.
- *
- * $Id: checked_iterator.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @internal The functions and types in this header are meant for
- * internal use. They may change at any point between
- * releases.
- *
- * @author Ossama Othman
- */
-
-# if defined (_MSC_VER) && (_MSC_FULL_VER >= 140050000)
-// Checked iterators are currently only supported in MSVC++ 8 or better.
-# include <iterator>
-# endif /* _MSC_VER >= 1400 */
-
-# if defined (_MSC_VER) && (_MSC_FULL_VER >= 140050000 && _MSC_FULL_VER < 160020506)
-template <typename PTR>
-stdext::checked_array_iterator<PTR>
-ACE_make_checked_array_iterator (PTR buf, size_t len)
-{
- return stdext::checked_array_iterator<PTR> (buf, len);
-}
-# else
-template <typename PTR>
-PTR
-ACE_make_checked_array_iterator (PTR buf, size_t /* len */)
-{
- // Checked iterators are unsupported. Just return the pointer to
- // the buffer itself.
- return buf;
-}
-# endif /* _MSC_VER >= 1400 */
-
-#endif /* ACE_CHECKED_ITERATOR_H */
-
diff --git a/dep/include/ace/config-WinCE.h b/dep/include/ace/config-WinCE.h
deleted file mode 100644
index a7ba1a72a8a..00000000000
--- a/dep/include/ace/config-WinCE.h
+++ /dev/null
@@ -1,237 +0,0 @@
-// $Id: config-WinCE.h 81693 2008-05-14 12:35:01Z johnnyw $
-
-// Note: For WinCE build, simply use: #include "ace/config-win32.h"
-// It is same as config.h for Windows NT/2k so that you can
-// share same files and directories for both WinCE and NT/2k
-// builds, unless you add additional definition(s) for each
-// specific build or change the output directory.
-
-#ifndef ACE_CONFIG_WINCE_H
-#define ACE_CONFIG_WINCE_H
-
-#include /**/ "ace/pre.h"
-
-#ifndef ACE_CONFIG_WIN32_H
-# error Use config-win32.h in config.h instead of this header
-#endif // ACE_CONFIG_WIN32_H
-
-#if !defined (UNDER_CE)
-# error Define UNDER_CE to version (i.e. 300 = 3.0)
-#endif // UNDER_CE
-
-#if (UNDER_CE < 300)
-# error ACE requires Windows CE 3.0 and later.
-#endif // UNDER_CE
-
-#if (UNDER_CE < 400)
-// CE 3 doesn't have Winsock 2, but CE 4 does.
-# if !defined (ACE_HAS_WINSOCK2)
-# define ACE_HAS_WINSOCK2 0
-# endif
-# define ACE_LACKS_ASSERT_H
-# define ACE_LACKS_SEARCH_H
-# define ACE_LACKS_WCHAR_H
-# define ACE_LACKS_WCTYPE_H
-# define ACE_LACKS_STDDEF_H
-# define ACE_LACKS_PTRDIFF_T
-#endif /* UNDER_CE < 400 */
-
-#if !defined (ACE_HAS_WINCE)
-# define ACE_HAS_WINCE 1
-#endif
-
-#if defined (_MSC_VER) && (_MSC_VER < 1400)
-// WinCE prior to Visual Studio 2005 integration doesn't have most of
-// the standard C library time functions. It also doesn't define struct tm.
-// SYSTEMTIME has pretty much the same info though, so we can map it when
-// needed. Define struct tm here and use it when needed. This is taken
-// from the standard C library.
-# define ACE_LACKS_STRUCT_TM
-#endif
-
-// We need these libraries to build:
-#pragma comment(lib,"corelibc.lib")
-#pragma comment(linker, "/nodefaultlib:oldnames.lib")
-
-// Only DLL version is supported on CE.
-//#if defined (ACE_HAS_DLL)
-//# undef ACE_HAS_DLL
-//#endif // ACE_HAS_DLL
-//#define ACE_HAS_DLL 1
-
-// Need to define LD search path explicitly on CE because
-// CE doesn't have environment variables and we can't get
-// the information using getenv.
-#define ACE_DEFAULT_LD_SEARCH_PATH ACE_TEXT (".\\;\\windows")
-
-#define ACE_LACKS_FCNTL_H
-#define ACE_LACKS_SYS_TYPES_H
-#define ACE_LACKS_GETCWD
-#define ACE_LACKS_ASCTIME
-#define ACE_LACKS_ASCTIME_R
-#define ACE_LACKS_GMTIME
-#define ACE_LACKS_GMTIME_R
-#define ACE_LACKS_LOCALTIME
-#define ACE_LACKS_PERROR
-#define ACE_LACKS_STRFTIME
-#define ACE_LACKS_WIN32_SETFILEPOINTEREX
-#define ACE_LACKS_WIN32_SERVICES
-#define ACE_LACKS_WIN32_SECURITY_DESCRIPTORS
-#define ACE_LACKS_GETPROCESSTIMES
-#define ACE_LACKS_PDH_H
-#define ACE_LACKS_PDHMSG_H
-
-#define ACE_HAS_POSITION_INDEPENDENT_POINTERS 1
-
-#define ACE_LACKS_MSG_WFMO
-#define ACE_LACKS_UMASK
-
-// WinCE only supports the UNICODE API
-#if !defined (ACE_USES_WCHAR)
-# define ACE_USES_WCHAR
-#endif /* ACE_USES_WCHAR */
-
-#define ACE_USES_WINCE_SEMA_SIMULATION
-
-#define ACE_HAS_NONSTATIC_OBJECT_MANAGER 1
-
-// FILE stuff isn't always defined in CE
-#if (_MSC_VER < 1400) && !defined (_FILE_DEFINED)
- typedef void FILE;
-# define _FILE_DEFINED
-#endif /* _MSC_VER < 1400 && !_FILE_DEFINED */
-
-// This was defined in previous versions of CE, but not 2.11
-#define EXCEPTION_ACCESS_VIOLATION STATUS_ACCESS_VIOLATION
-
-#define ACE_MAIN WINAPI WinMain
-
-// SH3 cross-compiler can't handle inline functions correctly
-// (along with other bugs.)
-#if defined (SH3)
-# define ACE_LACKS_INLINE_FUNCTIONS
-#endif // SH3 && _DEBUG
-
-#ifndef ACE_DEFAULT_SERVER_HOST
-# define ACE_DEFAULT_SERVER_HOST ACE_TEXT("localhost")
-#endif // ACE_DEFAULT_SERVER_HOST
-
-// @@ Need to remap every function that uses any of these flags to
-// Win32 API. These are for ANSI styled function and are not
-// available on WinCE.
-
-#define _O_RDONLY 0x0000 // open for reading only
-#define _O_WRONLY 0x0001 // open for writing only
-#define _O_RDWR 0x0002 // open for reading and writing
-#define _O_APPEND 0x0008 // writes done at eof
-
-#define _O_CREAT 0x0100 // create and open file
-#define _O_TRUNC 0x0200 // open and truncate
-#define _O_EXCL 0x0400 // open only if file doesn't already exist
-
-// O_TEXT files have <cr><lf> sequences translated to <lf> on read()'s,
-// and <lf> sequences translated to <cr><lf> on write()'s
-#define _O_TEXT 0x4000 // file mode is text (translated)
-#define _O_BINARY 0x8000 // file mode is binary (untranslated)
-
-// macro to translate the C 2.0 name used to force binary mode for files
-//#define _O_RAW _O_BINARY
-
-// Open handle inherit bit
-//#define _O_NOINHERIT 0x0080 // child process doesn't inherit file
-
-// Temporary file bit - file is deleted when last handle is closed
-#define _O_TEMPORARY 0x0040 // temporary file bit
-
-// temporary access hint
-//#define _O_SHORT_LIVED 0x1000 // temporary storage file, try not to flush
-
-// sequential/random access hints
-//#define _O_SEQUENTIAL 0x0020 // file access is primarily sequential
-//#define _O_RANDOM 0x0010 // file access is primarily random
-
-// Non-ANSI names
-#define O_RDONLY _O_RDONLY
-#define O_WRONLY _O_WRONLY
-#define O_RDWR _O_RDWR
-#define O_APPEND _O_APPEND
-#define O_CREAT _O_CREAT
-#define O_TRUNC _O_TRUNC
-#define O_EXCL _O_EXCL
-#define O_TEXT _O_TEXT
-#define O_BINARY _O_BINARY
-#define O_TEMPORARY _O_TEMPORARY
-//#define O_RAW _O_BINARY
-//#define O_NOINHERIT _O_NOINHERIT
-//#define O_SEQUENTIAL _O_SEQUENTIAL
-//#define O_RANDOM _O_RANDOM
-
-// @@ NSIG value. This is definitely not correct.
-#define NSIG 23
-
-// @@ For some reason, WinCE forgot to define this.
-// Need to find out what it is. (Used in MapViewOfFile ().)
-#define FILE_MAP_COPY 0
-
-#define ACE_LACKS_STRCASECMP // WinCE doesn't support _stricmp
-#define ACE_LACKS_GETSERVBYNAME
-#define ACE_LACKS_ACCESS
-#define ACE_LACKS_FILELOCKS
-#define ACE_LACKS_EXEC
-#define ACE_LACKS_MKTEMP
-#define ACE_LACKS_STRRCHR
-#define ACE_LACKS_BSEARCH
-#define ACE_LACKS_SOCKET_BUFSIZ
-#define ACE_LACKS_ISATTY
-#define ACE_LACKS_STRERROR
-#define ACE_LACKS_SYSTEM
-#define ACE_LACKS_SIGACTION
-#define ACE_LACKS_PIPE
-
-//#define ACE_LACKS_CUSERID
-//#define ACE_LACKS_CHDIR
-#define ACE_LACKS_ENV
-#define ACE_LACKS_HOSTNAME
-#define ACE_LACKS_REALPATH
-#define ACE_LACKS_READLINK
-#define ACE_LACKS_SWAB
-#define ACE_LACKS_TEMPNAM
-#define ACE_LACKS_GETPROTOBYNUMBER
-#define ACE_LACKS_GETPROTOBYNAME
-
-#if defined (_WIN32_WCE_EMULATION)
-// @@ For some reason, qsort isn't defined correctly (_stdcall vs _cdecl)
-// under emulation. So for right now, exclude it.
-# define ACE_LACKS_QSORT
-#endif // _WIN32_WCE_EMULATION
-
-#if !defined (BUFSIZ)
-# define BUFSIZ 1024
-#endif
-
-typedef void (__cdecl * __sighandler_t)(int); // keep Signal compilation happy
-typedef long off_t;
-
-#define ACE_LACKS_MALLOC_H // We do have malloc.h, but don't use it.
-
-#define ACE_HAS_WINCE_BROKEN_ERRNO
-
-#define ACE_HAS_STRDUP_EMULATION
-
-// WinCE can't do fixed addresses for memory-mapped files.
-#if defined (ACE_DEFAULT_BASE_ADDR)
-# undef ACE_DEFAULT_BASE_ADDR
-#endif
-#define ACE_DEFAULT_BASE_ADDR 0
-
-#define ACE_HAS_TSS_EMULATION
-
-// This is still true up thru VC8...
-#define ACE_LACKS_ERRNO_H
-#define ACE_LACKS_SIGNAL_H
-#define ACE_LACKS_SYS_STAT_H
-
-#include /**/ "ace/post.h"
-
-#endif // ACE_CONFIG_WINCE_H
-
diff --git a/dep/include/ace/config-aix-5.x.h b/dep/include/ace/config-aix-5.x.h
deleted file mode 100644
index 5c1972b5675..00000000000
--- a/dep/include/ace/config-aix-5.x.h
+++ /dev/null
@@ -1,334 +0,0 @@
-// $Id: config-aix-5.x.h 80826 2008-03-04 14:51:23Z wotte $
-//
-// Config file for AIX 5.1 and higher.
-
-#ifndef ACE_CONFIG_AIX_5_X_H
-#define ACE_CONFIG_AIX_5_X_H
-
-// This define is needed for building with Visual Age C++ 5 in incremental
-// mode. In the batch mode build, platform_aix_ibm.GNU sets it. The incremental
-// mode compiler won't be supported after ACE 5.3, so this will also go away
-// in that timeframe, so don't worry about future AIX versions.
-#if !defined (ACE_AIX_VERS)
-# define ACE_AIX_VERS 501
-#endif
-
-// AIX 5.1 has AIO, but it doesn't have the same API as other POSIX
-// systems, and the semantics of operations are a bit different. Will take
-// some real work to get this going.
-// AIX 5.2, however, has the POSIX API implemented. However, the libc functions
-// to implement it aren't exported by default. You need to use smit to enable
-// them. So, leave AIO disabled unless the user explicitly enables it.
-// config-aix-4.x.h will set ACE_HAS_AIO_CALLS if config-posix.h senses the
-// feature-test macros, so set up _ACE_DISABLE_AIO_CALLS_ if the user didn't
-// set it. Then check for it after including config-aix-4.x.h and remove
-// ACE_HAS_AIO_CALLS if so.
-#if !defined (ACE_HAS_AIO_CALLS)
-# define _ACE_DISABLE_AIO_CALLS_
-#endif
-
-// Both IBM and g++ compilers set _THREAD_SAFE if compiler is asked to compile
-// threaded code (xlC_r, as opposed to xlC; and g++ -pthread)
-#if !defined (ACE_MT_SAFE) || (ACE_MT_SAFE != 0)
-# if defined (ACE_HAS_THREADS)
-# undef ACE_HAS_THREADS
-# endif
-# if defined (_THREAD_SAFE)
-# define ACE_HAS_THREADS 1
-// # else
-// # define ACE_HAS_THREADS 0
-# endif /* _THREAD_SAFE */
-#endif /* !ACE_MT_SAFE || (ACE_MT_SAFE != 0) */
-
-#if defined (__xlC__) || defined (__IBMCPP__)
- // AIX xlC, IBM C/C++, and Visual Age C++ compilers
- //********************************************************************
- //
-
-// Compiler does this with a builtin - it's not in libc.
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//# define ACE_HAS_ALLOCA
-
-// Compiler supports the ssize_t typedef.
-# define ACE_HAS_SSIZE_T
-
- // Keep an eye on this as the compiler and standards converge...
-# define ACE_LACKS_LINEBUFFERED_STREAMBUF
-# define ACE_LACKS_PRAGMA_ONCE
-
- // C Set++ 3.1, IBM C/C++ 3.6, and Visual Age C++ 5 batch (__xlC__)
-# if defined (__xlC__)
-# if (__xlC__ < 0x0500)
-# define ACE_LACKS_PLACEMENT_OPERATOR_DELETE
-# endif /* __xlC__ < 0x0500 */
-# endif
-
- // These are for Visual Age C++ only
-# if defined (__IBMCPP__) && (__IBMCPP__ >= 600)
-# define ACE_EXPLICIT_TEMPLATE_DESTRUCTOR_TAKES_ARGS
- // When using -qtempinc, we don't need to see template implementation
- // source (though we do need a pragma to find the correct source file).
- // However, without -qtempinc (either -qnotempinc or -qtemplateregistry)
- // we do need to see the source.
-# if defined (__TEMPINC__)
-# if !defined ACE_TEMPLATES_REQUIRE_PRAGMA
-# define ACE_TEMPLATES_REQUIRE_PRAGMA
-# endif
-# else
-# if !defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-# define ACE_TEMPLATES_REQUIRE_SOURCE
-# endif
-# endif /* __TEMPINC__ */
-
-# undef WIFEXITED
-# undef WEXITSTATUS
-# define ACE_HAS_STANDARD_CPP_LIBRARY 1
-# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-
-# if (__IBMCPP__ >= 600) /* Visual Age 6 and XL C/C++ 7 and up */
-# define ACE_HAS_TEMPLATE_TYPEDEFS
-# define ACE_HAS_CUSTOM_EXPORT_MACROS
-# define ACE_Proper_Export_Flag
-# define ACE_Proper_Import_Flag
-# define ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) extern template class SINGLETON_TYPE < CLASS, LOCK >;
-# endif /* __IBMCPP__ >= 600 */
-# endif /* __IBMCPP__ */
-
-#elif defined (__GNUG__)
- // config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
- // this must appear before its #include.
-# define ACE_HAS_STRING_CLASS
-
-# include "ace/config-g++-common.h"
- // Denotes that GNU has cstring.h as standard, to redefine memchr().
-# define ACE_HAS_GNU_CSTRING_H
-# define ACE_HAS_SSIZE_T
-
-# if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ == 0))
-// We have to explicitly instantiate static template members prior to g++ 4.1
-# define ACE_HAS_EXPLICIT_STATIC_TEMPLATE_MEMBER_INSTANTIATION
-#endif /* g++ prior to 4.1 */
-
-# if !defined (ACE_MT_SAFE) || ACE_MT_SAFE != 0
- // ACE_MT_SAFE is #defined below, for all compilers.
-# if !defined (_REENTRANT)
-# define _REENTRANT
-# endif /* _REENTRANT */
-# endif /* !ACE_MT_SAFE */
-
-#else /* ! __xlC__ && ! __GNUG__ */
-# ifdef __cplusplus /* Let it slide for C compilers. */
-# error unsupported compiler in ace/config-aix-5.x.h
-# endif /* __cplusplus */
-#endif /* ! __xlC__ && ! __GNUG__ */
-
-// Compiling for AIX.
-#ifndef AIX
-# define AIX
-#endif /* AIX */
-
-// Pick up all the detectable settings.
-#include "ace/config-posix.h"
-
-// Regardless of what config-posix.h may indicate, AIX 5.3 is the first
-// to support sem_timedwait(). Prior to that, use the emulation.
-#if defined (ACE_HAS_POSIX_SEM_TIMEOUT) && \
- (defined (ACE_AIX_VERS) && (ACE_AIX_VERS < 503))
-# undef ACE_HAS_POSIX_SEM_TIMEOUT
-#endif /* ACE_HAS_POSIX_SEM_TIMEOUT && ACE_AIX_VERS < 503 */
-
-#if defined (ACE_DLL_SUFFIX)
-# undef ACE_DLL_SUFFIX
-#endif
-#define ACE_DLL_SUFFIX ".so"
-
-#define ACE_DEFAULT_BASE_ADDR ((char *) 0x80000000)
-
-#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
-
-#define ACE_HAS_SOCKLEN_T
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-
-// AIX has AIO, but the functions don't match those of other AIO-enabled
-// platforms. If this is to work, it'll require some significant work,
-// maybe moving the OS-abstraction stuff to an OS_AIO or some such thing.
-//# define ACE_HAS_AIO_CALLS
-
-#define ACE_HAS_AIX_HI_RES_TIMER
-
-// Compiler/platform has correctly prototyped header files.
-#define ACE_HAS_CPLUSPLUS_HEADERS
-
-// Prototypes for both signal() and struct sigaction are consistent.
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-
-// OS has readdir and friends.
-#define ACE_HAS_DIRENT
-
-// OS supports the getrusage() system call
-#define ACE_HAS_GETRUSAGE
-
-#define ACE_HAS_GPERF
-
-#define ACE_HAS_H_ERRNO
-
-#define ACE_LACKS_STDINT_H
-#define ACE_LACKS_SYS_SYSCTL_H
-
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#define ACE_HAS_IP_MULTICAST
-
-// Lacks perfect filtering, must bind group address.
-#if !defined ACE_LACKS_PERFECT_MULTICAST_FILTERING
-# define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
-#endif /* ACE_LACKS_PERFECT_MULTICAST_FILTERING */
-
-#define ACE_HAS_MSG
-
-// Compiler/platform supports poll().
-#define ACE_HAS_POLL
-
-// Platform supports POSIX O_NONBLOCK semantics.
-#define ACE_HAS_POSIX_NONBLOCK
-
-#define ACE_HAS_POSIX_TIME
-// ... but needs to include another header for it on 4.2+
-# define ACE_HAS_BROKEN_POSIX_TIME
-// ... and needs another typedef
-#define ACE_LACKS_TIMESPEC_T
-#define ACE_HAS_SELECT_H
-
-#define ACE_HAS_REENTRANT_FUNCTIONS
-
-// Compiler/platform defines the sig_atomic_t typedef
-#define ACE_HAS_SIG_ATOMIC_T
-#define ACE_HAS_SIGINFO_T
-#define ACE_LACKS_SIGINFO_H
-#define ACE_HAS_P_READ_WRITE
-
-#define ACE_HAS_SIGWAIT
-#define ACE_HAS_SOCKADDR_IN_SIN_LEN
-#define ACE_HAS_STRBUF_T
-
-// Compiler supports stropts.h
-#define ACE_HAS_STREAMS
-// #define ACE_HAS_STREAM_PIPES
-
-// Compiler/platform supports strerror ().
-#define ACE_HAS_STRERROR
-
-// AIX bzero()
-#define ACE_HAS_STRINGS
-
-#define ACE_HAS_STRUCT_NETDB_DATA
-
-// Dynamic linking is in good shape on newer OS/patch levels. If you have
-// trouble with the dynamic linking parts of ACE, and can't patch your OS
-// up to latest levels, comment this out.
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-// This is tightly related to dynamic linking...
-#define ACE_HAS_AUTOMATIC_INIT_FINI
-
-#define ACE_HAS_SVR4_GETTIMEOFDAY
-
-#define ACE_HAS_SYSV_IPC
-#define ACE_HAS_TIMOD_H
-#define ACE_HAS_XTI
-#define ACE_HAS_BROKEN_T_ERROR
-#define ACE_TLI_TCP_DEVICE "/dev/xti/tcp"
-
-#define ACE_HAS_UALARM
-
-#define ACE_HAS_UCONTEXT_T
-
-#define ACE_HAS_UTIME
-
-// Platform has XPG4 wide character type and functions. However, the size
-// of wchar_t changes for 32- vs. 64-bit builds (unsigned short vs. unsigned
-// int, respectively).
-#define ACE_HAS_XPG4_MULTIBYTE_CHAR
-#ifdef __64BIT__
-# define ACE_SIZEOF_WCHAR 4
-#else
-# define ACE_SIZEOF_WCHAR 2
-#endif /* __64BIT__ */
-
-#define ACE_LACKS_NETINET_TCP_H
-
-// AIX uses LIBPATH to search for libraries
-#define ACE_LD_SEARCH_PATH "LIBPATH"
-
-// Defines the page size of the system.
-#define ACE_PAGE_SIZE 4096
-
-//**************************************************************
-//
-// Threads related definitions.
-//
-// The threads on AIX are generally POSIX P1003.1c (ACE_HAS_PTHREADS).
-// However, there is also a kernel thread ID (tid_t) that is used in
-// ACE_Log_Msg (printing the thread ID). The tid_t is not the same as
-// pthread_t, and can't derive one from the other - thread_self() gets
-// the tid_t (kernel thread ID) if called from a thread.
-// Thanks very much to Chris Lahey for straightening this out.
-
-#if defined (ACE_HAS_THREADS)
-# if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-# endif
-
-# define ACE_HAS_PTHREADS
-# define ACE_HAS_PTHREADS_UNIX98_EXT
-# define ACE_HAS_PTHREAD_CONTINUE_NP
-# define ACE_HAS_PTHREAD_SUSPEND_NP
-# define ACE_HAS_RECURSIVE_MUTEXES
-# define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
-# define ACE_HAS_SIGTHREADMASK
-# define ACE_HAS_THREAD_SPECIFIC_STORAGE
-
-# define ACE_LACKS_THREAD_PROCESS_SCOPING
-#else
-# undef ACE_HAS_THREADS
-#endif /* ACE_HAS_THREADS != 0 */
-
-#define ACE_MALLOC_ALIGN 8
-
-#if (defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) >= 500) && !defined(_UNIX95)
-# define ACE_HAS_3_PARAM_WCSTOK
-#endif /* (_XOPEN_SOURCE -0) >= 500 && !_UNIX95 */
-
-#if defined (_ACE_DISABLE_AIO_CALLS_)
-# if defined (ACE_HAS_AIO_CALLS)
-# undef ACE_HAS_AIO_CALLS
-# endif
-# undef _ACE_DISABLE_AIO_CALLS_
-#endif
-
-// AIX's /usr/include/unistd.h sets _POSIX_SEMAPHORE to indicate the system
-// supplies such a facility, but the headers don't enable it unless
-// _XOPEN_SOURCE >= 500. So disable semaphores here if _XOPEN_SOURCE isn't
-// up to snuff.
-#if defined (ACE_HAS_POSIX_SEM) && \
- (!defined (_XOPEN_SOURCE) || (_XOPEN_SOURCE-0 < 500))
-# undef ACE_HAS_POSIX_SEM
-#endif
-
-// I think this is correct, but needs to be verified... -Steve Huston
-#define ACE_HAS_SIGTIMEDWAIT
-
-// AIX 5.1 has netinet/tcp.h
-#undef ACE_LACKS_NETINET_TCP_H
-
-#define ACE_HAS_3_PARAM_READDIR_R
-#define ACE_HAS_POSIX_GETPWNAM_R
-#define ACE_HAS_SCANDIR
-#define ACE_SCANDIR_CMP_USES_VOIDPTR
-#define ACE_SCANDIR_SEL_LACKS_CONST
-#define ACE_HAS_SIGSUSPEND
-#define ACE_HAS_TIMEZONE /* Call tzset() to set timezone */
-
-#endif /* ACE_CONFIG_AIX_5_X_H */
-
diff --git a/dep/include/ace/config-all.h b/dep/include/ace/config-all.h
deleted file mode 100644
index 927bd14919b..00000000000
--- a/dep/include/ace/config-all.h
+++ /dev/null
@@ -1,90 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file config-all.h
- *
- * $Id: config-all.h 81661 2008-05-09 12:05:34Z johnnyw $
- *
- * @author (Originally in OS.h)Doug Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- */
-//==========================================================================
-
-#ifndef ACE_CONFIG_ALL_H
-#define ACE_CONFIG_ALL_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// This is used to indicate that a platform doesn't support a
-// particular feature.
-#if defined ACE_HAS_VERBOSE_NOTSUP
- // Print a console message with the file and line number of the
- // unsupported function.
-# include "ace/OS_NS_stdio.h"
-# define ACE_NOTSUP_RETURN(FAILVALUE) do { errno = ENOTSUP; ACE_OS::fprintf (stderr, ACE_TEXT ("ACE_NOTSUP: %s, line %d\n"), __FILE__, __LINE__); return FAILVALUE; } while (0)
-# define ACE_NOTSUP do { errno = ENOTSUP; ACE_OS::fprintf (stderr, ACE_TEXT ("ACE_NOTSUP: %s, line %d\n"), __FILE__, __LINE__); return; } while (0)
-#else /* ! ACE_HAS_VERBOSE_NOTSUP */
-# define ACE_NOTSUP_RETURN(FAILVALUE) do { errno = ENOTSUP ; return FAILVALUE; } while (0)
-# define ACE_NOTSUP do { errno = ENOTSUP; return; } while (0)
-#endif /* ! ACE_HAS_VERBOSE_NOTSUP */
-
-// ----------------------------------------------------------------
-
-# define ACE_TRACE_IMPL(X) ACE_Trace ____ (ACE_TEXT (X), __LINE__, ACE_TEXT (__FILE__))
-
-// By default tracing is turned off.
-#if !defined (ACE_NTRACE)
-# define ACE_NTRACE 1
-#endif /* ACE_NTRACE */
-
-#if (ACE_NTRACE == 1)
-# define ACE_TRACE(X)
-#else
-# if !defined (ACE_HAS_TRACE)
-# define ACE_HAS_TRACE
-# endif /* ACE_HAS_TRACE */
-# define ACE_TRACE(X) ACE_TRACE_IMPL(X)
-# include "ace/Trace.h"
-#endif /* ACE_NTRACE */
-
-// By default we perform no tracing on the OS layer, otherwise the
-// coupling between the OS layer and Log_Msg is too tight. But the
-// application can override the default if they wish to.
-#if !defined (ACE_OS_NTRACE)
-# define ACE_OS_NTRACE 1
-#endif /* ACE_OS_NTRACE */
-
-#if (ACE_OS_NTRACE == 1)
-# define ACE_OS_TRACE(X)
-#else
-# if !defined (ACE_HAS_TRACE)
-# define ACE_HAS_TRACE
-# endif /* ACE_HAS_TRACE */
-# define ACE_OS_TRACE(X) ACE_TRACE_IMPL(X)
-# include "ace/Trace.h"
-#endif /* ACE_OS_NTRACE */
-
-#if !defined (ACE_HAS_MONITOR_FRAMEWORK)
-# define ACE_HAS_MONITOR_FRAMEWORK 1
-#endif
-
-#if !defined (ACE_HAS_MONITOR_POINTS)
-# define ACE_HAS_MONITOR_POINTS 0
-#endif
-
-// These includes are here to avoid circular dependencies.
-// Keep this at the bottom of the file. It contains the main macros.
-#include "ace/OS_main.h"
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CONFIG_ALL_H */
-
diff --git a/dep/include/ace/config-borland-common.h b/dep/include/ace/config-borland-common.h
deleted file mode 100644
index 5c80c872ad7..00000000000
--- a/dep/include/ace/config-borland-common.h
+++ /dev/null
@@ -1,67 +0,0 @@
-// -*- C++ -*-
-//$Id: config-borland-common.h 82294 2008-07-12 13:03:37Z johnnyw $
-
-// The following configuration file contains defines for Borland compilers.
-
-#ifndef ACE_CONFIG_BORLAND_COMMON_H
-#define ACE_CONFIG_BORLAND_COMMON_H
-#include /**/ "ace/pre.h"
-
-#define ACE_HAS_CUSTOM_EXPORT_MACROS
-#define ACE_Proper_Export_Flag __declspec (dllexport)
-#define ACE_Proper_Import_Flag __declspec (dllimport)
-#define ACE_EXPORT_SINGLETON_DECLARATION(T) template class __declspec (dllexport) T
-#define ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) template class __declspec (dllexport) SINGLETON_TYPE<CLASS, LOCK>;
-#define ACE_IMPORT_SINGLETON_DECLARATION(T) template class __declspec (dllimport) T
-#define ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) template class __declspec (dllimport) SINGLETON_TYPE <CLASS, LOCK>;
-
-// In later versions of C++Builder we will prefer inline functions by
-// default. The debug configuration of ACE is built with functions
-// out-of-line, so when linking your application against a debug ACE
-// build, you can choose to use the out-of-line functions by adding
-// ACE_NO_INLINE=1 to your project settings.
-# if !defined (__ACE_INLINE__)
-# define __ACE_INLINE__ 1
-# endif /* __ACE_INLINE__ */
-
-# define ACE_CC_NAME ACE_TEXT ("Borland C++ Builder")
-# define ACE_CC_MAJOR_VERSION (__BORLANDC__ / 0x100)
-# define ACE_CC_MINOR_VERSION (__BORLANDC__ % 0x100)
-# define ACE_CC_BETA_VERSION (0)
-
-# ifndef ACE_USING_MCPP_PREPROCESSOR
-# define ACE_CC_PREPROCESSOR_ARGS "-q -P- -o%s"
-# endif
-
-# define ACE_EXPORT_NESTED_CLASSES 1
-# define ACE_HAS_CPLUSPLUS_HEADERS 1
-# define ACE_HAS_EXCEPTIONS
-# define ACE_HAS_GNU_CSTRING_H 1
-# define ACE_HAS_NONCONST_SELECT_TIMEVAL
-# define ACE_HAS_SIG_ATOMIC_T
-# define ACE_HAS_STANDARD_CPP_LIBRARY 1
-# define ACE_HAS_STDCPP_STL_INCLUDES 1
-# define ACE_HAS_STRERROR
-# define ACE_HAS_STRING_CLASS 1
-# define ACE_HAS_TEMPLATE_TYPEDEFS 1
-# define ACE_HAS_USER_MODE_MASKS 1
-# define ACE_LACKS_ACE_IOSTREAM 1
-# define ACE_LACKS_LINEBUFFERED_STREAMBUF 1
-# define ACE_LACKS_STRPTIME 1
-# if (__BORLANDC__ < 0x590)
-# define ACE_LACKS_PLACEMENT_OPERATOR_DELETE 1
-# endif
-# define ACE_LACKS_PRAGMA_ONCE 1
-# define ACE_HAS_NEW_NOTHROW
-# define ACE_TEMPLATES_REQUIRE_SOURCE 1
-# define ACE_SIZEOF_LONG_DOUBLE 10
-# define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%Lu")
-# define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%Ld")
-# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-# define ACE_USES_STD_NAMESPACE_FOR_STDC_LIB 0
-# define ACE_ENDTHREADEX(STATUS) ::_endthreadex ((DWORD) STATUS)
-# define ACE_LACKS_SWAB
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_BORLAND_COMMON_H */
-
diff --git a/dep/include/ace/config-cray.h b/dep/include/ace/config-cray.h
deleted file mode 100644
index 87fe263503d..00000000000
--- a/dep/include/ace/config-cray.h
+++ /dev/null
@@ -1,214 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-cray.h 81935 2008-06-12 22:01:53Z jtc $
-
-#ifndef ACE_CONFIG_CRAY_H
-#define ACE_CONFIG_CRAY_H
-#include /**/ "ace/pre.h"
-
-/*
- The following predefined macros are used within ACE ifdefs.
- These are defined when using the Cray compilers. _CRAYMPP
- is defined, for example, if you are running on a Cray T3E
- massively parallel machine. Moreover, in the case of the T3E,
- _CRAYT3E will be defined. This is used to determine the
- ACE_SIZEOF defines for primitive types.
-
- _UNICOS is defined as either the major version of UNICOS being run,
- e.g. 9 or 10 on the vector machines (e.g. C90, T90, J90, YMP, ...)
- or the major+minor+level UNICOS/mk version, e.g. 2.0.3 => 203,
- being run on an MPP machine.
-
- Summary:
-
- _CRAYMPP (defined only if running on MPP machine, e.g. T3E, UNICOS/mk)
- _CRAYT3E (defined specifically if compiling on a Cray T3E)
- _UNICOS (defined if running UNICOS or UNICOS/mk)
-
- Tested on UNICOS 10.0.0.5, UNICOS/mk 2.0.4.57
- Compiles on UNICOS 9.0.2.8, but some tests deadlock
-
- Contributed by Doug Anderson <dla@home.com>
-*/
-
-#if defined (_UNICOS) && !defined (MAXPATHLEN)
-#define MAXPATHLEN 1023
-#endif /* _UNICOS */
-
-#define ACE_DEFAULT_CLOSE_ALL_HANDLES 0
-
-// Defines the page size of the system.
-#define ACE_PAGE_SIZE 4096
-
-#define ACE_HAS_CPLUSPLUS_HEADERS
-
-#define ACE_HAS_SSIZE_T
-
-#define ACE_HAS_SYSV_IPC
-
-#define ACE_MT_SAFE 1
-
-#define ACE_HAS_THREADS
-
-#define ACE_HAS_PTHREADS
-
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE
-
-#define ACE_HAS_PTHREAD_MUTEXATTR_SETKIND_NP
-
-#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
-
-#define ACE_HAS_POSIX_TIME
-
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
-
-#define ACE_HAS_POSIX_NONBLOCK
-
-// Platform has POSIX terminal interface.
-#define ACE_HAS_TERMIOS
-
-#define ACE_HAS_DIRENT
-
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-
-#define ACE_HAS_IP_MULTICAST
-
-#define ACE_HAS_SOCKADDR_IN_SIN_LEN
-
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-
-#define ACE_HAS_NONCONST_READLINK
-
-#define ACE_HAS_CHARPTR_SOCKOPT
-
-#define ACE_HAS_NONCONST_GETBY
-
-// has man pages, but links with missing symbols and I can't find lib yet
-/* #define ACE_HAS_REGEX */
-
-#define ACE_HAS_SIG_MACROS
-
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-
-#if _UNICOS > 9
-# define ACE_HAS_SIGWAIT
-#endif
-
-#define ACE_HAS_SIG_ATOMIC_T
-
-#define ACE_HAS_SIGISMEMBER_BUG
-
-#define ACE_HAS_MSG
-
-#define ACE_HAS_STRERROR
-
-#define ACE_HAS_GPERF
-
-// Special modifications that apply to UNICOS/mk
-#if defined(_CRAYMPP)
-
-# define ACE_HAS_SIGINFO_T
-# define ACE_HAS_UCONTEXT_T
-
-#endif
-
-// The Cray T90 supposedly supports SYSV SHMEM, but I was unable to get it
-// working. Of course, all other Cray PVP and MPP systems do NOT support it,
-// so it's probably good to just define like this for consistency
-#define ACE_LACKS_SYSV_SHMEM
-#define ACE_LACKS_MMAP
-#define ACE_LACKS_CONST_TIMESPEC_PTR
-#define ACE_LACKS_SYSCALL
-#define ACE_LACKS_STRRECVFD
-#define ACE_LACKS_MADVISE
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-#define ACE_LACKS_LINEBUFFERED_STREAMBUF
-#define ACE_LACKS_PTHREAD_CLEANUP
-#define ACE_LACKS_CONDATTR_PSHARED
-#define ACE_LACKS_THREAD_PROCESS_SCOPING
-
-#if !defined(_CRAYMPP)
-
-#define ACE_LACKS_PTHREAD_CANCEL
-#define ACE_LACKS_PTHREAD_KILL
-
-#endif
-
-#define ACE_LACKS_MUTEXATTR_PSHARED
-#define ACE_LACKS_RWLOCK_T
-#define ACE_LACKS_PRI_T
-#define ACE_LACKS_GETPGID
-#define ACE_LACKS_SETPGID
-#define ACE_LACKS_SETREGID
-#define ACE_LACKS_SETREUID
-#define ACE_LACKS_MPROTECT
-#define ACE_LACKS_MSYNC
-#define ACE_LACKS_READV
-#define ACE_LACKS_RLIMIT
-
-// we probably want to fake not having this, since Cray memory mgmt is different
-#define ACE_LACKS_SBRK
-
-#define ACE_LACKS_SETSCHED
-
-#define ACE_LACKS_SIGINFO_H
-
-#define ACE_LACKS_TIMESPEC_T
-
-#define ACE_LACKS_WRITEV
-
-// Cray vector machines are "word" oriented, and modern ones are hard 64-bit.
-// "char" is somewhat of a special case. Most problems arise when code thinks
-// it can address 32-bit quantities and the like. MPP crays are typically
-// byte oriented, e.g. T3E uses Alpha processors, so we don't need as much
-// special treatment.
-
-#ifndef _CRAYMPP
-
-# define ACE_SIZEOF_CHAR 1
-# define ACE_SIZEOF_SHORT 8
-# define ACE_SIZEOF_INT 8
-# define ACE_SIZEOF_LONG 8
-# define ACE_SIZEOF_LONG_LONG 8
-# define ACE_SIZEOF_FLOAT 8
-# define ACE_SIZEOF_DOUBLE 8
-# define ACE_SIZEOF_LONG_DOUBLE 16
-# define ACE_SIZEOF_VOID_P 8
-
-#elif defined(_CRAYT3E)
-
-# define ACE_SIZEOF_CHAR 1
-# define ACE_SIZEOF_SHORT 4
-# define ACE_SIZEOF_INT 8
-# define ACE_SIZEOF_LONG 8
-# define ACE_SIZEOF_LONG_LONG 8
-# define ACE_SIZEOF_FLOAT 4
-# define ACE_SIZEOF_DOUBLE 8
-# define ACE_SIZEOF_LONG_DOUBLE 8
-# define ACE_SIZEOF_VOID_P 8
-
-#endif
-
-// Ones to check out at some point
-
-/* #define ACE_HAS_SYS_SIGLIST */
-
-// C++ Compiler stuff to verify
-/* #define ACE_NEW_THROWS_EXCEPTIONS */
-/* #define ACE_HAS_TEMPLATE_TYPEDEFS */
-
-// thread issues to check out
-/* #define ACE_LACKS_TIMEDWAIT_PROTOTYPES */
-
-// Cray does seem to support it, in -lnsl and has tiuser.h header
-/* #define ACE_HAS_TLI */
-/* #define ACE_HAS_TIUSER_H */
-/* #define ACE_HAS_TLI_PROTOTYPES */
-/* #define ACE_LACKS_T_ERRNO */
-
-/* #define ACE_LACKS_NAMED_POSIX_SEM */
-
-/* #define ACE_HAS_SYS_ERRLIST */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_CRAY_H */
-
diff --git a/dep/include/ace/config-cxx-common.h b/dep/include/ace/config-cxx-common.h
deleted file mode 100644
index 6d467d64964..00000000000
--- a/dep/include/ace/config-cxx-common.h
+++ /dev/null
@@ -1,87 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: config-cxx-common.h 81935 2008-06-12 22:01:53Z jtc $
-
-#ifndef ACE_CXX_COMMON_H
-#define ACE_CXX_COMMON_H
-#include /**/ "ace/pre.h"
-
-#if !defined (ACE_CONFIG_INCLUDE_CXX_COMMON)
-# error ace/config-cxx-common.h: ACE configuration error! Do not #include this file directly!
-#endif
-
-#if defined (__DECCXX)
-# if !defined (linux)
-# define ACE_HAS_STRING_CLASS
-# if (__DECCXX_VER >= 60090010)
-# define ACE_HAS_STDCPP_STL_INCLUDES
-# endif /* __DECCXX_VER < 60090010 */
-# endif /* ! linux */
-
-# define DEC_CXX
-# define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
-# define ACE_LACKS_LINEBUFFERED_STREAMBUF
-# define ACE_LACKS_SIGNED_CHAR
-# define ACE_HAS_CPLUSPLUS_HEADERS
-# define ACE_TEMPLATES_REQUIRE_SOURCE
-# if (__DECCXX_VER >= 60090010)
- // DEC CXX 6.0 supports exceptions, etc., by default. Exceptions
- // are enabled by platform_osf1_4.x.GNU/wrapper_macros.GNU.
-# if defined (ACE_HAS_EXCEPTIONS)
-# define ACE_NEW_THROWS_EXCEPTIONS
-# endif /* ACE_HAS_EXCEPTIONS */
-# define ACE_HAS_STANDARD_CPP_LIBRARY 1
-# define ACE_HAS_TEMPLATE_TYPEDEFS
-
-# define ACE_ENDLESS_LOOP \
- unsigned int ace_endless_loop____ = 0; if (ace_endless_loop____) break;
-
-# if defined (__USE_STD_IOSTREAM)
-# define ACE_LACKS_CHAR_RIGHT_SHIFTS
-# define ACE_LACKS_IOSTREAM_FX
-# define ACE_LACKS_UNBUFFERED_STREAMBUF
-# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-# else /* ! __USE_STD_IOSTREAM */
-# define ACE_USES_OLD_IOSTREAMS
-# endif /* ! __USE_STD_IOSTREAM */
-
-// 9: nested comment not allowed. (/usr/include/pdsc.h!) (nestcomment)
-// 177: variable was declared but never referenced (declbutnotref)
-// 193: zero used for undefined preprocessing identifier (undpreid)
-// 236: controlling expression is constant (boolexprconst)
-// 401: base_class_with_nonvirtual_dtor (basclsnondto)
-// 1016: expected type is incompatible with declared type of int (incint)
-// 1136: conversion to smaller size integer could lose data (intconlosbit)
-
-# pragma message disable basclsnondto
-# pragma message disable boolexprconst
-# pragma message disable undpreid
-# pragma message disable notusetmpfunprm
-# pragma message disable bltinclnk
-
-# if (__DECCXX_VER >= 60190029)
- // 6.1-029 and later support msg 1136. Disable it because it
- // causes warnings from ACE and/or TAO.
-# pragma message disable intconlosbit
-# endif /* __DECCXX_VER >= 60190029 */
-
-# if (__DECCXX_VER == 60190027)
- // Seems that this version of cxx doesn't have reset
-# define ACE_AUTO_PTR_LACKS_RESET
-# endif /* __DECCXX_VER == 60190027 */
-
-# if defined (DIGITAL_UNIX) && DIGITAL_UNIX >= 0x40D
- // variable "PTHREAD_THIS_CATCH_NP" was declared but never referenced
-# pragma message disable declbutnotref
-# endif /* DIGITAL_UNIX >= 4.0f */
-
-# else /* __DECCXX_VER < 60090010 */
-# define ACE_LACKS_PRAGMA_ONCE
-# endif /* __DECCXX_VER < 60090010 */
-#else /* ! __DECCXX */
-# error ace/config-cxx-common.h can only be used with Compaq CXX!
-#endif /* ! __DECCXX */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CXX_COMMON_H */
-
diff --git a/dep/include/ace/config-cygwin32.h b/dep/include/ace/config-cygwin32.h
deleted file mode 100644
index e6683e29795..00000000000
--- a/dep/include/ace/config-cygwin32.h
+++ /dev/null
@@ -1,207 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-cygwin32.h 81809 2008-05-30 13:40:21Z vzykov $
-
-// The following configuration file is designed to work for CygWin
-// platforms using GNU C++.
-
-#ifndef ACE_CONFIG_CYGWIN32_H
-#define ACE_CONFIG_CYGWIN32_H
-
-#include /**/ "ace/pre.h"
-
-#if !defined (ACE_MT_SAFE)
-#define ACE_MT_SAFE 1
-#endif
-
-#define CYGWIN32
-
-// We trust this file will get included before <sys/types.h>
-#if !defined(FD_SETSIZE)
-# define FD_SETSIZE 1024
-#endif
-
-#if !defined (ACE_IOV_MAX)
-# define ACE_IOV_MAX 64
-#endif /* ACE_IOV_MAX */
-
-// Define custom export macros for export/import of symbols from/of dll's
-#define ACE_HAS_CUSTOM_EXPORT_MACROS
-#define ACE_Proper_Export_Flag __declspec (dllexport)
-#define ACE_Proper_Import_Flag __declspec (dllimport)
-#define ACE_EXPORT_SINGLETON_DECLARATION(T) template class __declspec (dllexport) T
-#define ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) template class __declspec (dllexport) SINGLETON_TYPE<CLASS, LOCK>;
-#define ACE_IMPORT_SINGLETON_DECLARATION(T) extern template class T
-#define ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) extern template class SINGLETON_TYPE <CLASS, LOCK>;
-
-#define ACE_HAS_SELECT_H
-
-#define ACE_LACKS_PRAGMA_ONCE
-
-#if ! defined (__ACE_INLINE__)
-# define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-#include /**/ <cygwin/version.h>
-
-// Needed to differentiate between libc 5 and libc 6 (aka glibc).
-// It's there on all libc 5 systems I checked.
-#include /**/ <features.h>
-
-// config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
-// this must appear before its #include.
-#define ACE_HAS_STRING_CLASS
-
-#if defined (__GNUG__)
-# include "ace/config-g++-common.h"
-#else
-# ifdef __cplusplus /* Let it slide for C compilers. */
-# error unsupported compiler in ace/config-cygwin32.h
-# endif /* __cplusplus */
-#endif /* __GNUG__ */
-
-#define ACE_HAS_VOIDPTR_SOCKOPT 1
-#define ACE_HAS_UALARM 1
-#define ACE_HAS_SYS_ERRLIST 1
-#define ACE_HAS_STRNLEN 1
-#define ACE_HAS_POSIX_GETPWNAM_R 1
-#define ACE_HAS_POSIX_NONBLOCK 1
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_CLOCK_GETTIME 1
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
-#define ACE_HAS_MSG
-#define ACE_DEFAULT_BASE_ADDR ((char *) 0x8000000)
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-//#define ACE_HAS_SYSV_IPC
-#define ACE_HAS_VOIDPTR_MMAP
-#define ACE_HAS_CPLUSPLUS_HEADERS
-#define ACE_HAS_POLL
-#define ACE_HAS_POSITION_INDEPENDENT_POINTERS 1
-#define ACE_HAS_SOCKADDR_MSG_NAME 1
-#define ACE_LACKS_PRI_T 1
-#define ACE_HAS_3_PARAM_READDIR_R
-
-// Compiler/platform supports alloca().
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you want ACE to use it.
-//#define ACE_HAS_ALLOCA
-
-// Compiler/platform has the getrusage() system call.
-#define ACE_HAS_GETRUSAGE
-
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-
-// Optimize ACE_Handle_Set for select().
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-
-#define ACE_HAS_IP_MULTICAST
-
-#define ACE_HAS_BIG_FD_SET
-
-// Platform has POSIX terminal interface.
-#define ACE_HAS_TERMIOS
-
-#define ACE_DEFAULT_MAX_SOCKET_BUFSIZ 65535
-
-#define ACE_DEFAULT_SELECT_REACTOR_SIZE 256
-
-#define ACE_HAS_GETPAGESIZE
-
-#define ACE_HAS_VOIDPTR_GETTIMEOFDAY
-
-// Compiler/platform supports strerror ().
-#define ACE_HAS_STRERROR
-
-// Compiler supports the ssize_t typedef.
-#define ACE_HAS_SSIZE_T
-
-#define ACE_HAS_SOCKLEN_T 1
-
-#define ACE_HAS_GPERF
-
-#define ACE_HAS_DIRENT
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-
-#define ACE_LACKS_MKFIFO
-#define ACE_LACKS_SIGINFO_H
-#define ACE_LACKS_UCONTEXT_H
-#define ACE_LACKS_STROPTS_H
-#define ACE_LACKS_FGETWC 1
-#define ACE_LACKS_NAMED_POSIX_SEM
-#define ACE_LACKS_STRRECVFD
-#define ACE_LACKS_MADVISE
-#define ACE_LACKS_GETPGID_PROTOTYPE
-#define ACE_LACKS_GETHOSTENT
-#define ACE_LACKS_ITOW 1
-#define ACE_LACKS_LINEBUFFERED_STREAMBUF 1
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS 1
-#define ACE_LACKS_RLIMIT
-#define ACE_LACKS_RWLOCK_T 1
-#define ACE_LACKS_SUSECONDS_T
-#define ACE_LACKS_SYS_SYSCTL_H
-
-#define ACE_LACKS_FGETWS 1
-#define ACE_LACKS_FPUTWS 1
-
-#define ACE_LACKS_WCSTOULL 1
-
-#define ACE_HAS_AUTOMATIC_INIT_FINI
-
-#define ACE_HAS_SIGWAIT
-#define ACE_HAS_SIGINFO_T
-#define ACE_HAS_SIGACTION_CONSTP2
-#define ACE_HAS_SIGSUSPEND
-#define ACE_HAS_SIG_C_FUNC 1
-#define ACE_HAS_SIG_ATOMIC_T
-
-#define ACE_HAS_POSIX_SEM
-
-#define ACE_HAS_P_READ_WRITE
-
-#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
-
-// Cygwin DLL suffix is .dll
-#define ACE_DLL_SUFFIX ACE_TEXT (".dll")
-
-// Cygwin runs on Windows, so we have to get the environment variable PATH and
-// not LD_LIBRARY_PATH which is the default in ACE
-#define ACE_LD_SEARCH_PATH ACE_TEXT ("PATH")
-
-#if ACE_MT_SAFE
-// Yes, we do have threads.
-# define ACE_HAS_THREADS
-// And they're even POSIX pthreads (LinuxThreads implementation)
-# define ACE_HAS_PTHREADS
-
-# define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
-
-// Compiler/platform has thread-specific storage
-# define ACE_HAS_THREAD_SPECIFIC_STORAGE
-
-# define ACE_HAS_PTHREADS_UNIX98_EXT
-# define ACE_HAS_PTHREAD_CONTINUE 1
-# define ACE_HAS_PTHREAD_SUSPEND 1
-
-# define ACE_LACKS_PTHREAD_ATTR_SETSTACKADDR
-// Cygwin (see pthread.h): Not supported or implemented.
-# define ACE_LACKS_SETSCHED
-# define ACE_LACKS_SETDETACH
-# define ACE_LACKS_PTHREAD_CANCEL
-# define ACE_LACKS_THREAD_PROCESS_SCOPING
-# define ACE_LACKS_MUTEXATTR_PSHARED
-# define ACE_LACKS_RWLOCKATTR_PSHARED
-# define ACE_LACKS_PTHREAD_THR_SIGSETMASK 1
-# define ACE_LACKS_PTHREAD_YIELD 1
-# define ACE_LACKS_PTHREAD_ATTR_SETSTACK
-
-// In the 1.5.9 release of Cygwin the pthread_kill gives an access violation
-// so for the time being we say Cygwin doesn't support pthread_kill.
-# define ACE_LACKS_PTHREAD_KILL
-
-#endif /* ACE_MT_SAFE */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CONFIG_CYGWIN32_H */
-
diff --git a/dep/include/ace/config-doxygen.h b/dep/include/ace/config-doxygen.h
deleted file mode 100644
index d4e8a068e43..00000000000
--- a/dep/include/ace/config-doxygen.h
+++ /dev/null
@@ -1,121 +0,0 @@
-// -*- C++ -*-
-
-/**
- * This is a configuration file to define all the macros that Doxygen
- * needs
- *
- * @file config-doxygen.h
- *
- * $Id: config-doxygen.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Carlos O'Ryan <coryan@uci.edu>
- * @author Darrell Brunsch <brunsch@uci.edu>
- *
- */
-#ifndef ACE_CONFIG_DOXYGEN_H
-#define ACE_CONFIG_DOXYGEN_H
-
-/// Make sure that we always turn inlining on.
-#define __ACE_INLINE__
-
-/// Make the wchar_t interfaces available.
-#define ACE_HAS_WCHAR
-
-/// Make all the emulation versions of string operations visible
-// #define ACE_LACKS_WCSTOK
-#define ACE_LACKS_ITOW
-#define ACE_LACKS_STRCASECMP
-#define ACE_LACKS_STRRCHR
-#define ACE_LACKS_WCSCAT
-#define ACE_LACKS_WCSCHR
-#define ACE_LACKS_WCSCMP
-#define ACE_LACKS_WCSCPY
-#define ACE_LACKS_WCSICMP
-#define ACE_LACKS_WCSLEN
-#define ACE_LACKS_WCSNCAT
-#define ACE_LACKS_WCSNCMP
-#define ACE_LACKS_WCSNCPY
-#define ACE_LACKS_WCSNICMP
-#define ACE_LACKS_WCSPBRK
-#define ACE_LACKS_WCSRCHR
-#define ACE_LACKS_WCSCSPN
-#define ACE_LACKS_WCSSPN
-#define ACE_LACKS_WCSSTR
-
-/// Support for threads enables several important classes
-#define ACE_HAS_THREADS
-
-/// Support for Win32 enables the WFMO_Reactor and several Async I/O
-/// classes
-#define ACE_WIN32
-
-/// Enable support for POSIX Asynchronous I/O calls
-#define ACE_HAS_AIO_CALLS
-
-/// Enable support for TLI interfaces
-#define ACE_HAS_TLI
-
-/// Enable support for the SSL wrappers
-#define ACE_HAS_SSL 1
-
-/// Enable exceptions
-#define ACE_HAS_EXCEPTIONS
-
-/// Enable timeprobes
-#define ACE_COMPILE_TIMEPROBES
-
-/// Enable unicode to generate ACE_Registry_Name_Space
-#define UNICODE
-
-/// These defines make sure that Svc_Conf_y.cpp and Svc_Conf_l.cpp are correctly
-/// parsed
-#define __cplusplus
-#define ACE_YY_USE_PROTOS
-
-/// TAO features that should be documented too
-#define TAO_HAS_RT_CORBA 1
-#define TAO_HAS_MINIMUM_CORBA 0
-#define TAO_HAS_AMI 1
-#define TAO_HAS_INTERCEPTORS 1
-#define TAO_HAS_SCIOP 1
-#define TAO_HAS_COIOP 1
-#define TAO_HAS_TRANSPORT_CURRENT 1
-
-/// Generate token library documentation
-#define ACE_HAS_TOKENS_LIBRARY
-
-/// Generate ACE ATM classes documentation
-#define ACE_HAS_ATM
-
-/// Generate ACE XTI ATM class documentation
-#define ACE_HAS_XTI_ATM
-
-/// Generate ACE_Dev_Poll_Reactor documentation
-#define ACE_HAS_DEV_POLL
-
-/// Generate ACE_Event_Handler_T documentation
-#define ACE_HAS_TEMPLATE_TYPEDEFS
-
-/// Generate ACE_Log_Msg_NT_Event_Log documentation
-#define ACE_HAS_LOG_MSG_NT_EVENT_LOG
-
-/// Generate icmp documentation
-#define ACE_HAS_ICMP_SUPPORT 1
-
-/// Don't expand ACE_RCSID macro
-#define ACE_USE_RCSID 0
-
-/// Parse some ACE_SSL classes that depend on recent versions of
-/// OpenSSL.
-#define OPENSSL_VERSION_NUMBER 0x00905820L
-
-/// Enable IPv6
-#define ACE_HAS_IPV6
-
-/// Enable netlink socket support
-#define ACE_HAS_NETLINK
-
-#define ACE_HAS_IP_MULTICAST
-
-#endif /* ACE_CONFIG_DOXYGEN_H */
-
diff --git a/dep/include/ace/config-freebsd.h b/dep/include/ace/config-freebsd.h
deleted file mode 100644
index 6f4c5750f98..00000000000
--- a/dep/include/ace/config-freebsd.h
+++ /dev/null
@@ -1,284 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-freebsd.h 80826 2008-03-04 14:51:23Z wotte $
-
-// The following configuration file is designed to work for FreeBSD
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-#include /**/ "ace/pre.h"
-
-#if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-#endif
-
-#if ACE_MT_SAFE
- // Yes, we do have threads.
-# define ACE_HAS_THREADS 1
-#else
- // Set to 0 since that's what config-posix.h checks for.
-# define ACE_HAS_THREADS 0
-#endif /* ACE_MT_SAFE */
-
-#include "ace/config-posix.h"
-
-#include <osreldate.h>
-// Make sure we source in the OS version.
-
-#if ! defined (__ACE_INLINE__)
-#define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-#if (__FreeBSD_version < 220000)
-#if defined (ACE_HAS_THREADS)
-#error Threads are not supported.
-#endif /* ACE_HAS_THREADS */
-#endif /* __FreeBSD_version < 220000 */
-
-#if defined (__GNUG__)
-# include "ace/config-g++-common.h"
-#endif /* __GNUG__ */
-
-#if defined (ACE_HAS_PENTIUM)
-# undef ACE_HAS_PENTIUM
-#endif /* ACE_HAS_PENTIUM */
-
-// Platform specific directives
-// gcc defines __FreeBSD__ automatically for us.
-#ifdef ACE_HAS_THREADS
-#if !defined (_THREAD_SAFE)
-#define _THREAD_SAFE
-#endif /* _THREAD_SAFE */
-#endif
-
-#define ACE_HAS_GPERF
-
-#if (__FreeBSD_version < 420000)
-#define ACE_LACKS_GETPGID
-#define ACE_LACKS_SETPGID
-#define ACE_LACKS_SETREGID
-#define ACE_LACKS_SETREUID
-#define ACE_LACKS_PTHREAD_CANCEL
-#endif /* __FreeBSD_version < 420000 */
-
-#define ACE_HAS_ALT_CUSERID
-#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
-#define ACE_HAS_SIG_MACROS
-// Optimize ACE_Handle_Set for select().
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#define ACE_HAS_CHARPTR_DL
-
-#if (__FreeBSD_version < 400000)
-#define ACE_LACKS_SIGSET
-#define ACE_LACKS_RWLOCK_T
-#define ACE_LACKS_READDIR_R
-#define ACE_LACKS_SETSCHED
-#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
-#define ACE_LACKS_UCONTEXT_H
-#define ACE_LACKS_RAND_REENTRANT_FUNCTIONS
-#endif
-
-#define ACE_NEEDS_SCHED_H
-
-#if (__FreeBSD_version < 400000)
-enum schedparam_policy {
- SCHED_RR,
- SCHED_IO,
- SCHED_FIFO,
- SCHED_OTHER
-};
-#endif
-
-// Use of <malloc.h> is deprecated.
-#define ACE_LACKS_MALLOC_H
-
-// This won't be necessary after it is fixed in the system include headers.
-extern "C" { char * cuserid (char *s); }
-
-// Platform supports POSIX timers via struct timespec.
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_UALARM
-
-// Platform defines struct timespec but not timespec_t
-#define ACE_LACKS_TIMESPEC_T
-
-#if (__FreeBSD_version < 501000)
-#define ACE_LACKS_STDINT_H
-#endif
-
-#define ACE_HAS_SYSCTL
-#define ACE_LACKS_STRRECVFD
-
-#define ACE_HAS_SOCKADDR_IN_SIN_LEN
-#define ACE_HAS_SOCKADDR_IN6_SIN6_LEN
-
-// Platform supports System V IPC (most versions of UNIX, but not Win32)
-#define ACE_HAS_SYSV_IPC
-
-// Compiler/platform contains the <sys/syscall.h> file.
-#define ACE_HAS_SYS_SYSCALL_H
-
-#if (__FreeBSD_version >= 220000)
-#define ACE_HAS_VASPRINTF
-#endif
-
-#if (__FreeBSD_version >= 300000)
-#define ACE_HAS_SIGINFO_T
-#endif /* __FreeBSD_version >= 300000 */
-
-#if (__FreeBSD_version >= 320000)
-#define ACE_HAS_REENTRANT_FUNCTIONS
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
-#endif /* __FreeBSD_version >= 320000 */
-
-#if (__FreeBSD_version >= 440000)
-#define ACE_HAS_GETPROGNAME
-#define ACE_HAS_SETPROGNAME
-#endif
-
-#if (__FreeBSD_version < 501000)
-#define ACE_LACKS_PWD_REENTRANT_FUNCTIONS
-#endif
-
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-#define ACE_LACKS_SIGINFO_H
-#define ACE_LACKS_LOG2
-#define ACE_LACKS_SI_ADDR
-
-// Compiler/platform supports SVR4 signal typedef
-#define ACE_HAS_SVR4_SIGNAL_T
-
-// Compiler/platform supports alloca().
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//#define ACE_HAS_ALLOCA
-
-// Compiler/platform supports SVR4 dynamic linking semantics..
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-
-// Compiler/platform correctly calls init()/fini() for shared libraries.
-#define ACE_HAS_AUTOMATIC_INIT_FINI
-
-// Explicit dynamic linking permits "lazy" symbol resolution
-#define ACE_HAS_RTLD_LAZY_V
-
-// platform supports POSIX O_NONBLOCK semantics
-#define ACE_HAS_POSIX_NONBLOCK
-
-// platform supports IP multicast
-#define ACE_HAS_IP_MULTICAST
-
-// Lacks perfect filtering, must bind group address.
-#if !defined ACE_LACKS_PERFECT_MULTICAST_FILTERING
-# define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
-#endif /* ACE_LACKS_PERFECT_MULTICAST_FILTERING */
-
-// Compiler/platform has <alloca.h>
-//#define ACE_HAS_ALLOCA_H
-
-// Compiler/platform has the getrusage() system call.
-#define ACE_HAS_GETRUSAGE
-
-// Compiler/platform defines the sig_atomic_t typedef.
-#define ACE_HAS_SIG_ATOMIC_T
-
-// Compiler/platform supports sys_siglist array.
-// *** This refers to (_sys_siglist) instead of (sys_siglist)
-// #define ACE_HAS_SYS_SIGLIST
-
-// Compiler/platform defines a union semun for SysV shared memory.
-#define ACE_HAS_SEMUN
-
-// Compiler supports the ssize_t typedef.
-#define ACE_HAS_SSIZE_T
-
-// Compiler/platform supports strerror ().
-#define ACE_HAS_STRERROR
-
-// Compiler/platform provides the sockio.h file.
-#define ACE_HAS_SYS_SOCKIO_H
-
-// Defines the page size of the system.
-#define ACE_PAGE_SIZE 4096
-
-// Platform provides <sys/filio.h> header.
-#define ACE_HAS_SYS_FILIO_H
-
-// Platform/compiler supports timezone * as second parameter to gettimeofday().
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
-
-#define ACE_HAS_MSG
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-
-#if (__FreeBSD_version < 500100)
-# define ACE_HAS_NONCONST_MSGSND
-#endif
-
-// Thread specific settings
-// Yes, we do have threads.
-#ifdef ACE_HAS_THREADS
-#if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-#endif /* ! ACE_MT_SAFE */
-#endif /* ACE_HAS_THREADS */
-
-#define ACE_LACKS_THREAD_PROCESS_SCOPING
-#define ACE_LACKS_CONDATTR_PSHARED
-#define ACE_LACKS_MUTEXATTR_PSHARED
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE
-#define ACE_HAS_DIRENT
-
-#define ACE_HAS_SIGWAIT
-
-// Platform has POSIX terminal interface.
-#define ACE_HAS_TERMIOS
-
-#if (__FreeBSD_version > 400000)
-#define ACE_HAS_UCONTEXT_T
-#define ACE_HAS_SOCKLEN_T
-#define ACE_HAS_GETIFADDRS
-#define ACE_HAS_PTHREADS_UNIX98_EXT
-#endif
-
-// Note, on FreeBSD 5, POSIX aio is now an optional kernel module which
-// must be loaded.
-// Read the aio(4) man page for what to do, otherwise any aio_* call
-// will coredump.
-
-// By default use Proactor which does not use POSIX Real-time Signals.
-#ifdef ACE_HAS_AIO_CALLS
-# ifndef ACE_POSIX_AIOCB_PROACTOR
-# define ACE_POSIX_AIOCB_PROACTOR
-# endif /* ACE_POSIX_AIOCB_PROACTOR */
-#endif /* ACE_HAS_AIO_CALLS */
-
-#define ACE_LACKS_STROPTS_H
-
-// Needed when ACE_HAS_WCHAR is defined.
-#define ACE_LACKS_WCSNICMP
-#define ACE_LACKS_WCSICMP
-#define ACE_LACKS_WCSDUP
-#define ACE_LACKS_ITOW
-#define ACE_HAS_3_PARAM_WCSTOK
-#define ACE_HAS_3_PARAM_READDIR_R
-
-#if (__FreeBSD_version >= 501000)
-# define ACE_HAS_PTHREAD_SETSTACK
-#endif
-
-#if (__FreeBSD_version < 700007)
-# define ACE_HAS_SIGVAL_SIGVAL_INT
-# define ACE_HAS_BROKEN_SIGEVENT_STRUCT
-#endif
-
-#if (__FreeBSD_version >= 700028)
-# define ACE_HAS_SCTP
-# define ACE_HAS_LKSCTP
-#endif
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-g++-common.h b/dep/include/ace/config-g++-common.h
deleted file mode 100644
index ff365a5890d..00000000000
--- a/dep/include/ace/config-g++-common.h
+++ /dev/null
@@ -1,137 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: config-g++-common.h 82495 2008-08-04 07:23:01Z johnnyw $
-
-// This configuration file is designed to be included by another,
-// specific configuration file. It provides config information common
-// to all g++ platforms, including egcs.
-
-#ifndef ACE_GNUG_COMMON_H
-#define ACE_GNUG_COMMON_H
-#include /**/ "ace/pre.h"
-
-#define ACE_HAS_CPLUSPLUS_HEADERS
-#define ACE_HAS_STDCPP_STL_INCLUDES
-#define ACE_HAS_TEMPLATE_TYPEDEFS
-#define ACE_HAS_STANDARD_CPP_LIBRARY 1
-#define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
-#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-#define ACE_TEMPLATES_REQUIRE_SOURCE
-
-#if ( __GNUC__ == 2 && __GNUC_MINOR__ < 97 )
- // gcc 2.97 and lower use old iostreams
-# define ACE_USES_OLD_IOSTREAMS
-#endif /* __GNUC__ >= 2.97 */
-
-#if (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
-# define ACE_EXPLICIT_TEMPLATE_DESTRUCTOR_TAKES_ARGS
-#endif /* __GNUC__ >= 3.4 */
-
-#if (__GNUC__ < 3)
-# define ACE_LACKS_MEMBER_TEMPLATES
-#endif /* __GNUC__ < 3 */
-
-// __EXCEPTIONS is defined with -fexceptions, the egcs default. It
-// is not defined with -fno-exceptions, the ACE default for g++.
-// ACE_HAS_EXCEPTIONS is defined in
-// include/makeinclude/wrapper_macros.GNU, so this really isn't
-// necessary. Just in case . . .
-#if defined (__EXCEPTIONS) && !defined (ACE_HAS_EXCEPTIONS)
-# define ACE_HAS_EXCEPTIONS
-#endif /* __EXCEPTIONS && ! ACE_HAS_EXCEPTIONS */
-
-#if defined (ACE_HAS_EXCEPTIONS)
-# define ACE_NEW_THROWS_EXCEPTIONS
-# if (__GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3))
-// Versions of g++ prior to 3.3 had a buggy operator // new(nothrow)[]().
-# define ACE_HAS_NEW_NOTHROW
-# endif /* __GNUC__ >= 3.3 */
-#endif /* ACE_HAS_EXCEPTIONS */
-
-#if (defined (i386) || defined (__i386__)) && !defined (ACE_SIZEOF_LONG_DOUBLE)
-# define ACE_SIZEOF_LONG_DOUBLE 12
-#endif /* i386 */
-
-#if !defined (__MINGW32__) && (defined (i386) || defined (__i386__))
- // If running an Intel, assume that it's a Pentium so that
- // ACE_OS::gethrtime () can use the RDTSC instruction. If running a
- // 486 or lower, be sure to comment this out. (If not running an
- // Intel CPU, this #define will not be seen because of the i386
- // protection, so it can be ignored.)
-# define ACE_HAS_PENTIUM
-#endif /* i386 */
-
-#if (defined (ACE_HAS_PENTIUM) || defined (__amd64__) || defined (__x86_64__))
-# define ACE_HAS_INTEL_ASSEMBLY
-#endif
-
-// GNU g++ >= 4.x implements "#pragma once".
-#if (__GNUC__ < 4) && !defined (ACE_LACKS_PRAGMA_ONCE)
-// We define it with a -D with make depend.
-# define ACE_LACKS_PRAGMA_ONCE
-#endif /* ! ACE_LACKS_PRAGMA_ONCE */
-
-// Take advantage of G++ (>= 4.x) visibility attributes to generate
-// improved shared library binaries.
-#if (__GNUC__ >= 4) && !defined (__MINGW32__)
-
-# if defined (ACE_HAS_CUSTOM_EXPORT_MACROS) && ACE_HAS_CUSTOM_EXPORT_MACROS == 0
-# undef ACE_HAS_CUSTOM_EXPORT_MACROS
-# if defined (ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS)
-# undef ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS
-# endif /* ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS */
-# define ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS 0
-# else
-# ifndef ACE_HAS_CUSTOM_EXPORT_MACROS
-# define ACE_HAS_CUSTOM_EXPORT_MACROS
-# endif /* !ACE_HAS_CUSTOM_EXPORT_MACROS */
-# define ACE_Proper_Export_Flag __attribute__ ((visibility("default")))
-# define ACE_Proper_Import_Flag __attribute__ ((visibility("default")))
-
-# if (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 2))
-// Sadly, G++ 4.x silently ignores visibility attributes on
-// template instantiations, which breaks singletons.
-// As a workaround, we use the GCC visibility pragmas.
-// And to make them fit in a macro, we use C99's _Pragma()
-// http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17470
-// This has been fixed in GCC 4.1.1 with FC6 but not with SuSE 10.2
-// that gets shipped with GCC 4.1.2 so we assume that with GCC 4.2
-// this will be fixed on the head. With FC6 just set this define yourself
-# ifndef ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS
-# define ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS 1
-# endif
-# endif
-
-# if defined (ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS) && ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS == 1
-# define ACE_EXPORT_SINGLETON_DECLARATION(T) template class ACE_Proper_Export_Flag T
-# define ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) template class ACE_Proper_Export_Flag SINGLETON_TYPE <CLASS, LOCK>;
-# else /* ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS */
-# define ACE_EXPORT_SINGLETON_DECLARATION(T) \
- _Pragma ("GCC visibility push(default)") \
- template class T \
- _Pragma ("GCC visibility pop")
-# define ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) \
- _Pragma ("GCC visibility push(default)") \
- template class SINGLETON_TYPE<CLASS, LOCK>; \
- _Pragma ("GCC visibility pop")
-# endif /* ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS */
-
-// Note that the "__extension__" is needed to prevent g++ from issuing
-// an error when using its "-pedantic" command line flag.
-# define ACE_IMPORT_SINGLETON_DECLARATION(T) __extension__ extern template class T
-# define ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) __extension__ extern template class SINGLETON_TYPE<CLASS, LOCK>;
-
-# endif /* ACE_HAS_CUSTOM_EXPORT_MACROS == 0 */
-#endif /* __GNU__ >= 4 */
-
-#if defined (ACE_HAS_GNU_REPO)
- // -frepo causes unresolved symbols of basic_string left- and
- // right-shift operators with ACE_HAS_STRING_CLASS.
-# if defined (ACE_HAS_STRING_CLASS)
-# undef ACE_HAS_STRING_CLASS
-# endif /* ACE_HAS_STRING_CLASS */
-#endif /* ! ACE_HAS_GNU_REPO */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_GNUG_COMMON_H */
-
diff --git a/dep/include/ace/config-ghs-common.h b/dep/include/ace/config-ghs-common.h
deleted file mode 100644
index bb169ba06ba..00000000000
--- a/dep/include/ace/config-ghs-common.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-ghs-common.h 80826 2008-03-04 14:51:23Z wotte $
-
-// This configuration file is designed to be included by another,
-// specific configuration file. It provides config information common
-// to all Green Hills platforms.
-
-#ifndef ACE_GHS_COMMON_H
-#define ACE_GHS_COMMON_H
-#include /**/ "ace/pre.h"
-
-#if !defined (ACE_CONFIG_INCLUDE_GHS_COMMON)
-# error ace/config-ghs-common.h: ACE configuration error! Do not #include this file directly!
-#endif
-
-#if defined (ghs)
-
-# if defined (sun)
- // Need nonstatic Object_Manager on Solaris to prevent seg fault
- // on startup.
-# define ACE_HAS_NONSTATIC_OBJECT_MANAGER
-# endif /* sun */
-
-# if defined (__STANDARD_CXX)
- // Green Hills 1.8.9, but not 1.8.8.
-# define ACE_HAS_STANDARD_CPP_LIBRARY 1
-# define ACE_LACKS_AUTO_PTR
-# define ACE_LACKS_CHAR_RIGHT_SHIFTS
-# define ACE_LACKS_UNBUFFERED_STREAMBUF
-# else
-# define ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA
-# endif /* __STANDARD_CXX */
-
-# define ACE_LACKS_LINEBUFFERED_STREAMBUF
-# define ACE_LACKS_LONGLONG_T
-# define ACE_LACKS_SIGNED_CHAR
-
-#else /* ! ghs */
-# error ace/config-ghs-common.h can only be used with Green Hills compilers!
-#endif /* ! ghs */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_GHS_COMMON_H */
-
diff --git a/dep/include/ace/config-hpux-11.00.h b/dep/include/ace/config-hpux-11.00.h
deleted file mode 100644
index 63f156dcfed..00000000000
--- a/dep/include/ace/config-hpux-11.00.h
+++ /dev/null
@@ -1,449 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-hpux-11.00.h 81992 2008-06-16 19:09:50Z wotte $
-
-// The following configuration file is designed to work for HP
-// platforms running HP-UX 11.00 using aC++ or gcc (2.95 and up).
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-#include /**/ "ace/pre.h"
-
-#define ACE_LACKS_STDINT_H
-#define ACE_LACKS_SYS_SELECT_H
-
-#if defined (__GNUG__)
-
-// config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
-// this must appear before its #include.
-# define ACE_HAS_STRING_CLASS
-
-# include "ace/config-g++-common.h"
-
-#else
-
-// aC++...
-
-// Precompiler needs extra flags to ignore "invalid #pragma directive"
-# ifndef ACE_USING_MCPP_PREPROCESSOR
-# define ACE_CC_PREPROCESSOR_ARGS "-E +W 67"
-# endif
-// Compiler supports C++ exception handling. It's on by default. If the
-// +noeh compiler option is used to disable exceptions, the compiler defines
-// __HPACC_NOEH.
-# if !defined (__HPACC_NOEH)
-# define ACE_HAS_EXCEPTIONS 1
-# endif
-
-// If the -AA compile option is used, the compiler defines _HP_NAMESPACE_STD.
-// The -AA option enables the 2.0 standard C++ library. If not used, then
-// we have the old, 1.2.1 C++ library.
-# if defined (_HP_NAMESPACE_STD)
-# if defined (ACE_HAS_STANDARD_CPP_LIBRARY)
-# undef ACE_HAS_STANDARD_CPP_LIBRARY
-# endif
-# define ACE_HAS_STANDARD_CPP_LIBRARY 1
-# if defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
-# undef ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB
-# endif
-# if defined (RWSTD_NO_NAMESPACE)
- namespace std {} using namespace std;
-# else
-# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-# endif /* RWSTD_NO_NAMESPACE */
-# else
-# define ACE_USES_OLD_IOSTREAMS
- // There's no support in ACE's use of numeric_limits for those that
- // aren't in std::
-# define ACE_LACKS_NUMERIC_LIMITS
-# endif /* _HP_NAMESPACE_STD */
-
-// Compiler implements templates that support typedefs inside of classes
-// used as formal arguments to a template class.
-# define ACE_HAS_TEMPLATE_TYPEDEFS
-
-# define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
-
-// Platform lacks streambuf "linebuffered ()".
-# define ACE_LACKS_LINEBUFFERED_STREAMBUF 1
-
-// Lack of (and broken) support for placement operator delete is a known
-// bug by HP, up until aC++ A.03.55.02.
-# if (__HP_aCC < 35502)
-# define ACE_LACKS_PLACEMENT_OPERATOR_DELETE
-# endif /* __HP_aCC < 35502 */
-
-// Compiler's 'new' throws exceptions on failure, regardless of whether or
-// not exception handling is enabled in the compiler options. Fortunately,
-// new(nothrow_t) is offered.
-# define ACE_NEW_THROWS_EXCEPTIONS
-# define ACE_HAS_NEW_NOTHROW
-# define ACE_HAS_NEW_NO_H 1
-
-// Compiler's template mechanism must see source code (i.e., .C files).
-# define ACE_TEMPLATES_REQUIRE_SOURCE
-
-// Compiler doesn't handle 'signed char' correctly (used in ace/IOStream.h)
-# define ACE_LACKS_SIGNED_CHAR
-
-#endif /* __GNUG__, HP */
-
-//*********************************************************************
-//
-// From here down is the compiler-INdependent OS settings.
-//
-//*********************************************************************
-
-// Compiling for HPUX.
-#if !defined (HPUX)
-#define HPUX
-#endif /* HPUX */
-#define HPUX_11
-
-#ifndef _HPUX_SOURCE
-#define _HPUX_SOURCE
-#endif
-
-#include /**/ <sys/stdsyms.h>
-
-// HP-UX is a POSIX-compliant system - see what's available.
-#include "ace/config-posix.h"
-
-// config-posix.h sets up ACE_HAS_AIO_CALLS if the headers define the
-// proper things. In HP-UX 11's case, the AIOCB Proactor works the best
-// overall. If the user hasn't overridden it, select AIOCB.
-#if defined (ACE_HAS_AIO_CALLS)
-# if !defined (ACE_POSIX_AIOCB_PROACTOR) && !defined (ACE_POSIX_SIG_PROACTOR)
-# define ACE_POSIX_AIOCB_PROACTOR
-# endif /* !ACE_HAS_POSIX_AIOCB_PROACTOR && !ACE_POSIX_SIG_PROACTOR */
-#endif /* ACE_HAS_AIO_CALLS */
-
-////////////////////////////////////////////////////////////////////////////
-//
-// General OS information - see README for more details on what they mean
-//
-///////////////////////////////////////////////////////////////////////////
-
-// HP/UX needs to have these addresses in a special range.
-// If this is on a 64-bit model, the default is to use 64-bit addressing.
-// It can also be set so that the mapped region is shareable with 32-bit
-// programs. To enable the 32/64 sharing, comment out the first definition
-// of ACE_DEFAULT_BASE_ADDR and uncomment the two lines after it.
-#if defined (__LP64__)
-# define ACE_DEFAULT_BASE_ADDR ((char *) 0x0000001100000000)
-//# define ACE_DEFAULT_BASE_ADDR ((char *) 0x80000000)
-//# define ACE_OS_EXTRA_MMAP_FLAGS MAP_ADDR32
-
-# define ACE_DEFAULT_BASE_ADDRL (0x0000001100000000)
-//# define ACE_DEFAULT_BASE_ADDRL (0x80000000)
-#else
-# define ACE_DEFAULT_BASE_ADDR ((char *) 0x80000000)
-#endif /* __LP64__ */
-
-// Preprocessor needs some help with data types
-#if defined (__LP64__)
-# define ACE_SIZEOF_LONG 8
-#else
-# define ACE_SIZEOF_LONG 4
-#endif
-
-// Platform can do async I/O (aio_*) (set up in config-posix.h)
-// ... but seems to require this in order to keep from hanging. Needs some
-// investigation, maybe with HP. John Mulhern determined this value
-// empirically. YMMV. If it does vary, set it up in your own config.h which
-// then includes the ACE-supplied config.
-#if !defined (ACE_INFINITE)
-# define ACE_INFINITE 10000000
-#endif
-
-/* Compiler/platform correctly calls init()/fini() for shared libraries. */
-#define ACE_HAS_AUTOMATIC_INIT_FINI 1
-
-// Manually tweak the malloc control block paddings to properly align
-// things.
-#define ACE_MALLOC_PADDING 16
-#define ACE_MALLOC_ALIGN 8
-#define ACE_PI_CONTROL_BLOCK_ALIGN_LONGS 3
-
-// Compiler/platform contains the <sys/syscall.h> file.
-#define ACE_HAS_SYS_SYSCALL_H
-
-#define ACE_HAS_SYS_PSTAT_H
-
-// But doesn't have a prototype for syscall()
-#define ACE_LACKS_SYSCALL
-
-// Platform supports POSIX.1b clock_gettime ()
-#define ACE_HAS_CLOCK_GETTIME
-#define ACE_HAS_CLOCK_SETTIME
-
-// Prototypes for both signal() and struct sigaction are consistent.
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-
-// Compiler/platform has correctly prototyped header files.
-#define ACE_HAS_CPLUSPLUS_HEADERS
-
-// Compiler/platform has Dirent iterator functions.
-#define ACE_HAS_DIRENT
-
-#define ACE_HAS_VSWPRINTF
-
-// Platform supports getpagesize() call
-#define ACE_HAS_GETPAGESIZE
-// But we define this just to be safe
-#define ACE_PAGE_SIZE 4096
-
-// Can run gperf on this platform (needed for TAO)
-# define ACE_HAS_GPERF
-
-// Optimize ACE_Handle_Set for select().
-# define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-
-// Platform supports IP multicast
-#define ACE_HAS_IP_MULTICAST
-// At least for 11iv2, lacks perfect filtering.
-#if (HPUX_VERS >= 1123) && !defined (ACE_LACKS_PERFECT_MULTICAST_FILTERING)
-# define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
-#endif
-
-/* Platform defines MAP_FAILED as a long constant. */
-#define ACE_HAS_LONG_MAP_FAILED 1
-
-// Platform supports recvmsg and sendmsg.
-#define ACE_HAS_MSG
-
-// Platform's select() has non-const timeval argument
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-
-// Compiler/platform supports poll().
-#define ACE_HAS_POLL
-
-/* Platform supports "position-independent" features provided by
- ACE_Based_Pointer<>. */
-#define ACE_HAS_POSITION_INDEPENDENT_POINTERS 1
-
-/* Platform supports POSIX getpwnam_r() function */
-#define ACE_HAS_POSIX_GETPWNAM_R 1
-
-// Platform supports POSIX O_NONBLOCK semantics.
-#define ACE_HAS_POSIX_NONBLOCK
-
-// Platform supports the POSIX struct timespec type
-#define ACE_HAS_POSIX_TIME
-
-/* Platform has pread() and pwrite() support. */
-#define ACE_HAS_P_READ_WRITE 1
-
-/* Platform will recurse infinitely on thread exits from TSS cleanup routines
- (e.g., AIX) */
-#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS 1
-
-// Platform supports reentrant functions (all the POSIX *_r functions).
-#define ACE_HAS_REENTRANT_FUNCTIONS
-// ctime_r and asctime_r conform to POSIX.1c (2 param version)
-#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
-
-// Platform offers scandir(), and requires no adjustments for its API.
-#define ACE_HAS_SCANDIR
-
-// HP-UX 11 has reentrant netdb functions. The catch is that the old
-// functions (gethostbyname, etc.) are thread-safe and the _r versions are
-// not used and will be removed at some point. So, define things so
-// the _r versions are not used. This will slow things down a bit due to
-// the extra mutex lock in the ACE_NETDBCALL_RETURN macro, and will be fixed
-// in the future (problem ID P64).
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-
-/* Platform lacks pri_t (e.g., Tandem NonStop UNIX). */
-#define ACE_LACKS_PRI_T 1
-
-// Platform has shm_open
-#define ACE_HAS_SHM_OPEN
-
-// Compiler/platform defines the sig_atomic_t typedef
-#define ACE_HAS_SIG_ATOMIC_T
-
-/* Compiler requires extern "C" functions for signals. */
-#define ACE_HAS_SIG_C_FUNC 1
-
-// Platform's sigaction() function takes const sigaction* as 2nd parameter.
-#define ACE_HAS_SIGACTION_CONSTP2
-
-#define ACE_HAS_SSIZE_T
-
-// Platform supports SVR4 extended signals
-#define ACE_HAS_SIGINFO_T
-
-/* Define to 1 if platform has sigsuspend(). */
-#define ACE_HAS_SIGSUSPEND 1
-
-// Platform doesn't detect a signal out of range unless it's way out of range.
-#define ACE_HAS_SIGISMEMBER_BUG
-
-/* Platform provides socklen_t type, such as Linux with glibc2. */
-#define ACE_HAS_SOCKLEN_T 1
-
-#define ACE_HAS_XPG4_MULTIBYTE_CHAR
-
-/* Platform/compiler supports _sys_errlist symbol */
-#define ACE_HAS_SYS_ERRLIST 1
-
-#define ACE_HAS_UALARM
-
-// Platform supports ucontext_t (which is used in the extended signal API).
-#define ACE_HAS_UCONTEXT_T
-
-// Compiler/platform supports strerror ().
-#define ACE_HAS_STRERROR
-
-// Platform/compiler supports void * as second parameter to gettimeofday().
-#define ACE_HAS_VOIDPTR_GETTIMEOFDAY
-
-/* Platform requires void * for mmap(). */
-#define ACE_HAS_VOIDPTR_MMAP 1
-
-/* OS/compiler uses void * arg 4 setsockopt() rather than const char * */
-#define ACE_HAS_VOIDPTR_SOCKOPT 1
-
-// Platform supports SVR4 dynamic linking semantics.
-// When used, this requires -ldl on the ACE library link line.
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-
-// Platform supports the getrusage() system call.
-#define ACE_HAS_GETRUSAGE
-
-/* Define to 1 if platform has the declaration of getrusage(). */
-#define ACE_HAS_GETRUSAGE_PROTOTYPE 1
-
-// Platform has the sigwait function in a header file
-#define ACE_HAS_SIGWAIT
-#define ACE_HAS_SIGTIMEDWAIT
-
-// Platform supports System V IPC (most versions of UNIX, but not Win32)
-#define ACE_HAS_SYSV_IPC
-
-// accept() is thread-safe
-#define ACE_HAS_THREAD_SAFE_ACCEPT
-
-// Platform lacks a typedef for timespec_t, but has struct timespec
-#define ACE_LACKS_TIMESPEC_T
-
-// dlopen() takes a char* instead of const char*
-#define ACE_HAS_CHARPTR_DL
-
-// lacks setegid and seteuid
-#define ACE_LACKS_SETEGID
-#define ACE_LACKS_SETEUID
-
-#define ACE_LACKS_SUSECONDS_T
-#define ACE_LACKS_SYS_SYSCTL_H
-
-// @@ TODO: It looks like HP-UX provides strtoull and wcstoull
-// but some more work is needed to plug them in correctly.
-#define ACE_LACKS_STRTOULL
-#define ACE_LACKS_WCSTOULL
-
-// Shared library name/path components
-#if defined (__ia64)
-# define ACE_DLL_SUFFIX ACE_TEXT (".so")
-#else
-# define ACE_DLL_SUFFIX ACE_TEXT (".sl")
-#endif /* __ia64 */
-#if defined (__LP64__)
-# define ACE_LD_SEARCH_PATH ACE_TEXT ("LD_LIBRARY_PATH")
-#else
-# define ACE_LD_SEARCH_PATH ACE_TEXT ("SHLIB_PATH")
-#endif /* __LP64__ */
-
-#if defined (_INCLUDE__STDC_A1_SOURCE)
-# define ACE_HAS_3_PARAM_WCSTOK
-#endif
-
-#define ACE_HAS_3_PARAM_READDIR_R
-
-//////////////////////////////////////////////////////////////////////////
-//
-// STREAMS information
-//
-//////////////////////////////////////////////////////////////////////////
-
-// Platform supports STREAMS
-#define ACE_HAS_STREAMS
-// Compiler/platform supports struct strbuf.
-#define ACE_HAS_STRBUF_T
-// But the putmsg signature doesn't have it as const...
-// Well, it really does, but it depends on preprocessor defines.
-#define ACE_LACKS_CONST_STRBUF_PTR
-/* Platform supports TLI timod STREAMS module */
-#define ACE_HAS_TIMOD_H 1
-
-// Platform supports STREAM pipes
-// This is possible, but not by default - need to rebuild the kernel to
-// get them enabled - see pipe(2) and "STREAMS/UX for the HP 9000"
-// #define ACE_HAS_STREAM_PIPES
-
-/////////////////////////////////////////////////////////////////////////
-//
-// TLI/XTI information
-//
-////////////////////////////////////////////////////////////////////////
-
-// Platform supports XTI (includes TLI).
-#define ACE_HAS_XTI
-// HP-UX 11 conforms to the XPG4 spec, which ACE calls broken for the
-// errmsg not being const...
-#define ACE_HAS_BROKEN_T_ERROR
-// The definitions of TCP_NODELAY and TCP_MAXSEG conflict between
-// sys/xti.h and netinet/tcp.h.
-#define ACE_HAS_CONFLICTING_XTI_MACROS
-/* Platform provides <sys/xti.h> header */
-#define ACE_HAS_SYS_XTI_H 1
-
-/////////////////////////////////////////////////////////////////////////
-//
-// Threads information.
-//
-// Use of threads is controlled by the 'threads' argument to make. See
-// include/makeinclude/platform_hpux_aCC.GNU for details. If it's not set,
-// the default is to enable it, since kernel threads are always available
-// on HP-UX 11, as opposed to 10.x where it was optional software.
-//
-////////////////////////////////////////////////////////////////////////
-
-#if defined (ACE_HAS_THREADS)
-# if (ACE_HAS_THREADS == 0)
-# undef ACE_HAS_THREADS
-# endif /* ACE_HAS_THREADS == 0 */
-#else
-# define ACE_HAS_THREADS
-#endif /* ACE_HAS_THREADS */
-
-#if defined (ACE_HAS_THREADS)
-
-# if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-# endif
-
-// HP-UX doesn't define _POSIX_THREADS since it doesn't implement all
-// features (lacks thread priority inheritance and protection), so
-// config-posix.h doesn't get this one...
-# define ACE_HAS_PTHREADS
-# define ACE_HAS_PTHREADS_UNIX98_EXT
-# define ACE_HAS_PTHREAD_CONTINUE
-# define ACE_HAS_PTHREAD_RESUME_NP
-# define ACE_HAS_PTHREAD_SUSPEND
-# define ACE_HAS_RECURSIVE_MUTEXES
-# define ACE_HAS_THREAD_SPECIFIC_STORAGE
-# define ACE_LACKS_PTHREAD_ATTR_SETSTACK
-#endif /* ACE_HAS_THREADS */
-
-#define ACE_HAS_POSIX_SEM
-
-// Platform has POSIX terminal interface.
-#define ACE_HAS_TERMIOS
-
-// gethostbyaddr does not handle IPv6-mapped-IPv4 addresses
-#define ACE_HAS_BROKEN_GETHOSTBYADDR_V4MAPPED
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-icc-common.h b/dep/include/ace/config-icc-common.h
deleted file mode 100644
index 290d2b60fc6..00000000000
--- a/dep/include/ace/config-icc-common.h
+++ /dev/null
@@ -1,114 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: config-icc-common.h 81935 2008-06-12 22:01:53Z jtc $
-
-#ifndef ACE_LINUX_ICC_COMMON_H
-#define ACE_LINUX_ICC_COMMON_H
-#include /**/ "ace/pre.h"
-
-# define ACE_HAS_CPLUSPLUS_HEADERS
-# define ACE_HAS_STDCPP_STL_INCLUDES
-# define ACE_HAS_TEMPLATE_TYPEDEFS
-# define ACE_HAS_STANDARD_CPP_LIBRARY 1
-# define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
-# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-# define ACE_HAS_STRING_CLASS
-
-#if defined (ACE_HAS_CUSTOM_EXPORT_MACROS) && ACE_HAS_CUSTOM_EXPORT_MACROS == 0
-# undef ACE_HAS_CUSTOM_EXPORT_MACROS
-# if defined (ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS)
-# undef ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS
-# endif /* ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS */
-# define ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS 0
-#else
-# ifndef ACE_HAS_CUSTOM_EXPORT_MACROS
-# define ACE_HAS_CUSTOM_EXPORT_MACROS
-# endif /* !ACE_HAS_CUSTOM_EXPORT_MACROS */
-# define ACE_Proper_Export_Flag __attribute__ ((visibility("default")))
-# define ACE_Proper_Import_Flag __attribute__ ((visibility("default")))
-
-# if (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 2))
-// Sadly, G++ 4.x silently ignores visibility attributes on
-// template instantiations, which breaks singletons.
-// As a workaround, we use the GCC visibility pragmas.
-// And to make them fit in a macro, we use C99's _Pragma()
-// http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17470
-// This has been fixed in GCC 4.1.1 with FC6 but not with SuSE 10.2
-// that gets shipped with GCC 4.1.2 so we assume that with GCC 4.2
-// this will be fixed on the head. With FC6 just set this define yourself
-# ifndef ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS
-# define ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS 1
-# endif
-# endif
-
-# if defined (ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS) && ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS == 1
-# define ACE_EXPORT_SINGLETON_DECLARATION(T) template class ACE_Proper_Export_Flag T
-# define ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) template class ACE_Proper_Export_Flag SINGLETON_TYPE <CLASS, LOCK>;
-# else /* ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS */
-# define ACE_EXPORT_SINGLETON_DECLARATION(T) \
- _Pragma ("GCC visibility push(default)") \
- template class T \
- _Pragma ("GCC visibility pop")
-# define ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) \
- _Pragma ("GCC visibility push(default)") \
- template class SINGLETON_TYPE<CLASS, LOCK>; \
- _Pragma ("GCC visibility pop")
-# endif /* ACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS */
-
-// Note that the "__extension__" is needed to prevent g++ from issuing
-// an error when using its "-pedantic" command line flag.
-# define ACE_IMPORT_SINGLETON_DECLARATION(T) __extension__ extern template class T
-# define ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) __extension__ extern template class SINGLETON_TYPE<CLASS, LOCK>;
-#endif /* ACE_HAS_CUSTOM_EXPORT_MACROS == 0 */
-
-// __EXCEPTIONS is defined with -fexceptions, the egcs default. It
-// is not defined with -fno-exceptions, the ACE default for g++.
-// ACE_HAS_EXCEPTIONS is defined in
-// include/makeinclude/wrapper_macros.GNU, so this really isn't
-// necessary. Just in case . . .
-# if defined (__EXCEPTIONS) && !defined (ACE_HAS_EXCEPTIONS)
-# define ACE_HAS_EXCEPTIONS
-# endif /* __EXCEPTIONS && ! ACE_HAS_EXCEPTIONS */
-
-# if defined (ACE_HAS_EXCEPTIONS)
-# define ACE_NEW_THROWS_EXCEPTIONS
-# endif /* ACE_HAS_EXCEPTIONS */
-
-#if (defined (i386) || defined (__i386__)) && !defined (ACE_SIZEOF_LONG_DOUBLE)
-# define ACE_SIZEOF_LONG_DOUBLE 12
-#endif /* i386 */
-
-#if !defined (__MINGW32__) && (defined (i386) || defined (__i386__))
- // If running an Intel, assume that it's a Pentium so that
- // ACE_OS::gethrtime () can use the RDTSC instruction. If running a
- // 486 or lower, be sure to comment this out. (If not running an
- // Intel CPU, this #define will not be seen because of the i386
- // protection, so it can be ignored.)
-# define ACE_HAS_PENTIUM
-#endif /* i386 */
-
-#if (defined (ACE_HAS_PENTIUM) || defined (__amd64__) || defined (__x86_64__))
-# define ACE_HAS_INTEL_ASSEMBLY
-#endif
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
- // We define it with a -D with make depend.
-# define ACE_LACKS_PRAGMA_ONCE
-#endif /* ! ACE_LACKS_PRAGMA_ONCE */
-
-#define ACE_TEMPLATES_REQUIRE_SOURCE
-
-#if (__INTEL_COMPILER >= 910)
-# define ACE_EXPLICIT_TEMPLATE_DESTRUCTOR_TAKES_ARGS
-#endif
-
-#if defined (__ia64)
-# define ACE_HAS_IA64INTRIN_H
-# define ACE_HAS_INTRINSIC_INTERLOCKED
-#else
-# define ACE_HAS_IA32INTRIN_H
-#endif
-
-#include /**/ "ace/post.h"
-#endif /* ACE_LINUX_ICC_COMMON_H */
-
diff --git a/dep/include/ace/config-integritySCA.h b/dep/include/ace/config-integritySCA.h
deleted file mode 100644
index be6ccd7a3a8..00000000000
--- a/dep/include/ace/config-integritySCA.h
+++ /dev/null
@@ -1,231 +0,0 @@
-// -*- C++ -*-
-
-#ifndef ACE_INT_CONFIG_H
-#define ACE_INT_CONFIG_H
-
-/*
- * This config.h file is for version 4.0.x of the
- * Integrity RTOS with SCA from Green Hills Software
- * http://www.ghs.com/products/rtos/integrity.html
- *
- * $Id: config-integritySCA.h 81935 2008-06-12 22:01:53Z jtc $
- */
-
-#define ghs
-/* compilation defines */
-#define ACE_LACKS_GETPGID
-#define ACE_LACKS_SETPGID
-#define ACE_LACKS_SETREUID
-#define ACE_LACKS_SETREGID
-#define ACE_LACKS_SETSID
-#define ACE_LACKS_SETEGID
-#define ACE_LACKS_SETUID
-#define ACE_LACKS_SETEUID
-#define ACE_LACKS_GETEUID
-#define ACE_LACKS_GETUID
-#define ACE_LACKS_GETEGID
-#define ACE_LACKS_GETGID
-
-#ifndef ACE_HAS_EXCEPTIONS
- #define ACE_HAS_EXCEPTIONS
-#endif
-#define ACE_NEW_THROWS_EXCEPTIONS
-#define ACE_HAS_STANDARD_CPP_LIBRARY 1
-#define ACE_TEMPLATES_REQUIRE_SOURCE 1
-#define ACE_HAS_TEMPLATE_TYPEDEFS
-#define TAO_USE_SEQUENCE_TEMPLATES
-#define ACE_NEEDS_FUNC_DEFINITIONS
-#define _REENTRANT
-#define ACE_MT_SAFE 1
-
-// Compiler/platform has correctly prototyped header files.
-#define ACE_HAS_CPLUSPLUS_HEADERS
-
-#define ACE_HAS_SHM_OPEN
-
-/***** Operating System Defines *****/
-
-/***** ANSI defines *****/
-#define ACE_LACKS_TEMPNAM /* believe it or not, this is ANSI C */
-#define ACE_HAS_STRERROR
-
-#define ACE_LACKS_SENDMSG
-
-/***** End Stack Defines *****/
-
-/* SCA STUFF */
-#if defined(INTEGRITY_VERSION) && (INTEGRITY_VERSION >= 40108)
-#define ACE_HAS_SIG_ATOMIC_T
-#endif /* INTEGRITY_VERSION */
-#define ACE_HAS_SIGWAIT
-#define ACE_HAS_SIGACTION
-#define ACE_HAS_SIGINFO_T
-#define ACE_LACKS_SIGINFO_H
-#define ACE_LACKS_UCONTEXT_H
-#define ACE_HAS_SIG_C_FUNC
-#define ACE_LACKS_SI_ADDR
-#define ACE_HAS_AIO_CALLS
-
-#define ACE_HAS_POSIX_NONBLOCK
-#define ACE_HAS_DIRENT
-
-#define ACE_HAS_THREADS
-
-#define ACE_HAS_PTHREADS
-/***** End Threading Defines *****/
-
-/***** Hardware Defines *****/
-#define ACE_PAGE_SIZE 4096
-/***** End Hardware Defines *****/
-
-/****** SYSV_IPC STUFF *****/
-#define ACE_LACKS_KEY_T
-
-/****** Posix Defines *****/
-#define ACE_LACKS_WAIT
-#define ACE_LACKS_WAITPID
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_POSIX_SEM
-#define ACE_HAS_STRDUP_EMULATION
-#define ACE_HAS_MSG
-#define ACE_LACKS_CONDATTR_PSHARED
-#define ACE_LACKS_EXEC
-#define ACE_LACKS_FORK
-#define ACE_LACKS_MKFIFO
-#define ACE_LACKS_MKTEMP
-#define ACE_LACKS_MKSTEMP
-#define ACE_LACKS_MPROTECT
-#define ACE_LACKS_MUTEXATTR_PSHARED
-#define ACE_LACKS_PIPE
-#define ACE_LACKS_RLIMIT
-#define ACE_LACKS_RECVMSG
-#define ACE_LACKS_RWLOCK_T
-#define ACE_LACKS_SEMBUF_T
-#define ACE_LACKS_UNIX_DOMAIN_SOCKETS
-#define ACE_LACKS_USER
-#define ACE_LACKS_FILE_FCNTL
-#define ACE_LACKS_FCNTL
-#define ACE_LACKS_UMASK
-#define ACE_LACKS_SEEK
-#define ACE_LACKS_SHARED_MEMORY
-#define ACE_LACKS_MSYNC
-#define ACE_LACKS_PID_STUFF
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-#define ACE_LACKS_IPC_H
-#define ACE_LACKS_SETGID
-#define ACE_LACKS_PIPE
-#define ACE_LACKS_SYS_PARAM_H
-#define ACE_LACKS_SYS_MSG_H
-#define ACE_LACKS_UTSNAME_T
-#define ACE_LACKS_UNAME
-#define ACE_LACKS_UMASK
-#define ACE_LACKS_ISATTY
-#define ACE_LACKS_GETOPT
-#define ACE_LACKS_STRCASECMP
-#define ACE_LACKS_TRUNCATE
-#define ACE_LACKS_PWD_FUNCTIONS
-#define ACE_LACKS_UNIX_SIGNALS
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE
-#define ACE_LACKS_SYSV_SHMEM
-#define ACE_LACKS_PUTENV
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-#define ACE_HAS_CLOCK_GETTIME
-#define ACE_HAS_CLOCK_SETTIME
-#define ACE_LACKS_THREAD_PROCESS_SCOPING
-#define ACE_LACKS_SETSCHED
-#define ACE_LACKS_STRRECVFD
-#define ACE_LACKS_WRITEV
-#define ACE_LACKS_READV
-#define ACE_LACKS_SYSCONF
-#define ACE_LACKS_GETOPT
-/* below refers to fcntl style locking */
-#define ACE_LACKS_FILELOCKS
-
-#define ACE_LACKS_REALPATH
-#define ACE_HAS_CONST_CHAR_SWAB
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-
-/***** Not tied to standards AFAIK ****/
-#define ACE_LACKS_MADVISE /* paging optimization not needed with INTEGRITY */
-#define ACE_LACKS_MALLOC_H /* netbsd's just includes stdlib.h */
-#define ACE_LACKS_MEMORY_H /* netbsd's just includes string.h */
-#define ACE_LACKS_INTTYPES_H
-#define ACE_LACKS_SYS_RESOURCE_H
-#define ACE_LACKS_SYS_WAIT_H
-#define ACE_LACKS_SEARCH_H
-#define ACE_LACKS_SYS_IPC_H
-#define ACE_LACKS_SYS_SEM_H
-#define ACE_LACKS_PWD_H
-#define ACE_LACKS_STROPTS_H
-#define ACE_LACKS_DLFCN_H
-#define ACE_LACKS_REGEX_H
-#define ACE_LACKS_POLL_H
-#define ACE_LACKS_SYS_SHM_H
-#define ACE_LACKS_TERMIOS_H
-
-/***** STUFF INTEGRITY 4.0.8 APPEARS TO SUPPORT ****/
-/* note, possibly untested with ace */
-
-/***** TAO STUFF ****/
-#define TAO_USE_DOTTED_DECIMAL_ADDRESSES 1
-
-#include <INTEGRITY.h>
-
-#include <time.h>
-
-typedef void (*__sighandler_t)(int);
-
-extern "C"
-{
- inline int isatty(int) { return 0; }
-}
-
-#ifdef ppc
-#define ACE_HAS_POWERPC_TIMER
-#endif
-
-/* MIKEC Addtions */
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#include <sys/uio.h> // needed to define iovec
-#define ACE_LACKS_READLINK
-#define ACE_LACKS_GETPPID
-#define NSIG (SIGRTMAX+1)
-#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-#define ACE_USE_RCSID 0
-#define ACE_LACKS_CUSERID
-#define ACE_NEEDS_HUGE_THREAD_STACKSIZE 0x5000
-#define fileno(file) ((file)->io_channel) //Hack to get Svc_Conf_l.cpp compiled
-#define ACE_DEFAULT_THREAD_PRIORITY 127
-#define PRI_FIFO_MIN 1
-#define PRI_FIFO_MAX 127
-#define ACE_THR_PRI_FIFO_DEF 127
-#define PRI_RR_MIN 1
-#define PRI_RR_MAX 127
-#define ACE_THR_PRI_RR_DEF 127
-#define PRI_OTHER_MIN 1
-#define PRI_OTHER_MAX 127
-#define ACE_THR_PRI_OTHER_DEF 127
-#define ACE_PTHREAD_RETURN_ON_EXIT
-#undef ACE_LACKS_UNLINK
-
-#define ACE_HAS_TIMED_MESSAGE_BLOCKS
-
-extern "C" {
-int unlink(const char *);
-}
-
-#define ACE_LACKS_SETSID
-#define ACE_HAS_VOIDPTR_GETTIMEOFDAY
-#define ACE_LACKS_UNIX_SYSLOG
-#define ACE_LACKS_TELLDIR
-#define ACE_LACKS_SEEKDIR
-#define ACE_LACKS_GETHOSTENT
-
-/* end MIKEC Addtions */
-
-// Hack to avoid ensure that things defined in ind_io.h
-// have the right linkage
-#include <unistd.h>
-
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-irix6.5.x-sgic++.h b/dep/include/ace/config-irix6.5.x-sgic++.h
deleted file mode 100644
index a47126ff5f2..00000000000
--- a/dep/include/ace/config-irix6.5.x-sgic++.h
+++ /dev/null
@@ -1,19 +0,0 @@
-// -*- C++ -*-
-// $Id: config-irix6.5.x-sgic++.h 80826 2008-03-04 14:51:23Z wotte $
-
-// Use this file for IRIX 6.5.x
-
-#ifndef ACE_CONFIG_IRIX65X_H
-#define ACE_CONFIG_IRIX65X_H
-#include /**/ "ace/pre.h"
-
-// Include IRIX 6.[234] configuration
-#include "ace/config-irix6.x-sgic++.h"
-
-// Irix 6.5 man pages show that they exist
-#undef ACE_LACKS_CONDATTR_PSHARED
-#undef ACE_LACKS_MUTEXATTR_PSHARED
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_IRIX65X_H */
-
diff --git a/dep/include/ace/config-irix6.x-common.h b/dep/include/ace/config-irix6.x-common.h
deleted file mode 100644
index 49bc08f6c4e..00000000000
--- a/dep/include/ace/config-irix6.x-common.h
+++ /dev/null
@@ -1,257 +0,0 @@
-/* -*- C++ -*- */
-//
-// $Id: config-irix6.x-common.h 81697 2008-05-14 18:33:11Z johnnyw $
-//
-// This file contains the common configuration options for both
-// SGI/MIPSPro C++ and g++ under IRIX 6.X
-//
-// For IRIX 6.2 there are several patches that should be applied to
-// get reliable operation with multi-threading and exceptions.
-// Specifically you should get a reasonable current IRIX, Compiler
-// and POSIX patch-sets.
-
-// For IRIX 6.[34] it's less critical, but it's still recommended
-// that you apply the applicable patch-sets (IRIX and Compiler I believe).
-
-// These patches are updated frequently, so you should ask your support
-// contact or search SGI's web site (http://www.sgi.com) for the latest
-// version.
-
-// Use this file for IRIX 6.[234] if you have the pthreads patches
-// installed.
-
-#ifndef ACE_CONFIG_IRIX6X_COMMON_H
-
-#ifndef IRIX6
-# define IRIX6
-#endif
-
-#if ! defined(ACE_CONFIG_H)
-#error "This file may only be included by config-irix6.x-sgic++.h, config-irix6.x-kcc.h or config-irix6.x-g++.h"
-#endif
-
-// The Irix 6.x float.h doesn't allow us to distinguish between a
-// double and a long double. So, we have to hard-code this. Thanks
-// to Bob Laferriere <laferrie@gsao.med.ge.com> for figuring it out.
-#if defined (_MIPS_SIM) /* 6.X System */
-# include <sgidefs.h>
-# if defined (__GNUC__)
-# define ACE_SIZEOF_LONG_DOUBLE 16
-# elif defined (_MIPS_SIM_NABI32) && (_MIPS_SIM == _MIPS_SIM_NABI32)
-# define ACE_SIZEOF_LONG_DOUBLE 16
-# elif defined (_MIPS_SIM_ABI32) && (_MIPS_SIM == _MIPS_SIM_ABI32)
-# define ACE_SIZEOF_LONG_DOUBLE 8
-# elif defined (_MIPS_SIM_ABI64) && (_MIPS_SIM == _MIPS_SIM_ABI64)
-# define ACE_SIZEOF_LONG_DOUBLE 16
-# elif !defined (ACE_SIZEOF_LONG_DOUBLE)
-# define ACE_SIZEOF_LONG_DOUBLE 8
-# endif
-#else
-# define ACE_SIZEOF_LONG_DOUBLE 8 /* 5.3 System */
-#endif
-
-// petern, Next part of it:
-
-// Platform supports getpagesize() call.
-#define ACE_HAS_GETPAGESIZE
-
-// Platform has no implementation of pthread_condattr_setpshared(),
-// even though it supports pthreads! (like Irix 6.2)
-#define ACE_LACKS_CONDATTR_PSHARED
-#define ACE_LACKS_MUTEXATTR_PSHARED
-
-#define ACE_LACKS_SUSECONDS_T
-
-// Platform/compiler has the sigwait(2) prototype
-#define ACE_HAS_SIGWAIT
-#define ACE_HAS_SIGTIMEDWAIT
-#define ACE_HAS_SIGSUSPEND
-
-// Platform supports System V IPC (most versions of UNIX, but not Win32)
-#define ACE_HAS_SYSV_IPC
-
-// Platform requires void * for mmap().
-#define ACE_HAS_VOIDPTR_MMAP
-
-// Platform supports recvmsg and sendmsg.
-#define ACE_HAS_MSG
-
-// Compiler/platform contains the <sys/syscall.h> file.
-#define ACE_HAS_SYS_SYSCALL_H
-
-// Compiler/platform supports alloca()
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//#define ACE_HAS_ALLOCA
-
-// Compiler/platform has <alloca.h>
-#define ACE_HAS_ALLOCA_H
-
-// Irix needs to define bzero() in this odd file <bstring.h>
-#define ACE_HAS_BSTRING
-
-// Compiler/platform has the getrusage() system call.
-#define ACE_HAS_GETRUSAGE
-
-// Platform supports POSIX O_NONBLOCK semantics.
-#define ACE_HAS_POSIX_NONBLOCK
-
-// Compiler/platform has correctly prototyped header files.
-#define ACE_HAS_CPLUSPLUS_HEADERS
-
-// Platform contains <poll.h>.
-#define ACE_HAS_POLL
-
-// Platform supports the /proc file system.
-#define ACE_HAS_PROC_FS
-
-// Compiler/platform defines the sig_atomic_t typedef.
-#define ACE_HAS_SIG_ATOMIC_T
-
-// Platform supports SVR4 extended signals.
-#define ACE_HAS_SIGINFO_T
-#define ACE_HAS_UCONTEXT_T
-
-// Compiler supports the ssize_t typedef.
-#define ACE_HAS_SSIZE_T
-
-// Platform supports STREAMS.
-#define ACE_HAS_STREAMS
-
-// Compiler/platform supports strerror ().
-#define ACE_HAS_STRERROR
-
-// Compiler/platform supports struct strbuf.
-#define ACE_HAS_STRBUF_T
-
-// Compiler/platform supports SVR4 dynamic linking semantics.
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-
-// Platform provides <sys/filio.h> header.
-#define ACE_HAS_SYS_FILIO_H
-
-// Compiler/platform defines a union semun for SysV shared memory.
-#define ACE_HAS_SEMUN
-
-// Platform supports IP multicast
-#define ACE_HAS_IP_MULTICAST
-#ifdef ACE_LACKS_PERFECT_MULTICAST_FILTERING
- #undef ACE_LACKS_PERFECT_MULTICAST_FILTERING
-#endif
-#define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
-
-//**************************************************************
-// Not so sure how next lines should look like
-
-// Platform supports POSIX timers via timestruc_t.
-#define ACE_HAS_POSIX_TIME
-
-//**************************************************************
-
-// IRIX 6.4 and below do not support reentrant netdb functions
-// (getprotobyname_r, getprotobynumber_r, gethostbyaddr_r,
-// gethostbyname_r, getservbyname_r).
-#if (ACE_IRIX_VERS <= 64) && !defined (ACE_HAS_NETDB_REENTRANT_FUNCTIONS)
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-#endif /* ACE_HAS_NETDB_REENTRANT_FUNCTIONS */
-
-#define ACE_HAS_DIRENT
-// Unless the thread enabled version is used the readdir_r interface
-// does not get defined in IRIX 6.2
-#define ACE_LACKS_READDIR_R
-#define ACE_LACKS_RWLOCK_T
-
-#define ACE_HAS_GPERF
-
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#define ACE_HAS_BROKEN_DGRAM_SENDV
-
-#define ACE_LACKS_PLACEMENT_OPERATOR_DELETE
-#define ACE_PI_CONTROL_BLOCK_ALIGN_LONGS 2
-
-// Platform has POSIX terminal interface.
-#define ACE_HAS_TERMIOS
-
-// IRIX 6.5 supports AIO
-#define ACE_HAS_AIO_CALLS
-#define ACE_POSIX_AIOCB_PROACTOR
-#define ACE_HAS_SGIDLADD
-#define ACE_HAS_P_READ_WRITE
-#define ACE_LACKS_LINEBUFFERED_STREAMBUF
-#define ACE_LACKS_STDINT_H
-#define ACE_HAS_SYSENT_H
-#define ACE_HAS_SYSINFO
-#define ACE_HAS_SYS_SYSTEMINFO_H
-
-// Platform has support for multi-byte character support compliant
-// with the XPG4 Worldwide Portability Interface wide-character
-// classification.
-#define ACE_HAS_XPG4_MULTIBYTE_CHAR
-
-// We need to setup a very high address or Naming_Test won't run.
-#define ACE_DEFAULT_BASE_ADDR ((char *) (1024U * 1024 * 1024))
-
-#define ACE_LACKS_SIGNED_CHAR
-
-// Platform supports reentrant functions (i.e., all the POSIX *_r
-// functions).
-#define ACE_HAS_REENTRANT_FUNCTIONS
-
-// Optimize ACE_Handle_Set for select().
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-
-// Platform does not support reentrant password file accessor functiions.
-#define ACE_LACKS_PWD_REENTRANT_FUNCTIONS
-
-// uses ctime_r & asctime_r with only two parameters vs. three
-#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
-
-// Prototypes for both signal() and struct sigaction are consistent.
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-
-#define ACE_HAS_UALARM
-
-// Scheduling functions are declared in <sched.h>
-#define ACE_NEEDS_SCHED_H
-
-// Compile using multi-thread libraries by default
-#if !defined (ACE_MT_SAFE)
- #define ACE_MT_SAFE 1
-#endif /* ACE_MT_SAFE */
-
-#if (ACE_MT_SAFE != 0)
-
-// Add threading support
-
-#define ACE_HAS_IRIX62_THREADS
-
-// Needed for the threading stuff?
-#include /**/ <task.h>
-#define PTHREAD_MIN_PRIORITY PX_PRIO_MIN
-#define PTHREAD_MAX_PRIORITY PX_PRIO_MAX
-
-// ACE supports threads.
-#define ACE_HAS_THREADS
-
-// Platform has no implementation of pthread_condattr_setpshared(),
-// even though it supports pthreads! (like Irix 6.2)
-#define ACE_LACKS_CONDATTR_PSHARED
-#define ACE_LACKS_MUTEXATTR_PSHARED
-
-// IRIX 6.2 supports a variant of POSIX Pthreads, supposedly POSIX 1c
-#define ACE_HAS_PTHREADS
-
-// Compiler/platform has thread-specific storage
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE
-
-// The pthread_cond_timedwait call does not reset the timer.
-#define ACE_LACKS_COND_TIMEDWAIT_RESET 1
-
-// When threads are enabled READDIR_R is supported on IRIX.
-#undef ACE_LACKS_READDIR_R
-
-#endif /* (ACE_MT_SAFE == 0) */
-
-#endif /* ACE_CONFIG_IRIX6X_COMMON_H */
-
diff --git a/dep/include/ace/config-irix6.x-g++.h b/dep/include/ace/config-irix6.x-g++.h
deleted file mode 100644
index 91276bdbaad..00000000000
--- a/dep/include/ace/config-irix6.x-g++.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-irix6.x-g++.h 80826 2008-03-04 14:51:23Z wotte $
-
-// The following configuration file is designed to work for the SGI
-// Indigo2EX running Irix 6.2 platform using the GNU C++ Compiler
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-#include /**/ "ace/pre.h"
-
-// config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
-// this must appear before its #include.
-#define ACE_HAS_STRING_CLASS
-
-#include "ace/config-g++-common.h"
-#include "ace/config-irix6.x-common.h"
-
-// Denotes that GNU has cstring.h as standard
-// which redefines memchr()
-#define ACE_HAS_GNU_CSTRING_H
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-irix6.x-sgic++.h b/dep/include/ace/config-irix6.x-sgic++.h
deleted file mode 100644
index d832995ea8c..00000000000
--- a/dep/include/ace/config-irix6.x-sgic++.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-irix6.x-sgic++.h 81935 2008-06-12 22:01:53Z jtc $
-
-// Use this file for IRIX 6.[234] if you have the pthreads patches
-// installed.
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-#include /**/ "ace/pre.h"
-
-#include "ace/config-irix6.x-common.h"
-
-// This is the config file for IRIX 6.2, 6.4 and hopefully 6.3, using
-// the SGI C++ compiler (7.1 or higher).
-
-// The following three should be enabled/disabled together.
-#if _COMPILER_VERSION < 720
-#define ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA
-#endif /* _COMPILER_VERSION < 720 */
-#define ACE_TEMPLATES_REQUIRE_SOURCE
-#define ACE_NEEDS_FUNC_DEFINITIONS
-
-// Platform supports STREAM pipes (note that this is disabled by
-// default, see the manual page on pipe(2) to find out how to enable
-// it).
-// #define ACE_HAS_STREAM_PIPES
-
-#if defined (_COMPILER_VERSION)
-# define ACE_CC_NAME ACE_TEXT ("SGI/MIPSPro")
-# define ACE_CC_MAJOR_VERSION (_COMPILER_VERSION / 100)
-# define ACE_CC_MINOR_VERSION (_COMPILER_VERSION % 100)
-# define ACE_CC_BETA_VERSION (0)
-#endif /* _COMPILER_VERSION */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-linux-common.h b/dep/include/ace/config-linux-common.h
deleted file mode 100644
index 6743c53adfc..00000000000
--- a/dep/include/ace/config-linux-common.h
+++ /dev/null
@@ -1,449 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-linux-common.h 82516 2008-08-05 19:22:59Z shuston $
-
-// Do not use this configuration file directly since it's designed to
-// be included by another, specific configuration file, such as
-// config-linux.h. It provides config information common to all Linux
-// platforms. It automatically determines the CPU architecture,
-// compiler (g++ or egcs), and libc (libc5 or glibc), and configures
-// based on those.
-
-#ifndef ACE_LINUX_COMMON_H
-#define ACE_LINUX_COMMON_H
-#include /**/ "ace/pre.h"
-
-#define ACE_HAS_BYTESEX_H
-
-#if ! defined (__ACE_INLINE__)
-#define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-// Needed to differentiate between libc 5 and libc 6 (aka glibc).
-#include <features.h>
-
-#if (defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) >= 500)
-# define ACE_HAS_PTHREADS_UNIX98_EXT
-#endif /* _XOPEN_SOURCE - 0 >= 500 */
-
-#if !defined (ACE_LACKS_LINUX_NPTL)
-
-# include "ace/config-posix.h"
-
- // Temporary fix because NPTL kernels do have shm_open but there is a problem
- // with shm_open/shm_unlink pairing in ACE which needs to be fixed when I have time.
-# if defined (ACE_HAS_SHM_OPEN)
-# undef ACE_HAS_SHM_OPEN
-# endif /* ACE_HAS_SHM_OPEN */
-
-# if defined (ACE_USES_FIFO_SEM)
- // Don't use this for Linux NPTL since this has complete
- // POSIX semaphores which are more efficient
-# undef ACE_USES_FIFO_SEM
-# endif /* ACE_USES_FIFO_SEM */
-
-# if defined (ACE_HAS_POSIX_SEM)
- // Linux NPTL may not define the right POSIX macro
- // but they have the actual runtime support for this stuff
-# if !defined (ACE_HAS_POSIX_SEM_TIMEOUT) && (((_POSIX_C_SOURCE - 0) >= 200112L) || (_XOPEN_SOURCE >= 600))
-# define ACE_HAS_POSIX_SEM_TIMEOUT
-# endif /* !ACE_HAS_POSIX_SEM_TIMEOUT && (((_POSIX_C_SOURCE - 0) >= 200112L) || (_XOPEN_SOURCE >= 600)) */
-# endif /* ACE_HAS_POSIX_SEM */
-#endif /* !ACE_LACKS_LINUX_NPTL */
-
-// First the machine specific part
-
-#if defined (__powerpc__) || defined (__x86_64__)
-# if !defined (ACE_DEFAULT_BASE_ADDR)
-# define ACE_DEFAULT_BASE_ADDR ((char *) 0x40000000)
-# endif /* ! ACE_DEFAULT_BASE_ADDR */
-#elif defined (__ia64)
-# if !defined (ACE_DEFAULT_BASE_ADDR)
-// Zero base address should work fine for Linux of IA-64: it just lets
-// the kernel to choose the right value.
-# define ACE_DEFAULT_BASE_ADDR ((char *) 0x0000000000000000)
-# endif /* ! ACE_DEFAULT_BASE_ADDR */
-#endif /* ! __powerpc__ && ! __ia64 */
-
-// Then glibc/libc5 specific parts
-
-#if defined(__GLIBC__)
-# if (__GLIBC__ < 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 1)
-# define ACE_HAS_NONCONST_SETRLIMIT
-# endif
-# if (__GLIBC__ < 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 3)
-# define ACE_HAS_RUSAGE_WHO_ENUM enum __rusage_who
-# define ACE_HAS_RLIMIT_RESOURCE_ENUM enum __rlimit_resource
-# endif
-# define ACE_HAS_SOCKLEN_T
-# define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-
- // glibc defines both of these, used in OS_String.
-# if defined (_GNU_SOURCE)
-# define ACE_HAS_STRNLEN
-# define ACE_HAS_WCSNLEN
-
- // This is probably not a 100%-sure-fire check... Red Hat Linux 9
- // and Enterprise Linux 3 and up have a new kernel that can send signals
- // across threads. This was not possible prior because there was no real
- // difference between a process and a thread. With this, the
- // ACE_POSIX_SIG_Proactor is the only chance of getting asynch I/O working.
- // There are restrictions, such as all socket operations being silently
- // converted to synchronous by the kernel, that make aio a non-starter
- // for most Linux platforms at this time. But we'll start to crawl...
-# define ACE_POSIX_SIG_PROACTOR
-# endif
-
- // To avoid the strangeness with Linux's ::select (), which modifies
- // its timeout argument, use ::poll () instead.
-# define ACE_HAS_POLL
-
-// Don't define _XOPEN_SOURCE and _XOPEN_SOURCE_EXTENDED in ACE to make
-// getpgid() prototype visible. ACE shouldn't depend on feature test
-// macros to make prototypes visible.
-# define ACE_LACKS_GETPGID_PROTOTYPE
-
-// @note the following defines are necessary with glibc 2.0 (0.961212-5)
-// on Alpha. I assume that they're necessary on Intel as well,
-// but that may depend on the version of glibc that is used.
-//# define ACE_HAS_DLFCN_H_BROKEN_EXTERN_C
-# define ACE_HAS_VOIDPTR_SOCKOPT
-
-// Don't define _POSIX_SOURCE in ACE to make strtok() prototype
-// visible. ACE shouldn't depend on feature test macros to make
-// prototypes visible.
-# define ACE_LACKS_STRTOK_R_PROTOTYPE
-// @note end of glibc 2.0 (0.961212-5)-specific configuration.
-
-# if __GLIBC__ > 1 && __GLIBC_MINOR__ >= 1
- // These were suggested by Robert Hanzlik <robi@codalan.cz> to get
- // ACE to compile on Linux using glibc 2.1 and libg++/gcc 2.8.
-# undef ACE_HAS_BYTESEX_H
-# define ACE_HAS_SIGINFO_T
-# define ACE_LACKS_SIGINFO_H
-# define ACE_HAS_UCONTEXT_T
-
- // Pre-glibc (RedHat 5.2) doesn't have sigtimedwait.
-# define ACE_HAS_SIGTIMEDWAIT
-# endif /* __GLIBC__ 2.1+ */
-#else /* ! __GLIBC__ */
- // Fixes a problem with some non-glibc versions of Linux...
-# define ACE_LACKS_MADVISE
-# define ACE_LACKS_MSG_ACCRIGHTS
-#endif /* ! __GLIBC__ */
-
-// Don't define _LARGEFILE64_SOURCE in ACE to make llseek() or
-// lseek64() prototype visible. ACE shouldn't depend on feature test
-// macros to make prototypes visible.
-#if __GLIBC__ > 1
-# if __GLIBC_MINOR__ == 0
-# define ACE_HAS_LLSEEK
-# define ACE_LACKS_LLSEEK_PROTOTYPE
-# else /* __GLIBC_MINOR__ > 0 */
-# define ACE_HAS_LSEEK64
-# define ACE_LACKS_LSEEK64_PROTOTYPE
-# endif
-#endif /* __GLIBC__ > 1 */
-
-#if __GLIBC__ > 1 && __GLIBC_MINOR__ >= 1
-# define ACE_HAS_P_READ_WRITE
-# define ACE_LACKS_PREAD_PROTOTYPE
-// Use ACE's alternate cuserid() implementation since the use of the
-// system cuserid() is discouraged.
-# define ACE_HAS_ALT_CUSERID
-#endif /* __GLIBC__ > 1 && __GLIBC_MINOR__ >= 0 */
-
-#if (__GLIBC__ > 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)
-# define ACE_HAS_ISASTREAM_PROTOTYPE
-# define ACE_HAS_PTHREAD_SIGMASK_PROTOTYPE
-# define ACE_HAS_CPU_SET_T
-#endif /* __GLIBC__ > 2 || __GLIBC__ === 2 && __GLIBC_MINOR__ >= 3) */
-
-// Then the compiler specific parts
-
-#if defined (__INTEL_COMPILER)
-# include "ace/config-icc-common.h"
-#elif defined (__GNUG__)
- // config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
- // this must appear before its #include.
-# define ACE_HAS_STRING_CLASS
-# include "ace/config-g++-common.h"
-#define ACE_CC_NAME ACE_TEXT ("g++")
-#define ACE_CC_MAJOR_VERSION __GNUC__
-#define ACE_CC_MINOR_VERSION __GNUC_MINOR__
-//#define ACE_CC_BETA_VERSION 0 /* ??? */
-#elif defined (__DECCXX)
-# define ACE_CONFIG_INCLUDE_CXX_COMMON
-# include "ace/config-cxx-common.h"
-#elif defined (__BORLANDC__)
-# undef ACE_HAS_LLSEEK
-# undef ACE_HAS_LSEEK64
-# undef ACE_LACKS_LLSEEK_PROTOTYPE
-# undef ACE_LACKS_LSEEK64_PROTOTYPE
-# include "ace/config-borland-common.h"
-#elif defined (__SUNCC_PRO)
-# include "ace/config-suncc-common.h"
-#elif defined (__PGI)
-// Portable group compiler
-# define ACE_HAS_CPLUSPLUS_HEADERS
-# define ACE_HAS_STDCPP_STL_INCLUDES
-# define ACE_HAS_TEMPLATE_TYPEDEFS
-# define ACE_HAS_STANDARD_CPP_LIBRARY 1
-# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-# define ACE_LACKS_SWAB
-#elif defined (__GNUC__)
-/**
- * GNU C compiler.
- *
- * We need to recognize the GNU C compiler since TAO has at least one
- * C source header and file
- * (TAO/orbsvcs/orbsvcs/SSLIOP/params_dup.{h,c}) that may indirectly
- * include this
- */
-#else /* ! __GNUG__ && !__DECCXX && !__INTEL_COMPILER && !__BORLANDC__ && !__PGI */
-# ifdef __cplusplus /* Let it slide for C compilers. */
-# error unsupported compiler in ace/config-linux-common.h
-# endif /* __cplusplus */
-#endif /* ! __GNUG__*/
-
-// Completely common part :-)
-
-// Platform/compiler has the sigwait(2) prototype
-# define ACE_HAS_SIGWAIT
-
-# define ACE_HAS_SIGSUSPEND
-
-# define ACE_HAS_UALARM
-
-#if __GLIBC__ >= 2
-#ifndef ACE_HAS_POSIX_REALTIME_SIGNALS
-#define ACE_HAS_POSIX_REALTIME_SIGNALS
-#endif /* ACE_HAS_POSIX_REALTIME_SIGNALS */
-
-#ifndef ACE_HAS_AIO_CALLS
-#define ACE_HAS_AIO_CALLS
-#endif /* ACE_HAS_AIO_CALLS */
-#endif
-
-#if __GLIBC__ >= 2
-// glibc 2 and higher has wchar support
-# define ACE_HAS_XPG4_MULTIBYTE_CHAR
-# define ACE_HAS_VFWPRINTF
-#endif
-
-#if __GLIBC__ < 2
-// These are present in glibc 2 and higher
-# define ACE_LACKS_WCSTOK
-# define ACE_LACKS_WCSDUP_PROTOTYPE
-#endif /* __GLIBC__ < 2 */
-
-#define ACE_LACKS_ITOW
-#define ACE_LACKS_WCSICMP
-#define ACE_LACKS_WCSNICMP
-
-#if __GLIBC__ >= 2
-# define ACE_HAS_3_PARAM_WCSTOK
-#endif
-
-#define ACE_HAS_3_PARAM_READDIR_R
-
-#if !defined (ACE_DEFAULT_BASE_ADDR)
-# define ACE_DEFAULT_BASE_ADDR ((char *) 0x80000000)
-#endif /* ! ACE_DEFAULT_BASE_ADDR */
-
-// Compiler/platform supports alloca().
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//#define ACE_HAS_ALLOCA
-
-// Compiler/platform has <alloca.h>
-#define ACE_HAS_ALLOCA_H
-#define ACE_HAS_SYS_SYSINFO_H
-#define ACE_HAS_LINUX_SYSINFO
-
-// Compiler/platform has the getrusage() system call.
-#define ACE_HAS_GETRUSAGE
-#define ACE_HAS_GETRUSAGE_PROTOTYPE
-
-#define ACE_HAS_BYTESWAP_H
-#define ACE_HAS_BSWAP_16
-#define ACE_HAS_BSWAP_32
-
-#if defined __GNUC__ && __GNUC__ >= 2
-# define ACE_HAS_BSWAP_64
-#endif
-
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-
-// Optimize ACE_Handle_Set for select().
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-
-// ONLY define this if you have config'd multicast into a 2.0.34 or
-// prior kernel. It is enabled by default in 2.0.35 kernels.
-#if !defined (ACE_HAS_IP_MULTICAST)
-# define ACE_HAS_IP_MULTICAST
-#endif /* ! ACE_HAS_IP_MULTICAST */
-
-// At least for IPv4, Linux lacks perfect filtering.
-#if !defined ACE_LACKS_PERFECT_MULTICAST_FILTERING
-# define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
-#endif /* ACE_LACKS_PERFECT_MULTICAST_FILTERING */
-
-#define ACE_HAS_BIG_FD_SET
-
-// Linux defines struct msghdr in /usr/include/socket.h
-#define ACE_HAS_MSG
-
-// Linux "improved" the interface to select() so that it modifies
-// the struct timeval to reflect the amount of time not slept
-// (see NOTES in Linux's select(2) man page).
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-
-#define ACE_DEFAULT_MAX_SOCKET_BUFSIZ 65535
-
-#define ACE_CDR_IMPLEMENT_WITH_NATIVE_DOUBLE 1
-
-#define ACE_HAS_GETPAGESIZE 1
-
-#if (__GLIBC__ < 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 2)
-// glibc supports wchar, but lacks fgetwc and ungetwc
-# define ACE_LACKS_FGETWC
-# define ACE_HAS_NONCONST_MSGSND
-# define ACE_LACKS_STRNLEN_PROTOTYPE
-#endif
-
-// glibc requires _XOPEN_SOURCE_EXTENDED to make this prototype
-// visible, so force ACE to declare one. Yuk!
-#ifndef _XOPEN_SOURCE_EXTENDED
-# define ACE_LACKS_MKSTEMP_PROTOTYPE
-#endif /* !_XOPEN_SOURCE_EXTENDED */
-
-// Platform defines struct timespec but not timespec_t
-#define ACE_LACKS_TIMESPEC_T
-
-// Platform supplies scandir()
-#define ACE_HAS_SCANDIR
-// Although the scandir man page says otherwise, this setting is correct.
-#define ACE_SCANDIR_CMP_USES_CONST_VOIDPTR
-
-// A conflict appears when including both <ucontext.h> and
-// <sys/procfs.h> with recent glibc headers.
-//#define ACE_HAS_PROC_FS
-
-// Platform supports System V IPC (most versions of UNIX, but not Win32)
-#define ACE_HAS_SYSV_IPC
-
-// Compiler/platform contains the <sys/syscall.h> file.
-#define ACE_HAS_SYS_SYSCALL_H
-
-// Platform/compiler supports global timezone variable.
-#define ACE_HAS_TIMEZONE
-
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
-
-// Compiler/platform supports strerror ().
-#define ACE_HAS_STRERROR
-
-// Don't define _XOPEN_SOURCE in ACE to make strptime() prototype
-// visible. ACE shouldn't depend on feature test macros to make
-// prototypes visible.
-#define ACE_LACKS_STRPTIME_PROTOTYPE
-
-// Compiler supports the ssize_t typedef.
-#define ACE_HAS_SSIZE_T
-
-// Compiler/platform defines the sig_atomic_t typedef.
-#define ACE_HAS_SIG_ATOMIC_T
-
-// Compiler/platform defines a union semun for SysV shared memory.
-#define ACE_HAS_SEMUN
-
-#define ACE_HAS_POSIX_TIME
-
-#define ACE_HAS_GPERF
-
-#define ACE_HAS_DIRENT
-
-// Starting with FC9 rawhide this file is not available anymore but
-// this define is set
-#if defined _XOPEN_STREAMS && _XOPEN_STREAMS == -1
-# define ACE_LACKS_STROPTS_H
-# define ACE_LACKS_STRRECVFD
-#endif
-
-#if !defined (ACE_LACKS_STROPTS_H)
-# define ACE_HAS_STRBUF_T
-#endif
-
-#if defined (__ia64) || defined(__alpha) || defined (__x86_64__)
-// On 64 bit platforms, the "long" type is 64-bits. Override the
-// default 32-bit platform-specific format specifiers appropriately.
-# define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%lu")
-# define ACE_SSIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%ld")
-# define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%lu")
-#endif /* __ia64 */
-
-#define ACE_SIZEOF_WCHAR 4
-
-#define ACE_LACKS_GETIPNODEBYADDR
-#define ACE_LACKS_GETIPNODEBYNAME
-
-// Platform has POSIX terminal interface.
-#define ACE_HAS_TERMIOS
-
-// Linux implements sendfile().
-#define ACE_HAS_SENDFILE
-
-#define ACE_HAS_VOIDPTR_MMAP
-
-#if defined (ACE_LACKS_NETWORKING)
-# include "ace/config-posix-nonetworking.h"
-#else
-# define ACE_HAS_NETLINK
-# define ACE_HAS_GETIFADDRS
-#endif
-
-#if !defined (ACE_GETNAME_RETURNS_RANDOM_SIN_ZERO)
-// Detect if getsockname() and getpeername() returns random values in
-// the sockaddr_in::sin_zero field by evaluation of the kernel
-// version. Since version 2.5.47 this problem is fixed.
-# if !defined (ACE_LACKS_LINUX_VERSION_H)
-# include <linux/version.h>
-# endif /* !ACE_LACKS_LINUX_VERSION_H */
-# if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,47))
-# define ACE_GETNAME_RETURNS_RANDOM_SIN_ZERO 0
-# else
-# define ACE_GETNAME_RETURNS_RANDOM_SIN_ZERO 1
-# endif /* (LINUX_VERSION_CODE <= KERNEL_VERSION(2,5,47)) */
-#endif /* ACE_GETNAME_RETURNS_RANDOM_SIN_ZERO */
-
-#if defined (ACE_HAS_EVENT_POLL)
-// The sys_epoll interface was introduced in Linux kernel 2.5.45.
-// Don't support backported versions since they appear to be buggy.
-// The obsolete ioctl()-based interface is no longer supported.
-#if 0
-// linux/version.h may not be accurate. It's not for Fedora Core 2...
-# if !defined (ACE_LACKS_LINUX_VERSION_H)
-# include <linux/version.h>
-# endif /* !ACE_LACKS_LINUX_VERSION_H */
-# if (LINUX_VERSION_CODE < KERNEL_VERSION (2,5,45))
-# undef ACE_HAS_EVENT_POLL
-# error Disabling Linux epoll support. Kernel used in C library is too old.
-# error Linux kernel 2.5.45 or better is required.
-# endif /* LINUX_VERSION_CODE < KERNEL_VERSION (2,5,45) */
-#endif /* ACE_HAS_EVENT_POLL */
-#endif
-
-#if !defined (ACE_HAS_EVENT_POLL) && !defined (ACE_HAS_DEV_POLL)
-# if !defined (ACE_LACKS_LINUX_VERSION_H)
-# include <linux/version.h>
-# endif /* !ACE_LACKS_LINUX_VERSION_H */
-# if (LINUX_VERSION_CODE > KERNEL_VERSION (2,6,0))
-# define ACE_HAS_EVENT_POLL
-# endif
-#endif
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_LINUX_COMMON_H */
-
diff --git a/dep/include/ace/config-linux.h b/dep/include/ace/config-linux.h
deleted file mode 100644
index 4c5dc3c4bdb..00000000000
--- a/dep/include/ace/config-linux.h
+++ /dev/null
@@ -1,76 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: config-linux.h 80826 2008-03-04 14:51:23Z wotte $
-
-// The following configuration file is designed to work for Linux
-// platforms using GNU C++.
-
-#ifndef ACE_CONFIG_LINUX_H
-#define ACE_CONFIG_LINUX_H
-#include /**/ "ace/pre.h"
-
-#define ACE_PLATFORM_CONFIG config-linux.h
-
-#include "ace/config-linux-common.h"
-
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-#define ACE_HAS_AUTOMATIC_INIT_FINI
-#define ACE_HAS_DLSYM_SEGFAULT_ON_INVALID_HANDLE
-
-#if !defined (ACE_MT_SAFE)
-#define ACE_MT_SAFE 1 // JCEJ 12/22/96 #1
-#endif
-
-#if ACE_MT_SAFE
-// Yes, we do have threads.
-#define ACE_HAS_THREADS
-// And they're even POSIX pthreads (LinuxThreads implementation)
-#define ACE_HAS_PTHREADS
-
-// On linux this is part of pthreads
-# if (defined _POSIX_C_SOURCE && (_POSIX_C_SOURCE - 0) >= 199309L)
-# if !defined (ACE_HAS_CLOCK_GETTIME)
-# if !defined(__PGI)
-# define ACE_HAS_CLOCK_GETTIME
-# endif /* __PGI */
-# define ACE_HAS_CLOCK_SETTIME
-# endif /* !ACE_HAS_CLOCK_GETTIME */
-# endif /* _POSIX_C_SOURCE >= 199309L */
-
-#if !defined (ACE_HAS_PTHREADS_UNIX98_EXT)
-# define ACE_LACKS_RWLOCK_T
-#else
-# define ACE_HAS_RECURSIVE_MUTEXES
-#endif /* !ACE_HAS_PTHREADS_UNIX98_EXT */
-
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE // jcej 12/22/96 #2
-
-#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS // JCEJ 1/7-8/96
-
-#if defined(__GLIBC__)
-// Platform supports reentrant functions (i.e., all the POSIX *_r
-// functions).
-#define ACE_HAS_REENTRANT_FUNCTIONS
-
-#if (__GLIBC__ < 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 1)
- // Older versions of glibc lacked reentrant netdb functions
-# define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-
- // glibc < 2.1 lacks pthread_attr_setstacksize()
-# define ACE_LACKS_PTHREAD_ATTR_SETSTACKSIZE
-#endif /* (__GLIBC__ < 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 1) */
-
-// uses ctime_r & asctime_r with only two parameters vs. three
-#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
-#endif
-
-#else
-// AIO support pulls in the rt library, which pulls in the pthread
-// library. Disable AIO in single-threaded builds.
-# undef ACE_HAS_AIO_CALLS
-#endif /* ACE_MT_SAFE */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CONFIG_LINUX_H */
-
diff --git a/dep/include/ace/config-lite.h b/dep/include/ace/config-lite.h
deleted file mode 100644
index a8157bef1ec..00000000000
--- a/dep/include/ace/config-lite.h
+++ /dev/null
@@ -1,164 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file config-lite.h
- *
- * $Id: config-lite.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author (Originally in OS.h)Doug Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * This file contains the contents of the old config-all.h in order to
- * avoid a circular dependency problem caused by some of the new
- * includes added to config-all.h, e.g., OS_main.h.
- */
-//==========================================================================
-
-#ifndef ACE_CONFIG_LITE_H
-#define ACE_CONFIG_LITE_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-macros.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// Empty ACE_OS namespace to help identify compiler errors more
-// easily. -- @@ Do we really need this?
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-namespace ACE_OS {}
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// ============================================================================
-// UNICODE macros (to be added later)
-// ============================================================================
-
-// Get the unicode (i.e. ACE_TCHAR) defines
-# include "ace/ace_wchar.h"
-
-// ============================================================================
-// at_exit declarations
-// ============================================================================
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-// Marker for cleanup, used by ACE_Exit_Info.
-extern int ace_exit_hook_marker;
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-// For use by <ACE_OS::exit>.
-extern "C"
-{
- typedef void (*ACE_EXIT_HOOK) (void);
-}
-
-// Signature for registering a cleanup function that is used by the
-// ACE_Object_Manager and the ACE_Thread_Manager.
-# if defined (ACE_HAS_SIG_C_FUNC)
-extern "C" {
-# endif /* ACE_HAS_SIG_C_FUNC */
-typedef void (*ACE_CLEANUP_FUNC)(void *object, void *param) /* throw () */;
-# if defined (ACE_HAS_SIG_C_FUNC)
-}
-# endif /* ACE_HAS_SIG_C_FUNC */
-
-// ============================================================================
-// log_msg declarations
-// ============================================================================
-
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
-# if defined (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS)
-typedef int (*ACE_SEH_EXCEPT_HANDLER)(void *);
-// Prototype of win32 structured exception handler functions.
-// They are used to get the exception handling expression or
-// as exception handlers.
-# endif /* ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS */
-
-class ACE_OS_Thread_Descriptor;
-class ACE_OS_Log_Msg_Attributes;
-typedef void (*ACE_INIT_LOG_MSG_HOOK) (ACE_OS_Log_Msg_Attributes &attr
-# if defined (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS)
- , ACE_SEH_EXCEPT_HANDLER selector
- , ACE_SEH_EXCEPT_HANDLER handler
-# endif /* ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS */
- );
-typedef void (*ACE_INHERIT_LOG_MSG_HOOK) (ACE_OS_Thread_Descriptor*,
- ACE_OS_Log_Msg_Attributes &);
-
-typedef void (*ACE_CLOSE_LOG_MSG_HOOK) (void);
-
-typedef void (*ACE_SYNC_LOG_MSG_HOOK) (const ACE_TCHAR *prog_name);
-
-typedef ACE_OS_Thread_Descriptor *(*ACE_THR_DESC_LOG_MSG_HOOK) (void);
-
-ACE_END_VERSIONED_NAMESPACE_DECL
-
-/**
- * @deprecated ACE_DECLARE_STL_REVERSE_ITERATORS is a crutch to be
- * used until all C++ compiler supported by ACE support
- * the standard reverse_iterator adapters.
- * @internal ACE_DECLARE_STL_REVERSE_ITERATORS is not meant for use
- * outside of ACE.
- */
-// STL reverse_iterator declaration generator
-// Make sure you include <iterator> in the file you're using this
-// generator, and that the following traits are available:
-//
-// iterator
-// const_iterator
-// value_type
-// reference
-// pointer
-// const_reference
-// const_pointer
-// difference_type
-//
-// Once all C++ compilers support the standard reverse_iterator
-// adapters, we can drop this generator macro or at least drop the
-// MSVC++ or Sun Studio preprocessor conditional blocks.
-#if defined (__SUNPRO_CC) && __SUNPRO_CC <= 0x590 \
- && !defined (_STLPORT_VERSION)
- // If we're not using the stlport4 C++ library (which has standard
- // iterators), we need to ensure this is included in order to test
- // the _RWSTD_NO_CLASS_PARTIAL_SPEC feature test macro below.
-# include <Cstd/stdcomp.h>
-#endif /* __SUNPRO_CC <= 0x580 */
-#if (defined (_MSC_VER) && (_MSC_VER <= 1310) && defined (_WIN64)) \
- || defined (ACE_HAS_BROKEN_STD_REVERSE_ITERATOR)
- // VC 7.1 and the latest 64-bit platform SDK still don't define a standard
- // compliant reverse_iterator adapter.
-# define ACE_DECLARE_STL_REVERSE_ITERATORS \
- typedef std::reverse_iterator<iterator, value_type> reverse_iterator; \
- typedef std::reverse_iterator<const_iterator, \
- value_type const> const_reverse_iterator;
-#elif defined (__SUNPRO_CC) && __SUNPRO_CC <= 0x590 \
- && defined (_RWSTD_NO_CLASS_PARTIAL_SPEC)
-# define ACE_DECLARE_STL_REVERSE_ITERATORS \
- typedef std::reverse_iterator<iterator, \
- std::input_iterator_tag, \
- value_type, \
- reference, \
- pointer, \
- difference_type> reverse_iterator; \
- typedef std::reverse_iterator<const_iterator, \
- std::input_iterator_tag, \
- value_type const, \
- const_reference, \
- const_pointer, \
- difference_type> const_reverse_iterator;
-#else
-# define ACE_DECLARE_STL_REVERSE_ITERATORS \
- typedef std::reverse_iterator<iterator> reverse_iterator; \
- typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
-#endif /* _MSC_VER && _WIN64 */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CONFIG_LITE_H */
-
diff --git a/dep/include/ace/config-lynxos.h b/dep/include/ace/config-lynxos.h
deleted file mode 100644
index baeafa88bb8..00000000000
--- a/dep/include/ace/config-lynxos.h
+++ /dev/null
@@ -1,163 +0,0 @@
-// $Id: config-lynxos.h 81780 2008-05-26 13:56:49Z olli $
-
-// The following configuration file is designed to work for LynxOS,
-// version 4.0.0 and later, using the GNU g++ compiler.
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-#include /**/ "ace/pre.h"
-
-#if ! defined (__ACE_INLINE__)
-# define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-#if defined (__GNUG__)
-# include "ace/config-g++-common.h"
-#endif /* __GNUG__ */
-
-// Compile using multi-thread libraries.
-#if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-#endif
-
-#include "ace/config-posix.h"
-
-#if defined (__x86__)
-# define ACE_HAS_PENTIUM
-#elif defined (__powerpc__)
- // It looks like the default stack size is 15000.
- // ACE's Recursive_Mutex_Test needs more.
-# define ACE_NEEDS_HUGE_THREAD_STACKSIZE 65536
- // This doesn't work on LynxOS 3.0.0, because it resets the TimeBaseRegister.
- // # define ACE_HAS_POWERPC_TIMER
-#endif /* __x86__ || __powerpc__ */
-
-#define ACE_DEFAULT_BASE_ADDR ((char *) 0)
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-#define ACE_HAS_ALLOCA
-#define ACE_HAS_ALLOCA_H
-#define ACE_HAS_AUTOMATIC_INIT_FINI
-#define ACE_HAS_BROKEN_PREALLOCATED_OBJECTS_AFTER_FORK 1
-#define ACE_HAS_BROKEN_SIGEVENT_STRUCT
-#define ACE_HAS_CHARPTR_SHMAT
-#define ACE_HAS_CHARPTR_SHMDT
-#define ACE_HAS_CLOCK_GETTIME
-#define ACE_HAS_CLOCK_SETTIME
-#define ACE_HAS_CPLUSPLUS_HEADERS
-#define ACE_HAS_DIRENT
-#define ACE_HAS_GETPAGESIZE
-#define ACE_HAS_GETRUSAGE
-#define ACE_HAS_GNU_CSTRING_H
-#define ACE_HAS_GPERF
-#define ACE_HAS_ICMP_SUPPORT 1
-#define ACE_HAS_IP_MULTICAST
-#define ACE_HAS_LYNXOS_SIGNALS
-#define ACE_HAS_MSG
-#define ACE_HAS_NONCONST_CLOCK_SETTIME
-#define ACE_HAS_NONCONST_MSGSND
-#define ACE_HAS_NONCONST_READV
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#define ACE_HAS_NONCONST_SETRLIMIT
-#define ACE_HAS_NONCONST_WRITEV
-#define ACE_HAS_POSIX_NONBLOCK
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
-#define ACE_HAS_SCANDIR
-#define ACE_HAS_SEMUN
-#define ACE_HAS_SIGINFO_T
-#define ACE_HAS_SIGTIMEDWAIT
-#define ACE_HAS_SIGWAIT
-#define ACE_HAS_SIG_ATOMIC_T
-#define ACE_HAS_SSIZE_T
-#define ACE_HAS_STRBUF_T
-#define ACE_HAS_STREAMS
-#define ACE_HAS_STRERROR
-#define ACE_HAS_SYSV_IPC
-#define ACE_HAS_SYS_SIGLIST
-#define ACE_HAS_SYS_SOCKIO_H
-#define ACE_HAS_TERMIOS
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
-#define ACE_LACKS_ALPHASORT_PROTOTYPE
-#define ACE_LACKS_CONST_TIMESPEC_PTR
-#define ACE_LACKS_GETPGID
-#define ACE_LACKS_MADVISE
-#define ACE_LACKS_MKSTEMP_PROTOTYPE
-#define ACE_LACKS_MKTEMP_PROTOTYPE
-#define ACE_LACKS_PUTENV_PROTOTYPE
-#define ACE_LACKS_REALPATH
-#define ACE_LACKS_RLIMIT_NOFILE
-#define ACE_LACKS_RWLOCK_T
-#define ACE_LACKS_SCANDIR_PROTOTYPE
-#define ACE_LACKS_SETEGID
-#define ACE_LACKS_SETEUID
-#define ACE_LACKS_SIGINFO_H
-#define ACE_LACKS_STRPTIME
-#define ACE_LACKS_SUSECONDS_T
-#define ACE_LACKS_SWAB_PROTOTYPE
-#define ACE_LACKS_TIMESPEC_T
-#define ACE_LACKS_UCONTEXT_H
-#define ACE_LACKS_USECONDS_T
-#define ACE_LACKS_VSNPRINTF
-#define ACE_LACKS_WCHAR_H
-#define ACE_MALLOC_ALIGN 8
-#define ACE_PAGE_SIZE 4096
-#define ACE_POSIX_SIG_PROACTOR
-#define ACE_SCANDIR_CMP_USES_CONST_VOIDPTR
-
-// LynxOS has poll.h but it is unusable since implementation is not provided
-#define ACE_LACKS_POLL_H
-
-#if ACE_MT_SAFE == 1
- // Platform supports threads.
-# define ACE_HAS_PTHREADS
-# define ACE_HAS_THREAD_SPECIFIC_STORAGE
-# define ACE_LACKS_NULL_PTHREAD_STATUS
-# define ACE_LACKS_THREAD_PROCESS_SCOPING
-# define ACE_LACKS_PTHREAD_ATTR_SETSTACK
-# if ACE_LYNXOS_MAJOR == 4 && ACE_LYNXOS_MINOR == 0
-# define ACE_LACKS_SETDETACH
-# define ACE_LACKS_PTHREAD_ATTR_SETSTACKADDR
-# endif
-#endif /* ACE_MT_SAFE */
-
-#if __GNUC__ < 3
-# define ACE_LACKS_NUMERIC_LIMITS
-#endif /* __GNUC__ < 3 */
-
-// By default, don't include RCS Id strings in object code.
-#if !defined (ACE_USE_RCSID)
-# define ACE_USE_RCSID 0
-#endif /* ! ACE_USE_RCSID */
-
-// System include files are not in sys/, this gets rid of warning.
-#define __NO_INCLUDE_WARN__
-
-// "changes signedness" error (OS.i and many other files)
-#define ACE_HAS_SOCKLEN_T
-// LSOCK.cpp uses a macro from param.h, not included
-#define ALIGNBYTES (sizeof(int) - 1)
-#define ALIGN(p) (((unsigned)p + ALIGNBYTES) & ~ALIGNBYTES)
-
-#if ACE_LYNXOS_MAJOR == 4 && ACE_LYNXOS_MINOR == 0
-# define ACE_LACKS_GETOPT_PROTOTYPE
-# define ACE_LACKS_INET_ATON_PROTOTYPE
-# define ACE_LACKS_REGEX_H
-# define ACE_LACKS_STRCASECMP_PROTOTYPE
-# define ACE_LACKS_STRNCASECMP_PROTOTYPE
-# define ACE_LACKS_SYS_SELECT_H
-# define ACE_HAS_NONCONST_GETBY
-#endif
-
-#if (ACE_LYNXOS_MAJOR > 4) || (ACE_LYNXOS_MAJOR == 4 && ACE_LYNXOS_MINOR >= 2)
-// LynxOS 4.2 additons
-# define ACE_HAS_POSIX_SEM_TIMEOUT
-# define ACE_HAS_MUTEX_TIMEOUTS
-#endif
-
-#if defined (ACE_HAS_SVR4_DYNAMIC_LINKING)
-# define ACE_HAS_BROKEN_THREAD_KEYFREE
-#endif /* ACE_HAS_SVR4_DYNAMIC_LINKING */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-macosx-leopard.h b/dep/include/ace/config-macosx-leopard.h
deleted file mode 100644
index 7351f938409..00000000000
--- a/dep/include/ace/config-macosx-leopard.h
+++ /dev/null
@@ -1,227 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-macosx-leopard.h 81858 2008-06-07 03:31:22Z dai_y $
-
-// This configuration file is designed to work with the MacOS X operating system.
-
-#ifndef ACE_CONFIG_MACOSX_LEOPARD_H
-#define ACE_CONFIG_MACOSX_LEOPARD_H
-
-#if ! defined (__ACE_INLINE__)
-#define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-#if !defined (ACE_SIZEOF_LONG_DOUBLE)
-# if (__GNUC__ == 3 && __GNUC_MINOR__ == 3)
- // Size of long double in GCC 3.3 is 8.
-# define ACE_SIZEOF_LONG_DOUBLE 8
-# else // Else, the compiler is GCC4
- // For GCC4, the size is 16.
-# define ACE_SIZEOF_LONG_DOUBLE 16
-# endif // GCC 3.3
-#endif // ACE_SIZEOF_LONG_DOUBLE
-
-#if defined (__GNUG__)
-# include "ace/config-g++-common.h"
-#endif /* __GNUG__ */
-
-#ifndef ACE_HAS_NONCONST_FD_ISSET
-#define ACE_HAS_NONCONST_FD_ISSET
-#endif
-
-#define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
-
-#define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%lu")
-
-#if !defined (__i386__)
-# if defined (ACE_HAS_PENTIUM)
-# undef ACE_HAS_PENTIUM
-# endif /* ACE_HAS_PENTIUM */
-#else // __i386__
-# define ACE_HAS_PENTIUM
-#endif //__i386__
-
-#if !defined (_THREAD_SAFE)
-#define _THREAD_SAFE
-#endif /* _THREAD_SAFE */
-
-#define ACE_HAS_GPERF
-#define ACE_HAS_POSIX_SEM
-
-#define ACE_HAS_SUNOS4_GETTIMEOFDAY
-
-#define ACE_LACKS_STROPTS_H
-
-// Platform provides <execinfo.h> header.
-#define ACE_HAS_EXECINFO_H
-
-// Wcharness....
-#define ACE_HAS_WCHAR
-#define ACE_SIZEOF_WCHAR 4
-
-#define ACE_HAS_3_PARAM_WCSTOK
-#define ACE_LACKS_ITOW
-#define ACE_LACKS_WCSICMP
-#define ACE_LACKS_WCSNICMP
-#define ACE_LACKS_WCSDUP
-
-// Mac lacks the following pthread features
-#define ACE_LACKS_MUTEXATTR_PSHARED
-#define ACE_LACKS_CONDATTR_PSHARED
-//
-// Compiler/platform defines the sig_atomic_t typedef.
-#define ACE_HAS_SIG_ATOMIC_T
-
-// Compiler/platform supports SVR4 signal typedef
-#define ACE_HAS_SVR4_SIGNAL_T
-
-//Platform/compiler has the sigwait(2) prototype
-#define ACE_HAS_SIGWAIT
-
-#define ACE_HAS_AIO_CALLS
-
-//Platform supports sigsuspend()
-#define ACE_HAS_SIGSUSPEND
-
-//Platform/compiler has macros for sig{empty,fill,add,del}set (e.g., SCO and FreeBSD)
-#define ACE_HAS_SIG_MACROS
-
-#define ACE_LACKS_GETPGID
-#define ACE_LACKS_RWLOCK_T
-
-// Optimize ACE_Handle_Set for select().
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-
-//?
-#define ACE_LACKS_SIGSET
-
-#define ACE_NEEDS_SCHED_H
-
-// Use of <malloc.h> is deprecated.
-#define ACE_LACKS_MALLOC_H
-
-#define ACE_HAS_ALT_CUSERID
-
-// Platform supports POSIX timers via struct timespec.
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_UALARM
-
-// Platform defines struct timespec but not timespec_t
-#define ACE_LACKS_TIMESPEC_T
-
-#define ACE_LACKS_STRRECVFD
-
-#define ACE_HAS_SOCKADDR_IN6_SIN6_LEN
-
-// Platform supports System V IPC (most versions of UNIX, but not Win32)
-#define ACE_HAS_SYSV_IPC
-
-// Compiler/platform contains the <sys/syscall.h> file.
-#define ACE_HAS_SYS_SYSCALL_H
-
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-
-// Compiler/platform supports alloca().
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//#define ACE_HAS_ALLOCA
-
-// Compiler/platform correctly calls init()/fini() for shared libraries.
-#define ACE_HAS_AUTOMATIC_INIT_FINI
-
-// platform supports POSIX O_NONBLOCK semantics
-#define ACE_HAS_POSIX_NONBLOCK
-
-// platform supports IP multicast
-#define ACE_HAS_IP_MULTICAST
-#define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
-
-// Compiler/platform has the getrusage() system call.
-#define ACE_HAS_GETRUSAGE
-
-// Compiler supports the ssize_t typedef.
-#define ACE_HAS_SSIZE_T
-
-// Compiler/platform supports strerror ().
-#define ACE_HAS_STRERROR
-
-// Compiler/platform provides the sockio.h file.
-#define ACE_HAS_SYS_SOCKIO_H
-
-// Compiler/platform provides the socklen_t type.
-#define ACE_HAS_SOCKLEN_T
-
-// Defines the page size of the system.
-#define ACE_HAS_GETPAGESIZE
-
-// Platform provides <sys/filio.h> header.
-#define ACE_HAS_SYS_FILIO_H
-
-// Platform/compiler supports timezone * as second parameter to gettimeofday().
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
-
-#define ACE_LACKS_SYS_MSG_H
-#define ACE_LACKS_SYSV_MSQ_PROTOS
-#define ACE_HAS_MSG
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-#define ACE_HAS_NONCONST_MSGSND
-
-#if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-#endif
-
-#if ACE_MT_SAFE == 1
-// Yes, we do have threads.
-# define ACE_HAS_THREADS
-// And they're even POSIX pthreads
-# define ACE_HAS_PTHREADS
-# define ACE_HAS_PTHREADS_STD
-# define ACE_HAS_PTHREAD_SCHEDPARAM
-# define ACE_HAS_THREAD_SPECIFIC_STORAGE
-#endif /* ACE_MT_SAFE == 1 */
-
-#define ACE_LACKS_THREAD_PROCESS_SCOPING
-
-#define ACE_HAS_DIRENT
-#define ACE_LACKS_POLL_H
-#define ACE_LACKS_SEARCH_H
-
-#define ACE_LACKS_SETSCHED
-//#define ACE_HAS_RECURSIVE_MUTEXES
-
-// Platform has POSIX terminal interface.
-#define ACE_HAS_TERMIOS
-
-#define ACE_HAS_SEMUN
-#define ACE_HAS_SIGINFO_T
-#define ACE_LACKS_SIGINFO_H
-#define ACE_HAS_UCONTEXT_T
-#define ACE_HAS_GETIFADDRS
-#define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
-#define ACE_LACKS_UNNAMED_SEMAPHORE
-
-// dlcompat package (not part of base Darwin) is needed for dlopen().
-// You may download directly from sourceforge and install or use fink
-// Fink installer puts libraries in /sw/lib and headers in /sw/include
-// In order to install dlcompat do the following:
-// - download fink from http://fink.sf.net
-// - type:
-// fink install dlcompat
-// as of Dec 2002, if you use fink you will need to uncomment the next line
-// #define ACE_NEEDS_DL_UNDERSCORE
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-#define ACE_LD_SEARCH_PATH ACE_TEXT ("DYLD_LIBRARY_PATH")
-#define ACE_DLL_SUFFIX ACE_TEXT (".dylib")
-//#define ACE_LACKS_DLCLOSE
-
-// gperf seems to need this
-//#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
-
-#if defined(__APPLE_CC__) && (__APPLE_CC__ < 1173)
-#error "Compiler must be upgraded, see http://developer.apple.com"
-#endif /* __APPLE_CC__ */
-
-#endif /* ACE_CONFIG_MACOSX_TIGER_H */
-
diff --git a/dep/include/ace/config-macosx-panther.h b/dep/include/ace/config-macosx-panther.h
deleted file mode 100644
index e2b3361752f..00000000000
--- a/dep/include/ace/config-macosx-panther.h
+++ /dev/null
@@ -1,192 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-macosx-panther.h 80826 2008-03-04 14:51:23Z wotte $
-
-// This configuration file is designed to work with the MacOS X operating system.
-
-#ifndef ACE_CONFIG_MACOSX_H
-#define ACE_CONFIG_MACOSX_H
-
-#if ! defined (__ACE_INLINE__)
-#define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-#if defined (__GNUG__)
-# include "ace/config-g++-common.h"
-#endif /* __GNUG__ */
-
-#define ACE_LACKS_SUSECONDS_T
-#define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%lu")
-
-#if defined (ACE_HAS_PENTIUM)
-# undef ACE_HAS_PENTIUM
-#endif /* ACE_HAS_PENTIUM */
-
-#if !defined (_THREAD_SAFE)
-#define _THREAD_SAFE
-#endif /* _THREAD_SAFE */
-
-#define ACE_HAS_GPERF
-#define ACE_HAS_POSIX_SEM
-
-//#define ACE_HAS_SVR4_TLI
-
-#define ACE_LACKS_STROPTS_H
-#define ACE_LACKS_WCHAR_H
-
-//
-// Compiler/platform defines the sig_atomic_t typedef.
-#define ACE_HAS_SIG_ATOMIC_T
-
-// Compiler/platform supports SVR4 signal typedef
-#define ACE_HAS_SVR4_SIGNAL_T
-
-//Platform/compiler has the sigwait(2) prototype
-#define ACE_HAS_SIGWAIT
-
-//Platform supports sigsuspend()
-#define ACE_HAS_SIGSUSPEND
-
-//Platform/compiler has macros for sig{empty,fill,add,del}set (e.g., SCO and FreeBSD)
-#define ACE_HAS_SIG_MACROS
-
-//#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
-#define ACE_LACKS_GETPGID
-#define ACE_LACKS_RWLOCK_T
-
-// Optimize ACE_Handle_Set for select().
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-
-//?
-#define ACE_LACKS_SIGSET
-
-#define ACE_NEEDS_SCHED_H
-
-// Use of <malloc.h> is deprecated.
-#define ACE_LACKS_MALLOC_H
-
-#define ACE_HAS_ALT_CUSERID
-
-// Platform supports POSIX timers via struct timespec.
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_UALARM
-
-// Platform defines struct timespec but not timespec_t
-#define ACE_LACKS_TIMESPEC_T
-
-#define ACE_LACKS_STRRECVFD
-
-#define ACE_HAS_SOCKADDR_IN_SIN_LEN
-#define ACE_HAS_SOCKADDR_IN6_SIN6_LEN
-
-// Platform supports System V IPC (most versions of UNIX, but not Win32)
-#define ACE_HAS_SYSV_IPC
-
-// Compiler/platform contains the <sys/syscall.h> file.
-#define ACE_HAS_SYS_SYSCALL_H
-
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-
-// Compiler/platform supports alloca().
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//#define ACE_HAS_ALLOCA
-
-// Compiler/platform correctly calls init()/fini() for shared libraries.
-#define ACE_HAS_AUTOMATIC_INIT_FINI
-
-// Explicit dynamic linking permits "lazy" symbol resolution
-//#define ACE_HAS_RTLD_LAZY_V
-
-// platform supports POSIX O_NONBLOCK semantics
-#define ACE_HAS_POSIX_NONBLOCK
-
-// platform supports IP multicast
-#define ACE_HAS_IP_MULTICAST
-#define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
-
-// Compiler/platform has the getrusage() system call.
-#define ACE_HAS_GETRUSAGE
-
-// Compiler supports the ssize_t typedef.
-#define ACE_HAS_SSIZE_T
-
-// Compiler/platform supports strerror ().
-#define ACE_HAS_STRERROR
-
-// Compiler/platform provides the sockio.h file.
-#define ACE_HAS_SYS_SOCKIO_H
-
-// Defines the page size of the system.
-#define ACE_HAS_GETPAGESIZE
-
-// Platform provides <sys/filio.h> header.
-#define ACE_HAS_SYS_FILIO_H
-
-// Platform/compiler supports timezone * as second parameter to gettimeofday().
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
-
-#define ACE_LACKS_SYS_MSG_H
-#define ACE_LACKS_SYSV_MSQ_PROTOS
-#define ACE_HAS_MSG
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-#define ACE_HAS_NONCONST_MSGSND
-
-#if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-#endif
-
-#if ACE_MT_SAFE == 1
-// Yes, we do have threads.
-# define ACE_HAS_THREADS
-// And they're even POSIX pthreads
-# define ACE_HAS_PTHREADS
-# define ACE_HAS_PTHREAD_SCHEDPARAM
-# define ACE_HAS_THREAD_SPECIFIC_STORAGE
-#endif /* ACE_MT_SAFE == 1 */
-
-# define ACE_LACKS_THREAD_PROCESS_SCOPING
-
-#define ACE_HAS_DIRENT
-#define ACE_LACKS_POLL_H
-#define ACE_LACKS_SEARCH_H
-
-#define ACE_LACKS_SETSCHED
-//#define ACE_HAS_RECURSIVE_MUTEXES
-
-// Platform has POSIX terminal interface.
-#define ACE_HAS_TERMIOS
-
-#define ACE_HAS_SEMUN
-#define ACE_HAS_SIGINFO_T
-#define ACE_LACKS_SIGINFO_H
-#define ACE_HAS_UCONTEXT_T
-#define ACE_HAS_GETIFADDRS
-#define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
-#define ACE_LACKS_UNNAMED_SEMAPHORE
-
-// dlcompat package (not part of base Darwin) is needed for dlopen().
-// You may download directly from sourceforge and install or use fink
-// Fink installer puts libraries in /sw/lib and headers in /sw/include
-// In order to install dlcompat do the following:
-// - download fink from http://fink.sf.net
-// - type:
-// fink install dlcompat
-// as of Dec 2002, if you use fink you will need to uncomment the next line
-//#define ACE_NEEDS_DL_UNDERSCORE
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-#define ACE_LD_SEARCH_PATH ACE_TEXT ("DYLD_LIBRARY_PATH")
-#define ACE_DLL_SUFFIX ACE_TEXT (".dylib")
-//#define ACE_LACKS_DLCLOSE
-
-// gperf seems to need this
-//#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
-
-#if defined(__APPLE_CC__) && (__APPLE_CC__ < 1173)
-#error "Compiler must be upgraded, see http://developer.apple.com"
-#endif /* __APPLE_CC__ */
-
-#endif /* ACE_CONFIG_MACOSX_H */
-
diff --git a/dep/include/ace/config-macosx-tiger.h b/dep/include/ace/config-macosx-tiger.h
deleted file mode 100644
index 447c834ac0c..00000000000
--- a/dep/include/ace/config-macosx-tiger.h
+++ /dev/null
@@ -1,219 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-macosx-tiger.h 82344 2008-07-19 20:04:18Z johnnyw $
-
-// This configuration file is designed to work with the MacOS X operating system.
-
-#ifndef ACE_CONFIG_MACOSX_TIGER_H
-#define ACE_CONFIG_MACOSX_TIGER_H
-
-#if ! defined (__ACE_INLINE__)
-#define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-#if !defined (ACE_SIZEOF_LONG_DOUBLE)
-# if (__GNUC__ == 3 && __GNUC_MINOR__ == 3)
- // Size of long double in GCC 3.3 is 8.
-# define ACE_SIZEOF_LONG_DOUBLE 8
-# else // Else, the compiler is GCC4
- // For GCC4, the size is 16.
-# define ACE_SIZEOF_LONG_DOUBLE 16
-# endif // GCC 3.3
-#endif // ACE_SIZEOF_LONG_DOUBLE
-
-#if defined (__GNUG__)
-# include "ace/config-g++-common.h"
-#endif /* __GNUG__ */
-
-#define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
-
-#define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%lu")
-
-#if !defined (__i386__)
-# if defined (ACE_HAS_PENTIUM)
-# undef ACE_HAS_PENTIUM
-# endif /* ACE_HAS_PENTIUM */
-#else // __i386__
-# define ACE_HAS_PENTIUM
-#endif //__i386__
-
-#if !defined (_THREAD_SAFE)
-#define _THREAD_SAFE
-#endif /* _THREAD_SAFE */
-
-#define ACE_HAS_GPERF
-#define ACE_HAS_POSIX_SEM
-
-#define ACE_HAS_SUNOS4_GETTIMEOFDAY
-
-#define ACE_LACKS_STROPTS_H
-
-// Wcharness....
-#define ACE_HAS_WCHAR
-#define ACE_SIZEOF_WCHAR 4
-
-#define ACE_HAS_3_PARAM_WCSTOK
-#define ACE_LACKS_ITOW
-#define ACE_LACKS_WCSICMP
-#define ACE_LACKS_WCSNICMP
-#define ACE_LACKS_WCSDUP
-
-// Mac lacks the following pthread features
-#define ACE_LACKS_MUTEXATTR_PSHARED
-#define ACE_LACKS_CONDATTR_PSHARED
-//
-// Compiler/platform defines the sig_atomic_t typedef.
-#define ACE_HAS_SIG_ATOMIC_T
-
-// Compiler/platform supports SVR4 signal typedef
-#define ACE_HAS_SVR4_SIGNAL_T
-
-//Platform/compiler has the sigwait(2) prototype
-#define ACE_HAS_SIGWAIT
-
-#define ACE_HAS_AIO_CALLS
-
-//Platform supports sigsuspend()
-#define ACE_HAS_SIGSUSPEND
-
-//Platform/compiler has macros for sig{empty,fill,add,del}set (e.g., SCO and FreeBSD)
-#define ACE_HAS_SIG_MACROS
-
-#define ACE_LACKS_GETPGID
-#define ACE_LACKS_RWLOCK_T
-
-// Optimize ACE_Handle_Set for select().
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-
-//?
-#define ACE_LACKS_SIGSET
-
-#define ACE_NEEDS_SCHED_H
-
-// Use of <malloc.h> is deprecated.
-#define ACE_LACKS_MALLOC_H
-
-#define ACE_HAS_ALT_CUSERID
-
-// Platform supports POSIX timers via struct timespec.
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_UALARM
-
-// Platform defines struct timespec but not timespec_t
-#define ACE_LACKS_TIMESPEC_T
-
-#define ACE_LACKS_STRRECVFD
-
-#define ACE_HAS_SOCKADDR_IN6_SIN6_LEN
-
-// Platform supports System V IPC (most versions of UNIX, but not Win32)
-#define ACE_HAS_SYSV_IPC
-
-// Compiler/platform contains the <sys/syscall.h> file.
-#define ACE_HAS_SYS_SYSCALL_H
-
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-
-// Compiler/platform supports alloca().
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//#define ACE_HAS_ALLOCA
-
-// Compiler/platform correctly calls init()/fini() for shared libraries.
-#define ACE_HAS_AUTOMATIC_INIT_FINI
-
-// platform supports POSIX O_NONBLOCK semantics
-#define ACE_HAS_POSIX_NONBLOCK
-
-// platform supports IP multicast
-#define ACE_HAS_IP_MULTICAST
-#define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
-
-// Compiler/platform has the getrusage() system call.
-#define ACE_HAS_GETRUSAGE
-
-// Compiler supports the ssize_t typedef.
-#define ACE_HAS_SSIZE_T
-
-// Compiler/platform supports strerror ().
-#define ACE_HAS_STRERROR
-
-// Compiler/platform provides the sockio.h file.
-#define ACE_HAS_SYS_SOCKIO_H
-
-// Compiler/platform provides the socklen_t type.
-#define ACE_HAS_SOCKLEN_T
-
-// Defines the page size of the system.
-#define ACE_HAS_GETPAGESIZE
-
-// Platform provides <sys/filio.h> header.
-#define ACE_HAS_SYS_FILIO_H
-
-// Platform/compiler supports timezone * as second parameter to gettimeofday().
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
-
-#define ACE_LACKS_SYS_MSG_H
-#define ACE_LACKS_SYSV_MSQ_PROTOS
-#define ACE_HAS_MSG
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-#define ACE_HAS_NONCONST_MSGSND
-
-#if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-#endif
-
-#if ACE_MT_SAFE == 1
-// Yes, we do have threads.
-# define ACE_HAS_THREADS
-// And they're even POSIX pthreads
-# define ACE_HAS_PTHREADS
-# define ACE_HAS_PTHREAD_SCHEDPARAM
-# define ACE_HAS_THREAD_SPECIFIC_STORAGE
-#endif /* ACE_MT_SAFE == 1 */
-
-#define ACE_LACKS_THREAD_PROCESS_SCOPING
-
-#define ACE_HAS_DIRENT
-#define ACE_LACKS_POLL_H
-#define ACE_LACKS_SEARCH_H
-
-#define ACE_LACKS_SETSCHED
-//#define ACE_HAS_RECURSIVE_MUTEXES
-
-// Platform has POSIX terminal interface.
-#define ACE_HAS_TERMIOS
-
-#define ACE_HAS_SEMUN
-#define ACE_HAS_SIGINFO_T
-#define ACE_LACKS_SIGINFO_H
-#define ACE_HAS_UCONTEXT_T
-#define ACE_HAS_GETIFADDRS
-#define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
-#define ACE_LACKS_UNNAMED_SEMAPHORE
-
-// dlcompat package (not part of base Darwin) is needed for dlopen().
-// You may download directly from sourceforge and install or use fink
-// Fink installer puts libraries in /sw/lib and headers in /sw/include
-// In order to install dlcompat do the following:
-// - download fink from http://fink.sf.net
-// - type:
-// fink install dlcompat
-// as of Dec 2002, if you use fink you will need to uncomment the next line
-// #define ACE_NEEDS_DL_UNDERSCORE
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-#define ACE_LD_SEARCH_PATH ACE_TEXT ("DYLD_LIBRARY_PATH")
-#define ACE_DLL_SUFFIX ACE_TEXT (".dylib")
-//#define ACE_LACKS_DLCLOSE
-
-// gperf seems to need this
-//#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
-
-#if defined(__APPLE_CC__) && (__APPLE_CC__ < 1173)
-#error "Compiler must be upgraded, see http://developer.apple.com"
-#endif /* __APPLE_CC__ */
-
-#endif /* ACE_CONFIG_MACOSX_TIGER_H */
-
diff --git a/dep/include/ace/config-macosx.h b/dep/include/ace/config-macosx.h
deleted file mode 100644
index e8ec1af6e96..00000000000
--- a/dep/include/ace/config-macosx.h
+++ /dev/null
@@ -1,192 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-macosx.h 80826 2008-03-04 14:51:23Z wotte $
-
-// This configuration file is designed to work with the MacOS X operating system, version 10.2 (Jaguar).
-
-#ifndef ACE_CONFIG_MACOSX_H
-#define ACE_CONFIG_MACOSX_H
-
-#if ! defined (__ACE_INLINE__)
-#define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-#if defined (__GNUG__)
-# include "ace/config-g++-common.h"
-#endif /* __GNUG__ */
-
-#define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%lu")
-
-#if defined (ACE_HAS_PENTIUM)
-# undef ACE_HAS_PENTIUM
-#endif /* ACE_HAS_PENTIUM */
-
-#if !defined (_THREAD_SAFE)
-#define _THREAD_SAFE
-#endif /* _THREAD_SAFE */
-
-#define ACE_HAS_GPERF
-#define ACE_HAS_POSIX_SEM
-
-//#define ACE_HAS_SVR4_TLI
-
-#define ACE_LACKS_STROPTS_H
-#define ACE_LACKS_WCHAR_H
-
-#define ACE_SYS_SELECT_NEEDS_UNISTD_H
-
-//
-// Compiler/platform defines the sig_atomic_t typedef.
-#define ACE_HAS_SIG_ATOMIC_T
-
-// Compiler/platform supports SVR4 signal typedef
-#define ACE_HAS_SVR4_SIGNAL_T
-
-//Platform/compiler has the sigwait(2) prototype
-#define ACE_HAS_SIGWAIT
-
-//Platform supports sigsuspend()
-#define ACE_HAS_SIGSUSPEND
-
-//Platform/compiler has macros for sig{empty,fill,add,del}set (e.g., SCO and FreeBSD)
-#define ACE_HAS_SIG_MACROS
-
-//#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
-#define ACE_LACKS_GETPGID
-#define ACE_LACKS_RWLOCK_T
-
-// Optimize ACE_Handle_Set for select().
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-
-#define ACE_HAS_SYSCTL
-
-//?
-#define ACE_LACKS_SIGSET
-
-#define ACE_NEEDS_SCHED_H
-
-// Use of <malloc.h> is deprecated.
-#define ACE_LACKS_MALLOC_H
-
-#define ACE_HAS_ALT_CUSERID
-
-// Platform supports POSIX timers via struct timespec.
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_UALARM
-
-// Platform defines struct timespec but not timespec_t
-#define ACE_LACKS_TIMESPEC_T
-
-#define ACE_LACKS_STRRECVFD
-
-#define ACE_HAS_SOCKADDR_IN6_SIN6_LEN
-
-// Platform supports System V IPC (most versions of UNIX, but not Win32)
-//#define ACE_HAS_SYSV_IPC
-
-// Compiler/platform contains the <sys/syscall.h> file.
-#define ACE_HAS_SYS_SYSCALL_H
-
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-
-// Compiler/platform supports alloca().
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//#define ACE_HAS_ALLOCA
-
-// Compiler/platform correctly calls init()/fini() for shared libraries.
-#define ACE_HAS_AUTOMATIC_INIT_FINI
-
-// Explicit dynamic linking permits "lazy" symbol resolution
-//#define ACE_HAS_RTLD_LAZY_V
-
-// platform supports POSIX O_NONBLOCK semantics
-#define ACE_HAS_POSIX_NONBLOCK
-
-// platform supports IP multicast
-#define ACE_HAS_IP_MULTICAST
-#define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
-
-// Compiler/platform has the getrusage() system call.
-#define ACE_HAS_GETRUSAGE
-
-// Compiler supports the ssize_t typedef.
-#define ACE_HAS_SSIZE_T
-
-// Compiler/platform supports strerror ().
-#define ACE_HAS_STRERROR
-
-// Compiler/platform provides the sockio.h file.
-#define ACE_HAS_SYS_SOCKIO_H
-
-// Defines the page size of the system.
-#define ACE_HAS_GETPAGESIZE
-
-// Platform provides <sys/filio.h> header.
-#define ACE_HAS_SYS_FILIO_H
-
-// Platform/compiler supports timezone * as second parameter to gettimeofday().
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
-
-#define ACE_LACKS_SYS_MSG_H
-#define ACE_LACKS_SYSV_MSQ_PROTOS
-#define ACE_HAS_MSG
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-#define ACE_HAS_NONCONST_MSGSND
-
-#if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-#endif
-
-#if ACE_MT_SAFE == 1
-// Yes, we do have threads.
-# define ACE_HAS_THREADS
-// And they're even POSIX pthreads
-# define ACE_HAS_PTHREADS
-# define ACE_HAS_THREAD_SPECIFIC_STORAGE
-# define ACE_LACKS_THREAD_PROCESS_SCOPING
-#endif /* ACE_MT_SAFE == 1 */
-
-#define ACE_HAS_DIRENT
-#define ACE_LACKS_POLL_H
-#define ACE_LACKS_SEARCH_H
-
-#define ACE_LACKS_SETSCHED
-//#define ACE_HAS_RECURSIVE_MUTEXES
-
-// Platform has POSIX terminal interface.
-#define ACE_HAS_TERMIOS
-
-#define ACE_HAS_SEMUN
-#define ACE_HAS_SIGINFO_T
-#define ACE_LACKS_SIGINFO_H
-#define ACE_HAS_UCONTEXT_T
-#define ACE_HAS_GETIFADDRS
-#define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
-#define ACE_LACKS_UNNAMED_SEMAPHORE
-
-// dlcompat package (not part of base Darwin) is needed for dlopen().
-// You may download directly from sourceforge and install or use fink
-// Fink installer puts libraries in /sw/lib and headers in /sw/include
-// In order to install dlcompat do the following:
-// - download fink from http://fink.sf.net
-// - type:
-// fink install dlcompat
-// as of Dec 2002, if you use fink you will need to uncomment the next line
-//#define ACE_NEEDS_DL_UNDERSCORE
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-#define ACE_LD_SEARCH_PATH ACE_TEXT ("DYLD_LIBRARY_PATH")
-#define ACE_DLL_SUFFIX ACE_TEXT (".dylib")
-#define ACE_LACKS_DLCLOSE
-
-// gperf seems to need this
-#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
-
-#if defined(__APPLE_CC__) && (__APPLE_CC__ < 1173)
-#error "Compiler must be upgraded, see http://developer.apple.com"
-#endif /* __APPLE_CC__ */
-
-#endif /* ACE_CONFIG_MACOSX_H */
-
diff --git a/dep/include/ace/config-macros.h b/dep/include/ace/config-macros.h
deleted file mode 100644
index 5d1067e6c13..00000000000
--- a/dep/include/ace/config-macros.h
+++ /dev/null
@@ -1,637 +0,0 @@
-// -*- C++ -*-
-
-//==========================================================================
-/**
- * @file config-macros.h
- *
- * $Id: config-macros.h 82495 2008-08-04 07:23:01Z johnnyw $
- *
- * @author (Originally in OS.h)Doug Schmidt <schmidt@cs.wustl.edu>
- * @author Jesper S. M|ller<stophph@diku.dk>
- * @author and a cast of thousands...
- *
- * This file contains the contents of the old config-lite.h header
- * without C++ code (except for C++ code in macros). Specifically,
- * only macros or C language constructs are found in this header.
- * Allows configuration values and macros to be used by some C
- * language sources.
- */
-//==========================================================================
-
-#ifndef ACE_CONFIG_MACROS_H
-#define ACE_CONFIG_MACROS_H
-
-#ifdef _WIN32
-#include "ace/config-win32.h"
-#else
-#include "ace/config.h"
-#endif //_WIN32
-
-#include "ace/Version.h"
-#include "ace/Versioned_Namespace.h"
-
-// ACE_HAS_TLI is used to decide whether to try any XTI/TLI functionality
-// so if it isn't set, set it. Capabilities and differences between
-// XTI and TLI favor XTI, but when deciding to do anything, as opposed to
-// ACE_NOTSUP_RETURN for example, ACE_HAS_TLI is the deciding factor.
-#if !defined (ACE_HAS_TLI)
-# if defined (ACE_HAS_XTI)
-# define ACE_HAS_TLI
-# endif /* ACE_HAS_XTI */
-#endif /* ACE_HAS_TLI */
-
-#define ACE_BITS_PER_ULONG (8 * sizeof (u_long))
-
-#if !defined (ACE_OSTREAM_TYPE)
-# if defined (ACE_LACKS_IOSTREAM_TOTALLY)
-# define ACE_OSTREAM_TYPE FILE
-# else /* ! ACE_LACKS_IOSTREAM_TOTALLY */
-# define ACE_OSTREAM_TYPE ostream
-# endif /* ! ACE_LACKS_IOSTREAM_TOTALLY */
-#endif /* ! ACE_OSTREAM_TYPE */
-
-#if !defined (ACE_DEFAULT_LOG_STREAM)
-# if defined (ACE_LACKS_IOSTREAM_TOTALLY)
-# define ACE_DEFAULT_LOG_STREAM 0
-# else /* ! ACE_LACKS_IOSTREAM_TOTALLY */
-# define ACE_DEFAULT_LOG_STREAM (&cerr)
-# endif /* ! ACE_LACKS_IOSTREAM_TOTALLY */
-#endif /* ! ACE_DEFAULT_LOG_STREAM */
-
-// These two are only for backward compatibility. You should avoid
-// using them if not necessary.
-#if !defined (ACE_LACKS_DEPRECATED_MACROS)
-/**
- * @deprecated The ACE_SYNCH_1 macro is deprecated
- */
-# define ACE_SYNCH_1 ACE_SYNCH_DECL
-/**
- * @deprecated The ACE_SYNCH_2 macro is deprecated
- */
-# define ACE_SYNCH_2 ACE_SYNCH_USE
-#endif
-
-// For Win32 compatibility...
-# if !defined (ACE_WSOCK_VERSION)
-# define ACE_WSOCK_VERSION 0, 0
-# endif /* ACE_WSOCK_VERSION */
-
-# if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
-# define ACE_MT(X) X
-# if !defined (_REENTRANT)
-# define _REENTRANT
-# endif /* _REENTRANT */
-# else
-# define ACE_MT(X)
-# endif /* ACE_MT_SAFE */
-
-# if defined (ACE_HAS_PURIFY)
-# define ACE_INITIALIZE_MEMORY_BEFORE_USE
-# endif /* ACE_HAS_PURIFY */
-
-# if defined (ACE_HAS_VALGRIND)
-# define ACE_INITIALIZE_MEMORY_BEFORE_USE
-# endif /* ACE_HAS_VALGRIND */
-
-#if !defined (ACE_LACKS_DEPRECATED_MACROS)
-/**
- * @deprecated The @c ACE_HAS_USING macros are deprecated
- */
-# define ACE_USING using
-#endif /* !ACE_LACKS_DEPRECATED_MACROS */
-
-#if !defined (ACE_LACKS_DEPRECATED_MACROS)
-/**
- * @deprecated The @c ACE_TYPENAME macros is deprecated. Use standard
- * C++ keyword typename instead.
- */
-# define ACE_TYPENAME typename
-#endif /* !ACE_LACKS_DEPRECATED_MACROS */
-
-#if !defined (ACE_LACKS_DEPRECATED_MACROS)
-/**
- * @deprecated The @c ACE_TEMPLATE_SPECIALIZATION and
- * @c ACE_TEMPLATE_CLASS_MEMBER_SPECIALIZATION macros are
- * deprecated. Use standard C++ template specialization
- * syntax instead.
- */
-# define ACE_TEMPLATE_SPECIALIZATION template<>
-# define ACE_TEMPLATE_CLASS_MEMBER_SPECIALIZATION
-#endif /* !ACE_LACKS_DEPRECATED_MACROS */
-
-// =========================================================================
-// Perfect Multicast filting refers to RFC 3376, where a socket is only
-// delivered dgrams for groups joined even if it didn't bind the group
-// address. We turn this option off by default, although most OS's
-// except for Windows and Solaris probably lack perfect filtering.
-// =========================================================================
-
-# if !defined (ACE_LACKS_PERFECT_MULTICAST_FILTERING)
-# define ACE_LACKS_PERFECT_MULTICAST_FILTERING 0
-# endif /* ACE_LACKS_PERFECT_MULTICAST_FILTERING */
-
-// =========================================================================
-// Enable/Disable Features By Default
-// =========================================================================
-
-# if !defined (ACE_HAS_POSITION_INDEPENDENT_POINTERS)
-# define ACE_HAS_POSITION_INDEPENDENT_POINTERS 1
-# endif /* ACE_HAS_POSITION_INDEPENDENT_POINTERS */
-
-# if !defined (ACE_HAS_PROCESS_SPAWN)
-# if !defined (ACE_LACKS_FORK) || \
- (defined (ACE_WIN32) && !defined (ACE_HAS_PHARLAP)) || \
- defined (ACE_WINCE) || defined (ACE_OPENVMS)
-# define ACE_HAS_PROCESS_SPAWN 1
-# endif
-# endif /* ACE_HAS_PROCESS_SPAWN */
-
-# if !defined (ACE_HAS_DYNAMIC_LINKING)
-# if defined (ACE_HAS_SVR4_DYNAMIC_LINKING) || defined (ACE_WIN32) || defined (ACE_VXWORKS) || defined (__hpux)
-# define ACE_HAS_DYNAMIC_LINKING 1
-# endif
-# endif /* ACE_HAS_DYNAMIC_LINKING */
-
-# if defined (ACE_USES_FIFO_SEM)
-# if defined (ACE_HAS_POSIX_SEM) || defined (ACE_LACKS_MKFIFO) || defined (ACE_LACKS_FCNTL)
-# undef ACE_USES_FIFO_SEM
-# endif
-# endif /* ACE_USES_FIFO_SEM */
-
-// =========================================================================
-// RCSID Macros
-// =========================================================================
-
-// By default, DO NOT include RCS Id strings in object code.
-#if ! defined (ACE_USE_RCSID)
-# define ACE_USE_RCSID 0
-#endif /* #if ! defined (ACE_USE_RCSID) */
-
-#if (defined (ACE_USE_RCSID) && (ACE_USE_RCSID != 0))
-# if ! defined (ACE_RCSID)
-
- // This hack has the following purposes:
- // 1. To define the RCS id string variable as a static char*, so
- // that there won't be any duplicate extern symbols at link
- // time.
- // 2. To have a RCS id string variable with a unique name for each
- // file.
- // 3. To avoid warnings of the type "variable declared and never
- // used".
-
-# define ACE_RCSID(path, file, id) \
- static inline const char* get_rcsid_ ## path ## _ ## file (const char*) \
- { \
- return id ; \
- } \
- static const char* rcsid_ ## path ## _ ## file = \
- get_rcsid_ ## path ## _ ## file ( rcsid_ ## path ## _ ## file ) ;
-
-# endif /* #if ! defined (ACE_RCSID) */
-#else
-
- // RCS id strings are not wanted.
-# if defined (ACE_RCSID)
-# undef ACE_RCSID
-# endif /* #if defined (ACE_RCSID) */
-# define ACE_RCSID(path, file, id) /* noop */
-#endif /* #if (defined (ACE_USE_RCSID) && (ACE_USE_RCSID != 0)) */
-
-// =========================================================================
-// INLINE macros
-//
-// These macros handle all the inlining of code via the .i or .inl files
-// =========================================================================
-
-#if defined (ACE_LACKS_INLINE_FUNCTIONS) && !defined (ACE_NO_INLINE)
-# define ACE_NO_INLINE
-#endif /* defined (ACE_LACKS_INLINE_FUNCTIONS) && !defined (ACE_NO_INLINE) */
-
-// ACE inlining has been explicitly disabled. Implement
-// internally within ACE by undefining __ACE_INLINE__.
-#if defined (ACE_NO_INLINE)
-# undef __ACE_INLINE__
-#endif /* ! ACE_NO_INLINE */
-
-#if defined (__ACE_INLINE__)
-# define ACE_INLINE inline
-# if !defined (ACE_HAS_INLINED_OSCALLS)
-# define ACE_HAS_INLINED_OSCALLS
-# endif /* !ACE_HAS_INLINED_OSCALLS */
-#else
-# define ACE_INLINE
-#endif /* __ACE_INLINE__ */
-
-#if !defined (ACE_LACKS_DEPRECATED_MACROS)
- // =========================================================================
- // EXPLICIT macro
- // =========================================================================
-
- /**
- * @deprecated explicit is deprecated. ACE requires C++
- * "explicit" keyword support.
- */
- # define ACE_EXPLICIT explicit
-#endif /* ACE_LACKS_DEPRECATED_MACROS */
-
-#if !defined (ACE_LACKS_DEPRECATED_MACROS)
- // =========================================================================
- // MUTABLE macro
- // =========================================================================
-
- /**
- * @deprecated ACE_MUTABLE is deprecated. ACE requires C++ "mutable"
- * keyword support.
- */
- # define ACE_MUTABLE mutable
- # define ACE_CONST_WHEN_MUTABLE const
-#endif /* ACE_LACKS_DEPRECATED_MACROS */
-
-// ============================================================================
-// EXPORT macros
-//
-// Since Win32 DLL's do not export all symbols by default, they must be
-// explicitly exported (which is done by *_Export macros).
-// ============================================================================
-
-// Win32 should have already defined the macros in config-win32-common.h
-#if !defined (ACE_HAS_CUSTOM_EXPORT_MACROS)
-# define ACE_Proper_Export_Flag
-# define ACE_Proper_Import_Flag
-# define ACE_EXPORT_SINGLETON_DECLARATION(T)
-# define ACE_IMPORT_SINGLETON_DECLARATION(T)
-# define ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-# define ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-#else
-// An export macro should at the very least have been defined.
-
-# ifndef ACE_Proper_Import_Flag
-# define ACE_Proper_Import_Flag
-# endif /* !ACE_Proper_Import_Flag */
-
-# ifndef ACE_EXPORT_SINGLETON_DECLARATION
-# define ACE_EXPORT_SINGLETON_DECLARATION(T)
-# endif /* !ACE_EXPORT_SINGLETON_DECLARATION */
-
-# ifndef ACE_IMPORT_SINGLETON_DECLARATION
-# define ACE_IMPORT_SINGLETON_DECLARATION(T)
-# endif /* !ACE_IMPORT_SINGLETON_DECLARATION */
-
-# ifndef ACE_EXPORT_SINGLETON_DECLARE
-# define ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-# endif /* !ACE_EXPORT_SINGLETON_DECLARE */
-
-# ifndef ACE_IMPORT_SINGLETON_DECLARE
-# define ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-# endif /* !ACE_IMPORT_SINGLETON_DECLARE */
-
-#endif /* !ACE_HAS_CUSTOM_EXPORT_MACROS */
-
-// This is a whim of mine -- that instead of annotating a class with
-// ACE_Export in its declaration, we make the declaration near the TOP
-// of the file with ACE_DECLARE_EXPORT.
-// TS = type specifier (e.g., class, struct, int, etc.)
-// ID = identifier
-// So, how do you use it? Most of the time, just use ...
-// ACE_DECLARE_EXPORT(class, someobject);
-// If there are global functions to be exported, then use ...
-// ACE_DECLARE_EXPORT(void, globalfunction) (int, ...);
-// Someday, when template libraries are supported, we made need ...
-// ACE_DECLARE_EXPORT(template class, sometemplate) <class TYPE, class LOCK>;
-# define ACE_DECLARE_EXPORT(TS,ID) TS ACE_Export ID
-
-// ============================================================================
-// Cast macros
-//
-// These macros are used to choose between the old cast style and the new
-// *_cast<> operators
-// ============================================================================
-
-# define ACE_sap_any_cast(TYPE) reinterpret_cast<TYPE> (const_cast<ACE_Addr &> (ACE_Addr::sap_any))
-
-#if !defined (ACE_LACKS_DEPRECATED_MACROS)
- /**
- * @deprecated ACE_{static,reinterpret,dynamic,const}_cast@<@> is
- * deprecated. Directly use standard C++ casts instead.
- */
- # define ACE_static_cast(TYPE, EXPR) static_cast<TYPE> (EXPR)
- # define ACE_static_cast_1_ptr(TYPE, T1, EXPR) static_cast<TYPE<T1> *> (EXPR)
- # define ACE_static_cast_2_ptr(TYPE, T1, T2, EXPR) static_cast<TYPE<T1, T2> *> (EXPR)
- # define ACE_static_cast_3_ptr(TYPE, T1, T2, T3, EXPR) static_cast<TYPE<T1, T2, T3> *> (EXPR)
- # define ACE_static_cast_4_ptr(TYPE, T1, T2, T3, T4, EXPR) static_cast<TYPE<T1, T2, T3, T4> *> (EXPR)
- # define ACE_static_cast_5_ptr(TYPE, T1, T2, T3, T4, T5, EXPR) static_cast<TYPE<T1, T2, T3, T4, T5> *> (EXPR)
- # define ACE_static_cast_1_ref(TYPE, T1, EXPR) static_cast<TYPE<T1> &> (EXPR)
- # define ACE_static_cast_2_ref(TYPE, T1, T2, EXPR) static_cast<TYPE<T1, T2> &> (EXPR)
- # define ACE_static_cast_3_ref(TYPE, T1, T2, T3, EXPR) static_cast<TYPE<T1, T2, T3> &> (EXPR)
- # define ACE_static_cast_4_ref(TYPE, T1, T2, T3, T4, EXPR) static_cast<TYPE<T1, T2, T3, T4> &> (EXPR)
- # define ACE_static_cast_5_ref(TYPE, T1, T2, T3, T4, T5, EXPR) static_cast<TYPE<T1, T2, T3, T4, T5> &> (EXPR)
-
- # define ACE_const_cast(TYPE, EXPR) const_cast<TYPE> (EXPR)
- # define ACE_const_cast_1_ptr(TYPE, T1, EXPR) const_cast<TYPE<T1> *> (EXPR)
- # define ACE_const_cast_2_ptr(TYPE, T1, T2, EXPR) const_cast<TYPE<T1, T2> *> (EXPR)
- # define ACE_const_cast_3_ptr(TYPE, T1, T2, T3, EXPR) const_cast<TYPE<T1, T2, T3> *> (EXPR)
- # define ACE_const_cast_4_ptr(TYPE, T1, T2, T3, T4, EXPR) const_cast<TYPE<T1, T2, T3, T4> *> (EXPR)
- # define ACE_const_cast_5_ptr(TYPE, T1, T2, T3, T4, T5, EXPR) const_cast<TYPE<T1, T2, T3, T4, T5> *> (EXPR)
- # define ACE_const_cast_1_ref(TYPE, T1, EXPR) const_cast<TYPE<T1> &> (EXPR)
- # define ACE_const_cast_2_ref(TYPE, T1, T2, EXPR) const_cast<TYPE<T1, T2> &> (EXPR)
- # define ACE_const_cast_3_ref(TYPE, T1, T2, T3, EXPR) const_cast<TYPE<T1, T2, T3> &> (EXPR)
- # define ACE_const_cast_4_ref(TYPE, T1, T2, T3, T4, EXPR) const_cast<TYPE<T1, T2, T3, T4> &> (EXPR)
- # define ACE_const_cast_5_ref(TYPE, T1, T2, T3, T4, T5, EXPR) const_cast<TYPE<T1, T2, T3, T4, T5> &> (EXPR)
-
- # define ACE_reinterpret_cast(TYPE, EXPR) reinterpret_cast<TYPE> (EXPR)
- # define ACE_reinterpret_cast_1_ptr(TYPE, T1, EXPR) reinterpret_cast<TYPE<T1> *> (EXPR)
- # define ACE_reinterpret_cast_2_ptr(TYPE, T1, T2, EXPR) reinterpret_cast<TYPE<T1, T2> *> (EXPR)
- # define ACE_reinterpret_cast_3_ptr(TYPE, T1, T2, T3, EXPR) reinterpret_cast<TYPE<T1, T2, T3> *> (EXPR)
- # define ACE_reinterpret_cast_4_ptr(TYPE, T1, T2, T3, T4, EXPR) reinterpret_cast<TYPE<T1, T2, T3, T4> *> (EXPR)
- # define ACE_reinterpret_cast_5_ptr(TYPE, T1, T2, T3, T4, T5, EXPR) reinterpret_cast<TYPE<T1, T2, T3, T4, T5> *> (EXPR)
- # define ACE_reinterpret_cast_1_ref(TYPE, T1, EXPR) reinterpret_cast<TYPE<T1> &> (EXPR)
- # define ACE_reinterpret_cast_2_ref(TYPE, T1, T2, EXPR) reinterpret_cast<TYPE<T1, T2> &> (EXPR)
- # define ACE_reinterpret_cast_3_ref(TYPE, T1, T2, T3, EXPR) reinterpret_cast<TYPE<T1, T2, T3> &> (EXPR)
- # define ACE_reinterpret_cast_4_ref(TYPE, T1, T2, T3, T4, EXPR) reinterpret_cast<TYPE<T1, T2, T3, T4> &> (EXPR)
- # define ACE_reinterpret_cast_5_ref(TYPE, T1, T2, T3, T4, T5, EXPR) reinterpret_cast<TYPE<T1, T2, T3, T4, T5> &> (EXPR)
-
- # define ACE_dynamic_cast(TYPE, EXPR) dynamic_cast<TYPE> (EXPR)
- # define ACE_dynamic_cast_1_ptr(TYPE, T1, EXPR) dynamic_cast<TYPE<T1> *> (EXPR)
- # define ACE_dynamic_cast_2_ptr(TYPE, T1, T2, EXPR) dynamic_cast<TYPE<T1, T2> *> (EXPR)
- # define ACE_dynamic_cast_3_ptr(TYPE, T1, T2, T3, EXPR) dynamic_cast<TYPE<T1, T2, T3> *> (EXPR)
- # define ACE_dynamic_cast_4_ptr(TYPE, T1, T2, T3, T4, EXPR) dynamic_cast<TYPE<T1, T2, T3, T4> *> (EXPR)
- # define ACE_dynamic_cast_5_ptr(TYPE, T1, T2, T3, T4, T5, EXPR) dynamic_cast<TYPE<T1, T2, T3, T4, T5> *> (EXPR)
- # define ACE_dynamic_cast_1_ref(TYPE, T1, EXPR) dynamic_cast<TYPE<T1> &> (EXPR)
- # define ACE_dynamic_cast_2_ref(TYPE, T1, T2, EXPR) dynamic_cast<TYPE<T1, T2> &> (EXPR)
- # define ACE_dynamic_cast_3_ref(TYPE, T1, T2, T3, EXPR) dynamic_cast<TYPE<T1, T2, T3> &> (EXPR)
- # define ACE_dynamic_cast_4_ref(TYPE, T1, T2, T3, T4, EXPR) dynamic_cast<TYPE<T1, T2, T3, T4> &> (EXPR)
- # define ACE_dynamic_cast_5_ref(TYPE, T1, T2, T3, T4, T5, EXPR) dynamic_cast<TYPE<T1, T2, T3, T4, T5> &> (EXPR)
-#endif /* ACE_LACKS_DEPRECATED_MACROS */
-
-# if !defined (ACE_CAST_CONST)
- // Sun CC 4.2, for example, requires const in reinterpret casts of
- // data members in const member functions. But, other compilers
- // complain about the useless const. This keeps everyone happy.
-# if defined (__SUNPRO_CC)
-# define ACE_CAST_CONST const
-# else /* ! __SUNPRO_CC */
-# define ACE_CAST_CONST
-# endif /* ! __SUNPRO_CC */
-# endif /* ! ACE_CAST_CONST */
-
-// ============================================================================
-// Compiler Silencing macros
-//
-// Some compilers complain about parameters that are not used. This macro
-// should keep them quiet.
-// ============================================================================
-
-#if !defined (ACE_UNUSED_ARG)
-# if defined (__GNUC__) && ((__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2)))
-# define ACE_UNUSED_ARG(a) (void) (a)
-# elif defined (__GNUC__) || defined (ghs) || defined (__hpux) || defined (__sgi) || defined (__DECCXX) || defined (__rational__) || defined (__USLC__) || defined (ACE_RM544) || defined (__DCC__) || defined (__PGI) || defined (__TANDEM)
-// Some compilers complain about "statement with no effect" with (a).
-// This eliminates the warnings, and no code is generated for the null
-// conditional statement. @note that may only be true if -O is enabled,
-// such as with GreenHills (ghs) 1.8.8.
-# define ACE_UNUSED_ARG(a) do {/* null */} while (&a == 0)
-# elif defined (__DMC__)
- #define ACE_UNUSED_ID(identifier)
- template <class T>
- inline void ACE_UNUSED_ARG(const T& ACE_UNUSED_ID(t)) { }
-# else /* ghs || __GNUC__ || ..... */
-# define ACE_UNUSED_ARG(a) (a)
-# endif /* ghs || __GNUC__ || ..... */
-#endif /* !ACE_UNUSED_ARG */
-
-#if defined (_MSC_VER) || defined(__sgi) || defined (ghs) || defined (__DECCXX) || defined(__BORLANDC__) || defined (ACE_RM544) || defined (__USLC__) || defined (__DCC__) || defined (__PGI) || defined (__TANDEM) || (defined (__HP_aCC) && (__HP_aCC >= 60500))
-# define ACE_NOTREACHED(a)
-#else /* __sgi || ghs || ..... */
-# define ACE_NOTREACHED(a) a
-#endif /* __sgi || ghs || ..... */
-
-// ============================================================================
-// ACE_ALLOC_HOOK* macros
-//
-// Macros to declare and define class-specific allocation operators.
-// ============================================================================
-
-# if defined (ACE_HAS_ALLOC_HOOKS)
-# define ACE_ALLOC_HOOK_DECLARE \
- void *operator new (size_t bytes); \
- void operator delete (void *ptr);
-
- // Note that these are just place holders for now. Some day they
- // may be be replaced by <ACE_Malloc>.
-# define ACE_ALLOC_HOOK_DEFINE(CLASS) \
- void *CLASS::operator new (size_t bytes) { return ::new char[bytes]; } \
- void CLASS::operator delete (void *ptr) { delete [] ((char *) ptr); }
-# else
-# define ACE_ALLOC_HOOK_DECLARE struct __Ace {} /* Just need a dummy... */
-# define ACE_ALLOC_HOOK_DEFINE(CLASS)
-# endif /* ACE_HAS_ALLOC_HOOKS */
-
-// ============================================================================
-/**
- * ACE_OSCALL* macros
- *
- * @deprecated ACE_OSCALL_RETURN and ACE_OSCALL should not be used.
- * Please restart system calls in your application code.
- * See the @c sigaction(2) man page for documentation
- * regarding enabling restartable system calls across
- * signals via the @c SA_RESTART flag.
- *
- * The following two macros used ensure that system calls are properly
- * restarted (if necessary) when interrupts occur. However, that
- * capability was never enabled by any of our supported platforms.
- * In fact, some parts of ACE would not function properly when that
- * ability was enabled. Furthermore, they assumed that ability to
- * restart system calls was determined statically. That assumption
- * does not hold for modern platforms, where that ability is
- * determined dynamically at run-time.
- */
-// ============================================================================
-
-#define ACE_OSCALL_RETURN(X,TYPE,FAILVALUE) \
- do \
- return (TYPE) (X); \
- while (0)
-#define ACE_OSCALL(X,TYPE,FAILVALUE,RESULT) \
- do \
- RESULT = (TYPE) (X); \
- while (0)
-
-#if defined (ACE_WIN32)
-# define ACE_WIN32CALL_RETURN(X,TYPE,FAILVALUE) \
- do { \
- TYPE ace_result_ = (TYPE) X; \
- if (ace_result_ == FAILVALUE) \
- ACE_OS::set_errno_to_last_error (); \
- return ace_result_; \
- } while (0)
-# define ACE_WIN32CALL(X,TYPE,FAILVALUE,RESULT) \
- do { \
- RESULT = (TYPE) X; \
- if (RESULT == FAILVALUE) \
- ACE_OS::set_errno_to_last_error (); \
- } while (0)
-#endif /* ACE_WIN32 */
-
-// The C99 security-improved run-time returns an error value on failure;
-// 0 on success.
-#if defined (ACE_HAS_TR24731_2005_CRT)
-# define ACE_SECURECRTCALL(X,TYPE,FAILVALUE,RESULT) \
- do { \
- errno_t ___ = X; \
- if (___ != 0) { errno = ___; RESULT = FAILVALUE; } \
- } while (0)
-#endif /* ACE_HAS_TR24731_2005_CRT */
-
-// ============================================================================
-// Fundamental types
-// ============================================================================
-
-#if defined (ACE_WIN32)
-
-typedef HANDLE ACE_HANDLE;
-typedef SOCKET ACE_SOCKET;
-# define ACE_INVALID_HANDLE INVALID_HANDLE_VALUE
-
-#else /* ! ACE_WIN32 */
-
-typedef int ACE_HANDLE;
-typedef ACE_HANDLE ACE_SOCKET;
-# define ACE_INVALID_HANDLE -1
-
-#endif /* ACE_WIN32 */
-
-// Define the type that's returned from the platform's native thread
-// functions. ACE_THR_FUNC_RETURN is the type defined as the thread
-// function's return type, except when the thread function doesn't return
-// anything (pSoS). The ACE_THR_FUNC_NO_RETURN_VAL macro is used to
-// indicate that the actual thread function doesn't return anything. The
-// rest of ACE uses a real type so there's no a ton of conditional code
-// everywhere to deal with the possibility of no return type.
-# if defined (ACE_VXWORKS) && !defined (ACE_HAS_PTHREADS)
-# include /**/ <taskLib.h>
-typedef int ACE_THR_FUNC_RETURN;
-#define ACE_HAS_INTEGRAL_TYPE_THR_FUNC_RETURN
-# elif defined (ACE_WIN32)
-typedef DWORD ACE_THR_FUNC_RETURN;
-#define ACE_HAS_INTEGRAL_TYPE_THR_FUNC_RETURN
-# else
-typedef void* ACE_THR_FUNC_RETURN;
-# endif /* ACE_VXWORKS */
-typedef ACE_THR_FUNC_RETURN (*ACE_THR_FUNC)(void *);
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-typedef void (*ACE_THR_C_DEST)(void *);
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-typedef void (*ACE_THR_DEST)(void *);
-
-// Now some platforms have special requirements...
-# if defined (ACE_VXWORKS) && !defined (ACE_HAS_PTHREADS)
-typedef FUNCPTR ACE_THR_FUNC_INTERNAL; // where typedef int (*FUNCPTR) (...)
-# else
-typedef ACE_THR_FUNC ACE_THR_FUNC_INTERNAL;
-# endif /* ACE_VXWORKS */
-
-# ifdef __cplusplus
-extern "C"
-{
-# endif /* __cplusplus */
-# if defined (ACE_VXWORKS) && !defined (ACE_HAS_PTHREADS)
-typedef FUNCPTR ACE_THR_C_FUNC; // where typedef int (*FUNCPTR) (...)
-# else
-typedef ACE_THR_FUNC_RETURN (*ACE_THR_C_FUNC)(void *);
-# endif /* ACE_VXWORKS */
-# ifdef __cplusplus
-}
-# endif /* __cplusplus */
-
-// ============================================================================
-// Macros for controlling the lifetimes of dlls loaded by ACE_DLL--including
-// all dlls loaded via the ACE Service Config framework.
-//
-// Please don't change these values or add new ones wantonly, since we use
-// the ACE_BIT_ENABLED, etc..., macros to test them.
-// ============================================================================
-
-// Per-process policy that unloads dlls eagerly.
-#define ACE_DLL_UNLOAD_POLICY_PER_PROCESS 0
-// Apply policy on a per-dll basis. If the dll doesn't use one of the macros
-// below, the current per-process policy will be used.
-#define ACE_DLL_UNLOAD_POLICY_PER_DLL 1
-// Don't unload dll when refcount reaches zero, i.e., wait for either an
-// explicit unload request or program exit.
-#define ACE_DLL_UNLOAD_POLICY_LAZY 2
-// Default policy allows dlls to control their own destinies, but will
-// unload those that don't make a choice eagerly.
-#define ACE_DLL_UNLOAD_POLICY_DEFAULT ACE_DLL_UNLOAD_POLICY_PER_DLL
-
-// Add this macro you one of your cpp file in your dll. X should
-// be either ACE_DLL_UNLOAD_POLICY_DEFAULT or ACE_DLL_UNLOAD_POLICY_LAZY.
-#define ACE_DLL_UNLOAD_POLICY(CLS,X) \
-extern "C" u_long CLS##_Export _get_dll_unload_policy (void) \
- { return X;}
-
-// ============================================================================
-// ACE_USES_CLASSIC_SVC_CONF macro
-// ============================================================================
-
-// For now, default is to use the classic svc.conf format.
-#if !defined (ACE_USES_CLASSIC_SVC_CONF)
-# if defined (ACE_HAS_CLASSIC_SVC_CONF) && defined (ACE_HAS_XML_SVC_CONF)
-# error You can only use either CLASSIC or XML svc.conf, not both.
-# endif
-// Change the ACE_HAS_XML_SVC_CONF to ACE_HAS_CLASSIC_SVC_CONF when
-// we switch ACE to use XML svc.conf as default format.
-# if defined (ACE_HAS_XML_SVC_CONF)
-# define ACE_USES_CLASSIC_SVC_CONF 0
-# else
-# define ACE_USES_CLASSIC_SVC_CONF 1
-# endif /* ACE_HAS_XML_SVC_CONF */
-#endif /* ACE_USES_CLASSIC_SVC_CONF */
-
-// ============================================================================
-// Default svc.conf file extension.
-// ============================================================================
-#if defined (ACE_USES_CLASSIC_SVC_CONF) && (ACE_USES_CLASSIC_SVC_CONF == 1)
-# define ACE_DEFAULT_SVC_CONF_EXT ".conf"
-#else
-# define ACE_DEFAULT_SVC_CONF_EXT ".conf.xml"
-#endif /* ACE_USES_CLASSIC_SVC_CONF && ACE_USES_CLASSIC_SVC_CONF == 1 */
-
-// ============================================================================
-// Miscellaneous macros
-// ============================================================================
-
-#if defined (ACE_USES_EXPLICIT_STD_NAMESPACE)
-# define ACE_STD_NAMESPACE std
-#else
-# define ACE_STD_NAMESPACE
-#endif
-
-#if !defined (ACE_OS_String)
-# define ACE_OS_String ACE_OS
-#endif /* ACE_OS_String */
-#if !defined (ACE_OS_Memory)
-# define ACE_OS_Memory ACE_OS
-#endif /* ACE_OS_Memory */
-#if !defined (ACE_OS_Dirent)
-# define ACE_OS_Dirent ACE_OS
-#endif /* ACE_OS_Dirent */
-#if !defined (ACE_OS_TLI)
-# define ACE_OS_TLI ACE_OS
-#endif /* ACE_OS_TLI */
-
-// -------------------------------------------------------------------
-// Preprocessor symbols will not be expanded if they are
-// concatenated. Force the preprocessor to expand them during the
-// argument prescan by calling a macro that itself calls another that
-// performs the actual concatenation.
-#define ACE_PREPROC_CONCATENATE_IMPL(A,B) A ## B
-#define ACE_PREPROC_CONCATENATE(A,B) ACE_PREPROC_CONCATENATE_IMPL(A,B)
-// -------------------------------------------------------------------
-
-#endif /* ACE_CONFIG_MACROS_H */
-
diff --git a/dep/include/ace/config-minimal.h b/dep/include/ace/config-minimal.h
deleted file mode 100644
index 5766987f07d..00000000000
--- a/dep/include/ace/config-minimal.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-minimal.h 80826 2008-03-04 14:51:23Z wotte $
-
-// This configuration file is designed to build only the minimal
-// ACE_OS adaptation layer.
-
-#ifndef ACE_CONFIG_MINIMAL_H
-#define ACE_CONFIG_MINIMAL_H
-#include /**/ "ace/pre.h"
-
-#define ACE_HAS_MINIMAL_ACE_OS
-
-// Only instantiate the ACE_OS_Object_Manager.
-#define ACE_MAIN_OBJECT_MANAGER \
- ACE_OS_Object_Manager ace_os_object_manager;
-
-#if !defined(ACE_USE_THREAD_MANAGER_ADAPTER)
- // To prevent use of ACE_Thread_Exit functions in
- // ACE_Thread_Adapter::invoke ().
-# define ACE_USE_THREAD_MANAGER_ADAPTER
-#endif /* ! ACE_USE_THREAD_MANAGER_ADAPTER */
-
-#if defined (ACE_ASSERT)
-# undef ACE_ASSERT
-#endif /* ACE_ASSERT */
-#define ACE_ASSERT(x)
-
-#if defined (ACE_DEBUG)
-# undef ACE_DEBUG
-#endif /* ACE_DEBUG */
-#define ACE_DEBUG(x)
-
-#if defined (ACE_ERROR)
-# undef ACE_ERROR
-#endif /* ACE_ERROR */
-#define ACE_ERROR(x)
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_MINIMAL_H */
-
diff --git a/dep/include/ace/config-mvs.h b/dep/include/ace/config-mvs.h
deleted file mode 100644
index 22ddffee139..00000000000
--- a/dep/include/ace/config-mvs.h
+++ /dev/null
@@ -1,132 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-mvs.h 81992 2008-06-16 19:09:50Z wotte $
-
-// Config file for MVS with OpenEdition
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-#include /**/ "ace/pre.h"
-
-// The following #defines are hacks to get around things
-// that seem to be missing or different in MVS land
-#define MAXPATHLEN 1024 /* sys/param.h not on MVS */
-#define NSIG 44 /* missing from Signal.h */
-#define MAXHOSTNAMELEN 256 /* missing form netdb.h */
-#define howmany __howmany /* MVS uses different names than most others */
-#define fd_mask __fd_mask
-#define MAXNAMLEN __DIR_NAME_MAX
-#if defined (log) /* log is a macro in math.h */
-# undef log /* conflicts with log function in ACE */
-#endif /* log */
-
-#define ACE_MVS
-
-// Preprocesor requires an extra argument
-#ifndef ACE_USING_MCPP_PREPROCESSOR
-# define ACE_CC_PREPROCESSOR_ARGS "-+ -E"
-#endif
-
-// See the README file in this directory
-// for a description of the following ACE_ macros
-
-#if __COMPILER_VER__ >= 0x21020000 /* OS/390 r2 or higher */
-# define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-# define ACE_HAS_UCONTEXT_T
-#else /* __COMPILER_VER__ < 0x21020000 */
-# define ACE_LACKS_UCONTEXT_H
-#endif /* __COMPILER_VER__ < 0x21020000 */
-
-#if __COMPILER_VER__ < 0x22060000 /* before OS/390 r2.6 */
-# define ACE_LACKS_LONGLONG_T
-#endif /* __COMPILER_VER__ < 0x22060000 */
-
-#define ERRMAX __sys_nerr
-
-#define ACE_HAS_3_PARAM_WCSTOK
-#define ACE_HAS_BROKEN_CTIME
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-#define ACE_HAS_CPLUSPLUS_HEADERS
-#define ACE_HAS_DIRENT
-#define ACE_HAS_GETPAGESIZE
-#define ACE_HAS_GETRUSAGE
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-#define ACE_HAS_LIMITED_RUSAGE_T
-#define ACE_HAS_MSG
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#define ACE_HAS_NONSCALAR_THREAD_KEY_T
-#define ACE_HAS_POLL
-#define ACE_HAS_POSIX_NONBLOCK
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_PTHREADS
-#define ACE_HAS_PTHREAD_CONDATTR_SETKIND_NP
-#define ACE_HAS_PTHREAD_MUTEXATTR_SETKIND_NP
-#define ACE_HAS_SIGINFO_T
-#define ACE_HAS_SIGWAIT
-#define ACE_HAS_SIG_ATOMIC_T
-#define ACE_HAS_SIG_C_FUNC
-#define ACE_HAS_SOCKADDR_IN_SIN_LEN
-#define ACE_HAS_SIZET_SOCKET_LEN
-#define ACE_HAS_SSIZE_T
-#define ACE_HAS_STRERROR
-#define ACE_HAS_STRBUF_T
-#define ACE_HAS_STRINGS
-#define ACE_HAS_SYSV_IPC
-#define ACE_HAS_TEMPLATE_TYPEDEFS
-#define ACE_HAS_THREADS
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE
-#define ACE_HAS_THR_C_DEST
-#define ACE_HAS_THR_C_FUNC
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
-#define ACE_HAS_UALARM
-#define ACE_HAS_UTIME
-#define ACE_HAS_VOIDPTR_MMAP
-#define ACE_HAS_VOIDPTR_SOCKOPT
-#define ACE_HAS_XPG4_MULTIBYTE_CHAR
-
-#define ACE_LACKS_CONDATTR_PSHARED
-#define ACE_LACKS_INET_ATON
-#define ACE_LACKS_MSGBUF_T
-#define ACE_LACKS_MUTEXATTR_PSHARED
-#define ACE_LACKS_IOSTREAM_FX
-#define ACE_LACKS_LINEBUFFERED_STREAMBUF
-#define ACE_LACKS_MADVISE
-#define ACE_LACKS_MALLOC_H
-#define ACE_LACKS_PARAM_H
-#define ACE_LACKS_SYS_PARAM_H
-#define ACE_LACKS_PLACEMENT_OPERATOR_DELETE
-#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
-#define ACE_LACKS_READDIR_R
-#define ACE_LACKS_RWLOCK_T
-#define ACE_LACKS_SCHED_H
-#define ACE_LACKS_SETSCHED
-#define ACE_LACKS_SEMAPHORE_H
-#define ACE_LACKS_SIGINFO_H
-#define ACE_LACKS_STDINT_H
-#define ACE_LACKS_SYS_NERR
-#define ACE_LACKS_SYS_SELECT_H
-#define ACE_LACKS_SYS_SYSCTL_H
-#define ACE_LACKS_SYSTIME_H
-#define ACE_LACKS_NETINET_TCP_H
-#define ACE_LACKS_TCP_H
-#define ACE_LACKS_THREAD_PROCESS_SCOPING
-#define ACE_LACKS_PTHREAD_ATTR_SETSTACKADDR
-#define ACE_LACKS_TIMESPEC_T
-
-#if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-#endif
-
-#define ACE_NEEDS_DEV_IO_CONVERSION
-
-#define ACE_SIZEOF_FLOAT 4
-#define ACE_SIZEOF_DOUBLE 8
-#define ACE_SIZEOF_LONG_DOUBLE 16
-#define ACE_HAS_EBCDIC
-
-#define ACE_TEMPLATES_REQUIRE_SOURCE
-
-#define IN_CLASSD(a) ((((in_addr_t)(a)) & 0xf0000000) == 0xe0000000)
-#define IN_MULTICAST(a) IN_CLASSD(a)
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-netbsd.h b/dep/include/ace/config-netbsd.h
deleted file mode 100644
index b05b26e3963..00000000000
--- a/dep/include/ace/config-netbsd.h
+++ /dev/null
@@ -1,168 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-netbsd.h 80826 2008-03-04 14:51:23Z wotte $
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-
-#ifndef ACE_MT_SAFE
-#define ACE_MT_SAFE 1
-#endif
-
-#if defined (__GNUG__)
-# include "ace/config-g++-common.h"
-#endif /* __GNUG__ */
-
-#if defined(ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
-# define ACE_HAS_THREADS 1
-# define ACE_HAS_PTHREADS 1
-# define ACE_HAS_PTHREADS_UNIX98_EXT 1
-# define ACE_HAS_PTHREAD_RESUME_NP 1
-# define ACE_HAS_PTHREAD_SUSPEND_NP 1
-# define ACE_LACKS_PTHREAD_THR_SIGSETMASK 1
-# define ACE_LACKS_PTHREAD_YIELD 1
-#endif /* ACE_MT_SAFE */
-
-#define ACE_HAS_CLOCK_SETTIME 1
-#define ACE_HAS_CLOCK_GETTIME 1
-#define ACE_HAS_SETTIMEOFDAY 1
-#define ACE_HAS_GETTIMEOFDAY 1
-#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R 1
-#define ACE_HAS_3_PARAM_WCSTOK 1
-#define ACE_HAS_3_PARAM_READDIR_R 1
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG 1
-#define ACE_HAS_ALT_CUSERID 1
-#define ACE_HAS_AUTOMATIC_INIT_FINI 1
-#define ACE_HAS_CLOCK_GETTIME 1
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES 1
-#define ACE_HAS_DIRENT 1
-#define ACE_HAS_EXCEPTIONS 1
-#define ACE_HAS_GETIFADDRS 1
-#define ACE_HAS_GETPAGESIZE 1
-#define ACE_HAS_GETPROGNAME 1
-#define ACE_HAS_GETRUSAGE 1
-#define ACE_HAS_GETRUSAGE_PROTOTYPE 1
-#define ACE_HAS_GNU_CSTRING_H 1
-#define ACE_HAS_GPERF 1
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT 1
-#define ACE_HAS_IP_MULTICAST 1
-#define ACE_HAS_MSG 1
-#define ACE_HAS_NEW_NO_H 1
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL 1
-#define ACE_HAS_ONLY_SCHED_OTHER 1
-#define ACE_HAS_POLL 1
-#define ACE_HAS_POSITION_INDEPENDENT_POINTERS 1
-#define ACE_HAS_POSIX_NONBLOCK 1
-#define ACE_HAS_POSIX_TIME 1
-#define ACE_HAS_P_READ_WRITE 1
-#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS 1
-#define ACE_HAS_REENTRANT_FUNCTIONS 1
-#define ACE_HAS_SCANDIR 1
-#define ACE_HAS_SETPROGNAME 1
-#define ACE_HAS_SIGACTION_CONSTP2 1
-#define ACE_HAS_SIGINFO_T 1
-#define ACE_HAS_SIGSUSPEND 1
-#define ACE_HAS_SIGTIMEDWAIT 1
-#define ACE_HAS_SIGWAIT 1
-#define ACE_HAS_SIG_ATOMIC_T 1
-#define ACE_HAS_SIG_C_FUNC 1
-#define ACE_HAS_SOCKADDR_IN_SIN_LEN 1
-#define ACE_HAS_SOCKADDR_IN6_SIN6_LEN 1
-#define ACE_HAS_SOCKADDR_MSG_NAME 1
-#define ACE_HAS_SOCKLEN_T 1
-#define ACE_HAS_SSIZE_T 1
-#define ACE_HAS_STANDARD_CPP_LIBRARY 1
-#define ACE_HAS_STDEXCEPT_NO_H 1
-#define ACE_HAS_STRERROR 1
-#define ACE_HAS_STRINGS 1
-#define ACE_HAS_STRING_CLASS 1
-#define ACE_HAS_SVR4_DYNAMIC_LINKING 1
-#define ACE_HAS_SYSV_IPC 1
-#define ACE_HAS_SYS_ERRLIST 1
-#define ACE_HAS_SYS_FILIO_H 1
-#define ACE_HAS_SYS_SIGLIST 1
-#define ACE_HAS_SYS_SOCKIO_H 1
-#define ACE_HAS_SYS_SYSCALL_H 1
-#define ACE_HAS_SYSCTL
-#define ACE_HAS_TERMIOS 1
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE 1
-#define ACE_HAS_TIMEZONE 1
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY 1
-#define ACE_HAS_UALARM 1
-#define ACE_HAS_UCONTEXT_T 1
-#define ACE_HAS_VOIDPTR_MMAP 1
-#define ACE_HAS_VOIDPTR_SOCKOPT 1
-#define ACE_HAS_WCHAR 1
-#define ACE_HAS_XPG4_MULTIBYTE_CHAR 1
-#define ACE_IOCTL_TYPE_ARG2 u_long
-#define ACE_LACKS_CONDATTR_PSHARED 1
-#define ACE_LACKS_GETHOSTENT 1
-#define ACE_LACKS_GETIPNODEBYADDR 1
-#define ACE_LACKS_GETIPNODEBYNAME 1
-#define ACE_LACKS_IOSTREAM_FX 1
-#define ACE_LACKS_ITOW 1
-#define ACE_LACKS_LINEBUFFERED_STREAMBUF 1
-#define ACE_LACKS_LOG2 1
-#define ACE_LACKS_MSG_ACCRIGHTS 1
-#define ACE_LACKS_MUTEXATTR_PSHARED 1
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS 1
-#define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
-#define ACE_LACKS_PRI_T 1
-#define ACE_LACKS_PTHREAD_THR_SIGSETMASK 1
-#define ACE_LACKS_PTHREAD_YIELD 1
-#define ACE_LACKS_PWD_REENTRANT_FUNCTIONS 1
-#define ACE_LACKS_RWLOCKATTR_PSHARED 1
-#define ACE_LACKS_RWLOCK_T 1
-#define ACE_LACKS_SETSCHED 1
-#define ACE_LACKS_SIGINFO_H 1
-#define ACE_LACKS_STROPTS_H 1
-#define ACE_LACKS_STRRECVFD 1
-#define ACE_LACKS_TIMEDWAIT_PROTOTYPES 1
-#define ACE_LACKS_TIMESPEC_T 1
-#define ACE_LACKS_UNBUFFERED_STREAMBUF 1
-#define ACE_LACKS_WCSDUP 1
-#define ACE_LACKS_WCSICMP 1
-#define ACE_LACKS_WCSNICMP 1
-#define ACE_SCANDIR_CMP_USES_CONST_VOIDPTR 1
-
-#if defined(__x86_64__)
-#define ACE_SIZEOF_DOUBLE 8
-#define ACE_SIZEOF_FLOAT 4
-#define ACE_SIZEOF_INT 4
-#define ACE_SIZEOF_LONG 8
-#define ACE_SIZEOF_LONG_DOUBLE 16
-#define ACE_SIZEOF_LONG_LONG 8
-#define ACE_SIZEOF_SHORT 2
-#define ACE_SIZEOF_VOID_P 8
-#define ACE_SIZEOF_WCHAR 4
-
-typedef unsigned long ACE_UINT64;
-typedef signed long ACE_INT64;
-
-#define ACE_SSIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%ld")
-#define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%lu")
-
-#elif defined(__i386__)
-
-#define ACE_SIZEOF_DOUBLE 8
-#define ACE_SIZEOF_FLOAT 4
-#define ACE_SIZEOF_INT 4
-#define ACE_SIZEOF_LONG 4
-#define ACE_SIZEOF_LONG_DOUBLE 12
-#define ACE_SIZEOF_LONG_LONG 8
-#define ACE_SIZEOF_SHORT 2
-#define ACE_SIZEOF_VOID_P 4
-#define ACE_SIZEOF_WCHAR 4
-
-typedef unsigned long long ACE_UINT64;
-typedef signed long long ACE_INT64;
-
-#else
-# error unknown CPU architecture
-#endif
-
-#endif /* ACE_CONFIG_H */
-
-// Local Variables:
-// mode:C++
-// End:
-
diff --git a/dep/include/ace/config-openbsd.h b/dep/include/ace/config-openbsd.h
deleted file mode 100644
index 10b4f268bcb..00000000000
--- a/dep/include/ace/config-openbsd.h
+++ /dev/null
@@ -1,235 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-openbsd.h 80826 2008-03-04 14:51:23Z wotte $
-
-// The following configuration file is designed to work for OpenBSD
-// platforms using GNU g++.
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-#include /**/ "ace/pre.h"
-
-#if defined (ACE_HAS_THREADS)
-#include /**/ <pthread.h>
-#endif /* ACE_HAS_THREADS */
-
-#include "ace/config-posix.h"
-
-#if ! defined (__ACE_INLINE__)
-#define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-#define ACE_SIZEOF_LONG_DOUBLE 12
-
-#if defined (__GNUG__)
-# include "ace/config-g++-common.h"
-#endif /* __GNUG__ */
-
-// Platform specific directives
-// gcc defines __OpenBSD__ automatically for us.
-#include <sys/param.h>
-
-#if defined (ACE_HAS_THREADS)
-#if !defined (_THREAD_SAFE)
-#define _THREAD_SAFE
-#endif /* _THREAD_SAFE */
-
-// Check if pthreads and native exceptions are being used together.
-// This causes SEGVs to tbe thrown somewhat randomly for some
-// reason. According to newsgroup postings, it appears to be an
-// OpenBSD or gcc bug.
-#if defined (ACE_USES_NATIVE_EXCEPTIONS)
-#error "OpenBSD pthreads and native exceptions currently do not work. See OpenBSD bug #1750"
-#endif /* ACE_USES_NATIVE_EXCEPTIONS */
-
-#endif /* ACE_HAS_THREADS */
-
-#define ACE_HAS_GPERF
-
-// Platform specific directives
-/* Are the following true? */
-#define ACE_LACKS_GETPGID
-#define ACE_LACKS_SETPGID
-#define ACE_LACKS_SETREGID
-#define ACE_LACKS_SETREUID
-
-#define ACE_HAS_ALT_CUSERID
-#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
-
-#define ACE_LACKS_RWLOCK_T
-#define ACE_HAS_SIG_MACROS
-#define ACE_HAS_CHARPTR_DL
-#define ACE_HAS_DIRENT
-
-// OpenBSD 3.6
-#if (OpenBSD < 200411)
-# define ACE_USES_ASM_SYMBOL_IN_DLSYM
-#endif
-
-#define ACE_LACKS_UCONTEXT_H
-
-// ucontext_t is in OpenBSD 3.5 and later.
-#if (OpenBSD >= 200405)
-# define ACE_HAS_UCONTEXT_T
-#endif /* OpenBSD >= 200405 */
-
-// OpenBSD has sigwait defined
-#define ACE_HAS_SIGWAIT
-#define ACE_HAS_SIGINFO_T
-
-#define ACE_HAS_REENTRANT_FUNCTIONS
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-#define ACE_LACKS_PWD_REENTRANT_FUNCTIONS
-#define ACE_LACKS_RAND_REENTRANT_FUNCTIONS
-#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
-
-#define ACE_HAS_SOCKLEN_T
-
-#define ACE_HAS_POLL
-
-// Use of <malloc.h> is deprecated.
-#define ACE_LACKS_MALLOC_H
-
-// NetBSD appears to have a sigset_t type.
-// #define ACE_LACKS_SIGSET
-
-// Platform supports POSIX timers via struct timespec.
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_UALARM
-
-// Platform defines struct timespec but not timespec_t
-#define ACE_LACKS_TIMESPEC_T
-
-#define ACE_LACKS_STDINT_H
-#define ACE_LACKS_STROPTS_H
-#define ACE_LACKS_WCHAR_H
-
-#define ACE_LACKS_STRRECVFD
-
-#define ACE_HAS_SOCKADDR_IN_SIN_LEN
-#define ACE_HAS_SOCKADDR_IN6_SIN6_LEN
-
-// Platform supports System V IPC (most versions of UNIX, but not Win32)
-#define ACE_HAS_SYSV_IPC
-
-// Compiler/platform contains the <sys/syscall.h> file.
-#define ACE_HAS_SYS_SYSCALL_H
-
-// OpenBSD supports the getifaddrs interface
-#define ACE_HAS_GETIFADDRS
-
-// Compiler/platform supports SVR4 signal typedef
-#define ACE_HAS_SVR4_SIGNAL_T
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-
-// Compiler/platform supports alloca().
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//#define ACE_HAS_ALLOCA
-
-// Compiler/platform supports SVR4 dynamic linking semantics..
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-
-// Compiler/platform correctly calls init()/fini() for shared libraries.
-#define ACE_HAS_AUTOMATIC_INIT_FINI
-
-// Explicit dynamic linking permits "lazy" symbol resolution
-#define ACE_HAS_RTLD_LAZY_V
-
-// platform supports POSIX O_NONBLOCK semantics
-#define ACE_HAS_POSIX_NONBLOCK
-
-// platform supports IP multicast
-#define ACE_HAS_IP_MULTICAST
-
-// Lacks perfect filtering, must bind group address.
-#if !defined ACE_LACKS_PERFECT_MULTICAST_FILTERING
-# define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
-#endif /* ACE_LACKS_PERFECT_MULTICAST_FILTERING */
-
-// Compiler/platform has <alloca.h>
-//#define ACE_HAS_ALLOCA_H
-
-// Compiler/platform has the getrusage() system call.
-#define ACE_HAS_GETRUSAGE
-
-// Compiler/platform defines the sig_atomic_t typedef.
-#define ACE_HAS_SIG_ATOMIC_T
-
-// Compiler/platform defines a union semun for SysV shared memory.
-#define ACE_HAS_SEMUN
-
-// Compiler supports the ssize_t typedef.
-#define ACE_HAS_SSIZE_T
-
-// Compiler/platform supports strerror ().
-#define ACE_HAS_STRERROR
-
-// Compiler/platform provides the sockio.h file.
-#define ACE_HAS_SYS_SOCKIO_H
-
-// Defines the page size of the system.
-#define ACE_PAGE_SIZE 4096
-
-// Platform provides <sys/filio.h> header.
-#define ACE_HAS_SYS_FILIO_H
-
-#define ACE_HAS_SYSCTL
-
-// Platform/compiler supports timezone * as second parameter to gettimeofday().
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
-
-// OpenBSD's dlsym call segfaults when passed an invalid handle.
-// It seems as if most other OSs detect this and just report an
-// error.
-#define ACE_HAS_DLSYM_SEGFAULT_ON_INVALID_HANDLE
-
-#define ACE_HAS_MSG
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-#define ACE_HAS_NONCONST_MSGSND
-
-#ifdef ACE_HAS_THREADS
-// Thread specific settings
-
-// And they're even POSIX pthreads
-#if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-#endif /* ! ACE_MT_SAFE */
-#endif /* ACE_HAS_THREADS */
-
-#define ACE_HAS_SIGWAIT
-
-// Optimize ACE_Handle_Set for select().
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#define ACE_LACKS_THREAD_PROCESS_SCOPING
-#define ACE_LACKS_CONDATTR_PSHARED
-#define ACE_LACKS_MUTEXATTR_PSHARED
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE
-#define ACE_HAS_DIRENT
-
-#if !defined (ACE_HAS_THREADS)
-// OpenBSD really has readdir_r () in single threaded mode,
-// but the #ifdefs in OS.i select one with the wrong parameter
-// sets if the ACE_HAS_POSIX_STD isn't defined (which is defined
-// when ACE_HAS_THREADS is defined.)
-
-#define ACE_LACKS_READDIR_R
-
-#endif /* ! ACE_HAD_THREADS */
-
-// Platform has POSIX terminal interface.
-#define ACE_HAS_TERMIOS
-
-// OpenBSD 3.2 lacks sched_setscheduler (see /usr/src/lib/libc_r/TODO)
-#define ACE_LACKS_SETSCHED
-
-// OpenBSD supports IPv6 by default, but ACE IPv6 code
-// has compile errors.
-//#define ACE_HAS_IPV6
-
-#define ACE_HAS_3_PARAM_READDIR_R
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-openvms.h b/dep/include/ace/config-openvms.h
deleted file mode 100644
index 90541513f35..00000000000
--- a/dep/include/ace/config-openvms.h
+++ /dev/null
@@ -1,196 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-openvms.h 81935 2008-06-12 22:01:53Z jtc $
-
-// The following configuration file is designed to work for OpenVMS 7.3-2
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-
-#if !defined (ACE_USE_RCSID)
-# define ACE_USE_RCSID 0
-#endif
-
-#ifdef __cplusplus
-#pragma message disable CODCAUUNR
-#pragma message disable CODEUNREACHABLE
-//#pragma message disable DOLLARID
-//#pragma message disable NOSIMPINT
-//#pragma message disable NOSTDLONGLONG
-#pragma message disable NARROWPTR
-//#pragma message disable LONGEXTERN
-#pragma message disable UNSCOMZER
-#endif
-
-// Use a signed int to match POSIX
-#define __SIGNED_INT_TIME_T
-
-#define ACE_OPENVMS __VMS_VER
-
-#define ACE_DLL_SUFFIX ACE_TEXT("")
-
-#define ACE_HAS_DUMP 1
-
-// need this includes to ensure proper sequence of definitions so that
-// f.i. HP C/C++ does not '#define ' memcpy, memmove etc.
-#include <stdarg.h>
-#include <stdio.h>
-#include <string.h>
-#undef clearerr
-#undef memset
-#undef memcpy
-#undef memmove
-
-#if defined(__ia64__)
- // on OpenVMS IA64 we need this get the singleton exported since we build
- // ACE/TAO with the NOTEMPLATES export option which prohibits exporting
- // of any template symbols unless explicitly exported
- #define ACE_HAS_CUSTOM_EXPORT_MACROS
- #define ACE_Proper_Export_Flag
- #define ACE_Proper_Import_Flag
- #define ACE_EXPORT_SINGLETON_DECLARATION(T) template class __declspec (dllexport) T
- #define ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) template class __declspec (dllexport) SINGLETON_TYPE<CLASS, LOCK>;
-#else
- #define ACE_HAS_EXPLICIT_STATIC_TEMPLATE_MEMBER_INSTANTIATION
-#endif
-
-#define ACE_DEFAULT_BASE_ADDR ((char*)(0x30000000))
-
-#define ACE_MAX_UDP_PACKET_SIZE 65535
-
-#define ACE_HAS_STDCPP_STL_INCLUDES 1
-
-/* missing system headers */
-#define ACE_LACKS_STDINT_H 1
-#define ACE_LACKS_SYS_IPC_H 1
-#define ACE_LACKS_SYS_SEM_H 1
-#define ACE_LACKS_SEMAPHORE_H 1
-#define ACE_LACKS_SYS_SELECT_H 1
-#define ACE_LACKS_TERMIOS_H 1
-#define ACE_LACKS_SYS_SHM_H 1
-#define ACE_LACKS_SYS_MSG_H 1
-#define ACE_LACKS_REGEX_H 1
-#define ACE_LACKS_SEARCH_H 1
-#define ACE_LACKS_SCHED_H 1
-#define ACE_LACKS_SYS_SYSCTL_H 1
-#define ACE_LACKS_MALLOC_H 1
-#define ACE_LACKS_SYS_PARAM_H 1
-#define ACE_LACKS_SIGINFO_H 1
-#define ACE_LACKS_UCONTEXT_H 1
-
-/* missing rtl functions */
-#define ACE_LACKS_SETPGID 1
-#define ACE_LACKS_SETREUID 1
-#define ACE_LACKS_SETREGID 1
-#define ACE_LACKS_FORK 1
-#define ACE_LACKS_GETPGID 1
-#define ACE_LACKS_SETSID 1
-#define ACE_LACKS_FCNTL 1
-#define ACE_LACKS_SETEGID 1
-#define ACE_LACKS_SETEUID 1
-
-#define ACE_LACKS_REALPATH 1
-
-#define ACE_LACKS_SYMLINKS 1
-
-#define ACE_LACKS_PWD_REENTRANT_FUNCTIONS 1
-#define ACE_LACKS_RAND_REENTRANT_FUNCTIONS 1
-
-#define ACE_HAS_P_READ_WRITE
-#define ACE_HAS_CHARPTR_DL 1
-#define ACE_HAS_CLOCK_GETTIME 1
-#define ACE_HAS_CLOCK_SETTIME 1
-#define ACE_HAS_VOIDPTR_GETTIMEOFDAY 1
-#define ACE_HAS_DIRENT 1
-#define ACE_HAS_GETPAGESIZE 1
-#define ACE_HAS_MSG
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL 1
-#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R 1
-#define ACE_HAS_3_PARAM_WCSTOK 1
-#define ACE_HAS_SIGSUSPEND 1
-#define ACE_HAS_SIG_MACROS 1
-#define ACE_HAS_SIGWAIT 1
-#define ACE_HAS_SIGTIMEDWAIT 1
-
-#define ACE_HAS_SIG_C_FUNC 1
-#define ACE_HAS_SIGISMEMBER_BUG
-#define ACE_HAS_STRNLEN 1
-#define ACE_HAS_STREAMS 1
-#define ACE_HAS_STRERROR 1
-#define ACE_HAS_UALARM 1
-#define ACE_HAS_VOIDPTR_MMAP 1
-#define ACE_HAS_VOIDPTR_SOCKOPT 1
-#define ACE_LACKS_LSTAT 1
-#define ACE_LACKS_MADVISE 1
-#define ACE_LACKS_MKFIFO 1
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS 1
-#define ACE_LACKS_READLINK 1
-#define ACE_LACKS_RLIMIT 1
-#define ACE_LACKS_RLIMIT_PROTOTYPE 1
-#define ACE_LACKS_SETSCHED
-#define ACE_LACKS_SYSCALL 1
-#define ACE_LACKS_WCSTOULL 1
-
-/* (missing) standard data types */
-#define ACE_LACKS_CONST_TIMESPEC_PTR 1
-#define ACE_LACKS_SUSECONDS_T 1
-#define ACE_HAS_IDTYPE_T 1
-#define ACE_HAS_SIGINFO_T 1
-#define ACE_HAS_XPG4_MULTIBYTE_CHAR 1
-#define ACE_HAS_SIZET_SOCKET_LEN 1
-#define ACE_HAS_SSIZE_T 1
-#define ACE_LACKS_PRI_T 1
-#define ACE_LACKS_SEMBUF_T 1
-#define ACE_LACKS_STRRECVFD 1
-#define ACE_LACKS_T_ERRNO 1
-
-/* POSIX threads ompatibilities */
-#define ACE_LACKS_RWLOCK_T 1
-#define ACE_LACKS_PTHREAD_KILL 1
-#define ACE_LACKS_THREAD_PROCESS_SCOPING 1
-
-#define ACE_HAS_PTHREADS 1
-#define ACE_HAS_PTHREAD_PROCESS_ENUM 1
-#define ACE_LACKS_UNNAMED_SEMAPHORE 1
-#define ACE_MT_SAFE 1
-#define ACE_HAS_THREADS 1
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE 1
-#define ACE_HAS_THR_C_DEST 1
-#define ACE_HAS_THR_C_FUNC 1
-#define ACE_LACKS_PTHREAD_SIGMASK 1
-#define ACE_LACKS_PTHREAD_THR_SIGSETMASK 1
-#define ACE_NEEDS_HUGE_THREAD_STACKSIZE (64U*1024)
-#define ACE_HAS_PTHREAD_SETCONCURRENCY 1
-#define ACE_HAS_PTHREAD_GETCONCURRENCY 1
-#define ACE_HAS_PTHREAD_SCHEDPARAM 1
-
-/* language/platform conformance */
-#define ACE_NEW_THROWS_EXCEPTIONS 1
-#define ACE_TEMPLATES_REQUIRE_SOURCE 1
-#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-#define ACE_HAS_AUTOMATIC_INIT_FINI 1
-#define ACE_LACKS_UNIX_SIGNALS 1
-
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES 1
-#define ACE_HAS_CPLUSPLUS_HEADERS 1
-#define ACE_HAS_EXCEPTIONS 1
-#define ACE_LACKS_LINEBUFFERED_STREAMBUF 1
-
-#define ACE_HAS_GPERF 1
-#define ACE_HAS_IP_MULTICAST 1
-#define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
-#define ACE_HAS_POSIX_NONBLOCK 1
-#define ACE_HAS_POSIX_TIME 1
-#define ACE_HAS_BROKEN_POSIX_TIME 1
-#define ACE_HAS_STANDARD_CPP_LIBRARY 1
-#define ACE_HAS_STRING_CLASS 1
-#define ACE_HAS_SVR4_DYNAMIC_LINKING 1
-
-#define ACE_HAS_TEMPLATE_TYPEDEFS 1
-#define ACE_LACKS_NAMED_POSIX_SEM 1
-#define ACE_LACKS_SYSV_SHMEM 1
-#define ACE_LACKS_UNIX_DOMAIN_SOCKETS 1
-#define ACE_LACKS_UNIX_SYSLOG 1
-#define ACE_LACKS_ALPHASORT 1
-
-#endif
-
diff --git a/dep/include/ace/config-pharlap.h b/dep/include/ace/config-pharlap.h
deleted file mode 100644
index e0751c32f1c..00000000000
--- a/dep/include/ace/config-pharlap.h
+++ /dev/null
@@ -1,91 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-pharlap.h 81837 2008-06-04 22:48:08Z shuston $
-
-// This configuration file is for use with the PharLap Realtime ETS Kernel.
-// It has been tested with PharLap TNT Embedded ToolSuite version 9.1.
-
-#ifndef ACE_CONFIG_PHARLAP_H
-#define ACE_CONFIG_PHARLAP_H
-#include /**/ "ace/pre.h"
-
-#define ACE_HAS_PHARLAP
-// Some features are only available with the Realtime edition of ETS.
-// Assume that if using ACE, the realtime version is also being used, but
-// allow it to be turned off as well.
-#ifndef ACE_HAS_PHARLAP_RT
-# define ACE_HAS_PHARLAP_RT
-#else
-# if (ACE_HAS_PHARLAP_RT == 0)
-# undef ACE_HAS_PHARLAP_RT
-# endif
-#endif
-
-// Fortunately, PharLap ETS offers much of the Win32 API. But it's still on
-// Winsock 1.1
-#define ACE_HAS_WINSOCK2 0
-
-// The TSS implementation doesn't pass muster on the TSS_Test, but it works
-// well with ACE's TSS emulation.
-#define ACE_HAS_TSS_EMULATION
-
-#define ACE_LACKS_MMAP
-#define ACE_LACKS_MPROTECT
-#define ACE_LACKS_MSYNC
-#define ACE_LACKS_TCP_NODELAY
-#define ACE_LACKS_MSG_WFMO
-#define ACE_LACKS_WIN32_MOVEFILEEX
-#define ACE_LACKS_WIN32_REGISTRY
-#define ACE_LACKS_WIN32_SECURITY_DESCRIPTORS
-#define ACE_LACKS_WIN32_SERVICES
-#define ACE_LACKS_WIN32_SETFILEPOINTEREX
-
-// There's no host table, by default. So using "localhost" won't work.
-// If your system does have the ability to use "localhost" and you want to,
-// define it before including this file.
-#if !defined (ACE_LOCALHOST)
-# define ACE_LOCALHOST "127.0.0.1"
-#endif /* ACE_LOCALHOST */
-
-// The normal Windows default stack size doesn't hold for ETS. Set what you
-// want explicitly.
-#if !defined (ACE_DEFAULT_THREAD_STACKSIZE)
-# define ACE_DEFAULT_THREAD_STACKSIZE (1024*1024)
-#endif /* ACE_DEFAULT_THREAD_STACKSIZE */
-
-// Don't know how to get the page size at execution time. This is most likely
-// the correct value.
-#define ACE_PAGE_SIZE 4096
-
-#if defined (ACE_HAS_PHARLAP_RT)
-# define ACE_HAS_IP_MULTICAST
- // ETS winsock doesn't define IP level socket options
-//# define IP_TOS 8
-#endif /* ACE_HAS_PHARLAP_RT */
-
-// Let the config-win32.h file do its thing
-#undef ACE_CONFIG_H
-#include "ace/config-win32.h"
-// Now remove things that desktop/server Windows has but Pharlap ETS doesn't.
-#undef ACE_HAS_INTERLOCKED_EXCHANGEADD
-#undef ACE_HAS_WCHAR
-
-// PharLap's exports apparantly define LockFile, but it's documented as
-// unsupported. LockFileEx is not present.
-#define ACE_LACKS_FILELOCKS
-
-#include /**/ <embkern.h>
-#if defined (ACE_HAS_PHARLAP_RT)
-# include /**/ <embtcpip.h>
-#define ACE_LACKS_IP_ADD_MEMBERSHIP
-#endif /* ACE_HAS_PHARLAP_RT */
-
-// Although IN_CLASSD is defined in both winsock.h and winsock2.h, it ends
-// up undefined for Pharlap ETS builds. If this is the case, set things up
-// so nothing looks like class D.
-#if !defined (IN_CLASSD)
-# define IN_CLASSD(i) (0)
-#endif
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_PHARLAP_H */
-
diff --git a/dep/include/ace/config-posix-nonetworking.h b/dep/include/ace/config-posix-nonetworking.h
deleted file mode 100644
index 492692179d8..00000000000
--- a/dep/include/ace/config-posix-nonetworking.h
+++ /dev/null
@@ -1,87 +0,0 @@
-/* -*- C -*- */
-// $Id: config-posix-nonetworking.h 80826 2008-03-04 14:51:23Z wotte $
-
-/* The following configuration file is designed to work for RTEMS
- platforms using GNU C.
-*/
-
-#ifndef ACE_CONFIG_POSIX_NONETWORKING_H
-#define ACE_CONFIG_POSIX_NONETWORKING_H
-
-// Missing header files
-# define ACE_LACKS_SYS_UIO_H
-# define ACE_LACKS_SYS_SOCKET_H
-# define ACE_LACKS_NETINET_IN_H
-# define ACE_LACKS_NETDB_H
-# define ACE_LACKS_ARPA_INET_H
-# define ACE_LACKS_SYS_SELECT_H
-# define ACE_LACKS_NET_IF_H
-# define ACE_LACKS_SYSLOG_H
-# define ACE_LACKS_SYS_UN_H
-# define ACE_LACKS_MEMORY_H
-# define ACE_LACKS_SYS_SYSCTL_H
-# define ACE_LACKS_NETINET_TCP_H
-
-// Missing types
-# define ACE_LACKS_IOVEC
-# define ACE_LACKS_IN_ADDR
-# define ACE_LACKS_SOCKADDR_IN
-# define ACE_LACKS_SOCKADDR_UN
-# define ACE_LACKS_HOSTENT
-# define ACE_LACKS_SOCKADDR
-# define ACE_LACKS_IP_MREQ
-# define ACE_LACKS_PROTOENT
-# define ACE_LACKS_SERVENT
-# define ACE_LACKS_IFREQ
-# define ACE_LACKS_IFCONF
-# define ACE_LACKS_LINGER
-
-// Missing methods
-# define ACE_LACKS_GETHOSTBYADDR
-# define ACE_LACKS_GETHOSTBYNAME
-# define ACE_LACKS_GETIPNODEBYADDR
-# define ACE_LACKS_LISTEN
-# define ACE_LACKS_BIND
-# define ACE_LACKS_NTOHL
-# define ACE_LACKS_HTONL
-# define ACE_LACKS_HTONS
-# define ACE_LACKS_NTOHS
-# define ACE_LACKS_SELECT
-# define ACE_LACKS_SOCKET
-# define ACE_LACKS_SHUTDOWN
-# define ACE_LACKS_SETSOCKOPT
-# define ACE_LACKS_INET_ATON
-# define ACE_LACKS_INET_ADDR
-# define ACE_LACKS_INET_NTOA
-# define ACE_LACKS_GET_BCAST_ADDR
-# define ACE_LACKS_GETHOSTENT
-# define ACE_LACKS_GETSERVBYNAME
-# define ACE_LACKS_ACCEPT
-# define ACE_LACKS_CONNECT
-# define ACE_LACKS_GETPEERNAME
-# define ACE_LACKS_GETSOCKNAME
-# define ACE_LACKS_GETSOCKOPT
-# define ACE_LACKS_RECV
-# define ACE_LACKS_SEND
-# define ACE_LACKS_SENDTO
-# define ACE_LACKS_RECVFROM
-# define ACE_LACKS_RECVMSG
-# define ACE_LACKS_SENDMSG
-# define ACE_LACKS_GETHOSTBYADDR_R
-# define ACE_LACKS_GETPROTOBYNAME
-# define ACE_LACKS_GETPROTOBYNUMBER
-# define ACE_LACKS_GETSERVBYNAME
-# define ACE_LACKS_READV
-# define ACE_LACKS_WRITEV
-# define ACE_LACKS_SOCKETPAIR
-# undef ACE_HAS_MSG
-
-// Missing OS features
-# define ACE_LACKS_UNIX_SYSLOG
-# define ACE_LACKS_TCP_NODELAY
-
-// Missing ACE features
-# define ACE_DISABLE_NOTIFY_PIPE_DEFAULT 1
-
-#endif /* ACE_CONFIG_POSIX_NONETWORKING_H */
-
diff --git a/dep/include/ace/config-posix.h b/dep/include/ace/config-posix.h
deleted file mode 100644
index a9cb744435b..00000000000
--- a/dep/include/ace/config-posix.h
+++ /dev/null
@@ -1,74 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-posix.h 82517 2008-08-05 19:36:26Z shuston $
-
-#ifndef ACE_CONFIG_POSIX_H
-#define ACE_CONFIG_POSIX_H
-
-#include <unistd.h>
-
-/* The following POSIX constants are defined after <unistd.h> is
- * included. They are documented in:
- * http://www.opengroup.org/onlinepubs/007904975/basedefs/unistd.h.html
- */
-#if defined(_POSIX_REALTIME_SIGNALS) && (_POSIX_REALTIME_SIGNALS-0 != -1 )
-# if !defined(ACE_HAS_POSIX_REALTIME_SIGNALS)
-# define ACE_HAS_POSIX_REALTIME_SIGNALS
-# endif /* ACE_HAS_POSIX_REALTIME_SIGNALS */
-#endif /* _POSIX_REALTIME_SIGNALS */
-
-#if defined(_POSIX_ASYNCHRONOUS_IO) && (_POSIX_ASYNCHRONOUS_IO-0 != -1 )
-# if !defined(ACE_HAS_AIO_CALLS)
-# define ACE_HAS_AIO_CALLS
-# endif /* ACE_HAS_AIO_CALLS */
-#endif /* _POSIX_ASYNCHRONOUS_IO */
-
-#if !defined (ACE_MT_SAFE) || (ACE_MT_SAFE != 0)
-# if defined(_POSIX_SEMAPHORES) && (_POSIX_SEMAPHORES-0 != -1 )
-# if !defined(ACE_HAS_POSIX_SEM)
-# define ACE_HAS_POSIX_SEM
-# endif /* ACE_HAS_POSIX_SEM */
-# if defined(ACE_HAS_POSIX_SEM)
-# if !defined (ACE_HAS_POSIX_SEM_TIMEOUT) && \
- (defined (_POSIX_TIMEOUTS) && (_POSIX_TIMEOUTS-0 != -1))
-# define ACE_HAS_POSIX_SEM_TIMEOUT
-# endif /* ACE_HAS_POSIX_SEM_TIMEOUT && _POSIX_TIMEOUTS */
-# endif /* ACE_HAS_POSIX_SEM */
-# endif /* ACE_HAS_POSIX_SEM */
-#endif /* !ACE_MT_SAFE */
-
-#if defined(_POSIX_SHARED_MEMORY_OBJECTS) && (_POSIX_SHARED_MEMORY_OBJECTS-0 != -1 )
-# if !defined(ACE_HAS_SHM_OPEN)
-# define ACE_HAS_SHM_OPEN
-# endif /* ACE_HAS_SHM_OPEN */
-#endif /* _POSIX_SHARED_MEMORY_OBJECTS */
-
-// Check if threading enabled/disable through platform_macros
-#if !defined (ACE_MT_SAFE) || (ACE_MT_SAFE != 0)
-// Allow the user to disable use of threads by setting ACE_HAS_THREADS to 0
-// before including this file. The platform config (not macros) file can
-// often detect that the compiler was invoked with or without threads support
-// and set this accordingly.
-# if defined (ACE_HAS_THREADS) && (ACE_HAS_THREADS == 0)
-# undef ACE_HAS_THREADS
-# else
-# if defined(_POSIX_THREADS) && (_POSIX_THREADS-0 != -1 )
-# if !defined(ACE_HAS_THREADS)
-# define ACE_HAS_THREADS
-# endif /* ACE_HAS_THREADS */
-
-# if !defined(ACE_HAS_PTHREADS)
-# define ACE_HAS_PTHREADS
-# endif /* ACE_HAS_PTHREADS */
-
-# endif /* _POSIX_THREADS */
-# endif /* ACE_HAS_THREADS */
-#endif /* !ACE_MT_SAFE */
-
-#if defined(_POSIX_MESSAGE_PASSING) && (_POSIX_MESSAGE_PASSING-0 != -1 )
-# if !defined(ACE_HAS_POSIX_MESSAGE_PASSING)
-# define ACE_HAS_POSIX_MESSAGE_PASSING
-# endif /* ACE_HAS_POSIX_MESSAGE_PASSING */
-#endif /* _POSIX_MESSAGE_PASSING */
-
-#endif /* ACE_CONFIG_POSIX_H */
-
diff --git a/dep/include/ace/config-qnx-neutrino.h b/dep/include/ace/config-qnx-neutrino.h
deleted file mode 100644
index ef37758352a..00000000000
--- a/dep/include/ace/config-qnx-neutrino.h
+++ /dev/null
@@ -1,138 +0,0 @@
-// -*- C++ -*-
-// $Id: config-qnx-neutrino.h 80826 2008-03-04 14:51:23Z wotte $
-// The following configuration file is designed to work for Neutrino
-// 2.0 (Beta) with GNU C++ and the POSIX (pthread) threads package.
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-#include /**/ "ace/pre.h"
-
-#define _POSIX_C_SOURCE 199506
-#define _QNX_SOURCE
-
-// These constants are in i386-nto/include/limits.h, but egcs
-// picks up its own limits.h instead:
-#define _POSIX_NAME_MAX 14 /* Max bytes in a filename */
-#define _POSIX_PATH_MAX 256 /* Num. bytes in pathname (excl. NULL) */
-
-#if defined(__OPTIMIZE__)
-# if defined(__X86__)
- // string.h can't be used by ACE with __OPTIMIZE__.
-# undef __OPTIMIZE__
-# include <string.h>
-# define __OPTIMIZE__
-# endif /* __X86__ */
-#endif /* __OPTIMIZE__ */
-
-#include "ace/config-g++-common.h"
-
-// The following defines the Neutrino compiler.
-// gcc should know to call g++ as necessary
-#ifdef __GNUC__
-# define ACE_CC_NAME ACE_TEXT ("gcc")
-#else
-# define ACE_CC_NAME ACE_TEXT ("NTO compiler ??")
-#endif
-
-// /usr/nto/include/float.h defines
-// FLT_MAX_EXP 127
-// DBL_MAX_EXP 1023
-// ace expects 128 & 1024 respectively
-// to set the following macros in ace/Basic_Types.h
-// These macros are:
-// #define ACE_SIZEOF_DOUBLE 8
-// #define ACE_SIZEOF_FLOAT 4
-
-#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//#define ACE_HAS_ALLOCA
-#define ACE_HAS_ALLOCA_H
-#define ACE_HAS_AUTOMATIC_INIT_FINI
-#define ACE_HAS_CLOCK_GETTIME
-#define ACE_HAS_CLOCK_SETTIME
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-#define ACE_HAS_DIRENT
-#define ACE_HAS_GETPAGESIZE
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
-#define ACE_HAS_INLINED_OSCALLS
-#define ACE_HAS_IP_MULTICAST
-#define ACE_HAS_MSG
-#define ACE_HAS_MT_SAFE_MKTIME
-#define ACE_HAS_MUTEX_TIMEOUTS
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#define ACE_HAS_NONCONST_SWAB
-#define ACE_HAS_POSIX_SEM
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_PTHREADS
-#define ACE_HAS_P_READ_WRITE
-#define ACE_HAS_REENTRANT_FUNCTIONS
-#define ACE_HAS_SELECT_H
-#define ACE_HAS_SIGINFO_T
-#define ACE_HAS_SIGISMEMBER_BUG
-#define ACE_HAS_SIGWAIT
-#define ACE_HAS_SIG_ATOMIC_T
-#define ACE_HAS_SIG_MACROS
-#define ACE_HAS_SOCKADDR_IN_SIN_LEN
-#define ACE_HAS_SSIZE_T
-#define ACE_HAS_STRERROR
-#define ACE_HAS_STRINGS
-#define ACE_HAS_SVR4_GETTIMEOFDAY
-#define ACE_HAS_TERMIOS
-#define ACE_HAS_THREADS
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE
-#define ACE_HAS_THR_C_DEST
-#define ACE_HAS_THR_C_FUNC
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
-#define ACE_HAS_UALARM
-#define ACE_HAS_UCONTEXT_T
-#define ACE_HAS_VOIDPTR_MMAP
-#define ACE_HAS_VOIDPTR_SOCKOPT
-#define ACE_LACKS_CONDATTR_PSHARED
-#define ACE_LACKS_CONST_TIMESPEC_PTR
-#define ACE_LACKS_CUSERID
-#define ACE_LACKS_FORK
-#define ACE_LACKS_LINEBUFFERED_STREAMBUF
-#define ACE_LACKS_MADVISE
-#define ACE_LACKS_MUTEXATTR_PSHARED
-#define ACE_LACKS_NAMED_POSIX_SEM
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-#define ACE_LACKS_POLL_H
-#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
-#define ACE_LACKS_RWLOCK_T
-#define ACE_LACKS_SBRK
-#define ACE_LACKS_SEEKDIR
-#define ACE_LACKS_SOCKET_BUFSIZ
-#define ACE_LACKS_SOCKETPAIR
-#define ACE_LACKS_STROPTS_H
-#define ACE_LACKS_STREAM_MODULES
-#define ACE_LACKS_STRRECVFD
-#define ACE_LACKS_SYSCALL
-#define ACE_LACKS_SYS_MSG_H
-#define ACE_LACKS_SYS_SHM_H
-#define ACE_LACKS_SYSV_SHMEM
-#define ACE_LACKS_TCP_NODELAY
-#define ACE_LACKS_TELLDIR
-#define ACE_LACKS_TIMESPEC_T
-#define ACE_LACKS_TRUNCATE
-#define ACE_LACKS_T_ERRNO
-#define ACE_LACKS_UALARM_PROTOTYPE
-#define ACE_LACKS_UCONTEXT_H
-#define ACE_LACKS_UNIX_DOMAIN_SOCKETS
-#define ACE_LACKS_U_LONGLONG_T
-#define ACE_MT_SAFE 1
-#define ACE_NEEDS_FUNC_DEFINITIONS
-#define ACE_NEEDS_HUGE_THREAD_STACKSIZE 65536
-#define ACE_TEMPLATES_REQUIRE_SOURCE
-#define ACE_THR_PRI_FIFO_DEF 10
-#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-#define ACE_HAS_SIGTIMEDWAIT
-#define ACE_HAS_SIGSUSPEND
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-qnx-rtp-62x.h b/dep/include/ace/config-qnx-rtp-62x.h
deleted file mode 100644
index 5ad3326b412..00000000000
--- a/dep/include/ace/config-qnx-rtp-62x.h
+++ /dev/null
@@ -1,130 +0,0 @@
-// -*- C++ -*-
-// $Id: config-qnx-rtp-62x.h 80826 2008-03-04 14:51:23Z wotte $
-// The following configuration file is designed to work for QNX RTP 621
-// GNU C++ and the POSIX (pthread) threads package. You can get QNX
-// RTP at http://get.qnx.com
-#ifndef ACE_CONFIG_QNX_RTP_62x_H
-#define ACE_CONFIG_QNX_RTP_62x_H
-#include /**/ "ace/pre.h"
-#include /**/ "ace/config-qnx-rtp-common.h"
-
-/////////////////////////////////////////////////////////////////
-// Definition of the features that are available.
-//
-// ACE_HAS Section
-/////////////////////////////////////////////////////////////////
-#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
-#define ACE_HAS_3_PARAM_WCSTOK
-#define ACE_HAS_3_PARAM_READDIR_R
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//#define ACE_HAS_ALLOCA
-#define ACE_HAS_ALLOCA_H
-#define ACE_HAS_ALT_CUSERID
-#define ACE_HAS_AUTOMATIC_INIT_FINI
-#define ACE_HAS_CLOCK_GETTIME
-#define ACE_HAS_CLOCK_SETTIME
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-#define ACE_HAS_DIRENT
-#define ACE_HAS_GETPAGESIZE
-#define ACE_HAS_GETIFADDRS
-// Enable gperf, this is a hosted configuration.
-#define ACE_HAS_GPERF
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-//#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
-#define ACE_HAS_IP_MULTICAST
-#define ACE_HAS_MSG
-#define ACE_HAS_MT_SAFE_MKTIME
-#define ACE_HAS_MUTEX_TIMEOUTS
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#define ACE_HAS_NONCONST_SWAB
-#define ACE_HAS_POSIX_SEM
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_PTHREADS
-#define ACE_HAS_P_READ_WRITE
-#define ACE_HAS_REENTRANT_FUNCTIONS
-#define ACE_HAS_SELECT_H
-#define ACE_HAS_SHM_OPEN
-#define ACE_HAS_SIGINFO_T
-#define ACE_HAS_SIGISMEMBER_BUG
-#define ACE_HAS_SIGWAIT
-#define ACE_HAS_SIG_ATOMIC_T
-#define ACE_HAS_SIG_MACROS
-#define ACE_HAS_SOCKADDR_IN_SIN_LEN
-#define ACE_HAS_SOCKLEN_T
-#define ACE_HAS_SSIZE_T
-#define ACE_HAS_STRERROR
-#define ACE_HAS_STRINGS
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-#define ACE_HAS_SVR4_GETTIMEOFDAY
-#define ACE_HAS_TERMIOS
-#define ACE_HAS_THREADS
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE
-#define ACE_HAS_THR_C_DEST
-#define ACE_HAS_THR_C_FUNC
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
-#define ACE_HAS_UALARM
-#define ACE_HAS_UCONTEXT_T
-#define ACE_HAS_VOIDPTR_MMAP
-#define ACE_HAS_VOIDPTR_SOCKOPT
-
-/////////////////////////////////////////////////////////////////
-// Definition of the features that are not available.
-//
-// ACE_LACKS Section
-/////////////////////////////////////////////////////////////////
-#define ACE_LACKS_CONST_TIMESPEC_PTR
-#define ACE_LACKS_LINEBUFFERED_STREAMBUF
-#define ACE_LACKS_MADVISE
-// lacks mqueue mgr or speed-up named sem by shm emulation
-#define ACE_LACKS_NAMED_POSIX_SEM
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-// Multicast_Tests reports for NTO 621 frames from unsubscribed groups
-#define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
-#define ACE_LACKS_POLL_H
-#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
-#define ACE_LACKS_RWLOCK_T
-#define ACE_LACKS_SOCKET_BUFSIZ
-#define ACE_LACKS_STREAM_MODULES
-#define ACE_LACKS_STROPTS_H
-#define ACE_LACKS_STRPTIME
-#define ACE_LACKS_STRRECVFD
-#define ACE_LACKS_SYSCALL
-#define ACE_LACKS_SYS_MSG_H
-#define ACE_LACKS_SYSV_SHMEM
-#define ACE_LACKS_SYS_SHM_H
-#define ACE_LACKS_TIMESPEC_T
-#define ACE_LACKS_T_ERRNO
-#define ACE_LACKS_U_LONGLONG_T
-#define ACE_LACKS_ALPHASORT
-
-#define ACE_LACKS_RLIMIT // QNX rlimit syscalls don't work properly with ACE.
-
-#define ACE_MT_SAFE 1
-#define ACE_NEEDS_FUNC_DEFINITIONS
-#define ACE_NEEDS_HUGE_THREAD_STACKSIZE 64000
-#define ACE_THR_PRI_FIFO_DEF 10
-#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-#define ACE_HAS_SIGTIMEDWAIT
-#define ACE_HAS_SIGSUSPEND
-
-#define ACE_HAS_BROKEN_PREALLOCATED_OBJECTS_AFTER_FORK 1
-
-#define ACE_SIZEOF_WCHAR 4
-
-// No prototypes
-#define ACE_LACKS_ITOW
-#define ACE_LACKS_WCSICMP
-#define ACE_LACKS_WCSNICMP
-#define ACE_LACKS_WCSDUP
-// The default value of FD_SETSIZE is 32, but actually x86 NTO
-// supports by default at least 1000 descriptors in fd_set.
-#if defined( FD_SETSIZE )
-#undef FD_SETSIZE
-#endif
-#define FD_SETSIZE 1000
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_QNX_RTP_62x_H*/
-
diff --git a/dep/include/ace/config-qnx-rtp-common.h b/dep/include/ace/config-qnx-rtp-common.h
deleted file mode 100644
index ee832adf604..00000000000
--- a/dep/include/ace/config-qnx-rtp-common.h
+++ /dev/null
@@ -1,47 +0,0 @@
-// -*- C++ -*-
-// $Id: config-qnx-rtp-common.h 80826 2008-03-04 14:51:23Z wotte $
-// several macros common to various qnx neutrino version.
-
-#ifndef ACE_CONFIG_QNX_RTP_COMMON_H
-#define ACE_CONFIG_QNX_RTP_COMMON_H
-#include /**/ "ace/pre.h"
-
-#define _POSIX_C_SOURCE 199506
-#define _QNX_SOURCE
-
-// These constants are in i386-nto/include/limits.h, but egcs
-// picks up its own limits.h instead:
-#define _POSIX_NAME_MAX 14 /* Max bytes in a filename */
-#define _POSIX_PATH_MAX 256 /* Num. bytes in pathname (excl. NULL) */
-
-#if defined(__OPTIMIZE__)
-# if defined(__X86__)
- // string.h can't be used by ACE with __OPTIMIZE__.
-# undef __OPTIMIZE__
-# include <string.h>
-# define __OPTIMIZE__
-# endif /* __X86__ */
-#endif /* __OPTIMIZE__ */
-
-#include "ace/config-g++-common.h"
-
-// The following defines the Neutrino compiler.
-// gcc should know to call g++ as necessary
-#ifdef __GNUC__
-# define ACE_CC_NAME ACE_TEXT ("gcc")
-#else
-# define ACE_CC_NAME ACE_TEXT ("QNX-RTP compiler ??")
-#endif
-
-// /usr/nto/include/float.h defines
-// FLT_MAX_EXP 127
-// DBL_MAX_EXP 1023
-// ace expects 128 & 1024 respectively
-// to set the following macros in ace/Basic_Types.h
-// These macros are:
-#define ACE_SIZEOF_DOUBLE 8
-#define ACE_SIZEOF_FLOAT 4
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_QNX_RTP_COMMON_H */
-
diff --git a/dep/include/ace/config-qnx-rtp-pre62x.h b/dep/include/ace/config-qnx-rtp-pre62x.h
deleted file mode 100644
index af55eeb6cae..00000000000
--- a/dep/include/ace/config-qnx-rtp-pre62x.h
+++ /dev/null
@@ -1,152 +0,0 @@
-// -*- C++ -*-
-// $Id: config-qnx-rtp-pre62x.h 80826 2008-03-04 14:51:23Z wotte $
-// The following configuration file is designed to work for QNX RTP
-// GNU C++ and the POSIX (pthread) threads package. You can get QNX
-// RTP at http://get.qnx.com
-
-#ifndef ACE_CONFIG_RTP_PRE62x_H
-#define ACE_CONFIG_RTP_PRE62x_H
-#include /**/ "ace/pre.h"
-#include /**/ "ace/config-qnx-rtp-common.h"
-
-/////////////////////////////////////////////////////////////////
-// Definition of the features that are available.
-//
-// ACE_HAS Section
-/////////////////////////////////////////////////////////////////
-
-#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//#define ACE_HAS_ALLOCA
-#define ACE_HAS_ALLOCA_H
-#define ACE_HAS_AUTOMATIC_INIT_FINI
-#define ACE_HAS_CLOCK_GETTIME
-#define ACE_HAS_CLOCK_SETTIME
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-#define ACE_HAS_DIRENT
-#define ACE_HAS_GETPAGESIZE
-// Enable gperf, this is a hosted configuration.
-#define ACE_HAS_GPERF
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-//#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
-#define ACE_HAS_INLINED_OSCALLS
-#define ACE_HAS_IP_MULTICAST
-#define ACE_HAS_MSG
-#define ACE_HAS_MT_SAFE_MKTIME
-#define ACE_HAS_MUTEX_TIMEOUTS
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#define ACE_HAS_POSIX_SEM
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_PTHREADS
-#define ACE_HAS_P_READ_WRITE
-#define ACE_HAS_REENTRANT_FUNCTIONS
-#define ACE_HAS_SELECT_H
-#define ACE_HAS_SIGINFO_T
-#define ACE_HAS_SIGISMEMBER_BUG
-#define ACE_HAS_SIGWAIT
-#define ACE_HAS_SIG_ATOMIC_T
-#define ACE_HAS_SIG_MACROS
-#define ACE_HAS_SOCKADDR_IN_SIN_LEN
-// #define ACE_HAS_SIZET_SOCKET_LEN
-#define ACE_HAS_SOCKLEN_T
-#define ACE_HAS_SSIZE_T
-#define ACE_HAS_STRERROR
-#define ACE_HAS_STRINGS
-#define ACE_HAS_SVR4_GETTIMEOFDAY
-#define ACE_HAS_TERMIOS
-#define ACE_HAS_THREADS
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE
-#define ACE_HAS_THR_C_DEST
-#define ACE_HAS_THR_C_FUNC
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
-#define ACE_HAS_UALARM
-#define ACE_HAS_UCONTEXT_T
-#define ACE_HAS_VOIDPTR_MMAP
-#define ACE_HAS_VOIDPTR_SOCKOPT
-
-/////////////////////////////////////////////////////////////////
-// Definition of the features that are not available.
-//
-// ACE_LACKS Section
-/////////////////////////////////////////////////////////////////
-#define ACE_LACKS_CONDATTR_PSHARED
-#define ACE_LACKS_CONST_TIMESPEC_PTR
-#define ACE_LACKS_LINEBUFFERED_STREAMBUF
-#define ACE_LACKS_MADVISE
-#define ACE_LACKS_MUTEXATTR_PSHARED
-#define ACE_LACKS_NAMED_POSIX_SEM
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
-#define ACE_LACKS_RWLOCK_T
-#define ACE_LACKS_SBRK
-#define ACE_LACKS_SEEKDIR
-#define ACE_LACKS_SOCKET_BUFSIZ
-#define ACE_LACKS_SOCKETPAIR
-// Even if the QNX RTP docs says that socket pair are
-// available, there is actually no implementation of
-// soket-pairs.
-#define ACE_LACKS_STREAM_MODULES
-#define ACE_LACKS_STRRECVFD
-#define ACE_LACKS_SYSCALL
-#define ACE_LACKS_SYS_MSG_H
-#define ACE_LACKS_SYSV_SHMEM
-#define ACE_LACKS_ALPHASORT
-//#define ACE_LACKS_TCP_NODELAY // Based on the QNX RTP documentation, this option seems to
- // to be supported.
-#define ACE_LACKS_TELLDIR
-#define ACE_LACKS_TIMESPEC_T
-#define ACE_LACKS_TRUNCATE
-#define ACE_LACKS_T_ERRNO
-#define ACE_LACKS_UALARM_PROTOTYPE
-#define ACE_LACKS_UCONTEXT_H
-#define ACE_LACKS_UNIX_DOMAIN_SOCKETS
-#define ACE_LACKS_U_LONGLONG_T
-
-#define ACE_LACKS_RLIMIT // QNX rlimit syscalls don't work properly with ACE.
-
-#define ACE_MT_SAFE 1
-#define ACE_NEEDS_FUNC_DEFINITIONS
-#define ACE_NEEDS_HUGE_THREAD_STACKSIZE 64000
-#define ACE_TEMPLATES_REQUIRE_SOURCE
-#define ACE_THR_PRI_FIFO_DEF 10
-#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-#define ACE_HAS_SIGTIMEDWAIT
-#define ACE_HAS_SIGSUSPEND
-
-#define ACE_HAS_BROKEN_PREALLOCATED_OBJECTS_AFTER_FORK 1
-
-#define ACE_SIZEOF_WCHAR 4
-
-// Not really, but the prototype returns wchar_t instead of wchar_t *
-#define ACE_LACKS_WCSSTR
-
-// No prototypes
-#define ACE_LACKS_ITOW
-#define ACE_LACKS_WCSICMP
-#define ACE_LACKS_WCSNICMP
-#define ACE_LACKS_WCSDUP
-
-// And these have prototypes but no implementation
-#define ACE_LACKS_WCSLEN
-#define ACE_LACKS_WCSNCMP
-#define ACE_LACKS_WCSCPY
-#define ACE_LACKS_WCSNCPY
-#define ACE_LACKS_TOWLOWER
-#define ACE_LACKS_TOWUPPER
-#define ACE_LACKS_WCSCMP
-#define ACE_LACKS_WCSCAT
-#define ACE_LACKS_WCSNCAT
-#define ACE_LACKS_WCSSPN
-#define ACE_LACKS_WCSCHR
-#define ACE_LACKS_WCSPBRK
-#define ACE_LACKS_WCSRCHR
-
-#define ACE_LACKS_ACE_IOSTREAM
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_RTP_PRE62x_H */
-
diff --git a/dep/include/ace/config-qnx-rtp.h b/dep/include/ace/config-qnx-rtp.h
deleted file mode 100644
index a176efd8f3e..00000000000
--- a/dep/include/ace/config-qnx-rtp.h
+++ /dev/null
@@ -1,26 +0,0 @@
-// -*- C++ -*-
-// $Id: config-qnx-rtp.h 80826 2008-03-04 14:51:23Z wotte $
-// The following configuration file is designed to work for QNX RTP
-// GNU C++ and the POSIX (pthread) threads package. You can get QNX
-// RTP at http://get.qnx.com.
-// This header is intended to switch between configuration for
-// various NTO versions.
-#ifndef ACE_CONFIG_QNX_RTP_H
-#define ACE_CONFIG_QNX_RTP_H
-#include /**/ "ace/pre.h"
-
-#include <sys/neutrino.h>
-#if !defined(_NTO_VERSION)
-# error "Could not detect QNX version from macro _NTO_VERSION"
-#else
-# define ACE_NTO_VERS _NTO_VERSION
-# if ACE_NTO_VERS < 620
-# include /**/ "ace/config-qnx-rtp-pre62x.h"
-# else
-# include /**/ "ace/config-qnx-rtp-62x.h"
-# endif
-#endif
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_QNX_RTP_H */
-
diff --git a/dep/include/ace/config-rtems.h b/dep/include/ace/config-rtems.h
deleted file mode 100644
index 558a6e1007c..00000000000
--- a/dep/include/ace/config-rtems.h
+++ /dev/null
@@ -1,166 +0,0 @@
-/* -*- C -*- */
-// $Id: config-rtems.h 80826 2008-03-04 14:51:23Z wotte $
-
-/* The following configuration file is designed to work for RTEMS
- platforms using GNU C.
-*/
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-
-#if ! defined (__ACE_INLINE__)
-#define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-// Needed to make some prototypes visible.
-// #if ! defined (_GNU_SOURCE)
-// #define _GNU_SOURCE
-// #endif /* ! _GNU_SOURCE */
-
-// First the machine specific part
-// There are no known port specific issues with the RTEMS port of ACE.
-// XXX Pentium and PowerPC have high res timer support in ACE.
-
-// Then the compiler specific parts
-#if defined (__GNUG__)
- // config-g-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
- // this must appear before its #include.
-# define ACE_HAS_STRING_CLASS
-# include "ace/config-g++-common.h"
-#else /* ! __GNUG__ */
-# ifdef __cplusplus /* Let it slide for C compilers. */
-# error unsupported compiler in ace/config-rtems.h
-# endif /* __cplusplus */
-#endif /* ! __GNUG__ */
-
-#include "ace/config-posix.h"
-
-// Completely common part :-)
-
-#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
-
-#define ACE_LACKS_ALPHASORT
-#define ACE_LACKS_REGEX_H
-#define ACE_LACKS_STROPTS_H
-#define ACE_LACKS_DLFCN_H
-#define ACE_LACKS_SIGINFO_H
-#define ACE_LACKS_SYS_IPC_H
-#define ACE_LACKS_SYS_SEM_H
-#define ACE_LACKS_STRINGS_H
-#define ACE_LACKS_SYS_SHM_H
-#define ACE_LACKS_SETEGID
-#define ACE_LACKS_SETEUID
-#define ACE_LACKS_POLL_H
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#define ACE_LACKS_STRCASECMP
-#define ACE_LACKS_MKSTEMP
-#define ACE_LACKS_STRDUP
-#define ACE_LACKS_STRTOK_R
-#define ACE_LACKS_RAND_REENTRANT_FUNCTIONS
-#define ACE_LACKS_REALPATH
-#define ACE_LACKS_TEMPNAM
-
-// Temporarily, enabling this results in compile errors with
-// rtems 4.6.6.
-#define ACE_LACKS_WCHAR_H
-
-#if !defined (ACE_MT_SAFE)
-#define ACE_MT_SAFE 1
-#endif
-
-#if ACE_MT_SAFE
-# define ACE_HAS_THREADS
-# define ACE_HAS_PTHREADS
-# define ACE_HAS_THREAD_SPECIFIC_STORAGE
-# define ACE_HAS_PTHREAD_SCHEDPARAM
-# define ACE_LACKS_THREAD_PROCESS_SCOPING
-#else
-# define ACE_HAS_POSIX_GETPWNAM_R
-# define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
-#endif
-
-#define ACE_HAS_ALT_CUSERID
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-#define ACE_HAS_3_PARAM_READDIR_R
-#define ACE_HAS_CLOCK_GETTIME
-#define ACE_HAS_CLOCK_SETTIME
-#define ACE_HAS_DIRENT
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-#define ACE_HAS_MSG
-#define ACE_HAS_MT_SAFE_MKTIME
-#define ACE_HAS_NONCONST_READV
-#define ACE_HAS_GETPAGESIZE
-#define ACE_HAS_POSIX_SEM
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_REENTRANT_FUNCTIONS
-#define ACE_HAS_SIGACTION_CONSTP2
-#define ACE_HAS_SIGINFO_T
-#define ACE_HAS_SIGSUSPEND
-#define ACE_HAS_SSIZE_T
-#define ACE_HAS_STRERROR
-#define ACE_HAS_VOIDPTR_GETTIMEOFDAY
-#define ACE_HAS_SYS_ERRLIST
-#define ACE_HAS_SYS_FILIO_H
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
-#define ACE_LACKS_EXEC
-#define ACE_LACKS_FILELOCKS
-#define ACE_LACKS_FORK
-#define ACE_LACKS_GETPGID
-#define ACE_LACKS_TIMESPEC_T
-#define ACE_LACKS_MADVISE
-#define ACE_LACKS_MMAP
-#define ACE_LACKS_MPROTECT
-#define ACE_LACKS_MSYNC
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
-#define ACE_LACKS_READDIR_R
-#define ACE_LACKS_READLINK
-#define ACE_LACKS_READV
-#define ACE_LACKS_RLIMIT
-#define ACE_LACKS_RLIMIT_PROTOTYPE
-#define ACE_LACKS_RWLOCK_T
-#define ACE_LACKS_SBRK
-#define ACE_LACKS_SEMBUF_T
-#define ACE_LACKS_SETREUID
-#define ACE_LACKS_SETREUID_PROTOTYPE
-#define ACE_LACKS_SETREGID
-#define ACE_LACKS_SETREGID_PROTOTYPE
-#define ACE_LACKS_STRPTIME
-#define ACE_LACKS_STRRECVFD
-#define ACE_LACKS_SI_ADDR
-#define ACE_LACKS_SOCKETPAIR
-#define ACE_LACKS_SYS_MSG_H
-#define ACE_LACKS_SYSV_SHMEM
-#define ACE_LACKS_SYSCALL
-#define ACE_LACKS_UCONTEXT_H
-#define ACE_HAS_NONCONST_WRITEV
-#define ACE_LACKS_WRITEV
-#define ACE_NEEDS_HUGE_THREAD_STACKSIZE 65536
-#define ACE_NEEDS_SCHED_H
-#define ACE_HAS_POSIX_NONBLOCK
-#define ACE_HAS_TERMIOS
-
-// rtems 4.7 or higher
-#if (__RTEMS_MAJOR__ > 4) || (__RTEMS_MAJOR__ == 4 && __RTEMS_MINOR__ > 6)
-# define ACE_HAS_UALARM
-#else
-# define ACE_HAS_NOTSUP_SC_PAGESIZE
-# define ACE_LACKS_SUSECONDS_T
-# define ACE_LACKS_INTPTR_T
-# undef ACE_HAS_SHM_OPEN
-# undef ACE_HAS_AIO_CALLS
-#endif
-
-// __RTEMS_REVISION__ could also be used but this is broken according
-// to the rtems people
-
-#if !defined (_POSIX_REALTIME_SIGNALS)
-# define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-#endif
-
-#if defined (ACE_LACKS_NETWORKING)
-# include "ace/config-posix-nonetworking.h"
-#endif
-
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-sco-5.0.0-nothread.h b/dep/include/ace/config-sco-5.0.0-nothread.h
deleted file mode 100644
index 7d5c4f4ebef..00000000000
--- a/dep/include/ace/config-sco-5.0.0-nothread.h
+++ /dev/null
@@ -1,15 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-sco-5.0.0-nothread.h 80826 2008-03-04 14:51:23Z wotte $
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-#include /**/ "ace/pre.h"
-
-#include "ace/config-g++-common.h"
-#include "ace/config-sco-5.0.0.h"
-
-#define ACE_HAS_GNU_CSTRING_H
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-sco-5.0.0.h b/dep/include/ace/config-sco-5.0.0.h
deleted file mode 100644
index 35c33a43fad..00000000000
--- a/dep/include/ace/config-sco-5.0.0.h
+++ /dev/null
@@ -1,98 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-sco-5.0.0.h 80826 2008-03-04 14:51:23Z wotte $
-
-#ifndef ACE_CONFIG_SCO_5_0_0_H
-#define ACE_CONFIG_SCO_5_0_0_H
-#include /**/ "ace/pre.h"
-
-// Compiling for SCO.
-#if !defined (SCO)
-#define SCO
-#endif /* SCO */
-
-#if defined (SCO) && !defined (MAXPATHLEN)
-#define MAXPATHLEN 1023
-#endif /* SCO */
-
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#define ACE_HAS_SIG_MACROS
-#define ACE_LACKS_CONST_TIMESPEC_PTR
-#define ACE_LACKS_SYSCALL
-#define ACE_LACKS_STRRECVFD
-#define ACE_NEEDS_FTRUNCATE
-#define ACE_LACKS_MADVISE
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-
-#define ACE_DEFAULT_CLOSE_ALL_HANDLES 0
-
-// Platform supports System V IPC (most versions of UNIX, but not Win32)
-#define ACE_HAS_SYSV_IPC
-#define ACE_HAS_NONCONST_MSGSND
-#define ACE_HAS_BIG_FD_SET
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-#define ACE_HAS_AUTOMATIC_INIT_FINI
-
-// Platform has POSIX terminal interface.
-#define ACE_HAS_TERMIOS
-
-// Compiler/platform contains the <sys/syscall.h> file.
-//#define ACE_HAS_SYS_SYSCALL_H
-
-// Fixes a problem with HP/UX not wrapping the mmap(2) header files
-// with extern "C".
-//#define ACE_HAS_BROKEN_MMAP_H
-
-// Prototypes for both signal() and struct sigaction are consistent.
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-
-// Compiler/platform has correctly prototyped header files.
-#define ACE_HAS_CPLUSPLUS_HEADERS
-
-// Header files lack t_errno for ACE_TLI.
-//#define ACE_LACKS_T_ERRNO
-
-// Compiler/platform supports poll().
-// #define ACE_HAS_POLL
-
-// Platform supports POSIX O_NONBLOCK semantics.
-#define ACE_HAS_POSIX_NONBLOCK
-
-// Compiler/platform defines the sig_atomic_t typedef
-#define ACE_HAS_SIG_ATOMIC_T
-
-// Compiler supports the ssize_t typedef.
-//#define ACE_HAS_SSIZE_T
-
-// Defines the page size of the system.
-#define ACE_PAGE_SIZE 4096
-
-// Compiler/platform supports strerror ().
-#define ACE_HAS_STRERROR
-
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
-
-// Note, this only works if the flag is set above!
-//#define ACE_HAS_GETRUSAGE
-
-// Platform uses int for select() rather than fd_set.
-#define ACE_HAS_SELECT_H
-
-// Platform has prototypes for ACE_TLI.
-#define ACE_HAS_TLI_PROTOTYPES
-// Platform has the XLI version of ACE_TLI.
-// #define ACE_HAS_XLI
-
-#define ACE_HAS_SIGINFO_T
-#define ACE_HAS_UCONTEXT_T
-
-#define ACE_LACKS_STRCASECMP
-
-// #define ACE_HAS_POSIX_TIME
-#define ACE_HAS_IP_MULTICAST
-#define ACE_HAS_DIRENT
-#define ACE_LACKS_READDIR_R
-#define ACE_HAS_GPERF
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_SCO_5_0_0_H */
-
diff --git a/dep/include/ace/config-suncc-common.h b/dep/include/ace/config-suncc-common.h
deleted file mode 100644
index 31d424d76b5..00000000000
--- a/dep/include/ace/config-suncc-common.h
+++ /dev/null
@@ -1,68 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: config-suncc-common.h 81935 2008-06-12 22:01:53Z jtc $
-
-#ifndef ACE_SUNCC_COMMON_H
-#define ACE_SUNCC_COMMON_H
-#include /**/ "ace/pre.h"
-
-# define ACE_HAS_CPLUSPLUS_HEADERS
-# define ACE_HAS_STDCPP_STL_INCLUDES
-# define ACE_HAS_TEMPLATE_TYPEDEFS
-# define ACE_HAS_STANDARD_CPP_LIBRARY 1
-# define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
-# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-# define ACE_HAS_STRING_CLASS
-# define ACE_EXPLICIT_TEMPLATE_DESTRUCTOR_TAKES_ARGS
-# define ACE_HAS_THR_C_DEST 1
-# define ACE_LACKS_SWAB
-#if defined (ACE_HAS_CUSTOM_EXPORT_MACROS) && ACE_HAS_CUSTOM_EXPORT_MACROS == 0
-# undef ACE_HAS_CUSTOM_EXPORT_MACROS
-#else
-# ifndef ACE_HAS_CUSTOM_EXPORT_MACROS
-# define ACE_HAS_CUSTOM_EXPORT_MACROS
-# endif /* !ACE_HAS_CUSTOM_EXPORT_MACROS */
-# define ACE_Proper_Export_Flag __attribute__ ((visibility("default")))
-# define ACE_Proper_Import_Flag
-# define ACE_EXPORT_SINGLETON_DECLARATION(T) template class ACE_Proper_Export_Flag T
-# define ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) template class ACE_Proper_Export_Flag SINGLETON_TYPE <CLASS, LOCK>;
-# define ACE_IMPORT_SINGLETON_DECLARATION(T) __extension__ extern template class T
-# define ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) __extension__ extern template class SINGLETON_TYPE<CLASS, LOCK>;
-#endif /* ACE_HAS_CUSTOM_EXPORT_MACROS == 0 */
-
-// __EXCEPTIONS is defined with -fexceptions, the egcs default. It
-// is not defined with -fno-exceptions, the ACE default for g++.
-// ACE_HAS_EXCEPTIONS is defined in
-// include/makeinclude/wrapper_macros.GNU, so this really isn't
-// necessary. Just in case . . .
-# if defined (__EXCEPTIONS) && !defined (ACE_HAS_EXCEPTIONS)
-# define ACE_HAS_EXCEPTIONS
-# endif /* __EXCEPTIONS && ! ACE_HAS_EXCEPTIONS */
-
-# if defined (ACE_HAS_EXCEPTIONS)
-# define ACE_NEW_THROWS_EXCEPTIONS
-# endif /* ACE_HAS_EXCEPTIONS */
-
-#if (defined (i386) || defined (__i386__)) && !defined (ACE_SIZEOF_LONG_DOUBLE)
-# define ACE_SIZEOF_LONG_DOUBLE 12
-#endif /* i386 */
-
-#if defined (i386) || defined (__i386__)
- // If running an Intel, assume that it's a Pentium so that
- // ACE_OS::gethrtime () can use the RDTSC instruction. If running a
- // 486 or lower, be sure to comment this out. (If not running an
- // Intel CPU, this #define will not be seen because of the i386
- // protection, so it can be ignored.)
-# define ACE_HAS_PENTIUM
-#endif /* i386 */
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
- // We define it with a -D with make depend.
-# define ACE_LACKS_PRAGMA_ONCE
-#endif /* ! ACE_LACKS_PRAGMA_ONCE */
-
-#define ACE_TEMPLATES_REQUIRE_SOURCE
-
-#include /**/ "ace/post.h"
-#endif /* ACE_SUNCC_COMMON_H */
-
diff --git a/dep/include/ace/config-sunos5.10.h b/dep/include/ace/config-sunos5.10.h
deleted file mode 100644
index 7ba78c2b3bd..00000000000
--- a/dep/include/ace/config-sunos5.10.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-sunos5.10.h 81805 2008-05-30 10:14:59Z vzykov $
-
-// The following configuration file is designed to work for SunOS 5.10
-// (Solaris 10) platforms using the SunC++ 5.x (Sun Studio 8-10), or g++
-// compilers.
-
-#ifndef ACE_CONFIG_H
-
-// ACE_CONFIG_H is defined by one of the following #included headers.
-
-// #include the SunOS 5.9 config, then add any SunOS 5.10 updates below.
-#include "ace/config-sunos5.9.h"
-
-// Solaris 10 can do sem_timedwait() (see ACE_OS::sema_wait).
-#define ACE_HAS_POSIX_SEM_TIMEOUT
-
-#define ACE_HAS_SCANDIR
-
-// Solaris 10 offers a useable alphasort() unlike previous Solaris versions.
-#if defined (ACE_LACKS_ALPHASORT)
-# undef ACE_LACKS_ALPHASORT
-#endif
-
-// Solaris 10 offers a useable log2() unlike previous Solaris versions.
-#if defined (ACE_LACKS_LOG2)
-# undef ACE_LACKS_LOG2
-#endif
-
-// Solaris 10 delivers pthread_attr_setstack
-#if defined (ACE_LACKS_PTHREAD_ATTR_SETSTACK)
-# undef ACE_LACKS_PTHREAD_ATTR_SETSTACK
-#endif
-
-// Solaris 10 introduced printf() modifiers for [s]size_t types.
-#if defined (ACE_SSIZE_T_FORMAT_SPECIFIER)
-# undef ACE_SSIZE_T_FORMAT_SPECIFIER
-# define ACE_SSIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%zd")
-#endif /* ACE_SSIZE_T_FORMAT_SPECIFIER */
-
-#if defined (ACE_SIZE_T_FORMAT_SPECIFIER)
-# undef ACE_SIZE_T_FORMAT_SPECIFIER
-# define ACE_SIZE_T_FORMAT_SPECIFIER ACE_TEXT ("%zu")
-#endif /* ACE_SIZE_T_FORMAT_SPECIFIER */
-
-// Solaris 10 offers wcstoull()
-#if defined (ACE_LACKS_WCSTOULL)
-# undef ACE_LACKS_WCSTOULL
-#endif /* ACE_LACKS_WCSTOULL */
-
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-sunos5.11.h b/dep/include/ace/config-sunos5.11.h
deleted file mode 100644
index 3f78c9f94e6..00000000000
--- a/dep/include/ace/config-sunos5.11.h
+++ /dev/null
@@ -1,16 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-sunos5.11.h 80826 2008-03-04 14:51:23Z wotte $
-
-// The following configuration file is designed to work for SunOS 5.11
-// (Solaris 11) platforms using the SunC++ 5.x (Sun Studio 10-12), or g++
-// compilers.
-
-#ifndef ACE_CONFIG_H
-
-// ACE_CONFIG_H is defined by one of the following #included headers.
-
-// #include the SunOS 5.10 config, then add any SunOS 5.11 updates below.
-#include "ace/config-sunos5.10.h"
-
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-sunos5.4-g++.h b/dep/include/ace/config-sunos5.4-g++.h
deleted file mode 100644
index 9622a068232..00000000000
--- a/dep/include/ace/config-sunos5.4-g++.h
+++ /dev/null
@@ -1,182 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-sunos5.4-g++.h 81697 2008-05-14 18:33:11Z johnnyw $
-
-// The following configuration file is designed to work for SunOS 5.4
-// platforms using the GNU g++ compiler.
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-#include /**/ "ace/pre.h"
-
-#if ! defined (__ACE_INLINE__)
-# define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-// config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
-// this must appear before its #include.
-#define ACE_HAS_STRING_CLASS
-
-#include "ace/config-g++-common.h"
-#define ACE_HAS_GNU_CSTRING_H
-
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-
-// Platform supports pread() and pwrite()
-#define ACE_HAS_P_READ_WRITE
-
-#define ACE_HAS_XPG4_MULTIBYTE_CHAR
-
-// Platform has POSIX terminal interface.
-#define ACE_HAS_TERMIOS
-
-// Platform supports System V IPC (most versions of UNIX, but not Win32)
-#define ACE_HAS_SYSV_IPC
-
-// Sun has the wrong prototype for sendmsg.
-#define ACE_HAS_NONCONST_SENDMSG
-
-// The SunOS 5.x version of rand_r is inconsistent with the header files...
-#define ACE_HAS_BROKEN_RANDR
-
-// Platform supports system configuration information.
-#define ACE_HAS_SYS_SYSTEMINFO_H
-#define ACE_HAS_SYSINFO
-
-// Platform supports the POSIX regular expression library
-#define ACE_HAS_REGEX
-
-// Platform supports recvmsg and sendmsg.
-#define ACE_HAS_MSG
-
-// Compiler/platform contains the <sys/syscall.h> file.
-#define ACE_HAS_SYS_SYSCALL_H
-
-// Compiler/platform correctly calls init()/fini() for shared libraries.
-#define ACE_HAS_AUTOMATIC_INIT_FINI
-
-// Platform supports POSIX O_NONBLOCK semantics.
-#define ACE_HAS_POSIX_NONBLOCK
-
-// Compiler/platform has correctly prototyped header files.
-#define ACE_HAS_CPLUSPLUS_HEADERS
-
-// Compiler/platform supports SunOS high resolution timers.
-#define ACE_HAS_HI_RES_TIMER
-
-// Platform supports IP multicast
-#define ACE_HAS_IP_MULTICAST
-
-// Compiler/platform supports alloca()
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//#define ACE_HAS_ALLOCA
-
-// Compiler/platform has <alloca.h>
-#define ACE_HAS_ALLOCA_H
-
-// Platform contains <poll.h>.
-#define ACE_HAS_POLL
-
-// Platform supports POSIX timers via timestruc_t.
-#define ACE_HAS_POSIX_TIME
-
-// Platform supports the /proc file system.
-#define ACE_HAS_PROC_FS
-
-// Platform supports the prusage_t struct.
-#define ACE_HAS_PRUSAGE_T
-
-// Compiler/platform defines the sig_atomic_t typedef.
-#define ACE_HAS_SIG_ATOMIC_T
-
-// Platform supports SVR4 extended signals.
-#define ACE_HAS_SIGINFO_T
-#define ACE_HAS_UCONTEXT_T
-
-// Compiler/platform provides the sockio.h file.
-#define ACE_HAS_SYS_SOCKIO_H
-
-// Compiler supports the ssize_t typedef.
-#define ACE_HAS_SSIZE_T
-
-// Platform supports STREAMS.
-#define ACE_HAS_STREAMS
-
-// Platform supports STREAM pipes.
-#define ACE_HAS_STREAM_PIPES
-
-// Compiler/platform supports strerror ().
-#define ACE_HAS_STRERROR
-
-// Compiler/platform supports struct strbuf.
-#define ACE_HAS_STRBUF_T
-
-// Compiler/platform supports SVR4 dynamic linking semantics.
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-
-// Compiler/platform supports SVR4 gettimeofday() prototype.
-#define ACE_HAS_SVR4_GETTIMEOFDAY
-
-// Platform lacks pthread_sigaction
-#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
-
-// Compiler/platform supports SVR4 TLI (in particular, T_GETNAME stuff)...
-#define ACE_HAS_SVR4_TLI
-
-// Platform provides <sys/filio.h> header.
-#define ACE_HAS_SYS_FILIO_H
-
-// Compiler/platform supports sys_siglist array.
-#define ACE_HAS_SYS_SIGLIST
-
-/* Turn off the following defines if you want to disable threading. */
-// Compile using multi-thread libraries.
-#if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-# if !defined (_REENTRANT)
-# define _REENTRANT
-# endif /* _REENTRANT */
-#endif /* !ACE_MT_SAFE */
-
-// Platform supports Solaris threads.
-#define ACE_HAS_STHREADS
-
-// Platform supports threads.
-#define ACE_HAS_THREADS
-
-// Compiler/platform has thread-specific storage
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE
-
-// Platform supports reentrant functions (i.e., all the POSIX *_r functions).
-#define ACE_HAS_REENTRANT_FUNCTIONS
-
-/* end threading defines */
-
-#define ACE_HAS_PRIOCNTL
-#define ACE_NEEDS_LWP_PRIO_SET
-
-// Platform supports TLI timod STREAMS module.
-#define ACE_HAS_TIMOD_H
-
-// Platform supports TLI tiuser header.
-#define ACE_HAS_TIUSER_H
-
-// Platform provides TLI function prototypes.
-#define ACE_HAS_TLI_PROTOTYPES
-
-// Platform supports TLI.
-#define ACE_HAS_TLI
-
-// Use the poll() event demultiplexor rather than select().
-//#define ACE_USE_POLL
-
-// Defines the page size of the system.
-#define ACE_PAGE_SIZE 4096
-#define ACE_HAS_IDTYPE_T
-#define ACE_HAS_GPERF
-#define ACE_HAS_DIRENT
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-sunos5.4-sunc++-4.x.h b/dep/include/ace/config-sunos5.4-sunc++-4.x.h
deleted file mode 100644
index 8714b8d72fc..00000000000
--- a/dep/include/ace/config-sunos5.4-sunc++-4.x.h
+++ /dev/null
@@ -1,191 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-sunos5.4-sunc++-4.x.h 81935 2008-06-12 22:01:53Z jtc $
-
-// The following configuration file is designed to work for SunOS 5.4
-// platforms using the SunC++ 4.0.x compiler.
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-#include /**/ "ace/pre.h"
-
-#if ! defined (__ACE_INLINE__)
-# define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-// Optimize ACE_Handle_Set for select().
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-
-// Platform supports pread() and pwrite()
-#define ACE_HAS_P_READ_WRITE
-
-#define ACE_HAS_XPG4_MULTIBYTE_CHAR
-
-// Platform supports System V IPC (most versions of UNIX, but not Win32)
-#define ACE_HAS_SYSV_IPC
-
-// Sun has the wrong prototype for sendmsg.
-#define ACE_HAS_NONCONST_SENDMSG
-
-// The SunOS 5.x version of rand_r is inconsistent with the header files...
-#define ACE_HAS_BROKEN_RANDR
-
-// Platform supports system configuration information.
-#define ACE_HAS_SYS_SYSTEMINFO_H
-#define ACE_HAS_SYSINFO
-
-// Platform supports the POSIX regular expression library.
-#define ACE_HAS_REGEX
-
-// Platform supports recvmsg and sendmsg.
-#define ACE_HAS_MSG
-
-// Compiler/platform contains the <sys/syscall.h> file.
-#define ACE_HAS_SYS_SYSCALL_H
-
-// Platform has POSIX terminal interface.
-#define ACE_HAS_TERMIOS
-
-// Compiler/platform correctly calls init()/fini() for shared libraries.
-#define ACE_HAS_AUTOMATIC_INIT_FINI
-
-// Platform supports POSIX O_NONBLOCK semantics.
-#define ACE_HAS_POSIX_NONBLOCK
-
-// Compiler/platform has correctly prototyped header files.
-#define ACE_HAS_CPLUSPLUS_HEADERS
-
-// Compiler/platform supports SunOS high resolution timers.
-#define ACE_HAS_HI_RES_TIMER
-
-// Platform supports IP multicast
-#define ACE_HAS_IP_MULTICAST
-
-// Compiler/platform supports alloca()
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//#define ACE_HAS_ALLOCA
-
-// Compiler/platform has <alloca.h>
-#define ACE_HAS_ALLOCA_H
-
-// Platform contains <poll.h>.
-#define ACE_HAS_POLL
-
-// Platform supports POSIX timers via timestruc_t.
-#define ACE_HAS_POSIX_TIME
-
-// Platform supports the /proc file system.
-#define ACE_HAS_PROC_FS
-
-// Platform supports the prusage_t struct.
-#define ACE_HAS_PRUSAGE_T
-
-// Compiler/platform defines the sig_atomic_t typedef.
-#define ACE_HAS_SIG_ATOMIC_T
-
-// Platform supports SVR4 extended signals.
-#define ACE_HAS_SIGINFO_T
-#define ACE_HAS_UCONTEXT_T
-
-// Compiler/platform provides the sockio.h file.
-#define ACE_HAS_SYS_SOCKIO_H
-
-// Compiler supports the ssize_t typedef.
-#define ACE_HAS_SSIZE_T
-
-// Platform supports STREAMS.
-#define ACE_HAS_STREAMS
-
-// Platform supports STREAM pipes.
-#define ACE_HAS_STREAM_PIPES
-
-// Compiler/platform supports strerror ().
-#define ACE_HAS_STRERROR
-
-// Compiler/platform supports struct strbuf.
-#define ACE_HAS_STRBUF_T
-
-// Compiler/platform supports SVR4 dynamic linking semantics.
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-
-// Compiler/platform supports SVR4 gettimeofday() prototype.
-#define ACE_HAS_SVR4_GETTIMEOFDAY
-
-// Compiler/platform supports SVR4 signal typedef.
-#define ACE_HAS_SVR4_SIGNAL_T
-
-// Platform lacks pthread_sigaction
-#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
-
-// Compiler/platform supports SVR4 ACE_TLI (in particular, T_GETNAME stuff)...
-#define ACE_HAS_SVR4_TLI
-
-// Platform provides <sys/filio.h> header.
-#define ACE_HAS_SYS_FILIO_H
-
-// Compiler/platform supports sys_siglist array.
-#define ACE_HAS_SYS_SIGLIST
-
-/* Turn off the following defines if you want to disable threading. */
-// Compile using multi-thread libraries.
-#if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-#endif
-
-// Platform supports Solaris threads.
-#define ACE_HAS_STHREADS
-
-// Platform supports threads.
-#define ACE_HAS_THREADS
-
-// Compiler/platform has thread-specific storage
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE
-
-// Platform supports reentrant functions (i.e., all the POSIX *_r functions).
-#define ACE_HAS_REENTRANT_FUNCTIONS
-
-/* end threading defines */
-
-#define ACE_HAS_PRIOCNTL
-#define ACE_NEEDS_LWP_PRIO_SET
-
-// Reactor detects deadlock
-// #define ACE_REACTOR_HAS_DEADLOCK_DETECTION
-
-// Platform supports ACE_TLI timod STREAMS module.
-#define ACE_HAS_TIMOD_H
-
-// Platform supports ACE_TLI tiuser header.
-#define ACE_HAS_TIUSER_H
-
-// Platform provides ACE_TLI function prototypes.
-#define ACE_HAS_TLI_PROTOTYPES
-
-// Platform supports ACE_TLI.
-#define ACE_HAS_TLI
-
-#define ACE_LACKS_LINEBUFFERED_STREAMBUF
-#define ACE_LACKS_SIGNED_CHAR
-
-// Use the poll() event demultiplexor rather than select().
-//#define ACE_USE_POLL
-
-#define ACE_NEEDS_DEV_IO_CONVERSION
-
-// Defines the page size of the system.
-#define ACE_PAGE_SIZE 4096
-#define ACE_HAS_IDTYPE_T
-
-#define ACE_HAS_GPERF
-#define ACE_HAS_DIRENT
-
-# if defined (ACE_HAS_EXCEPTIONS)
- // If exceptions are enabled and we are using Sun/CC then
- // <operator new> throws an exception instead of returning 0.
-# define ACE_NEW_THROWS_EXCEPTIONS
-# endif /* ACE_HAS_EXCEPTIONS */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-sunos5.5.h b/dep/include/ace/config-sunos5.5.h
deleted file mode 100644
index d1148c6b0c3..00000000000
--- a/dep/include/ace/config-sunos5.5.h
+++ /dev/null
@@ -1,417 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-sunos5.5.h 81971 2008-06-16 12:15:00Z parsons $
-
-// This configuration file is designed to work for SunOS 5.5 platforms
-// using the following compilers:
-// * Sun C++ 4.2 and later (including 5.x), patched as noted below
-// * g++ 2.7.2 and later, including egcs
-// * Green Hills 1.8.8 and later
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-#include /**/ "ace/pre.h"
-
-#define ACE_LACKS_STDINT_H
-
-// alphasort() is present on earlier Solaris versions but is marked as not for
-// use on non-BSD systems and not supported for use in applications that use
-// system libraries or with multiple threads. So it's mostly useless.
-#define ACE_LACKS_ALPHASORT
-
-// Solaris doesn't support log2()
-#define ACE_LACKS_LOG2
-
-// SunOS 5.5 does not provide getloadavg()
-#define ACE_LACKS_GETLOADAVG
-
-// Before we do anything, we should include <sys/feature_tests.h> to
-// ensure that things are set up properly.
-#include <sys/feature_tests.h>
-
-// Sun has the posix defines so let this file sort out what Sun delivers
-#include "ace/config-posix.h"
-
-// Compiler version-specific settings:
-#if defined (__SUNPRO_CC)
-# if (__SUNPRO_CC < 0x410)
- // The following might not be necessary, but I can't tell: my build
- // with Sun C++ 4.0.1 never completes.
-# define ACE_NEEDS_DEV_IO_CONVERSION
-# elif (__SUNPRO_CC >= 0x420)
-# if (__SUNPRO_CC >= 0x500)
- // string.h and memory.h conflict for memchr definitions
-# define ACE_LACKS_MEMORY_H
- // If -compat=4 is turned on, the old 4.2 settings for iostreams are used,
- // but the newer, explicit instantiation is used (above)
-# if (__SUNPRO_CC_COMPAT >= 5)
-# define ACE_HAS_TEMPLATE_TYPEDEFS
-# define ACE_HAS_STANDARD_CPP_LIBRARY 1
-# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-# define ACE_HAS_THR_C_DEST
-# endif /* __SUNPRO_CC_COMPAT >= 5 */
-# if defined (ACE_HAS_EXCEPTIONS)
-# define ACE_HAS_NEW_NOTHROW
-# else
- // See /opt/SUNWspro_5.0/SC5.0/include/CC/stdcomp.h:
-# define _RWSTD_NO_EXCEPTIONS 1
-# endif /* ! ACE_HAS_EXCEPTIONS */
-# elif (__SUNPRO_CC == 0x420) || (__SUNPRO_CC == 0x410)
-# define ACE_LACKS_PLACEMENT_OPERATOR_DELETE
-# endif /* __SUNPRO_CC >= 0x500 */
-# endif /* __SUNPRO_CC >= 0x420 */
-
-# define ACE_CAST_CONST const
-# define ACE_HAS_HI_RES_TIMER
-# define ACE_HAS_SIG_C_FUNC /* Sun CC 5.0 needs this, 4.2 doesn't mind. */
-# define ACE_HAS_XPG4_MULTIBYTE_CHAR
-# define ACE_LACKS_LINEBUFFERED_STREAMBUF
-# define ACE_LACKS_SIGNED_CHAR
-
- // ACE_HAS_EXCEPTIONS precludes -noex in
- // include/makeinclude/platform_macros.GNU. But beware, we have
- // seen problems with exception handling on multiprocessor
- // UltraSparcs: threaded executables core dump when threads exit.
- // This problem does not seem to appear on single-processor UltraSparcs.
- // And, it is solved with the application of patch
- // 104631-02 "C++ 4.2: Jumbo Patch for C++ 4.2 on Solaris SPARC"
- // to Sun C++ 4.2.
- // To provide optimum performance, ACE_HAS_EXCEPTIONS is disabled by
- // default. It can be enabled by adding "exceptions=1" to the "make"
- // invocation. See include/makeinclude/platform_sunos5_sunc++.GNU
- // for details.
-
-# if defined (ACE_HAS_EXCEPTIONS)
- // If exceptions are enabled and we are using Sun/CC then
- // <operator new> throws an exception instead of returning 0.
-# define ACE_NEW_THROWS_EXCEPTIONS
-# endif /* ACE_HAS_EXCEPTIONS */
-
- /* If you want to disable threading with Sun CC, remove -mt
- from your CFLAGS, e.g., using make threads=0. */
-
-// Take advantage of Sun Studio 8 (Sun C++ 5.5) or better symbol
-// visibility to generate improved shared library binaries.
-# if (__SUNPRO_CC > 0x540)
-
-# if defined (ACE_HAS_CUSTOM_EXPORT_MACROS) && ACE_HAS_CUSTOM_EXPORT_MACROS == 0
-# undef ACE_HAS_CUSTOM_EXPORT_MACROS
-# else
-# ifndef ACE_HAS_CUSTOM_EXPORT_MACROS
-# define ACE_HAS_CUSTOM_EXPORT_MACROS
-# endif /* !ACE_HAS_CUSTOM_EXPORT_MACROS */
-# define ACE_Proper_Export_Flag __symbolic
-# define ACE_Proper_Import_Flag __global
-
-# define ACE_EXPORT_SINGLETON_DECLARATION(T) template class ACE_Proper_Export_Flag T
-# define ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) template class ACE_Proper_Export_Flag SINGLETON_TYPE <CLASS, LOCK>;
-
-// # define ACE_IMPORT_SINGLETON_DECLARATION(T) extern template class T
-// # define ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) extern template class SINGLETON_TYPE<CLASS, LOCK>;
-
-# endif /* ACE_HAS_CUSTOM_EXPORT_MACROS == 0 */
-# endif /* __SUNPRO_CC > 0x540 (> Sun C++ 5.4) */
-
-#elif defined (__GNUG__)
- // config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
- // this must appear before its #include.
-# define ACE_HAS_STRING_CLASS
-# include "ace/config-g++-common.h"
-# define ACE_HAS_HI_RES_TIMER
- // Denotes that GNU has cstring.h as standard, to redefine memchr().
-# define ACE_HAS_GNU_CSTRING_H
-# define ACE_HAS_XPG4_MULTIBYTE_CHAR
-
-# if !defined (ACE_MT_SAFE) || ACE_MT_SAFE != 0
- // ACE_MT_SAFE is #defined below, for all compilers.
-# if !defined (_REENTRANT)
- /* If you want to disable threading, comment out the following
- line. Or, add -DACE_MT_SAFE=0 to your CFLAGS, e.g., using
- make threads=0. */
-# define _REENTRANT
-# endif /* _REENTRANT */
-# endif /* !ACE_MT_SAFE */
-
-#elif defined (ghs)
-
-# if !defined (ACE_MT_SAFE) || ACE_MT_SAFE != 0
- // ACE_MT_SAFE is #defined below, for all compilers.
-# if !defined (_REENTRANT)
- /* If you want to disable threading, comment out the following
- line. Or, add -DACE_MT_SAFE=0 to your CFLAGS, e.g., using
- make threads=0. */
-# define _REENTRANT
-# endif /* _REENTRANT */
-# endif /* !ACE_MT_SAFE */
-
-# define ACE_CONFIG_INCLUDE_GHS_COMMON
-# include "ace/config-ghs-common.h"
-
- // To avoid warning about inconsistent declaration between Sun's
- // stdlib.h and Green Hills' ctype.h.
-# include <stdlib.h>
-
- // IOStream_Test never halts with Green Hills 1.8.9.
-# define ACE_LACKS_ACE_IOSTREAM
-
-#else /* ! __SUNPRO_CC && ! __GNUG__ && ! ghs */
-# ifdef __cplusplus /* Let it slide for C compilers. */
-# error unsupported compiler in ace/config-sunos5.5.h
-# endif /* __cplusplus */
-#endif /* ! __SUNPRO_CC && ! __GNUG__ && ! ghs */
-
-#if !defined (__ACE_INLINE__)
-// @note If you have link problems with undefined inline template
-// functions with Sun C++, be sure that the #define of __ACE_INLINE__
-// below is not commented out.
-# define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-// Platform supports the POSIX regular expression library.
-// @note Please comment out the ACE_HAS_REGEX #define if you
-// have link problems with g++ or egcs on SunOS 5.5.
-#define ACE_HAS_REGEX
-
-// Optimize ACE_Handle_Set for select().
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-
-// select()'s timeval arg is not declared as const and may be modified
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-
-// Platform supports pread() and pwrite()
-#define ACE_HAS_P_READ_WRITE
-#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
-#define ACE_HAS_UALARM
-#define ACE_LACKS_UALARM_PROTOTYPE
-
-// Platform supports System V IPC (most versions of UNIX, but not Win32)
-#define ACE_HAS_SYSV_IPC
-
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-
-// Platform supports system configuration information.
-#define ACE_HAS_SYS_SYSTEMINFO_H
-#define ACE_HAS_SYSINFO
-
-// Platform supports recvmsg and sendmsg.
-#define ACE_HAS_MSG
-
-// Compiler/platform contains the <sys/syscall.h> file.
-#define ACE_HAS_SYS_SYSCALL_H
-
-// Platform has POSIX terminal interface.
-#define ACE_HAS_TERMIOS
-
-// Compiler/platform correctly calls init()/fini() for shared libraries.
-#define ACE_HAS_AUTOMATIC_INIT_FINI
-
-// Platform supports POSIX O_NONBLOCK semantics.
-#define ACE_HAS_POSIX_NONBLOCK
-
-// Compiler/platform has correctly prototyped header files.
-#define ACE_HAS_CPLUSPLUS_HEADERS
-
-// Platform supports IP multicast
-#define ACE_HAS_IP_MULTICAST
-
-// This setting was determined by running the autoconf tests. If it doesn't
-// work uniformly, will need some tweaking, possibly based on other
-// XPG feature-test macros.
-#define ACE_HAS_CONST_CHAR_SWAB
-
-// Compiler/platform supports alloca()
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//#define ACE_HAS_ALLOCA
-
-// Compiler/platform has <alloca.h>
-#define ACE_HAS_ALLOCA_H
-
-// Platform contains <poll.h>.
-#define ACE_HAS_POLL
-
-// Platform supports POSIX timers via timestruc_t.
-#define ACE_HAS_POSIX_TIME
-
-// ACE_HAS_CLOCK_GETTIME requires linking with -lposix4.
-#define ACE_HAS_CLOCK_GETTIME
-#define ACE_HAS_CLOCK_SETTIME
-
-// Platform supports the /proc file system.
-#define ACE_HAS_PROC_FS
-
-// Platform supports the prusage_t struct.
-#define ACE_HAS_PRUSAGE_T
-#define ACE_HAS_GETRUSAGE
-
-// Compiler/platform defines the sig_atomic_t typedef.
-#define ACE_HAS_SIG_ATOMIC_T
-
-// Platform supports SVR4 extended signals.
-#define ACE_HAS_SIGINFO_T
-#define ACE_HAS_UCONTEXT_T
-
-// Compiler/platform provides the sockio.h file.
-#define ACE_HAS_SYS_SOCKIO_H
-
-// Compiler supports the ssize_t typedef.
-#define ACE_HAS_SSIZE_T
-
-// Platform supports STREAMS.
-#define ACE_HAS_STREAMS
-
-// Platform supports STREAM pipes.
-#define ACE_HAS_STREAM_PIPES
-
-// Compiler/platform supports strerror ().
-#define ACE_HAS_STRERROR
-
-// Compiler/platform supports struct strbuf.
-#define ACE_HAS_STRBUF_T
-
-// Compiler/platform supports SVR4 dynamic linking semantics.
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-
-// Compiler/platform supports SVR4 gettimeofday() prototype.
-#define ACE_HAS_SVR4_GETTIMEOFDAY
-
-// Compiler/platform supports SVR4 ACE_TLI (in particular, T_GETNAME stuff)...
-#define ACE_HAS_SVR4_TLI
-
-// Platform provides <sys/filio.h> header.
-#define ACE_HAS_SYS_FILIO_H
-
-// Compiler/platform supports sys_siglist array.
-#define ACE_HAS_SYS_SIGLIST
-
-// SunOS 5.5.x does not support mkstemp
-#define ACE_LACKS_MKSTEMP
-#define ACE_LACKS_SYS_SYSCTL_H
-
-#if !(defined(_XOPEN_SOURCE) && (_XOPEN_VERSION - 0 >= 4))
-# define ACE_HAS_CHARPTR_SHMDT
-#endif
-
-// Platform has posix getpwnam_r
-#if (defined (_POSIX_C_SOURCE) && _POSIX_C_SOURCE - 0 >= 199506L) || \
- defined(_POSIX_PTHREAD_SEMANTICS)
-# define ACE_HAS_POSIX_GETPWNAM_R
-#endif /* _POSIX_C_SOURCE || _POSIX_PTHREAD_SEMANTICS */
-
-#if !defined (ACE_MT_SAFE) || (ACE_MT_SAFE == 1)
-#if defined (_REENTRANT) || \
- (defined (_POSIX_C_SOURCE) && (_POSIX_C_SOURCE - 0 >= 199506L)) || \
- defined (_POSIX_PTHREAD_SEMANTICS)
- // Compile using multi-thread libraries.
-# define ACE_HAS_THREADS
-
-# if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-# endif /* ACE_MT_SAFE */
-
- // Platform supports POSIX pthreads *and* Solaris threads, by
- // default! If you only want to use POSIX pthreads, add
- // -D_POSIX_PTHREAD_SEMANTICS to your CFLAGS. Or, #define it right
- // here. See the Intro (3) man page for information on
- // -D_POSIX_PTHREAD_SEMANTICS.
-# if defined (_POSIX_PTHREAD_SEMANTICS)
-# define ACE_LACKS_RWLOCK_T
-# else
-# define ACE_HAS_STHREADS
-# endif /* ! _POSIX_PTHREAD_SEMANTICS */
-
-# define ACE_HAS_PTHREADS
- // . . . but only supports SCHED_OTHER scheduling policy
-# define ACE_HAS_ONLY_SCHED_OTHER
-# define ACE_HAS_SIGWAIT
-# define ACE_HAS_SIGTIMEDWAIT
-# define ACE_HAS_SIGSUSPEND
-# define ACE_LACKS_PTHREAD_ATTR_SETSTACK
-
- // Compiler/platform has thread-specific storage
-# define ACE_HAS_THREAD_SPECIFIC_STORAGE
-
- // Platform supports reentrant functions (i.e., all the POSIX *_r functions).
-# define ACE_HAS_REENTRANT_FUNCTIONS
-
-# define ACE_NEEDS_LWP_PRIO_SET
-# define ACE_HAS_THR_YIELD
-# define ACE_LACKS_PTHREAD_YIELD
-#endif /* _REENTRANT || _POSIX_C_SOURCE >= 199506L || \
- _POSIX_PTHREAD_SEMANTICS */
-#endif /* !ACE_MT_SAFE || ACE_MT_SAFE == 1 */
-
-#define ACE_HAS_PRIOCNTL
-
-// Platform supports ACE_TLI timod STREAMS module.
-#define ACE_HAS_TIMOD_H
-
-// Platform supports ACE_TLI tiuser header.
-#define ACE_HAS_TIUSER_H
-
-// Platform provides ACE_TLI function prototypes.
-#define ACE_HAS_TLI_PROTOTYPES
-
-// Platform has broken t_error() prototype.
-#define ACE_HAS_BROKEN_T_ERROR
-
-// Platform supports ACE_TLI.
-#define ACE_HAS_TLI
-
-#define ACE_HAS_GETPAGESIZE 1
-
-#define ACE_HAS_STL_MAP_CONFLICT
-
-#define ACE_HAS_IDTYPE_T
-
-#define ACE_HAS_GPERF
-#define ACE_HAS_DIRENT
-
-#if defined (__SUNPRO_CC)
-# define ACE_CC_NAME ACE_TEXT ("SunPro C++")
-# define ACE_CC_MAJOR_VERSION (__SUNPRO_CC >> 8)
-# define ACE_CC_MINOR_VERSION (__SUNPRO_CC & 0x00ff)
-# define ACE_CC_BETA_VERSION (0)
-#elif defined (__GNUG__)
-# define ACE_CC_MAJOR_VERSION __GNUC__
-# define ACE_CC_MINOR_VERSION __GNUC_MINOR__
-# define ACE_CC_BETA_VERSION (0)
-# if __GNUC_MINOR__ >= 90
-# define ACE_CC_NAME ACE_TEXT ("egcs")
-# else
-# define ACE_CC_NAME ACE_TEXT ("g++")
-# endif /* __GNUC_MINOR__ */
-#endif /* __GNUG__ */
-
-#if defined (i386) && (_FILE_OFFSET_BITS==32)
-# define ACE_HAS_X86_STAT_MACROS
-#endif /* i386 && _FILE_OFFSET_BITS==32 */
-
-#define ACE_MALLOC_ALIGN ((size_t)8)
-#define ACE_LACKS_SETREUID_PROTOTYPE
-#define ACE_LACKS_SETREGID_PROTOTYPE
-
-// Solaris does indeed implement the inet_aton() function, but it is
-// found in `libresolv.*'. It doesn't seem worth it to link another
-// library just for that function. Just use the emulation in ACE that
-// has been used for years.
-#define ACE_LACKS_INET_ATON
-
-// Solaris doesn't have wcstoull
-#define ACE_LACKS_WCSTOULL
-
-#if defined (_LARGEFILE_SOURCE) || (_FILE_OFFSET_BITS==64)
-#undef ACE_HAS_PROC_FS
-#undef ACE_HAS_PRUSAGE_T
-#endif /* (_LARGEFILE_SOURCE) || (_FILE_OFFSET_BITS==64) */
-
-#if defined (_POSIX_PTHREAD_SEMANTICS) || (_FILE_OFFSET_BITS == 64) || (_POSIX_C_SOURCE - 0 >= 199506L)
-# define ACE_HAS_3_PARAM_READDIR_R
-#endif
-
-// Sum of the iov_len values can't be larger then SSIZE_MAX
-#define ACE_HAS_SOCK_BUF_SIZE_MAX
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-sunos5.6.h b/dep/include/ace/config-sunos5.6.h
deleted file mode 100644
index 01855ba37c8..00000000000
--- a/dep/include/ace/config-sunos5.6.h
+++ /dev/null
@@ -1,126 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-sunos5.6.h 81935 2008-06-12 22:01:53Z jtc $
-
-// The following configuration file is designed to work for SunOS 5.6
-// platforms using the SunC++ 4.x or g++ compilers.
-
-#ifndef ACE_CONFIG_H
-
-// ACE_CONFIG_H is defined by one of the following #included headers.
-
-// #include the SunOS 5.5 config file, then add SunOS 5.6 updates below.
-
-#include "ace/config-sunos5.5.h"
-
-#if (defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE > 2) || \
- defined (__EXTENSIONS__)
-// The asctime_r/ctime_r parameters change at POSIX.1c-1995
-# if (defined (_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 199506L)
-# define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
-# endif /* POSIX_C_SOURCE >= 199506L */
-# define ACE_HAS_SIGWAIT
-// Hack 'cuz _POSIX_C_SOURCE > 2 and -DEXTENSIONS hides this.
-# define ACE_LACKS_MADVISE_PROTOTYPE
-#endif /* _POSIX_C_SOURCE > 2 || __EXTENSIONS__ */
-
-// Support for the SunC++ 5.2 compiler.
-// Do not undefine for compat mode < 5
-#if defined (__SUNPRO_CC) && __SUNPRO_CC > 0x510
-#if defined (__SUNPRO_CC_COMPAT) && (__SUNPRO_CC_COMPAT >= 5)
-#ifdef ACE_LACKS_ACE_IOSTREAM
-#undef ACE_LACKS_ACE_IOSTREAM
-#endif /* ACE_LACKS_ACE_IOSTREAM */
-#endif /* defined (__SUNPRO_CC_COMPAT) && (__SUNPRO_CC_COMPAT >= 5) */
-
-#ifndef ACE_LACKS_UNBUFFERED_STREAMBUF
-#define ACE_LACKS_UNBUFFERED_STREAMBUF 1
-#endif /* ACE_LACKS_UNBUFFERED_STREAMBUF */
-#ifndef ACE_TEMPLATES_REQUIRE_SOURCE
-#define ACE_TEMPLATES_REQUIRE_SOURCE 1
-#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
-#ifndef ACE_HAS_TEMPLATE_TYPEDEFS
-#define ACE_HAS_TEMPLATE_TYPEDEFS 1
-#endif /* ACE_HAS_TEMPLATE_TYPEDEFS */
-// Forte 7 seems to botch this one...
-#if __SUNPRO_CC == 0x540
-#undef ACE_HAS_TEMPLATE_TYPEDEFS
-#endif
-#ifndef ACE_HAS_THR_C_DEST
-#define ACE_HAS_THR_C_DEST 1
-#endif /* ACE_HAS_THR_C_DEST */
-#ifndef ACE_HAS_THR_C_FUNC
-#define ACE_HAS_THR_C_FUNC 1
-#endif /* ACE_HAS_THR_C_FUNC */
-#ifndef ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES 1
-#endif /* ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES */
-#ifndef ACE_HAS_SIG_C_FUNC
-#define ACE_HAS_SIG_C_FUNC 1
-#endif /* ACE_HAS_SIG_C_FUNC */
-#ifndef ACE_HAS_STDCPP_STL_INCLUDES
-#define ACE_HAS_STDCPP_STL_INCLUDES 1
-#endif /* ACE_HAS_STDCPP_STL_INCLUDES */
-#ifndef ACE_HAS_STRING_CLASS
-#define ACE_HAS_STRING_CLASS 1
-#endif /* ACE_HAS_STRING_CLASS */
-#ifndef ACE_HAS_STANDARD_CPP_LIBRARY
-#define ACE_HAS_STANDARD_CPP_LIBRARY 1
-#endif /* ACE_HAS_STANDARD_CPP_LIBRARY */
-#ifndef ACE_HAS_STDCPP_STL_INCLUDES
-#define ACE_HAS_STDCPP_STL_INCLUDES 1
-#endif /* ACE_HAS_STDCPP_STL_INCLUDES */
-#ifndef ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB
-#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-#endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
-#ifndef ACE_LACKS_IOSTREAM_FX
-#define ACE_LACKS_IOSTREAM_FX 1
-#endif /* ACE_LACKS_IOSTREAM_FX */
-#ifndef ACE_LACKS_LINEBUFFERED_STREAMBUF
-#define ACE_LACKS_LINEBUFFERED_STREAMBUF 1
-#endif /* ACE_LACKS_LINEBUFFERED_STREAMBUF */
-
-#endif /* defined (__SUNPRO_CC) && __SUNPRO_CC > 0x510 */
-
-// SunOS 5.6 and above support mkstemp
-#undef ACE_LACKS_MKSTEMP
-
-// SunOS 5.6 has AIO calls.
-#if !defined (ACE_HAS_AIO_CALLS)
-#define ACE_HAS_AIO_CALLS
-#endif /* ACE_HAS_AIO_CALLS */
-
-#if !defined (ACE_HAS_POSIX_REALTIME_SIGNALS)
-#define ACE_HAS_POSIX_REALTIME_SIGNALS
-#endif /* ACE_HAS_POSIX_REALTIME_SIGNALS */
-
-#if !defined (ACE_HAS_POSIX_MESSAGE_PASSING)
-#define ACE_HAS_POSIX_MESSAGE_PASSING
-#endif /* ACE_HAS_POSIX_MESSAGE_PASSING */
-
-#if !defined (ACE_HAS_POSIX_SEM)
-#define ACE_HAS_POSIX_SEM
-#endif /* ACE_HAS_POSIX_SEM */
-
-// Sunos 5.6's aio_* with RT signals is broken.
-#if !defined (ACE_POSIX_AIOCB_PROACTOR)
-#define ACE_POSIX_AIOCB_PROACTOR
-#endif /* ACE_POSIX_AIOCB_PROACTOR */
-
-// SunOS 5.6 has a buggy select
-#define ACE_HAS_LIMITED_SELECT
-
-// SunOS 5.6 introduced shm_open, but need to turn on POSIX.1b or higher
-// to pick it up.
-#if defined (_POSIX_C_SOURCE) && (_POSIX_C_SOURCE > 2)
-# define ACE_HAS_SHM_OPEN
-#else
-# undef ACE_HAS_SHM_OPEN
-#endif /* _POSIX_C_SOURCE > 2 */
-
-// The struct msghdr is conditional on SunOS 5.6 based on _XPG4_2
-#if defined(_XPG4_2)
-# define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-#endif /* _XPG4_2 */
-
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-sunos5.7.h b/dep/include/ace/config-sunos5.7.h
deleted file mode 100644
index b2b62b7e7bb..00000000000
--- a/dep/include/ace/config-sunos5.7.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-sunos5.7.h 80826 2008-03-04 14:51:23Z wotte $
-
-// The following configuration file is designed to work for SunOS 5.7
-// (Solaris 7) platforms using the SunC++ 4.x, 5.x, or g++ compilers.
-
-#ifndef ACE_CONFIG_H
-
-// ACE_CONFIG_H is defined by one of the following #included headers.
-
-// #include the SunOS 5.6 config file, then add SunOS 5.7 updates below.
-
-#include "ace/config-sunos5.6.h"
-
-// This may be true for earlier Solaris versions, but I can only verify
-// it for Solaris 7 and later.
-#define ACE_HAS_VFWPRINTF
-#if defined (ACE_HAS_SHM_OPEN)
-# define ACE_SHM_OPEN_REQUIRES_ONE_SLASH
-#endif
-
-// Sun began distributing <sys/loadavg.h> with SunOS 5.7
-#define ACE_HAS_SYS_LOADAVG_H
-
-// SunOS 5.7 has getloadavg()
-#undef ACE_LACKS_GETLOADAVG
-
-#if defined (ghs)
- // SunOS 5.7's /usr/include/sys/procfs_isa.h needs uint64_t,
- // but /usr/include/sys/int_types.h doesn't #define it because
- // _NO_LONGLONG is #
-# undef ACE_HAS_PROC_FS
-# undef ACE_HAS_PRUSAGE_T
-
-#elif defined (__SUNPRO_CC) && (__SUNPRO_CC <= 0x530)
- // Wide character methods are in std:: when using SunCC 5.3
-# define ACE_WCHAR_IN_STD_NAMESPACE
-#endif /* __GNUG__ || ghs */
-
-// SunOS 5.7 supports SCHED_FIFO and SCHED_RR, as well as SCHED_OTHER.
-#undef ACE_HAS_ONLY_SCHED_OTHER
-
-// SunOS 5.7 gets this right . . .
-#undef ACE_HAS_BROKEN_T_ERROR
-
-// And doesn't need to set LWP priorities, as shown by
-// performance-tests/Misc/preempt.
-#undef ACE_NEEDS_LWP_PRIO_SET
-
-// SunOS 5.7 can support Real-Time Signals and POSIX4 AIO operations
-// are supported.
-
-#if !defined (ACE_HAS_AIO_CALLS)
-#define ACE_HAS_AIO_CALLS
-#endif /* !ACE_HAS_AIO_CALLS */
-
-#ifdef ACE_HAS_LIMITED_SELECT
-#undef ACE_HAS_LIMITED_SELECT
-#endif /* ACE_HAS_LIMITED_SELECT */
-
-// SunOS 5.7 has socklen_t
-#define ACE_HAS_SOCKLEN_T
-
-#if defined (__sparcv9)
-#define _LP64
-#define ACE_SIZEOF_LONG 8 /* Needed to circumvent compiler bug #4294969 */
-#endif /* __sparcv9 */
-
-#if (defined(_XOPEN_SOURCE) && (_XOPEN_VERSION - 0 == 4)) /* XPG4 or XPG4v2 */
-// 2 parameter wcstok()
-#else /* XPG4 or XPG4v2 */
-# define ACE_HAS_3_PARAM_WCSTOK
-#endif
-
-// Solaris 7 started to support /dev/poll
-#define ACE_HAS_DEV_POLL
-
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-sunos5.8.h b/dep/include/ace/config-sunos5.8.h
deleted file mode 100644
index 36ce6d4a81a..00000000000
--- a/dep/include/ace/config-sunos5.8.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-sunos5.8.h 80826 2008-03-04 14:51:23Z wotte $
-
-// The following configuration file is designed to work for SunOS 5.8
-// (Solaris 8) platforms using the SunC++ 4.x, 5.x, 6.x, or g++ compilers.
-
-#ifndef ACE_CONFIG_H
-
-// ACE_CONFIG_H is defined by one of the following #included headers.
-
-// #include the SunOS 5.7 config, then add any SunOS 5.8 updates below.
-#include "ace/config-sunos5.7.h"
-
-#undef ACE_WCHAR_IN_STD_NAMESPACE
-
-// This may be true for versions prior to Solaris 8 as well, but I don't
-// have any to try it on.
-#if !defined (ACE_HAS_TIMEZONE)
-# define ACE_HAS_TIMEZONE
-#endif
-
-// The range of thread priorities for 5.8 differs from 5.7 in the
-// minimum priority for the SCHED_OTHER policy (i.e.,
-// ACE_THR_PRI_OTHER_MIN)
-# define ACE_THR_PRI_OTHER_MIN (long) -20
-
-# if defined (_POSIX_PTHREAD_SEMANTICS)
-# ifdef ACE_LACKS_RWLOCK_T
-# undef ACE_LACKS_RWLOCK_T
-# endif /* ACE_LACKS_RWLOCK_T */
-# endif /* _POSIX_PTHREAD_SEMANTICS */
-
-// This is no longer the case for Sun 5.9 onwards
-# undef ACE_HAS_X86_STAT_MACROS
-
-// gethostbyaddr does not handle IPv6-mapped-IPv4 addresses
-#define ACE_HAS_BROKEN_GETHOSTBYADDR_V4MAPPED
-
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-sunos5.9.h b/dep/include/ace/config-sunos5.9.h
deleted file mode 100644
index 39b5721b527..00000000000
--- a/dep/include/ace/config-sunos5.9.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-sunos5.9.h 80826 2008-03-04 14:51:23Z wotte $
-
-// The following configuration file is designed to work for SunOS 5.9
-// (Solaris 9) platforms using the SunC++ 5.x (Forte 6 and 7), or g++
-// compilers.
-
-#ifndef ACE_CONFIG_H
-
-// ACE_CONFIG_H is defined by one of the following #included headers.
-
-// #include the SunOS 5.8 config, then add any SunOS 5.9 updates below.
-#include "ace/config-sunos5.8.h"
-
-#define ACE_HAS_SENDFILE
-#define ACE_LACKS_THR_CONCURRENCY_FUNCS
-
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-tandem-nsk-mips-v2.h b/dep/include/ace/config-tandem-nsk-mips-v2.h
deleted file mode 100644
index cb853c659f0..00000000000
--- a/dep/include/ace/config-tandem-nsk-mips-v2.h
+++ /dev/null
@@ -1,396 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: config-tandem-nsk-mips-v2.h 81935 2008-06-12 22:01:53Z jtc $
-
-#ifndef ACE_CONFIG_NSK_H
-#define ACE_CONFIG_NSK_H
-
-#include /**/ "ace/pre.h"
-
-// The following configuration file contains defines for Tandem NSK
-// platform, MIPS processor, version 2 C++ compiler.
-
-//=========================================================================
-// Tandem NSK specific parts
-//=========================================================================
-
-// Disable pthread renaming of symbols such as "open" and "close"
-#define _CMA_NOWRAPPERS_ 1
-
-// Get Handle_Set.cpp to generate correct bit operations for NSK platform
-#define ACE_TANDEM_NSK_BIT_ORDER
-
-// Use facilities provided by T1248 version of pthreads.
-// (If not defined, will use old version of pthreads.)
-#define ACE_TANDEM_T1248_PTHREADS
-
-// Use all available T1248 thread aware wrapper functions for providing
-// non-blocking I/O.
-// [@note this causes a significant performance degradation]
-//#define ACE_TANDEM_T1248_PTHREADS_ALL_IO_WRAPPERS
-
-// Need this include here because some symbols defined by pthreads
-// (e.g. timespec_t) are needed before spthread.h is normally included
-// by ACE
-#ifdef ACE_TANDEM_T1248_PTHREADS
-#include <spthread.h>
-#else
-#include "pthread.h"
-#include "dce/cma_dispatch_coop.h"
-#endif
-
-// The following #defines are hacks to get around things
-// that seem to be missing or different in Tandem land
-#define NSIG 32 // missing from Signal.h
- // note: on nsk TNS/R there is room in
- // sigset_t for 128 signals but those
- // above 31 are not valid.
-typedef long fd_mask; // should be in select.h but no such file
-#define NBBY 8 // must be consistent with value in sys/types.h
-#define NFDBITS (sizeof (fd_mask) * NBBY) /* bits per mask */
-#define MAXNAMLEN 248 // missing from dirent.h
-#define ERRMAX 4218 // from errno.h
-
-// Following seems to be missing from G06.20 version of standard
-// pthreads includes (it appeared in older version of standard pthreads)
-// (SCHED_FIFO (aka cma_c_sched_fifo) used in Dynamic_Priority_Test)
-#ifdef ACE_TANDEM_T1248_PTHREADS
-typedef enum CMA_T_SCHED_POLICY {
- cma_c_sched_fifo = 0,
- cma_c_sched_rr = 1,
- cma_c_sched_throughput = 2,
- cma_c_sched_background = 3,
- cma_c_sched_ada_low = 4
- } cma_t_sched_policy;
-#endif
-
-// T1248 doesn't define these constants. They're defined in spt/cma.h
-// (formerly dce/cma.h), but this header is not included or provided
-// by T1248 G07-AAL.
-#define cma_c_prio_fifo_min 16
-#define cma_c_prio_fifo_mid 24
-#define cma_c_prio_fifo_max 31
-#define cma_c_prio_rr_min 16
-#define cma_c_prio_rr_mid 24
-#define cma_c_prio_rr_max 31
-#define cma_c_prio_through_min 8
-#define cma_c_prio_through_mid 12
-#define cma_c_prio_through_max 15
-#define cma_c_prio_back_min 1
-#define cma_c_prio_back_mid 4
-#define cma_c_prio_back_max 7
-
-// Enable NSK Pluggable Protocols
-#define TAO_HAS_NSKPW 1
-#define TAO_HAS_NSKFS 1
-
-//=========================================================================
-// Platform specific parts
-//=========================================================================
-
-// Platform lacks getpwnam_r() methods (e.g., SGI 6.2).
-#define ACE_LACKS_PWD_REENTRANT_FUNCTIONS
-
-// Platform/compiler lacks {get,set}rlimit() function
-#define ACE_LACKS_RLIMIT
-
-// The platform doesn't have mmap(2)
-#define ACE_LACKS_MMAP
-
-// Platform lacks streambuf "linebuffered ()". [C++ iostream]
-#define ACE_LACKS_LINEBUFFERED_STREAMBUF
-
-// Platform supports recvmsg and sendmsg
-#define ACE_HAS_MSG
-
-// Platform defines ACE_HAS_MSG, but lacks msg_accrights{,len}.
-#define ACE_LACKS_MSG_ACCRIGHTS
-
-// Platform supports sigsuspend()
-#define ACE_HAS_SIGSUSPEND
-
-// Platform/compiler has the sigwait(2) prototype
-#define ACE_HAS_SIGWAIT
-
-// Compiler/platform defines the sig_atomic_t typedef
-#define ACE_HAS_SIG_ATOMIC_T
-
-// OS/compiler uses size_t * rather than int * for socket lengths
-#define ACE_HAS_SIZET_SOCKET_LEN
-
-// OS/compiler uses void * arg 4 setsockopt() rather than const char *
-#define ACE_HAS_VOIDPTR_SOCKOPT
-
-// The platform doesn't have mprotect(2)
-#define ACE_LACKS_MPROTECT
-
-// Platform lacks msync()
-#define ACE_LACKS_MSYNC
-
-// Platform does not support reentrant netdb functions (getprotobyname_r,
-// getprotobynumber_r, gethostbyaddr_r, gethostbyname_r, getservbyname_r).
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS Platform does not support
-
-// Platform lacks madvise()
-#define ACE_LACKS_MADVISE
-
-// Platform lacks pri_t
-#define ACE_LACKS_PRI_T
-
-// Platform lacks a working sbrk()
-#define ACE_LACKS_SBRK
-
-// Platform doesn't have syscall() prototype
-#define ACE_LACKS_SYSCALL
-
-// Platform lacks the inet_aton() function.
-#define ACE_LACKS_INET_ATON
-
-// Compiler/platform has Dirent iterator functions
-#define ACE_HAS_DIRENT
-
-// Platform uses ACE_HAS_DIRENT but does not have readdir_r()
-#define ACE_LACKS_READDIR_R
-
-// Platform supports getpagesize() call (otherwise,
-// ACE_PAGE_SIZE must be defined)
-#define ACE_HAS_GETPAGESIZE
-
-// Platform supports IP multicast
-#define ACE_HAS_IP_MULTICAST
-
-// Platform's select() uses non-const timeval*
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-
-// Platform supports POSIX O_NONBLOCK semantics
-#define ACE_HAS_POSIX_NONBLOCK
-
-// Platform lacks named POSIX semaphores
-#define ACE_LACKS_NAMED_POSIX_SEM
-
-// Platform has support for multi-byte character support compliant
-// with the XPG4 Worldwide Portability Interface wide-character
-// classification.
-#define ACE_HAS_XPG4_MULTIBYTE_CHAR
-
-// No wcsstr function available for this compiler
-#define ACE_LACKS_WCSSTR
-
-// No wctype.h available for this compiler
-#define ACE_LACKS_WCTYPE_H
-
-// Platform supports the POSIX regular expression library.
-// [Note Tandem NSK platform does have regular expresson support but it
-// does not follow the assumptions made by ACE. To use it would need
-// to make some ACE modifications.]
-//#define ACE_HAS_REGEX
-
-// Compiler/platform supports strerror ()
-#define ACE_HAS_STRERROR
-
-// Platform doesn't have truncate()
-#define ACE_LACKS_TRUNCATE
-
-// Platform lacks readers/writer locks.
-#define ACE_LACKS_RWLOCK_T
-
-// Compiler's 'new' throws exception on failure (ANSI C++ behavior).
-#define ACE_NEW_THROWS_EXCEPTIONS
-
-// Optimize ACE_Handle_Set::count_bits for select() operations (common
-// case)
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-
-// Platform lacks setreuid()
-#define ACE_LACKS_SETREUID
-
-// Platform lacks setregid()
-#define ACE_LACKS_SETREGID
-
-// Compile using multi-thread libraries
-#define ACE_MT_SAFE 1
-
-// Platform supports System V IPC
-#define ACE_HAS_SYSV_IPC
-
-// Platform lacks the socketpair() call
-// [Needed due to failure of Pipe_Test. even though nsk platform
-// has socketpair(), Pipe.cpp tries to set socket buf size but this
-// is not allowed for AF_UNIX protocol on nsk.]
-#define ACE_LACKS_SOCKET_BUFSIZ
-
-// Platform lacks the socketpair() call
-#define ACE_LACKS_SOCKETPAIR
-
-// Platform limits the maximum socket message size.
-#define ACE_HAS_SOCK_BUF_SIZE_MAX
-
-// hrtime_t is a basic type that doesn't require ACE_U64_TO_U32 conversion
-#define ACE_HRTIME_T_IS_BASIC_TYPE
-
-// printf format specifiers for 64 bit integers
-# define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%Ld")
-# define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%Ld")
-
-//=========================================================================
-// Threads specific parts
-//=========================================================================
-
-// Platform supports threads
-#define ACE_HAS_THREADS
-
-// Platform supports POSIX Pthreads, of one form or another. This
-// macro says the platform has a pthreads variety - should also define
-// one of the below to say which one. Also may need some
-// ACE_HAS_... thing for extensions.
-#define ACE_HAS_PTHREADS
-
-// Standard pthreads supports only SCHED_FIFO
-#define ACE_HAS_ONLY_SCHED_FIFO
-
-// Compiler/platform has thread-specific storage
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE
-
-// Platform has no implementation of pthread_condattr_setpshared(),
-// even though it supports pthreads!
-#define ACE_LACKS_CONDATTR_PSHARED
-
-// pthread_cond_timedwait does *not* reset the time argument when the
-// lock is acquired.
-#define ACE_LACKS_COND_TIMEDWAIT_RESET
-
-// Platform lacks pthread_attr_setsched()
-#define ACE_LACKS_SETSCHED
-
-// Platform has pthread_mutexattr_setkind_np().
-#define ACE_HAS_PTHREAD_MUTEXATTR_SETKIND_NP
-
-// Platform lacks pthread_mutexattr_setpshared().
-#define ACE_LACKS_MUTEXATTR_PSHARED
-
-// Platform lacks pthread_attr_setscope()
-#define ACE_LACKS_THREAD_PROCESS_SCOPING
-
-// Platform lacks pthread_attr_setstackaddr
-#define ACE_LACKS_PTHREAD_ATTR_SETSTACKADDR
-
-// Defining ACE_HAS_UCONTEXT_T since G06.21 version of spthreads has
-// a definition for it.
-#ifdef ACE_TANDEM_T1248_PTHREADS
-#define ACE_HAS_UCONTEXT_T
-#endif
-
-//=========================================================================
-// Include file characteristics
-//=========================================================================
-
-// Compiler/platform contains the <sys/syscall.h> file.
-#define ACE_HAS_SYS_SYSCALL_H
-
-// Platform lacks malloc.h
-#define ACE_LACKS_MALLOC_H
-
-// Platform lacks the siginfo.h include file
-#define ACE_LACKS_SIGINFO_H
-
-// Platform doesn't define struct strrecvfd.
-#define ACE_LACKS_STRRECVFD
-
-// Platform lacks the ucontext.h file
-#define ACE_LACKS_UCONTEXT_H
-
-// Prototypes for both signal() and struct sigaction are consistent.
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-
-// Platform supports the POSIX struct timespec type
-#define ACE_HAS_POSIX_TIME
-
-// Platform/compiler supports timezone * as second parameter to gettimeofday()
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
-
-// Platform has <strings.h> (which contains bzero() prototype)
-#define ACE_HAS_STRINGS 1
-
-// OS/compiler omits the const from the iovec parameter in the
-// writev() prototype.
-#define ACE_HAS_NONCONST_WRITEV
-
-// Platform lacks <stdint.h>
-#define ACE_LACKS_STDINT_H
-
-// Platform lacks <inttypes.h>
-#define ACE_LACKS_INTTYPES_H
-
-// Platform lacks <sys/select.h>
-#define ACE_LACKS_SYS_SELECT_H
-
-// Platform lacks <dlfcn.h>
-#define ACE_LACKS_DLFCN_H
-
-// Platform lacks <semaphore.h>
-#define ACE_LACKS_SEMAPHORE_H
-
-// Platform lacks <poll.h>
-#define ACE_LACKS_POLL_H
-
-//=========================================================================
-// Compiler specific parts
-//=========================================================================
-
-// Compiler supports C++ exception handling
-#define ACE_HAS_EXCEPTIONS
-
-// Compiler/platform has correctly prototyped header files
-#define ACE_HAS_CPLUSPLUS_HEADERS
-
-// Compiler/platform does not support the unsigned long long datatype.
-#define ACE_LACKS_LONGLONG_T
-
-// Compiler supports the ssize_t typedef
-#define ACE_HAS_SSIZE_T
-
-// Platform/compiler supports Standard C++ Library
-#define ACE_HAS_STANDARD_CPP_LIBRARY 0
-
-// Compiler's template mechanism must see source code (i.e.,
-// .cpp files).
-#define ACE_TEMPLATES_REQUIRE_SOURCE
-
-// Compiler implements templates that support typedefs inside
-// of classes used as formal arguments to a template class.
-#define ACE_HAS_TEMPLATE_TYPEDEFS
-
-// Platform has its standard c++ library in the namespace std.
-#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-
-// Compiler doesn't support static data member templates
-#define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
-
-// Platform lacks "signed char" type (broken!)
-// Following will not be needed if use standard c library (G06.20 and later)
-#define ACE_LACKS_SIGNED_CHAR
-
-//=========================================================================
-// Build options
-//=========================================================================
-
-// Disable the inclusion of RCS ids in the generated code.
-#define ACE_USE_RCSID 0
-
-// For debugging problems in os calls (but this doesn't work too well
-// since output is not interleaved properly with output from ACE_TRACE
-//# define ACE_OS_TRACE(X) ::printf(X)
-
-// Uncomment the following if timed message blocks are needed (e.g.
-// for Dynamic_Priority_Test. Otherwise leave this disabled because
-// enabling it adds overhead to message blocks and timed message blocks
-// are "rarely used."
-//#define ACE_HAS_TIMED_MESSAGE_BLOCKS
-
-// Uncomment the following if tokens library is needed.
-//#define ACE_HAS_TOKENS_LIBRARY
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CONFIG_NSK_H */
-
diff --git a/dep/include/ace/config-tandem-nsk-mips-v3.h b/dep/include/ace/config-tandem-nsk-mips-v3.h
deleted file mode 100644
index 88773d37f92..00000000000
--- a/dep/include/ace/config-tandem-nsk-mips-v3.h
+++ /dev/null
@@ -1,463 +0,0 @@
-// -*- C++ -*-
-//
-// $Id: config-tandem-nsk-mips-v3.h 81935 2008-06-12 22:01:53Z jtc $
-
-#ifndef ACE_CONFIG_NSK_H
-#define ACE_CONFIG_NSK_H
-
-#include /**/ "ace/pre.h"
-
-// The following configuration file contains defines for Tandem NSK
-// platform, MIPS processor, version 3 C++ compiler.
-
-//=========================================================================
-// Tandem NSK specific parts
-//=========================================================================
-
-// Disable pthread renaming of symbols such as "open" and "close"
-#define _CMA_NOWRAPPERS_ 1
-
-// Get Handle_Set.cpp to generate correct bit operations for NSK platform
-#define ACE_TANDEM_NSK_BIT_ORDER
-
-// Use facilities provided by T1248 version of pthreads.
-// (If not defined, will use old version of pthreads.)
-#define ACE_TANDEM_T1248_PTHREADS
-
-// Use all available T1248 thread aware wrapper functions for providing
-// non-blocking I/O.
-// [Note: this causes a significant performance degradation]
-//#define ACE_TANDEM_T1248_PTHREADS_ALL_IO_WRAPPERS
-
-// Need this include here because some symbols defined by pthreads
-// (e.g. timespec_t) are needed before spthread.h is normally included
-// by ACE
-#ifdef ACE_TANDEM_T1248_PTHREADS
-#include <spthread.h>
-#else
-#include "pthread.h"
-#include "dce/cma_dispatch_coop.h"
-#endif
-
-// The following #defines are hacks to get around things
-// that seem to be missing or different in Tandem land
-#define NSIG 32 // missing from Signal.h
- // note: on nsk TNS/R there is room in
- // sigset_t for 128 signals but those
- // above 31 are not valid.
-typedef long fd_mask; // should be in select.h but no such file
-#define NBBY 8 // must be consistent with value in sys/types.h
-#define NFDBITS (sizeof (fd_mask) * NBBY) /* bits per mask */
-#define MAXNAMLEN 248 // missing from dirent.h
-#define ERRMAX 4218 // from errno.h
-
-// Following seems to be missing from G06.20 version of standard
-// pthreads includes (it appeared in older version of standard pthreads)
-// (SCHED_FIFO (aka cma_c_sched_fifo) used in Dynamic_Priority_Test)
-#ifdef ACE_TANDEM_T1248_PTHREADS
-typedef enum CMA_T_SCHED_POLICY {
- cma_c_sched_fifo = 0,
- cma_c_sched_rr = 1,
- cma_c_sched_throughput = 2,
- cma_c_sched_background = 3,
- cma_c_sched_ada_low = 4
- } cma_t_sched_policy;
-#endif
-
-// T1248 doesn't define these constants. They're defined in spt/cma.h
-// (formerly dce/cma.h), but this header is not included or provided
-// by T1248 G07-AAL.
-#define cma_c_prio_fifo_min 16
-#define cma_c_prio_fifo_mid 24
-#define cma_c_prio_fifo_max 31
-#define cma_c_prio_rr_min 16
-#define cma_c_prio_rr_mid 24
-#define cma_c_prio_rr_max 31
-#define cma_c_prio_through_min 8
-#define cma_c_prio_through_mid 12
-#define cma_c_prio_through_max 15
-#define cma_c_prio_back_min 1
-#define cma_c_prio_back_mid 4
-#define cma_c_prio_back_max 7
-
-// Enable NSK Pluggable Protocols
-#define TAO_HAS_NSKPW 1
-#define TAO_HAS_NSKFS 1
-
-//=========================================================================
-// Platform specific parts
-//=========================================================================
-
-// Platform lacks getpwnam_r() methods (e.g., SGI 6.2).
-#define ACE_LACKS_PWD_REENTRANT_FUNCTIONS
-
-// Platform/compiler lacks {get,set}rlimit() function
-#define ACE_LACKS_RLIMIT
-
-// The platform doesn't have mmap(2)
-#define ACE_LACKS_MMAP
-
-// Platform lacks streambuf "linebuffered ()". [C++ iostream]
-#define ACE_LACKS_LINEBUFFERED_STREAMBUF
-
-// Platform supports recvmsg and sendmsg
-#define ACE_HAS_MSG
-
-// Platform defines ACE_HAS_MSG, but lacks msg_accrights{,len}.
-#define ACE_LACKS_MSG_ACCRIGHTS
-
-// Platform supports sigsuspend()
-#define ACE_HAS_SIGSUSPEND
-
-// Platform/compiler has the sigwait(2) prototype
-#define ACE_HAS_SIGWAIT
-
-// Compiler/platform defines the sig_atomic_t typedef
-#define ACE_HAS_SIG_ATOMIC_T
-
-// OS/compiler uses size_t * rather than int * for socket lengths
-#define ACE_HAS_SIZET_SOCKET_LEN
-
-// OS/compiler uses void * arg 4 setsockopt() rather than const char *
-#define ACE_HAS_VOIDPTR_SOCKOPT
-
-// The platform doesn't have mprotect(2)
-#define ACE_LACKS_MPROTECT
-
-// Platform lacks msync()
-#define ACE_LACKS_MSYNC
-
-// Platform does not support reentrant netdb functions (getprotobyname_r,
-// getprotobynumber_r, gethostbyaddr_r, gethostbyname_r, getservbyname_r).
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS Platform does not support
-
-// Platform lacks madvise()
-#define ACE_LACKS_MADVISE
-
-// Platform lacks pri_t
-#define ACE_LACKS_PRI_T
-
-// Platform lacks a working sbrk()
-#define ACE_LACKS_SBRK
-
-// Platform doesn't have syscall() prototype
-#define ACE_LACKS_SYSCALL
-
-// Platform lacks the inet_aton() function.
-#define ACE_LACKS_INET_ATON
-
-// Compiler/platform has Dirent iterator functions
-#define ACE_HAS_DIRENT
-
-// Platform uses ACE_HAS_DIRENT but does not have readdir_r()
-#define ACE_LACKS_READDIR_R
-
-// Platform supports getpagesize() call (otherwise,
-// ACE_PAGE_SIZE must be defined)
-#define ACE_HAS_GETPAGESIZE
-
-// Platform supports IP multicast
-#define ACE_HAS_IP_MULTICAST
-
-// Platform's select() uses non-const timeval*
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-
-// Platform supports POSIX O_NONBLOCK semantics
-#define ACE_HAS_POSIX_NONBLOCK
-
-// Platform lacks named POSIX semaphores
-#define ACE_LACKS_NAMED_POSIX_SEM
-
-// Platform has support for multi-byte character support compliant
-// with the XPG4 Worldwide Portability Interface wide-character
-// classification.
-#define ACE_HAS_XPG4_MULTIBYTE_CHAR
-
-// No wcsstr function available for this compiler
-#define ACE_LACKS_WCSSTR
-
-// No wctype.h available for this compiler
-#define ACE_LACKS_WCTYPE_H
-
-// Platform supports the POSIX regular expression library.
-// [Note Tandem NSK platform does have regular expresson support but it
-// does not follow the assumptions made by ACE. To use it would need
-// to make some ACE modifications.]
-//#define ACE_HAS_REGEX
-
-// Compiler/platform supports strerror ()
-#define ACE_HAS_STRERROR
-
-// Platform doesn't have truncate()
-#define ACE_LACKS_TRUNCATE
-
-// Platform lacks readers/writer locks.
-#define ACE_LACKS_RWLOCK_T
-
-// Compiler's 'new' throws exception on failure (ANSI C++ behavior).
-#define ACE_NEW_THROWS_EXCEPTIONS
-
-// Optimize ACE_Handle_Set::count_bits for select() operations (common
-// case)
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-
-// Platform lacks setreuid()
-#define ACE_LACKS_SETREUID
-
-// Platform lacks setregid()
-#define ACE_LACKS_SETREGID
-
-// Compile using multi-thread libraries
-#define ACE_MT_SAFE 1
-
-// Platform supports System V IPC
-#define ACE_HAS_SYSV_IPC
-
-// Platform lacks the socketpair() call
-// [Needed due to failure of Pipe_Test. even though nsk platform
-// has socketpair(), Pipe.cpp tries to set socket buf size but this
-// is not allowed for AF_UNIX protocol on nsk.]
-#define ACE_LACKS_SOCKET_BUFSIZ
-
-// Platform lacks the socketpair() call
-#define ACE_LACKS_SOCKETPAIR
-
-// Platform limits the maximum socket message size.
-#define ACE_HAS_SOCK_BUF_SIZE_MAX
-
-// hrtime_t is a basic type that doesn't require ACE_U64_TO_U32 conversion
-#define ACE_HRTIME_T_IS_BASIC_TYPE
-
-// printf format specifiers for 64 bit integers
-# define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%Ld")
-# define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%Ld")
-
-// Use larger default buffer size for ease of interoperability
-#define ACE_DEFAULT_CDR_BUFSIZE 4096
-
-// Size of a wchar
-#define ACE_SIZEOF_WCHAR 2
-
-// Platform lacks time typedefs
-#define ACE_LACKS_SUSECONDS_T
-#define ACE_LACKS_USECONDS_T
-
-// Platform lacks setegid() and seteuid()
-#define ACE_LACKS_SETEGID
-#define ACE_LACKS_SETEUID
-
-// Platform lacks vsnprintf()
-#define ACE_LACKS_VSNPRINTF
-
-// Platform lacks log2()
-#define ACE_LACKS_LOG2
-
-// Platform lacks alphasort()
-#define ACE_LACKS_ALPHASORT
-
-//=========================================================================
-// Threads specific parts
-//=========================================================================
-
-// Platform supports threads
-#define ACE_HAS_THREADS
-
-// Platform supports POSIX Pthreads, of one form or another. This
-// macro says the platform has a pthreads variety - should also define
-// one of the below to say which one. Also may need some
-// ACE_HAS_... thing for extensions.
-#define ACE_HAS_PTHREADS
-
-// Standard pthreads supports only SCHED_FIFO
-#define ACE_HAS_ONLY_SCHED_FIFO
-
-// Compiler/platform has thread-specific storage
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE
-
-// Platform has no implementation of pthread_condattr_setpshared(),
-// even though it supports pthreads!
-#define ACE_LACKS_CONDATTR_PSHARED
-
-// pthread_cond_timedwait does *not* reset the time argument when the
-// lock is acquired.
-#define ACE_LACKS_COND_TIMEDWAIT_RESET
-
-// Platform lacks pthread_attr_setsched()
-#define ACE_LACKS_SETSCHED
-
-// Platform has pthread_getschedparam and pthread_setschedparam
-// even when ACE_LACKS_SETSCHED is defined.
-#define ACE_HAS_PTHREAD_SCHEDPARAM
-
-// Platform has pthread_mutexattr_setkind_np().
-#define ACE_HAS_PTHREAD_MUTEXATTR_SETKIND_NP
-
-// Platform lacks pthread_mutexattr_setpshared().
-#define ACE_LACKS_MUTEXATTR_PSHARED
-
-// Platform lacks pthread_attr_setscope()
-#define ACE_LACKS_THREAD_PROCESS_SCOPING
-
-// Platform lacks pthread_attr_setstackaddr
-#define ACE_LACKS_PTHREAD_ATTR_SETSTACKADDR
-
-// Platform lacks pthread_attr_setstack
-#define ACE_LACKS_PTHREAD_ATTR_SETSTACK
-
-// Defining ACE_HAS_UCONTEXT_T since G06.21 version of spthreads has
-// a definition for it.
-#ifdef ACE_TANDEM_T1248_PTHREADS
-#define ACE_HAS_UCONTEXT_T
-#endif
-
-//=========================================================================
-// Include file characteristics
-//=========================================================================
-
-// Compiler/platform contains the <sys/syscall.h> file.
-#define ACE_HAS_SYS_SYSCALL_H
-
-// Platform lacks malloc.h
-#define ACE_LACKS_MALLOC_H
-
-// Platform lacks the siginfo.h include file
-#define ACE_LACKS_SIGINFO_H
-
-// Platform doesn't define struct strrecvfd.
-#define ACE_LACKS_STRRECVFD
-
-// Platform lacks the ucontext.h file
-#define ACE_LACKS_UCONTEXT_H
-
-// Prototypes for both signal() and struct sigaction are consistent.
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-
-// Platform supports the POSIX struct timespec type
-#define ACE_HAS_POSIX_TIME
-
-// Platform/compiler supports timezone * as second parameter to gettimeofday()
-#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
-
-// Platform has <strings.h> (which contains bzero() prototype)
-#define ACE_HAS_STRINGS 1
-
-// OS/compiler omits the const from the iovec parameter in the
-// writev() prototype.
-#define ACE_HAS_NONCONST_WRITEV
-
-// Platform lacks <stdint.h>
-#define ACE_LACKS_STDINT_H
-
-// Platform lacks <inttypes.h>
-#define ACE_LACKS_INTTYPES_H
-
-// Platform lacks <sys/select.h>
-#define ACE_LACKS_SYS_SELECT_H
-
-// Platform lacks <dlfcn.h>
-#define ACE_LACKS_DLFCN_H
-
-// Platform lacks <semaphore.h>
-#define ACE_LACKS_SEMAPHORE_H
-
-// Platform lacks <poll.h>
-#define ACE_LACKS_POLL_H
-
-// Platform lacks <sys/sysctl.h>
-#define ACE_LACKS_SYS_SYSCTL_H
-
-//=========================================================================
-// Compiler specific parts
-//=========================================================================
-
-// Compiler supports C++ exception handling
-#define ACE_HAS_EXCEPTIONS 1
-
-// Compiler/platform has correctly prototyped header files
-#define ACE_HAS_CPLUSPLUS_HEADERS
-
-// Compiler/platform does not support the unsigned long long datatype.
-#define ACE_LACKS_UNSIGNEDLONGLONG_T
-
-// Compiler supports the ssize_t typedef
-#define ACE_HAS_SSIZE_T
-
-// Platform/compiler supports Standard C++ Library
-#define ACE_HAS_STANDARD_CPP_LIBRARY 1
-
-// Compiler's template mechanism must see source code (i.e.,
-// .cpp files).
-#define ACE_TEMPLATES_REQUIRE_SOURCE
-
-// Compiler implements templates that support typedefs inside
-// of classes used as formal arguments to a template class.
-#define ACE_HAS_TEMPLATE_TYPEDEFS
-
-// Platform/Compiler supports a String class
-#define ACE_HAS_STRING_CLASS
-#define ACE_HAS_STDCPP_STL_INCLUDES
-
-// Platform has its standard c++ library in the namespace std.
-#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-
-// Compiler doesn't support static data member templates
-#define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
-
-// Platform lacks "signed char" type (broken!)
-// Following will not be needed if use standard c library (G06.20 and later)
-#define ACE_LACKS_SIGNED_CHAR
-
-// Compiler can handle any operators in namespace
-#define ACE_ANY_OPS_USE_NAMESPACE
-
-// Platform lacks intptr_t typedef
-#define ACE_LACKS_INTPTR_T
-
-//=========================================================================
-// C++ version3 import/export macros
-//=========================================================================
-
-// Define the export macros needed to export symbols outside a DLL
-// The ACE_IMPORT_SINGLETON_DECLARE macro has been modified to not explicitly
-// instantiate the class template.
-#if defined(USE_EXPLICIT_EXPORT)
-#define ACE_LACKS_INLINE_FUNCTIONS
-
-#define ACE_HAS_CUSTOM_EXPORT_MACROS
-#define ACE_Proper_Export_Flag export$
-#define ACE_Proper_Import_Flag import$
-#define ACE_EXPORT_SINGLETON_DECLARATION(T) template class export$ T
-#define ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) template class export$ SINGLETON_TYPE<CLASS, LOCK>;
-#define ACE_IMPORT_SINGLETON_DECLARATION(T) template class import$ T
-#define ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) template class import$ SINGLETON_TYPE <CLASS, LOCK>;
-#endif
-
-//=========================================================================
-// Build options
-//=========================================================================
-
-// Disable the inclusion of RCS ids in the generated code.
-#define ACE_USE_RCSID 0
-
-// For debugging problems in os calls (but this doesn't work too well
-// since output is not interleaved properly with output from ACE_TRACE
-//# define ACE_OS_TRACE(X) ::printf(X)
-
-// Uncomment the following if timed message blocks are needed (e.g.
-// for Dynamic_Priority_Test. Otherwise leave this disabled because
-// enabling it adds overhead to message blocks and timed message blocks
-// are "rarely used."
-//#define ACE_HAS_TIMED_MESSAGE_BLOCKS
-
-// Uncomment the following if tokens library is needed.
-//#define ACE_HAS_TOKENS_LIBRARY
-
-// NonStop CORBA uses the XML Service Configurator
-#define ACE_HAS_XML_SVC_CONF
-
-#define ACE_LD_SEARCH_PATH "_RLD_LIB_PATH"
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_CONFIG_NSK_H */
-
diff --git a/dep/include/ace/config-tandem.h b/dep/include/ace/config-tandem.h
deleted file mode 100644
index 2e1be04bc10..00000000000
--- a/dep/include/ace/config-tandem.h
+++ /dev/null
@@ -1,193 +0,0 @@
-/* -*- C++ -*- */
-// Testing TANDEM
-// $Id: config-tandem.h 81697 2008-05-14 18:33:11Z johnnyw $
-
-// The following configuration file is designed to work for Tandems NonStop-UX
-// 4.2MP platforms using the NCC 3.20 compiler.
-
-// Note this is a test version it might include several errors I
-// have done a test and set/unset until I errors disappered.
-// Some of the options that should be set aren't because of the simple fact
-// that i haven't the time to check what is wrong.
-// e.g. widecharacter are supported but a wcstok which only take 2 parameters
-// are included by the compiler, to get the correct wcstok that takes 3 params
-// we must set _XOPEN_SOURCE and we get ALOT of errors and warnings.
-// So this config is done to get things to start to work it isn't finished.
-// Janne (Jan.Perman@osd.Ericsson.se)
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-#include /**/ "ace/pre.h"
-
-#if ! defined (__ACE_INLINE__)
-# define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-#define ACE_HAS_IDTYPE_T
-// Optimize ACE_Handle_Set for select().
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-
-// Tandem doesn't include this although they are defined
-// in sys/time.h and sys/resource.h
-#define ACE_LACKS_RLIMIT_PROTOTYPE // jjpp
-// Tandem has a function to set t_errno (set_t_errno)
-#define ACE_HAS_SET_T_ERRNO // jjpp
-
-//Platform supports System V IPC (most versions of UNIX, but not Win32)
-#define ACE_HAS_SYSV_IPC
-
-// OS/compiler omits the const from the sendmsg() prototype.
-#define ACE_HAS_NONCONST_SENDMSG
-
-//Platform supports system configuration information
-#define ACE_HAS_SYS_SYSTEMINFO_H
-#define ACE_HAS_SYSINFO
-
-//Platform supports the POSIX regular expression library
-#define ACE_HAS_REGEX
-
-// Platform supports recvmsg and sendmsg
-#define ACE_HAS_MSG
-
-//Compiler/platform contains the <sys/syscall.h> file.
-#define ACE_HAS_SYS_SYSCALL_H
-
-//Platform provides <sysent.h> header
-#define ACE_HAS_SYSENT_H
-
-// Platform has POSIX terminal interface.
-#define ACE_HAS_TERMIOS
-
-//Platform supports POSIX O_NONBLOCK semantics
-#define ACE_HAS_POSIX_NONBLOCK
-
-// Compiler/platform has correctly prototyped header files
-#define ACE_HAS_CPLUSPLUS_HEADERS
-
-//Compiler/platform supports alloca()
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//#define ACE_HAS_ALLOCA
-
-//Compiler/platform has <alloca.h>
-#define ACE_HAS_ALLOCA_H
-
-//Platform contains <poll.h>
-#define ACE_HAS_POLL
-
-// Platform supports the POSIX struct timespec type
-#define ACE_HAS_POSIX_TIME // As i understand it, but i'm in deep water
-//Platform supports the SVR4 timestruc_t type
-
-// To get this to work a patch in sys/signal must be made
-// typedef void SIG_FUNC_TYPE(int);
-//#if defined (__cplusplus)
-// void (*sa_handler)(int);
-//#else
-// ...
-//#endif
-//#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-#define ACE_HAS_TANDEM_SIGNALS
-//Compiler/platform defines the sig_atomic_t typedef
-#define ACE_HAS_SIG_ATOMIC_T
-//Platform supports SVR4 extended signals
-#define ACE_HAS_SIGINFO_T
-//Platform supports ucontext_t (which is used in the extended signal API).
-#define ACE_HAS_UCONTEXT_T
-
-// Platform/compiler has the sigwait(2) prototype
-#define ACE_HAS_SIGWAIT
-
-//Compiler/platform provides the sockio.h file
-#define ACE_HAS_SYS_SOCKIO_H
-
-// Compiler supports the ssize_t typedef
-#define ACE_HAS_SSIZE_T // Limits.h must be included
-
-//Platform supports STREAMS
-#define ACE_HAS_STREAMS
-
-#define ACE_HAS_STREAM_PIPES
-//Platform supports STREAM pipes
-
-//Compiler/platform supports strerror ()
-#define ACE_HAS_STRERROR
-
-//Compiler/platform supports struct strbuf
-#define ACE_HAS_STRBUF_T
-
-//Compiler/platform supports SVR4 dynamic linking semantics
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-
-//Compiler/platform supports SVR4 TLI (in particular, T_GETNAME stuff)...
-#define ACE_HAS_SVR4_TLI
-
-//Platform provides <sys/filio.h> header
-#define ACE_HAS_SYS_FILIO_H
-
-//Platform supports TLI timod STREAMS module
-#define ACE_HAS_TIMOD_H
-//Platform supports TLI tiuser header
-#define ACE_HAS_TIUSER_H
-
-//Platform supports TLI
-#define ACE_HAS_TLI
-//Platform provides TLI function prototypes
-#define ACE_HAS_TLI_PROTOTYPES
-
-//Platform lacks streambuf "linebuffered ()".
-#define ACE_LACKS_LINEBUFFERED_STREAMBUF
-
-// Platform lacks "signed char" type (broken!)
-#define ACE_LACKS_SIGNED_CHAR
-
-#define ACE_PAGE_SIZE 4096
-// Defines the page size of the system (not used on Win32 or
-// with ACE_HAS_GETPAGESIZE).
-
-/****** THREAD SPECIFIC **********/
-/* If you want to remove threading then comment out the following four #defines .*/
-#if !defined (ACE_MT_SAFE)
- #define ACE_MT_SAFE 1 //Compile using multi-thread libraries
-#endif
-#define ACE_HAS_THREADS //Platform supports threads
-#define ACE_HAS_STHREADS //Platform supports Solaris threads
-
-// Compiler/platform has threadspecific storage
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE
-//Platform supports thr_keydelete (e.g,. UNIXWARE)
-
-#define ACE_HAS_THR_MINSTACK // Tandem uses thr_minstack instead of thr_min_stack
-#define ACE_LACKS_PRI_T // Tandem lacks pri_t
-#define ACE_HAS_THR_KEYDELETE
-
-//*************************************
-
-/*********************************/
-
-/******* SIGNAL STUFF *******/
-
-//Platform uses non-const char * in calls to gethostbyaddr, gethostbyname,
-// getservbyname
-#define ACE_HAS_NONCONST_GETBY
-// Platform's select() uses non-const timeval* (only found on Linux right now)
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-// And on Tandem :-)
-//Uses ctime_r & asctime_r with only two parameters vs. three.
-#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
-//Platform has special header for select().
-#define ACE_HAS_SELECT_H
-// Platform/compiler supports Standard C++ Library
-#define ACE_HAS_STANDARD_CPP_LIBRARY
-//Platform lacks madvise() (e.g., Linux)
-#define ACE_LACKS_MADVISE
-//Compiler/platform lacks strcasecmp() (e.g., DG/UX, UNIXWARE, VXWORKS)
-#define ACE_LACKS_STRCASECMP
-
-// Defines the page size of the system.
-#define ACE_PAGE_SIZE 4096
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-tru64.h b/dep/include/ace/config-tru64.h
deleted file mode 100644
index db16845b529..00000000000
--- a/dep/include/ace/config-tru64.h
+++ /dev/null
@@ -1,155 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-tru64.h 81935 2008-06-12 22:01:53Z jtc $
-
-// The following configuration file is designed to work for the
-// Digital UNIX V4.0a and later platforms. It relies on
-// config-osf1-4.0.h, and adds deltas for newer platforms.
-
-#ifndef ACE_CONFIG_TRU64_H
-#define ACE_CONFIG_TRU64_H
-#include /**/ "ace/pre.h"
-
-#if !defined (__ACE_INLINE__)
-# define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-// Compile using multi-thread libraries.
-#if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-#endif /* ! ACE_MT_SAFE */
-
-/*clearerr is not defined when _REENTRANT is not defined*/
-#if ACE_MT_SAFE == 0
-#define ACE_LACKS_CLEARERR
-#endif /* ACE_MT_SAFE == 0 */
-
-#include "ace/config-posix.h"
-
-// Configuration-specific #defines:
-// 1) g++ or cxx
-// 2) pthreads or DCE threads
-#if defined (__GNUG__)
- // g++ with pthreads
-
- // config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
- // this must appear before its #include.
-# define ACE_HAS_STRING_CLASS
-
-# include "ace/config-g++-common.h"
-
-# define ACE_HAS_GNU_CSTRING_H
-# define ACE_HAS_REENTRANT_FUNCTIONS
-#elif defined (__DECCXX)
-
-# define ACE_CONFIG_INCLUDE_CXX_COMMON
-# include "ace/config-cxx-common.h"
-
-#elif defined (__rational__)
-# define ACE_HAS_REENTRANT_FUNCTIONS
-# define ACE_HAS_STRING_CLASS
-# define ACE_LACKS_LINEBUFFERED_STREAMBUF
-# define ACE_LACKS_SIGNED_CHAR
-
- // Exceptions are enabled by platform_osf1_4.0_rcc.GNU.
-# define ACE_HAS_STDCPP_STL_INCLUDES
-#else
-# ifdef __cplusplus /* Let it slide for C compilers. */
-# error unsupported compiler on Digital Unix
-# endif /* __cplusplus */
-#endif /* ! __GNUG__ && ! __DECCXX && ! __rational__ */
-
-#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
-#define ACE_HAS_BROKEN_IF_HEADER
-#define ACE_HAS_BROKEN_R_ROUTINES
-#if (ACE_MT_SAFE != 0)
-# define ACE_HAS_PTHREADS
-# define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
-#endif /* ACE_MT_SAFE != 0 */
-#define ACE_LACKS_T_ERRNO
-#if !defined (DIGITAL_UNIX)
-# define DIGITAL_UNIX 0x400
-#endif /* ! DIGITAL_UNIX */
-
-#define ACE_SIZEOF_LONG 8
-
-#define ACE_DEFAULT_BASE_ADDR ((char *) 0x80000000)
-#define ACE_HAS_AUTOMATIC_INIT_FINI
-#define ACE_HAS_NONCONST_SETRLIMIT
-#define ACE_HAS_BROKEN_T_ERROR
-#define ACE_HAS_NONCONST_WRITEV
-#define ACE_HAS_CLOCK_GETTIME
-#define ACE_HAS_CLOCK_SETTIME
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-#define ACE_HAS_CPLUSPLUS_HEADERS
-#define ACE_HAS_DIRENT
-#define ACE_HAS_GETRUSAGE
-#define ACE_HAS_GPERF
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-#define ACE_HAS_IP_MULTICAST
-#define ACE_HAS_LLSEEK
-#define ACE_HAS_LONG_MAP_FAILED
-#define ACE_HAS_MSG
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#define ACE_HAS_NONCONST_SENDMSG
-#define ACE_HAS_OSF1_GETTIMEOFDAY
-#define ACE_HAS_OSF_TIMOD_H
-#define ACE_HAS_POLL
-#define ACE_HAS_POSIX_NONBLOCK
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_PRIOCNTL
-#define ACE_HAS_SIGINFO_T
-#define ACE_HAS_SIG_ATOMIC_T
-#define ACE_HAS_SSIZE_T
-#define ACE_HAS_STRBUF_T
-#define ACE_HAS_STREAMS
-#define ACE_HAS_STRERROR
-#define ACE_HAS_STRPTIME
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-#define ACE_HAS_SVR4_SIGNAL_T
-#define ACE_HAS_SYS_SYSCALL_H
-#define ACE_HAS_SYSV_IPC
-#if (ACE_MT_SAFE == 0)
-// clearerr is not defined when _REENTRANT is not defined
-#define ACE_LACKS_CLEARERR
-#else /* ACE_MT_SAFE != 0 */
-#define ACE_HAS_THREADS
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE
-#define ACE_LACKS_PTHREAD_ATTR_SETSTACKADDR
-#endif /* ACE_MT_SAFE != 0 */
-#define ACE_HAS_TIUSER_H
-#define ACE_HAS_XTI
-#define ACE_HAS_TLI_PROTOTYPES
-#define ACE_HAS_UALARM
-#define ACE_HAS_UCONTEXT_T
-#define ACE_LACKS_PRI_T
-#define ACE_LACKS_RWLOCK_T
-#define ACE_PAGE_SIZE 8192
-#define ACE_HAS_SIGTIMEDWAIT
-#define ACE_HAS_SIGSUSPEND
-
-// DJT 6/10/96 All these broken macro's can now be removed with the
-// approporiate ordering of the include files. The Platinum release
-// now temporarily supports both forms. Platform's implementation of
-// sendmsg() has a non-const msgheader parameter.
-#define ACE_HAS_NONCONST_SENDMSG
-#define ACE_HAS_IDTYPE_T
-#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
-
-#if DIGITAL_UNIX >= 0x500
-# define ACE_HAS_XPG4_MULTIBYTE_CHAR 1
-#endif /* DIGITAL_UNIX >= 0x500 */
-
-#if DIGITAL_UNIX >= 0x40E
-# define ACE_LACKS_STDINT_H
-#endif /* DIGITAL_UNIX >= 0x40E */
-
-#if (DIGITAL_UNIX >= 0x400) && (DIGITAL_UNIX < 0x500)
-#define ACE_LACKS_PREAD_PROTOTYPE
-#endif /* (DIGITAL_UNIX >= 0x400) && (DIGITAL_UNIX < 0x500) */
-
-// gethostbyaddr does not handle IPv6-mapped-IPv4 addresses
-#define ACE_HAS_BROKEN_GETHOSTBYADDR_V4MAPPED
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_TRU64_H */
-
diff --git a/dep/include/ace/config-unixware-7.1.0.h b/dep/include/ace/config-unixware-7.1.0.h
deleted file mode 100644
index 44eef5d5973..00000000000
--- a/dep/include/ace/config-unixware-7.1.0.h
+++ /dev/null
@@ -1,412 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-unixware-7.1.0.h 82267 2008-07-08 16:39:19Z jtc $
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-
-/* ACE configuration header file */
-
-/* Include the commong gnu config file */
-#include "config-g++-common.h"
-
-/* For unixware 7.1 && g++ 2.91.57, see if this fixes my problem */
-#ifndef UNIXWARE_7_1
-#define UNIXWARE_7_1
-#endif
-
-/* Define if you have alloca, as a function or macro. */
-#define HAVE_ALLOCA 1
-
-/* Define if you have the strftime function. */
-#define HAVE_STRFTIME 1
-
-/* Define if you have <sys/wait.h> that is POSIX.1 compatible. */
-#define HAVE_SYS_WAIT_H 1
-
-/* Define if you have the ANSI C header files. */
-#define STDC_HEADERS 1
-
-/* Define if lex declares yytext as a char * by default, not a char[]. */
-#define YYTEXT_POINTER 1
-
-/* Define _REENTRANT if reentrant functions should be used. */
-#ifndef _REENTRANT
-# define _REENTRANT 1
-#endif
-
-#define ACE_HAS_NEW_NO_H 1
-#define ACE_HAS_STDEXCEPT_NO_H 1
-
-#define ACE_THREAD_MIN_PRIORITY 0
-#if defined (ACE_THREAD_MIN_PRIORITY)
-# define PTHREAD_MIN_PRIORITY ACE_THREAD_MIN_PRIORITY
-#endif /* #if defined (ACE_THREAD_MIN_PRIORITY) */
-
-#define ACE_THREAD_MAX_PRIORITY 99
-#if defined (ACE_THREAD_MAX_PRIORITY)
-# define PTHREAD_MAX_PRIORITY ACE_THREAD_MAX_PRIORITY
-#endif /* #if defined (ACE_THREAD_MAX_PRIORITY) */
-
-/* Specify sizes of given built-in types. If a size isn't defined here,
- then ace/Basic_Types.h will attempt to deduce the size. */
-/* #undef ACE_SIZEOF_CHAR */
-#define ACE_SIZEOF_SHORT 2
-#define ACE_SIZEOF_INT 4
-#define ACE_SIZEOF_LONG 4
-#define ACE_SIZEOF_LONG_LONG 8
-#define ACE_SIZEOF_VOID_P 4
-#define ACE_SIZEOF_FLOAT 4
-#define ACE_SIZEOF_DOUBLE 8
-#define ACE_SIZEOF_LONG_DOUBLE 12
-
-/* Enable ACE inlining */
-#define __ACE_INLINE__ 1
-
-/* OS has priocntl (2) */
-#define ACE_HAS_PRIOCNTL 1
-
-/* Platform has pread() and pwrite() support */
-#define ACE_HAS_P_READ_WRITE 1
-
-/* Compiler/platform supports alloca() */
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//#define ACE_HAS_ALLOCA 1
-
-/* Compiler/platform correctly calls init()/fini() for shared libraries */
-#define ACE_HAS_AUTOMATIC_INIT_FINI 1
-
-/* Platform doesn't cast MAP_FAILED to a (void *). */
-/* #undef ACE_HAS_BROKEN_MAP_FAILED */
-/* Staller: oh yes, let's do this! */
-#define ACE_HAS_BROKEN_MAP_FAILED
-
-/* Prototypes for both signal() and struct sigaction are consistent. */
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES 1
-
-/* Platform supports operations on directories via struct dirent,
- readdir_r, etc. */
-#define ACE_HAS_DIRENT 1
-
-/* Compiler supports C++ exception handling */
-// MM-Graz if ! defined inserted, to prevent warnings, because it is already
-// defined in config-g++common.h
-# if !defined (ACE_HAS_EXCEPTIONS)
-#define ACE_HAS_EXCEPTIONS 1
-# endif
-
-/* Platform supports getpagesize() call (otherwise, ACE_PAGE_SIZE must be
- defined, except on Win32) */
-#define ACE_HAS_GETPAGESIZE 1
-
-/* Platform supports the getrusage() system call. */
-#define ACE_HAS_GETRUSAGE 1
-
-/* Platform has a getrusage () prototype in sys/resource.h that differs from
- the one in ace/OS.i. */
-#define ACE_HAS_GETRUSAGE_PROTOTYPE 1
-
-/* Denotes that GNU has cstring.h as standard which redefines memchr() */
-#define ACE_HAS_GNU_CSTRING_H
-
-/* The GPERF utility is compiled for this platform */
-#define ACE_HAS_GPERF 1
-
-/* Optimize ACE_Handle_Set::count_bits for select() operations (common case) */
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT 1
-
-/* Compiler/platform supports idtype_t. */
-#define ACE_HAS_IDTYPE_T 1
-
-/* Platform supports IP multicast */
-#define ACE_HAS_IP_MULTICAST 1
-
-/* Platform supports thr_keydelete (e.g,. UNIXWARE) */
-#define ACE_HAS_THR_KEYDELETE 1
-
-/* Platform calls thr_minstack() rather than thr_min_stack() (e.g., Tandem). */
-#define ACE_HAS_THR_MINSTACK 1
-
-/* Platform supports recvmsg and sendmsg */
-#define ACE_HAS_MSG 1
-
-/* Platform's select() uses non-const timeval* (only found on Linux right
- now) */
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL 1
-
-/* Uses ctime_r & asctime_r with only two parameters vs. three. */
-#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R 1
-
-/* Platform is an Intel Pentium microprocessor. */
-/* There is a problem with the gethrtime() because of (apparently) a problem
- with the inline assembly instruction. Hopefully there is a way to resolve
- that with an improvement to the assembler
-*/
-#ifdef ACE_HAS_PENTIUM
-#undef ACE_HAS_PENTIUM
-#endif /* ACE_HAS_PENTIUM */
-
-/* Platform contains <poll.h> */
-#define ACE_HAS_POLL 1
-
-/* Platform supports POSIX O_NONBLOCK semantics */
-#define ACE_HAS_POSIX_NONBLOCK 1
-
-/* Platform supports the POSIX struct timespec type */
-#define ACE_HAS_POSIX_TIME 1
-
-/* Platform supports the /proc file system and defines tid_t
- in <sys/procfs.h> */
-#define ACE_HAS_PROC_FS 1
-
-/* Platform supports POSIX Threads */
-#define ACE_HAS_PTHREADS 1
-
-/* pthread.h declares an enum with PTHREAD_PROCESS_PRIVATE and
- PTHREAD_PROCESS_SHARED values */
-#define ACE_HAS_PTHREAD_PROCESS_ENUM 1
-
-/* Platform will recurse infinitely on thread exits from TSS cleanup routines
- (e.g., AIX) */
-#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS 1
-
-/* Platform supports reentrant functions (i.e., all the POSIX *_r
- functions). */
-#define ACE_HAS_REENTRANT_FUNCTIONS 1
-
-/* Platform has support for multi-byte character support compliant with the
- XPG4 Worldwide Portability Interface wide-character classification. */
-#define ACE_HAS_XPG4_MULTIBYTE_CHAR 1
-
-/* Platform does not support reentrant netdb functions (getprotobyname_r,
- getprotobynumber_r, gethostbyaddr_r, gethostbyname_r, getservbyname_r). */
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS 1
-
-/* Platform supports the POSIX regular expression library */
-#define ACE_HAS_REGEX 1
-
-/* Platform has special header for select(). */
-#define ACE_HAS_SELECT_H 1
-
-/* Platform has a function to set t_errno (e.g., Tandem). */
-#define ACE_HAS_SET_T_ERRNO 1
-
-/* Platform supports SVR4 extended signals */
-#define ACE_HAS_SIGINFO_T 1
-
-/* Platform/compiler has the sigwait(2) prototype */
-#define ACE_HAS_SIGWAIT 1
-
-/* Compiler/platform defines the sig_atomic_t typedef */
-#define ACE_HAS_SIG_ATOMIC_T 1
-
-/* Platform supports new BSD inet_addr len field. */
-#define ACE_HAS_SOCKADDR_IN_SIN_LEN 1
-
-/* OS/compiler uses size_t * rather than int * for socket lengths */
-#define ACE_HAS_SIZET_SOCKET_LEN 1
-
-/* Compiler/platform provides the sys/sockio.h file */
-#define ACE_HAS_SYS_SOCKIO_H 1
-
-/* Compiler supports the ssize_t typedef */
-#define ACE_HAS_SSIZE_T 1
-
-/* Platform supports UNIX International Threads */
-#define ACE_HAS_STHREADS 1
-
-/* Platform has thr_yield() */
-#define ACE_HAS_THR_YIELD 1
-
-/* Compiler/platform supports struct strbuf */
-#define ACE_HAS_STRBUF_T 1
-
-/* Platform supports STREAMS */
-#define ACE_HAS_STREAMS 1
-
-/* Platform supports STREAM pipes */
-#define ACE_HAS_STREAM_PIPES 1
-
-/* Compiler/platform supports strerror () */
-#define ACE_HAS_STRERROR 1
-
-/* Platform/Compiler supports a String class (e.g., GNU or Win32). */
-#define ACE_HAS_STRING_CLASS 1
-
-/* Platform has <strings.h> (which contains bzero() prototype) */
-#define ACE_HAS_STRINGS 1
-
-/* Platform/compiler supports void * as second parameter to gettimeofday(). */
-#define ACE_HAS_VOIDPTR_GETTIMEOFDAY 1
-
-/* Compiler/platform supports SVR4 dynamic linking semantics */
-#define ACE_HAS_SVR4_DYNAMIC_LINKING 1
-
-/* Compiler/platform supports SVR4 TLI (in particular, T_GETNAME stuff)... */
-#define ACE_HAS_SVR4_TLI 1
-
-/* Compiler/platform contains the <sys/syscall.h> file. */
-#define ACE_HAS_SYS_SYSCALL_H 1
-
-/* Platform supports system configuration information */
-#define ACE_HAS_SYS_SYSTEMINFO_H
-#define ACE_HAS_SYSINFO 1
-
-/* Platform supports System V IPC (most versions of UNIX, but not Win32) */
-#define ACE_HAS_SYSV_IPC 1
-
-/* Platform provides <sys/filio.h> header */
-#define ACE_HAS_SYS_FILIO_H 1
-
-/* Platform provides <sys/xti.h> header */
-#define ACE_HAS_SYS_XTI_H 1
-
-/* Platform has POSIX terminal interface. */
-#define ACE_HAS_TERMIOS 1
-
-/* Platform supports threads */
-#define ACE_HAS_THREADS 1
-
-/* Compiler/platform has thread-specific storage */
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE 1
-
-/* Platform supports TLI timod STREAMS module */
-#define ACE_HAS_TIMOD_H 1
-
-/* Platform supports TLI tiuser header */
-#define ACE_HAS_TIUSER_H 1
-
-/* Platform supports TLI. Also see ACE_TLI_TCP_DEVICE. */
-#define ACE_HAS_TLI 1
-
-/* Platform provides TLI function prototypes */
-#define ACE_HAS_TLI_PROTOTYPES 1
-
-/* Platform supports ualarm() */
-#define ACE_HAS_UALARM 1
-
-/* Platform supports ucontext_t (which is used in the extended signal API). */
-#define ACE_HAS_UCONTEXT_T 1
-
-/* Platform has <utime.h> header file */
-#define ACE_HAS_UTIME 1
-
-/* Platform requires void * for mmap(). */
-#define ACE_HAS_VOIDPTR_MMAP 1
-
-/* Platform has XTI (X/Open-standardized superset of TLI). Implies
- ACE_HAS_TLI but uses a different header file. */
-#define ACE_HAS_XTI 1
-
-/* Platform can not build ace/IOStream{,_T}.cpp. This does not necessarily
- mean that the platform does not support iostreams. */
-#define ACE_LACKS_ACE_IOSTREAM 1
-
-/* Platform does not have u_longlong_t typedef */
-#define ACE_LACKS_U_LONGLONG_T 1
-
-/* Platform lacks madvise() (e.g., Linux) */
-#define ACE_LACKS_MADVISE 1
-
-/* Platform lacks pri_t (e.g., Tandem NonStop UNIX). */
-#define ACE_LACKS_PRI_T 1
-
-/* Platform lacks pthread_thr_sigsetmask (e.g., MVS, HP/UX, and OSF/1 3.2) */
-#define ACE_LACKS_PTHREAD_THR_SIGSETMASK 1
-
-/* Platfrom lack pthread_yield() support. */
-#define ACE_LACKS_PTHREAD_YIELD 1
-
-/* Platform lacks readers/writer locks. */
-#define ACE_LACKS_RWLOCK_T 1
-
-/* MIT pthreads platform lacks the timedwait prototypes */
-#define ACE_LACKS_TIMEDWAIT_PROTOTYPES 1
-
-/* Platform does not define timepec_t as a typedef for struct timespec. */
-#define ACE_LACKS_TIMESPEC_T 1
-
-/* Compile using multi-thread libraries */
-#define ACE_MT_SAFE 1
-
-/* Platform needs to #include <sched.h> to get thread scheduling defs. */
-#define ACE_NEEDS_SCHED_H 1
-
-/*********************************************************************/
-/* Compiler's template mechanim must see source code (i.e., .cpp files). This
- is used for GNU G++. */
-/* Staller -> make 0 */
-// #undef ACE_TEMPLATES_REQUIRE_SOURCE
-
-/*********************************************************************/
-
-/* The OS/platform supports the poll() event demultiplexor */
-#define ACE_USE_POLL 1
-
-/* Platform has its standard c++ library in the namespace std. */
-#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-
-/* The number of bytes in a double. */
-#define SIZEOF_DOUBLE 8
-
-/* The number of bytes in a float. */
-#define SIZEOF_FLOAT 4
-
-/* The number of bytes in a int. */
-#define SIZEOF_INT 4
-
-/* The number of bytes in a long. */
-#define SIZEOF_LONG 4
-
-/* The number of bytes in a long double. */
-#define SIZEOF_LONG_DOUBLE 12
-
-/* The number of bytes in a long long. */
-#define SIZEOF_LONG_LONG 8
-
-/* The number of bytes in a short. */
-#define SIZEOF_SHORT 2
-
-/* The number of bytes in a signed char. */
-#define SIZEOF_SIGNED_CHAR 1
-
-/* The number of bytes in a void *. */
-#define SIZEOF_VOID_P 4
-
-/* Define if you have the execv function. */
-#define HAVE_EXECV 1
-
-/* Define if you have the execve function. */
-#define HAVE_EXECVE 1
-
-/* Define if you have the execvp function. */
-#define HAVE_EXECVP 1
-
-/* Define if you have the <dirent.h> header file. */
-#define HAVE_DIRENT_H 1
-
-/* Define if you have the <fstream> header file. */
-#define HAVE_FSTREAM 1
-
-/* Define if you have the <iomanip> header file. */
-#define HAVE_IOMANIP 1
-
-/* Define if you have the <iostream> header file. */
-#define HAVE_IOSTREAM 1
-
-/* Define if you have the <pwd.h> header file. */
-#define HAVE_PWD_H 1
-
-/* Name of package */
-#define PACKAGE "ace"
-
-/* Added by Staller */
-#define ENUM_BOOLEAN // See file /usr/local/lib/gcc-lib/i486-pc-sysv5/egcs-2.91.60/include/sys/types.h
-#define howmany(x, y) (((x)+((y)-1))/(y))
-#define ACE_HAS_BROKEN_T_ERROR // make a nasty warning disappear in OS.i
-#define __USLC__ 1
-#define __IOCTL_VERSIONED__ // By Carlo!
-
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-unixware-7.1.0.udk.h b/dep/include/ace/config-unixware-7.1.0.udk.h
deleted file mode 100644
index fc6006889e9..00000000000
--- a/dep/include/ace/config-unixware-7.1.0.udk.h
+++ /dev/null
@@ -1,456 +0,0 @@
-/* -*- C++ -*- */
-#ifndef ACE_CONFIG_UNIXWARE_UDK_H
-#define ACE_CONFIG_UNIXWARE_UDK_H
-
-// $Id: config-unixware-7.1.0.udk.h 82267 2008-07-08 16:39:19Z jtc $
-
-// Configuration for the unixware UDK compiler. derived from the unixware/g++ config
-// which was itself derived from an autoconfig run.
-
-/* ACE configuration header file */
-
-#define ACE_TEMPLATES_REQUIRE_SOURCE
-
-#ifndef UNIXWARE_7_1
-#define UNIXWARE_7_1
-#endif
-
-#define ACE_LACKS_PLACEMENT_OPERATOR_DELETE
-
-/* Define if you have the strftime function. */
-#define HAVE_STRFTIME 1
-
-/* Define if you have <sys/wait.h> that is POSIX.1 compatible. */
-#define HAVE_SYS_WAIT_H 1
-
-/* Define if you have the ANSI C header files. */
-#define STDC_HEADERS 1
-
-/* Define if lex declares yytext as a char * by default, not a char[]. */
-#define YYTEXT_POINTER 1
-
-/* Define _REENTRANT if reentrant functions should be used. */
-#ifndef _REENTRANT
-# define _REENTRANT 1
-#endif
-
-#define ACE_HAS_NEW_NO_H 1
-#define ACE_HAS_STDEXCEPT_NO_H 1
-
-/*
- * TODO: These two next #defines have an #undef before them, in
- * case the variable being defined already had a value.
- * The #undefs are being picked up by configure, and are commented out!
- */
-#define ACE_THREAD_MIN_PRIORITY 0
-#if defined (ACE_THREAD_MIN_PRIORITY)
-/* # undef PTHREAD_MIN_PRIORITY */
-# define PTHREAD_MIN_PRIORITY ACE_THREAD_MIN_PRIORITY
-#endif /* #if defined (ACE_THREAD_MIN_PRIORITY) */
-
-#define ACE_THREAD_MAX_PRIORITY 99
-#if defined (ACE_THREAD_MAX_PRIORITY)
-/* # undef PTHREAD_MAX_PRIORITY */
-# define PTHREAD_MAX_PRIORITY ACE_THREAD_MAX_PRIORITY
-#endif /* #if defined (ACE_THREAD_MAX_PRIORITY) */
-
-/* UnixWare specific configuration parameters */
-/* #undef UNIXWARE */
-/* #undef UNIXWARE_2_0 */
-/* #undef UNIXWARE_2_1 */
-
-/* Specify sizes of given built-in types. If a size isn't defined here,
- then ace/Basic_Types.h will attempt to deduce the size. */
-/* #undef ACE_SIZEOF_CHAR */
-#define ACE_SIZEOF_SHORT 2
-#define ACE_SIZEOF_INT 4
-#define ACE_SIZEOF_LONG 4
-#define ACE_SIZEOF_LONG_LONG 8
-#define ACE_SIZEOF_VOID_P 4
-#define ACE_SIZEOF_FLOAT 4
-#define ACE_SIZEOF_DOUBLE 8
-#define ACE_SIZEOF_LONG_DOUBLE 12
-
-/* Enable ACE inlining */
-#define __ACE_INLINE__ 1
-
-/* Platform supports Asynchronous IO calls */
-/* #define ACE_HAS_AIO_CALLS */
-
-/* Specify this if you don't want threads to inherit parent thread's
- ACE_Log_Msg properties. */
-/* #undef ACE_THREADS_DONT_INHERIT_LOG_MSG */
-
-/* OS has priocntl (2) */
-#define ACE_HAS_PRIOCNTL 1
-
-/* Platform has pread() and pwrite() support */
-#define ACE_HAS_P_READ_WRITE 1
-
-/* Compiler/platform correctly calls init()/fini() for shared libraries */
-#define ACE_HAS_AUTOMATIC_INIT_FINI 1
-
-/* Compiler handles explicit calling of template destructor correctly.
- See "ace/OS.h" for details. */
-/* Staller: already defined by config-g++-common.h
-#define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR 1
-*/
-
-/* Platform doesn't cast MAP_FAILED to a (void *). */
-/* #undef ACE_HAS_BROKEN_MAP_FAILED */
-/* Staller: oh yes, let's do this! */
-#define ACE_HAS_BROKEN_MAP_FAILED
-
-/* Prototypes for both signal() and struct sigaction are consistent. */
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES 1
-
-/* Compiler/platform has correctly prototyped header files */
-#define ACE_HAS_CPLUSPLUS_HEADERS
-
-/* Platform supports operations on directories via struct dirent,
- readdir_r, etc. */
-#define ACE_HAS_DIRENT
-
-/* Compiler supports C++ exception handling */
-# if !defined (ACE_HAS_EXCEPTIONS)
-#define ACE_HAS_EXCEPTIONS
-# endif
-
-/* Platform supports getpagesize() call (otherwise, ACE_PAGE_SIZE must be
- defined, except on Win32) */
-#define ACE_HAS_GETPAGESIZE
-
-/* Platform supports the getrusage() system call. */
-#define ACE_HAS_GETRUSAGE
-
-/* Platform has a getrusage () prototype in sys/resource.h that differs from
- the one in ace/OS.i. */
-#define ACE_HAS_GETRUSAGE_PROTOTYPE
-
-/* The GPERF utility is compiled for this platform */
-#define ACE_HAS_GPERF
-
-/* Optimize ACE_Handle_Set::count_bits for select() operations (common case) */
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT 1
-
-/* Compiler/platform supports SunOS high resolution timers */
-/* #undef ACE_HAS_HI_RES_TIMER */
-
-/* Compiler/platform supports idtype_t. */
-#define ACE_HAS_IDTYPE_T
-
-/* Inline all the static class OS methods to remove call overhead */
-/* Note: This gets defined by OS.h if __ACE_INLINE__ is defined */
-/* #undef ACE_HAS_INLINED_OSCALLS */
-
-/* Platform supports IP multicast */
-#define ACE_HAS_IP_MULTICAST
-
-/* Platform supports thr_keydelete (e.g,. UNIXWARE) */
-#define ACE_HAS_THR_KEYDELETE
-
-/* Platform calls thr_minstack() rather than thr_min_stack() (e.g., Tandem). */
-#define ACE_HAS_THR_MINSTACK
-
-/* Some files, such as ace/streams.h, want to include new style C++ stream
- headers. These headers are iomanip, ios, iostream, istream, ostream,
- fstream and streambuf. If _all_ of these headers aren't available, then
- assume that only iostream.h and fstream.h are available. */
-/* #define ACE_USES_OLD_IOSTREAMS */
-
-/* Platform supports recvmsg and sendmsg */
-#define ACE_HAS_MSG
-
-/* Platform's select() uses non-const timeval* (only found on Linux right
- now) */
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-
-/* Uses ctime_r & asctime_r with only two parameters vs. three. */
-#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
-
-/* Platform is an Intel Pentium microprocessor. */
-/* There is a problem with the gethrtime() because of (apparently) a problem
- with the inline assembly instruction. Hopefully there is a way to resolve
- that with an improvement to the assembler
-*/
-#ifdef ACE_HAS_PENTIUM
-//#undef ACE_HAS_PENTIUM
-#endif /* ACE_HAS_PENTIUM */
-
-/* Platform contains <poll.h> */
-#define ACE_HAS_POLL
-
-/* Platform supports POSIX O_NONBLOCK semantics */
-#define ACE_HAS_POSIX_NONBLOCK
-
-/* Platform supports the POSIX struct timespec type */
-#define ACE_HAS_POSIX_TIME
-
-/* Platform supports the /proc file system and defines tid_t
- in <sys/procfs.h> */
-#define ACE_HAS_PROC_FS
-
-/* Platform supports POSIX Threads */
-#define ACE_HAS_PTHREADS
-
-/* pthread.h declares an enum with PTHREAD_PROCESS_PRIVATE and
- PTHREAD_PROCESS_SHARED values */
-#define ACE_HAS_PTHREAD_PROCESS_ENUM
-
-/* Platform will recurse infinitely on thread exits from TSS cleanup routines
- (e.g., AIX) */
-#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
-
-/* Platform supports reentrant functions (i.e., all the POSIX *_r
- functions). */
-#define ACE_HAS_REENTRANT_FUNCTIONS
-
-/* Platform has support for multi-byte character support compliant with the
- XPG4 Worldwide Portability Interface wide-character classification. */
-#define ACE_HAS_XPG4_MULTIBYTE_CHAR
-
-/* Platform does not support reentrant netdb functions (getprotobyname_r,
- getprotobynumber_r, gethostbyaddr_r, gethostbyname_r, getservbyname_r). */
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-
-/* Platform supports the POSIX regular expression library */
-#define ACE_HAS_REGEX
-
-/* Platform has special header for select(). */
-#define ACE_HAS_SELECT_H
-
-/* Platform has a function to set t_errno (e.g., Tandem). */
-#define ACE_HAS_SET_T_ERRNO
-
-/* Platform supports SVR4 extended signals */
-#define ACE_HAS_SIGINFO_T
-
-/* Platform/compiler has the sigwait(2) prototype */
-#define ACE_HAS_SIGWAIT
-
-/* Compiler/platform defines the sig_atomic_t typedef */
-#define ACE_HAS_SIG_ATOMIC_T
-
-/* Platform supports new BSD inet_addr len field. */
-#define ACE_HAS_SOCKADDR_IN_SIN_LEN
-
-/* OS/compiler uses size_t * rather than int * for socket lengths */
-#define ACE_HAS_SIZET_SOCKET_LEN
-
-/* Compiler/platform provides the sys/sockio.h file */
-#define ACE_HAS_SYS_SOCKIO_H
-
-/* Compiler supports the ssize_t typedef */
-#define ACE_HAS_SSIZE_T
-
-/* Platform supports UNIX International Threads */
-#define ACE_HAS_STHREADS
-
-/* Platform has thr_yield() */
-#define ACE_HAS_THR_YIELD
-
-/* Platform/compiler supports Standard C++ Library */
-/* It seems that UDK provides std-like declarations for only portions
- such as <exception>
-*/
-#define ACE_HAS_STANDARD_CPP_LIBRARY 0
-
-/* Compiler/platform supports struct strbuf */
-#define ACE_HAS_STRBUF_T
-
-/* Platform supports STREAMS */
-#define ACE_HAS_STREAMS
-
-/* Platform supports STREAM pipes */
-#define ACE_HAS_STREAM_PIPES
-
-/* Compiler/platform supports strerror () */
-#define ACE_HAS_STRERROR
-
-/* Platform/Compiler supports a String class (e.g., GNU or Win32). */
-#define ACE_HAS_STRING_CLASS
-
-/* Platform has <strings.h> (which contains bzero() prototype) */
-#define ACE_HAS_STRINGS
-
-/* Platform/compiler supports void * as second parameter to gettimeofday(). */
-#define ACE_HAS_VOIDPTR_GETTIMEOFDAY
-
-/* Compiler/platform supports SVR4 dynamic linking semantics */
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-
-/* Compiler/platform supports SVR4 TLI (in particular, T_GETNAME stuff)... */
-#define ACE_HAS_SVR4_TLI
-
-/* Compiler/platform contains the <sys/syscall.h> file. */
-#define ACE_HAS_SYS_SYSCALL_H
-
-/* Platform supports system configuration information */
-#define ACE_HAS_SYS_SYSTEMINFO_H
-#define ACE_HAS_SYSINFO 1
-
-/* Platform supports System V IPC (most versions of UNIX, but not Win32) */
-#define ACE_HAS_SYSV_IPC 1
-
-/* Platform provides <sys/filio.h> header */
-#define ACE_HAS_SYS_FILIO_H 1
-
-/* Platform provides <sys/xti.h> header */
-#define ACE_HAS_SYS_XTI_H 1
-
-/* Compiler implements templates that support typedefs inside of classes used
- as formal arguments to a template class. */
-#define ACE_HAS_TEMPLATE_TYPEDEFS 1
-
-/* Platform has POSIX terminal interface. */
-#define ACE_HAS_TERMIOS 1
-
-/* Platform supports threads */
-#define ACE_HAS_THREADS 1
-
-/* Compiler/platform has thread-specific storage */
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE 1
-
-/* Platform supports TLI timod STREAMS module */
-#define ACE_HAS_TIMOD_H 1
-
-/* Platform supports TLI tiuser header */
-#define ACE_HAS_TIUSER_H 1
-
-/* Platform supports TLI. Also see ACE_TLI_TCP_DEVICE. */
-#define ACE_HAS_TLI 1
-
-/* Platform provides TLI function prototypes */
-#define ACE_HAS_TLI_PROTOTYPES 1
-
-/* Platform supports ualarm() */
-#define ACE_HAS_UALARM 1
-
-/* Platform supports ucontext_t (which is used in the extended signal API). */
-#define ACE_HAS_UCONTEXT_T 1
-
-/* Platform has <utime.h> header file */
-#define ACE_HAS_UTIME 1
-
-/* Prints out console message in ACE_NOTSUP. Useful for tracking down origin
- of ACE_NOTSUP. */
-/* #undef ACE_HAS_VERBOSE_NOTSUP */
-
-/* Platform requires void * for mmap(). */
-#define ACE_HAS_VOIDPTR_MMAP 1
-
-/* Platform has XTI (X/Open-standardized superset of TLI). Implies
- ACE_HAS_TLI but uses a different header file. */
-#define ACE_HAS_XTI 1
-
-/* Platform can not build ace/IOStream{,_T}.cpp. This does not necessarily
- mean that the platform does not support iostreams. */
-#define ACE_LACKS_ACE_IOSTREAM 1
-
-/* Platform does not have u_longlong_t typedef */
-#define ACE_LACKS_U_LONGLONG_T 1
-
-/* Platform lacks madvise() (e.g., Linux) */
-#define ACE_LACKS_MADVISE 1
-
-/* Platform lacks pri_t (e.g., Tandem NonStop UNIX). */
-#define ACE_LACKS_PRI_T 1
-
-/* Platform lacks pthread_thr_sigsetmask (e.g., MVS, HP/UX, and OSF/1 3.2) */
-#define ACE_LACKS_PTHREAD_THR_SIGSETMASK 1
-
-/* Platfrom lack pthread_yield() support. */
-#define ACE_LACKS_PTHREAD_YIELD 1
-
-/* Platform lacks readers/writer locks. */
-#define ACE_LACKS_RWLOCK_T 1
-
-/* MIT pthreads platform lacks the timedwait prototypes */
-#define ACE_LACKS_TIMEDWAIT_PROTOTYPES 1
-
-/* Platform does not define timepec_t as a typedef for struct timespec. */
-#define ACE_LACKS_TIMESPEC_T 1
-
-/* Compile using multi-thread libraries */
-#define ACE_MT_SAFE 1
-
-/* Platform needs to #include <sched.h> to get thread scheduling defs. */
-#define ACE_NEEDS_SCHED_H 1
-
-/* The OS/platform supports the poll() event demultiplexor */
-#define ACE_USE_POLL 1
-
-/* Platform has its standard c++ library in the namespace std. */
-#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-
-/* The number of bytes in a double. */
-#define SIZEOF_DOUBLE 8
-
-/* The number of bytes in a float. */
-#define SIZEOF_FLOAT 4
-
-/* The number of bytes in a int. */
-#define SIZEOF_INT 4
-
-/* The number of bytes in a long. */
-#define SIZEOF_LONG 4
-
-/* The number of bytes in a long double. */
-#define SIZEOF_LONG_DOUBLE 12
-
-/* The number of bytes in a long long. */
-#define SIZEOF_LONG_LONG 8
-
-/* The number of bytes in a short. */
-#define SIZEOF_SHORT 2
-
-/* The number of bytes in a signed char. */
-#define SIZEOF_SIGNED_CHAR 1
-
-/* The number of bytes in a void *. */
-#define SIZEOF_VOID_P 4
-
-/* Define if you have the execv function. */
-#define HAVE_EXECV 1
-
-/* Define if you have the execve function. */
-#define HAVE_EXECVE 1
-
-/* Define if you have the execvp function. */
-#define HAVE_EXECVP 1
-
-/* Define if you have the <dirent.h> header file. */
-#define HAVE_DIRENT_H 1
-
-/* Define if you have the <fstream> header file. */
-#define HAVE_FSTREAM 1
-
-/* Define if you have the <iomanip> header file. */
-#define HAVE_IOMANIP 1
-
-/* Define if you have the <iostream> header file. */
-#define HAVE_IOSTREAM 1
-
-/* Define if you have the <pwd.h> header file. */
-#define HAVE_PWD_H 1
-
-/* Name of package */
-#define PACKAGE "ace"
-
-/* Version number of package */
-#define VERSION "4.6.37"
-
-/* Added by Staller */
-#define ENUM_BOOLEAN // See file /usr/local/lib/gcc-lib/i486-pc-sysv5/egcs-2.91.60/include/sys/types.h
-/* Hat nix gebracht
-#define ACE_DEFAULT_SELECT_REACTOR_SIZE 256 // this is like in linux config fileto avoid another error
-*/
-#define howmany(x, y) (((x)+((y)-1))/(y))
-#define ACE_HAS_BROKEN_T_ERROR // let disappear a nasty warning from OS.i
-#if !defined (__USLC__)
-# define __USLC__ 1
-#endif
-
-#define __IOCTL_VERSIONED__ // By Carlo!
-#endif /* ACE_UNIXWARE_UDK_H */
-
diff --git a/dep/include/ace/config-visualage.h b/dep/include/ace/config-visualage.h
deleted file mode 100644
index 6d967b52217..00000000000
--- a/dep/include/ace/config-visualage.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-visualage.h 80826 2008-03-04 14:51:23Z wotte $
-
-// This configuration file automatically includes the proper
-// configurations for IBM's VisualAge C++ compiler on Win32 and AIX.
-
-#ifndef CONFIG_VISUALAGE_H
-#define CONFIG_VISUALAGE_H
-#include /**/ "ace/pre.h"
-
-#ifdef __TOS_WIN__
- #include "ace/config-win32.h"
-#elif __TOS_AIX__
- #include "ace/config-aix-4.x.h"
-#else
- #include "PLATFORM NOT SPECIFIED"
-#endif /* __TOS_WIN__ */
-
-#include /**/ "ace/post.h"
-#endif //CONFIG_VISUALAGE_H
-
diff --git a/dep/include/ace/config-vxworks.h b/dep/include/ace/config-vxworks.h
deleted file mode 100644
index 52c2958654d..00000000000
--- a/dep/include/ace/config-vxworks.h
+++ /dev/null
@@ -1,56 +0,0 @@
-//* -*- C++ -*- */
-// $Id: config-vxworks.h 81046 2008-03-21 10:11:12Z johnnyw $
-
-// The following configuration file is designed to work for VxWorks
-// Based on ACE_VXWORKS it will select the correct config file
-
-#ifndef ACE_CONFIG_VXWORKS_H
-#define ACE_CONFIG_VXWORKS_H
-#include /**/ "ace/pre.h"
-
-// If ACE_VXWORKS is not defined try to figure out the VxWorks version
-#if !defined (ACE_VXWORKS)
-# include "vxWorks.h"
-# if !defined (_WRS_VXWORKS_MAJOR) && !defined (_WRS_VXWORKS_MINOR)
-# error You must define ACE_VXWORKS
-# else
-# if (_WRS_VXWORKS_MAJOR == 6)
-# if (_WRS_VXWORKS_MINOR == 0)
-# define ACE_VXWORKS 0x600
-# elif (_WRS_VXWORKS_MINOR == 1)
-# define ACE_VXWORKS 0x610
-# elif (_WRS_VXWORKS_MINOR == 2)
-# define ACE_VXWORKS 0x620
-# elif (_WRS_VXWORKS_MINOR == 3)
-# define ACE_VXWORKS 0x630
-# elif (_WRS_VXWORKS_MINOR == 4)
-# define ACE_VXWORKS 0x640
-# elif (_WRS_VXWORKS_MINOR == 5)
-# define ACE_VXWORKS 0x650
-# elif (_WRS_VXWORKS_MINOR == 6)
-# define ACE_VXWORKS 0x660
-# endif
-# endif
-# endif
-#endif /* ! ACE_VXWORKS */
-
-#if (ACE_VXWORKS == 0x551)
-# include "ace/config-vxworks5.x.h"
-#elif (ACE_VXWORKS == 0x620)
-# include "ace/config-vxworks6.2.h"
-#elif (ACE_VXWORKS == 0x630)
-# include "ace/config-vxworks6.3.h"
-#elif (ACE_VXWORKS == 0x640)
-# include "ace/config-vxworks6.4.h"
-#elif (ACE_VXWORKS == 0x650)
-# include "ace/config-vxworks6.5.h"
-#elif (ACE_VXWORKS == 0x660)
-# include "ace/config-vxworks6.6.h"
-#else
-#error Unknown VxWorks version
-#endif
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_VXWORKS_H */
-
-
diff --git a/dep/include/ace/config-vxworks5.x.h b/dep/include/ace/config-vxworks5.x.h
deleted file mode 100644
index eeb22490090..00000000000
--- a/dep/include/ace/config-vxworks5.x.h
+++ /dev/null
@@ -1,346 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-vxworks5.x.h 81850 2008-06-06 08:39:54Z vzykov $
-
-// The following configuration file is designed to work for VxWorks
-// 5.5.x platforms using one of these compilers:
-// 1) The GNU g++ compiler that is shipped with Tornado 2.2 or newer.
-// 2) The Green Hills 1.8.8 and newer 1.8.9 compilers (not tested
-// already for a long time)
-// 3) The WindRiver Compiler (formerly known as Diab)
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-#include /**/ "ace/pre.h"
-
-#if ! defined (VXWORKS)
-# define VXWORKS
-#endif /* ! VXWORKS */
-
-#if ! defined (ACE_VXWORKS)
-# define ACE_VXWORKS 0x551
-#endif /* ! ACE_VXWORKS */
-
-#if ! defined (__ACE_INLINE__)
-# define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-// Compiler-specific configuration.
-#if defined (__GNUG__)
-# include "ace/config-g++-common.h"
-
-# define ACE_LACKS_IOSTREAM_FX
-
-# if !defined (ACE_MAIN)
-# define ACE_MAIN ace_main
-# endif /* ! ACE_MAIN */
-
-# define ACE_LACKS_LINEBUFFERED_STREAMBUF
-
-# if (__GNUC__ == 2)
-# define ACE_CDR_IMPLEMENT_WITH_NATIVE_DOUBLE 1
-# endif
-
-# if (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3))
- // GNU 3.3+ toolchain supports long long types but fails to define this so STL
- // skips some definitions
-# if !defined (_GLIBCPP_USE_LONG_LONG)
-# define _GLIBCPP_USE_LONG_LONG
-# endif
-# endif /* (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) */
-
-#elif defined (ghs)
- // Processor type, if necessary. Green Hills defines "ppc".
-# if defined (ppc)
-# define ACE_HAS_POWERPC_TIMER
-# define ACE_LACKS_CLEARERR
-# endif /* ppc */
-
-# define ACE_CONFIG_INCLUDE_GHS_COMMON
-# include "ace/config-ghs-common.h"
-
-# define ACE_LACKS_UNISTD_H
-# define ACE_LACKS_IOSTREAM_TOTALLY
-
-// Short-circuit the include of <arpa/inet.h>
-// Green Hills has a problem with multiply defined functions
-// with different parameters.
-# define __INCineth
-
-#elif defined (__DCPLUSPLUS__) || defined (__DCC__)
- // Diab 4.2a or later.
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
- // We define it with a -D with make depend.
-# define ACE_LACKS_PRAGMA_ONCE
-# endif /* ! ACE_LACKS_PRAGMA_ONCE */
-
- // Diab doesn't support VxWorks' iostream libraries.
-# define ACE_LACKS_IOSTREAM_TOTALLY
-# define ACE_LACKS_ACE_IOSTREAM
-
-# define ACE_HAS_STANDARD_CPP_LIBRARY 1
-# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 0
-
-# define ACE_TEMPLATES_REQUIRE_SOURCE
-
-#else /* ! __GNUG__ && ! ghs && !__DCC__ */
-# ifdef __cplusplus /* Let it slide for C compilers. */
-# error unsupported compiler on VxWorks
-# endif /* __cplusplus */
-#endif /* ! __GNUG__ && ! ghs */
-
-// OS-specific configuration
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-#define ACE_HAS_SIZET_PTR_ASCTIME_R_AND_CTIME_R
-#define ACE_MKDIR_LACKS_MODE
-#define ACE_HAS_NONCONST_GETBY
-#define ACE_HAS_NONCONST_STAT
-#define ACE_HAS_NONCONST_SWAB
-#define ACE_HAS_NONCONST_READV
-#define ACE_HAS_NONCONST_CHDIR
-#define ACE_HAS_NONCONST_UNLINK
-#define ACE_HAS_NONCONST_OPENDIR
-#define ACE_LACKS_UNIX_SYSLOG
-#define ACE_DEFAULT_MAX_SOCKET_BUFSIZ 32768
-#define ACE_DEFAULT_THREAD_KEYS 16
-#define ACE_HAS_BROKEN_ACCEPT_ADDR
-#define ACE_HAS_NONCONST_SENDMSG
-#define ACE_HAS_NONCONST_WRITEV
-#define ACE_HAS_CHARPTR_DL
-#define ACE_HAS_CHARPTR_SOCKOPT
-#define ACE_HAS_CLOCK_GETTIME
-#define ACE_HAS_CLOCK_SETTIME
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-#define ACE_HAS_CPLUSPLUS_HEADERS
-#define ACE_HAS_DIRENT
-#define ACE_HAS_DLL 0
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-#define ACE_HAS_IOCTL_INT_3_PARAM
-#define ACE_HAS_MSG
-#define ACE_HAS_NONCONST_READV
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
-#define ACE_HAS_POSIX_NONBLOCK
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_REENTRANT_FUNCTIONS
-#define ACE_HAS_SIGINFO_T
-#define ACE_HAS_SIGWAIT
-#define ACE_HAS_SIG_ATOMIC_T
-#define ACE_HAS_SOCKADDR_IN_SIN_LEN
-#define ACE_HAS_SOCKADDR_IN6_SIN6_LEN
-#define ACE_HAS_STRDUP_EMULATION
-#define ACE_HAS_STRERROR
-#define ACE_HAS_THREADS
-#define ACE_LACKS_ALPHASORT
-#define ACE_LACKS_ACCESS
-#define ACE_LACKS_EXEC
-#define ACE_LACKS_FCNTL
-#define ACE_LACKS_FILELOCKS
-#define ACE_LACKS_FORK
-#define ACE_LACKS_FSYNC
-#define ACE_LACKS_GETHOSTENT
-#define ACE_LACKS_GETOPT
-#define ACE_LACKS_GETPID
-#define ACE_LACKS_GETPPID
-#define ACE_LACKS_GETSERVBYNAME
-#define ACE_LACKS_KEY_T
-#define ACE_LACKS_LSTAT
-#define ACE_LACKS_MADVISE
-#define ACE_LACKS_MALLOC_H
-#define ACE_LACKS_MEMORY_H
-#define ACE_LACKS_MKFIFO
-#define ACE_LACKS_MKTEMP
-#define ACE_LACKS_MKSTEMP
-#define ACE_LACKS_MMAP
-#define ACE_LACKS_MPROTECT
-#define ACE_LACKS_MSYNC
-#define ACE_LACKS_NUMERIC_LIMITS
-#define ACE_LACKS_GETPROTOBYNAME
-#define ACE_LACKS_GETPROTOBYNUMBER
-#define ACE_LACKS_GETHOSTBYADDR
-#define ACE_LACKS_GETHOSTBYNAME
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-#define ACE_LACKS_SYS_PARAM_H
-#define ACE_LACKS_PWD_FUNCTIONS
-#define ACE_LACKS_RAND_REENTRANT_FUNCTIONS
-#define ACE_LACKS_READDIR_R
-#define ACE_LACKS_READLINK
-#define ACE_LACKS_REALPATH
-#define ACE_LACKS_RLIMIT
-#define ACE_LACKS_RWLOCK_T
-#define ACE_LACKS_SBRK
-#define ACE_LACKS_SEEKDIR
-#define ACE_LACKS_SEMBUF_T
-#define ACE_LACKS_SIGINFO_H
-#define ACE_LACKS_SI_ADDR
-#define ACE_LACKS_SOCKETPAIR
-#define ACE_LACKS_STRCASECMP
-#define ACE_LACKS_STRRECVFD
-#define ACE_LACKS_SYSCALL
-#define ACE_LACKS_SYSCONF
-#define ACE_LACKS_SYS_SYSCTL_H
-#define ACE_LACKS_SYSV_SHMEM
-#define ACE_LACKS_TELLDIR
-#define ACE_LACKS_TEMPNAM
-#define ACE_LACKS_TIMESPEC_T
-#define ACE_LACKS_TRUNCATE
-#define ACE_LACKS_UCONTEXT_H
-#define ACE_LACKS_UMASK
-#define ACE_LACKS_UTSNAME_T
-#define ACE_LACKS_UNAME
-#define ACE_LACKS_STRPTIME
-#define ACE_LACKS_VSNPRINTF
-#define ACE_LACKS_WAIT
-#define ACE_LACKS_WAITPID
-#define ACE_LACKS_DUP2
-#define ACE_LACKS_DUP
-#define ACE_LACKS_SUSECONDS_T
-#define ACE_LACKS_USECONDS_T
-#define ACE_LACKS_INTPTR_T
-#define ACE_PAGE_SIZE 4096
-#define ACE_THR_PRI_FIFO_DEF 101
-#define ACE_THR_PRI_OTHER_DEF ACE_THR_PRI_FIFO_DEF
-#define ACE_HAS_SIGTIMEDWAIT
-#define ACE_HAS_SIGSUSPEND
-#if !defined (ACE_VXWORKS_SPARE)
-# define ACE_VXWORKS_SPARE spare4
-#endif /* ! ACE_VXWORKS_SPARE */
-
-#define ACE_LACKS_SETEGID
-#define ACE_LACKS_SETPGID
-#define ACE_LACKS_SETREGID
-#define ACE_LACKS_SETREUID
-#define ACE_LACKS_SETSID
-#define ACE_LACKS_SETUID
-#define ACE_LACKS_SETEUID
-#define ACE_LACKS_GETEGID
-#define ACE_LACKS_GETGID
-#define ACE_LACKS_GETEUID
-#define ACE_LACKS_GETUID
-#define ACE_LACKS_SETGID
-#define ACE_LACKS_GETPGID
-
-#define ACE_LACKS_PIPE
-#define ACE_LACKS_STDINT_H
-#define ACE_LACKS_INTTYPES_H
-#define ACE_LACKS_UNISTD_H
-#define ACE_LACKS_SYS_SELECT_H
-#define ACE_LACKS_SYS_TIME_H
-#define ACE_LACKS_SYS_RESOURCE_H
-#define ACE_LACKS_DLFCN_H
-#define ACE_LACKS_SYS_UIO_H
-#define ACE_LACKS_SYS_IPC_H
-#define ACE_LACKS_SYS_SEM_H
-#define ACE_LACKS_STROPTS_H
-#define ACE_LACKS_SYS_MSG_H
-#define ACE_LACKS_WCHAR_H
-#define ACE_LACKS_PWD_H
-#define ACE_LACKS_SEARCH_H
-#define ACE_LACKS_SYS_SHM_H
-#define ACE_LACKS_STRINGS_H
-#define ACE_LACKS_TERMIOS_H
-#define ACE_LACKS_POLL_H
-#define ACE_LACKS_WCTYPE_H
-
-// Not sure if these should always be defined.
-#define ACE_LACKS_SYS_UN_H
-
-// Some string things
-#define ACE_LACKS_WCSCAT
-#define ACE_LACKS_WCSCHR
-#define ACE_LACKS_WCSCMP
-#define ACE_LACKS_WCSCPY
-#define ACE_LACKS_WCSCSPN
-#define ACE_LACKS_WCSLEN
-#define ACE_LACKS_WCSNCAT
-#define ACE_LACKS_WCSNCMP
-#define ACE_LACKS_WCSNCPY
-#define ACE_LACKS_WCSPBRK
-#define ACE_LACKS_WCSRCHR
-#define ACE_LACKS_WCSSPN
-#define ACE_LACKS_WCSSTR
-#define ACE_LACKS_WCSTOK
-#define ACE_LACKS_TOWLOWER
-#define ACE_LACKS_TOWUPPER
-#define ACE_LACKS_ITOW
-#define ACE_LACKS_WCSICMP
-#define ACE_LACKS_WCSNICMP
-#define ACE_LACKS_WCSTOD
-#define ACE_LACKS_WCSTOL
-#define ACE_LACKS_WCSTOUL
-#define ACE_LACKS_WCSDUP
-#define ACE_LACKS_STRTOULL
-#define ACE_LACKS_WCSTOULL
-
-#define ACE_LACKS_SYMLINKS
-#define ACE_LACKS_FGETWC
-#define ACE_LACKS_FGETWS
-#define ACE_LACKS_FPUTWS
-
-#if defined (ACE_HAS_VXWORKS551_PID) || (ACE_HAS_VXWORKS551_PCD) || (ACE_HAS_VXWORKS551_PNE)
-# define ACE_HAS_VXWORKS551_MEDUSA
-#endif
-
-#if defined (ACE_HAS_VXWORKS551_MEDUSA)
-# define ACE_HAS_GETIFADDRS
-#endif
-
-// It is possible to enable pthread support with VxWorks, when the user decides
-// to use this, we need some more defines
-#if defined ACE_HAS_PTHREADS
-# define ACE_LACKS_CONDATTR_PSHARED
-# define ACE_LACKS_MUTEXATTR_PSHARED
-# define ACE_HAS_THREAD_SPECIFIC_STORAGE
-# define ACE_HAS_POSIX_SEM
-// Include this file, the sys/stat.h file shipped with VxWorks has old types
-// and without this include we get a lot of compile errors. A TSR has been filed
-// so that hopefully in the future we can zap this include
-#include "types/vxTypesOld.h"
-#else
-# define ACE_HAS_VXTHREADS
-# define ACE_LACKS_PTHREAD_H
-# define ACE_LACKS_COND_T
-// VxWorks has no recursive mutexes. This was set in the past but it doesn't
-// work with the pthread support, so only set it for the time being when pthread
-// is disabled
-# define ACE_HAS_RECURSIVE_MUTEXES
-// VxWorks does not have the pthread_mutex_timedlock operation, but there is
-// an emulation for this when not using the pthread mapping
-#define ACE_HAS_MUTEX_TIMEOUTS
-#define ACE_HAS_TSS_EMULATION
-#endif
-
-#if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-#endif
-
-// Needed include to get all VxWorks CPU types
-#include "types/vxCpu.h"
-#if (CPU == PENTIUM || CPU == PENTIUM2 || CPU == PENTIUM3 || CPU == PENTIUM4)
-// If running an Intel Pentium the
-// ACE_OS::gethrtime () can use the RDTSC instruction.
-# define ACE_HAS_PENTIUM
-#endif
-
-# if defined (TOOL) && (TOOL == gnu)
-# if defined (CPU) && (CPU == PPC85XX || CPU == PPC604 || CPU == PPC603)
-// These PPC's do lack log2
-# define ACE_LACKS_LOG2
-# endif
-# endif
-
-#if !defined (ACE_NEEDS_HUGE_THREAD_STACKSIZE)
-# define ACE_NEEDS_HUGE_THREAD_STACKSIZE 65536
-#endif /* ACE_NEEDS_HUGE_THREAD_STACKSIZE */
-
-#if !defined (ACE_NTRACE)
-# define ACE_NTRACE 1
-#endif /* ACE_NTRACE */
-
-// By default, don't include RCS Id strings in object code.
-#if !defined (ACE_USE_RCSID)
-#define ACE_USE_RCSID 0
-#endif /* !ACE_USE_RCSID */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_H */
-
diff --git a/dep/include/ace/config-vxworks6.2.h b/dep/include/ace/config-vxworks6.2.h
deleted file mode 100644
index f7978b0036e..00000000000
--- a/dep/include/ace/config-vxworks6.2.h
+++ /dev/null
@@ -1,329 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-vxworks6.2.h 81850 2008-06-06 08:39:54Z vzykov $
-
-// The following configuration file is designed to work for VxWorks
-// 6.2 platforms using one of these compilers:
-// 1) The GNU g++ compiler that is shipped with VxWorks 6.2
-
-#ifndef ACE_CONFIG_VXWORKS_6_2_H
-#define ACE_CONFIG_VXWORKS_6_2_H
-#include /**/ "ace/pre.h"
-
-#if ! defined (VXWORKS)
-# define VXWORKS
-#endif /* ! VXWORKS */
-
-#if ! defined (ACE_VXWORKS)
-# define ACE_VXWORKS 0x620
-#endif /* ! ACE_VXWORKS */
-
-#if defined __RTP__
- // Fix wrong typedef in unistd.h (unsigned short)
- #define _SUSECONDS_T
- typedef long suseconds_t;
-#endif
-#include <unistd.h>
-
-// Fix for including right typedef for pid_t in VxTypes.h (int)
-#include <vxWorksCommon.h>
-
-#if ! defined (__ACE_INLINE__)
-# define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-// Compiler-specific configuration.
-#if defined (__GNUG__)
-# include "ace/config-g++-common.h"
-
-# define ACE_LACKS_IOSTREAM_FX
-# define ACE_LACKS_LINEBUFFERED_STREAMBUF
-
-# if defined (__RTP__) && !defined (_HAS_C9X)
-// Workaround for the fact that under RTP the log2 method can't be used
-// without this define set, see TSR560446
-# if !defined (_C99)
-# define _C99
-# endif
-# endif
-
-#elif defined (__DCPLUSPLUS__) || defined (__DCC__)
- // Diab 4.2a or later.
-# if !defined (ACE_LACKS_PRAGMA_ONCE)
- // We define it with a -D with make depend.
-# define ACE_LACKS_PRAGMA_ONCE
-# endif /* ! ACE_LACKS_PRAGMA_ONCE */
-
-# define ACE_HAS_STANDARD_CPP_LIBRARY 1
-# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-# define ACE_TEMPLATES_REQUIRE_SOURCE
-
-#else /* ! __GNUG__ && ! ghs && !__DCC__ */
-# ifdef __cplusplus /* Let it slide for C compilers. */
-# error unsupported compiler on VxWorks
-# endif /* __cplusplus */
-#endif /* ! __GNUG__ && ! ghs */
-
-#if !defined __RTP__
-# if defined (TOOL) && (TOOL == gnu)
-# if defined (CPU) && (CPU == PPC85XX || CPU == PPC604 || CPU == PPC603)
-// These PPC's do lack log2 in kernel mode
-# define ACE_LACKS_LOG2
-# endif
-# endif
-#endif
-
-// OS-specific configuration
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-#define ACE_HAS_NONCONST_GETBY
-#define ACE_HAS_NONCONST_SWAB
-#define ACE_HAS_NONCONST_READV
-#define ACE_LACKS_UNIX_SYSLOG
-#define ACE_DEFAULT_MAX_SOCKET_BUFSIZ 32768
-#define ACE_DEFAULT_THREAD_KEYS 16
-#define ACE_HAS_BROKEN_ACCEPT_ADDR
-#define ACE_HAS_NONCONST_SENDMSG
-#define ACE_HAS_NONCONST_WRITEV
-#define ACE_HAS_CHARPTR_DL
-#define ACE_HAS_CLOCK_GETTIME
-#define ACE_HAS_CLOCK_SETTIME
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-#define ACE_HAS_CPLUSPLUS_HEADERS
-#define ACE_HAS_DIRENT
-#define ACE_HAS_DLL 0
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-#define ACE_HAS_IOCTL_INT_3_PARAM
-#define ACE_HAS_MSG
-#define ACE_HAS_NONCONST_READV
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
-#define ACE_HAS_POSIX_NONBLOCK
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_REENTRANT_FUNCTIONS
-#define ACE_HAS_SIGACTION_CONSTP2
-#define ACE_HAS_SIGINFO_T
-#define ACE_HAS_SIGWAIT
-#define ACE_HAS_SIG_ATOMIC_T
-#define ACE_HAS_SOCKADDR_IN_SIN_LEN
-#define ACE_HAS_SOCKADDR_IN6_SIN6_LEN
-#define ACE_HAS_STRERROR
-#define ACE_HAS_THREADS
-#define ACE_HAS_SYSCTL
-#define ACE_LACKS_ALPHASORT
-#define ACE_LACKS_EXEC
-#define ACE_LACKS_FILELOCKS
-#define ACE_LACKS_FORK
-#define ACE_LACKS_GETHOSTENT
-#define ACE_LACKS_GETSERVBYNAME
-#define ACE_LACKS_GETPROTOBYNAME
-#define ACE_LACKS_GETPROTOBYNUMBER
-#define ACE_LACKS_KEY_T
-#define ACE_LACKS_LSTAT
-#define ACE_LACKS_MADVISE
-#define ACE_LACKS_MALLOC_H
-#define ACE_LACKS_MEMORY_H
-#define ACE_LACKS_MKFIFO
-#define ACE_LACKS_MKTEMP
-#define ACE_LACKS_MKSTEMP
-#define ACE_LACKS_MMAP
-#define ACE_LACKS_MPROTECT
-#define ACE_LACKS_MSYNC
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-#define ACE_LACKS_SYS_PARAM_H
-#define ACE_LACKS_PWD_FUNCTIONS
-#define ACE_LACKS_READDIR_R
-#define ACE_LACKS_READLINK
-#define ACE_LACKS_REALPATH
-#define ACE_LACKS_PIPE
-#define ACE_LACKS_RLIMIT
-#define ACE_LACKS_RWLOCK_T
-#define ACE_LACKS_SBRK
-#define ACE_LACKS_SEEKDIR
-#define ACE_LACKS_SEMBUF_T
-#define ACE_LACKS_SIGINFO_H
-#define ACE_LACKS_SI_ADDR
-#define ACE_LACKS_SOCKETPAIR
-#define ACE_LACKS_STRRECVFD
-#define ACE_LACKS_SYSV_SHMEM
-#define ACE_LACKS_TELLDIR
-#define ACE_LACKS_TEMPNAM
-#define ACE_LACKS_TIMESPEC_T
-#define ACE_LACKS_TRUNCATE
-#define ACE_LACKS_UCONTEXT_H
-#define ACE_LACKS_USECONDS_T
-#define ACE_LACKS_UMASK
-#define ACE_LACKS_STRPTIME
-#define ACE_PAGE_SIZE 4096
-#define ACE_THR_PRI_FIFO_DEF 101
-#define ACE_THR_PRI_OTHER_DEF ACE_THR_PRI_FIFO_DEF
-#define ACE_HAS_SIGTIMEDWAIT
-#define ACE_HAS_SIGSUSPEND
-#if !defined (ACE_VXWORKS_SPARE)
-# define ACE_VXWORKS_SPARE spare4
-#endif /* ! ACE_VXWORKS_SPARE */
-#define ACE_HAS_GETIFADDRS
-
-#define ACE_LACKS_SETEGID
-#define ACE_LACKS_SETPGID
-#define ACE_LACKS_SETREGID
-#define ACE_LACKS_SETREUID
-#define ACE_LACKS_SETSID
-#define ACE_LACKS_SETUID
-#define ACE_LACKS_SETEUID
-#define ACE_LACKS_GETEUID
-#define ACE_LACKS_GETUID
-#define ACE_LACKS_GETPGID
-#define ACE_LACKS_GETEGID
-#define ACE_LACKS_GETGID
-#define ACE_LACKS_SETGID
-
-#define ACE_LACKS_SYS_UIO_H
-#define ACE_LACKS_SYS_IPC_H
-#define ACE_LACKS_SYS_SEM_H
-#define ACE_LACKS_STROPTS_H
-#define ACE_LACKS_SYS_MSG_H
-#define ACE_LACKS_PWD_H
-#define ACE_LACKS_SYS_SHM_H
-#define ACE_LACKS_TERMIOS_H
-#define ACE_LACKS_POLL_H
-#define ACE_LACKS_FCNTL
-
-// Some string things
-#define ACE_LACKS_STRCASECMP
-#define ACE_LACKS_ITOW
-#define ACE_LACKS_WCSDUP
-#define ACE_LACKS_WCSICMP
-#define ACE_LACKS_WCSNICMP
-#define ACE_LACKS_STRTOULL
-#define ACE_LACKS_WCSTOULL
-
-#define ACE_HAS_CHARPTR_SOCKOPT
-#define ACE_LACKS_SYMLINKS
-
-#if defined __RTP__
- // We are building for RTP mode
- #if !defined (ACE_AS_STATIC_LIBS)
- # define ACE_HAS_SVR4_DYNAMIC_LINKING
- #endif
- #define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
- #define ACE_LACKS_REGEX_H
- #define ACE_LACKS_PUTENV
- #define ACE_HAS_SETENV
- #define ACE_HAS_3_PARAM_WCSTOK
- #define ACE_HAS_WCHAR
- #define ACE_HAS_VFWPRINTF
- #define ACE_SIZEOF_WCHAR 2
-#else
- // We are building for kernel mode
- #define ACE_LACKS_INTPTR_T
- #define ACE_LACKS_SUSECONDS_T
- #define ACE_LACKS_INTTYPES_H
- #define ACE_LACKS_STDINT_H
- #define ACE_LACKS_UNAME
- #define ACE_LACKS_UTSNAME_T
- #define ACE_LACKS_RAND_REENTRANT_FUNCTIONS
- #define ACE_LACKS_DLFCN_H
- #define ACE_LACKS_WAIT
- #define ACE_LACKS_WAITPID
- #define ACE_LACKS_SYS_TIME_H
- #define ACE_LACKS_SYS_SELECT_H
- #define ACE_LACKS_STRINGS_H
- #define ACE_MKDIR_LACKS_MODE
- #define ACE_HAS_SIZET_PTR_ASCTIME_R_AND_CTIME_R
- #define ACE_LACKS_SEARCH_H
- #define ACE_LACKS_SYSCONF
- #define ACE_LACKS_GETPID
- #define ACE_LACKS_GETPPID
- #define ACE_LACKS_WCHAR_H
- #define ACE_LACKS_WCTYPE_H
- #define ACE_LACKS_WCSCAT
- #define ACE_LACKS_WCSCHR
- #define ACE_LACKS_WCSCMP
- #define ACE_LACKS_WCSCPY
- #define ACE_LACKS_WCSCSPN
- #define ACE_LACKS_WCSLEN
- #define ACE_LACKS_WCSNCAT
- #define ACE_LACKS_WCSNCMP
- #define ACE_LACKS_WCSNCPY
- #define ACE_LACKS_WCSPBRK
- #define ACE_LACKS_WCSRCHR
- #define ACE_LACKS_WCSSPN
- #define ACE_LACKS_WCSSTR
- #define ACE_LACKS_WCSTOK
- #define ACE_LACKS_TOWLOWER
- #define ACE_LACKS_TOWUPPER
- #define ACE_LACKS_WCSTOD
- #define ACE_LACKS_WCSTOL
- #define ACE_LACKS_WCSTOUL
- #define ACE_LACKS_FGETWC
- #define ACE_LACKS_FGETWS
- #define ACE_LACKS_FPUTWS
- #if !defined (ACE_MAIN)
- # define ACE_MAIN ace_main
- #endif /* ! ACE_MAIN */
-#endif
-
-// It is possible to enable pthread support with VxWorks, when the user decides
-// to use this, we need some more defines
-#if defined ACE_HAS_PTHREADS
-# define ACE_HAS_THREAD_SPECIFIC_STORAGE
-# define ACE_HAS_POSIX_SEM
-# define ACE_LACKS_MUTEXATTR_PSHARED
-# define ACE_LACKS_CONDATTR_PSHARED
-// Include this file, the sys/stat.h file shipped with VxWorks has old types
-// and without this include we get a lot of compile errors. A TSR has been filed
-// so that hopefully in the future we can zap this include
-#include "types/vxTypesOld.h"
-#else
-# define ACE_LACKS_PTHREAD_H
-# define ACE_HAS_VXTHREADS
-# if !defined __RTP__
-// Only when building for kernel mode we can use TSS emulation, in rtp mode
-// we can't use the WIND_TCB struct anymore
-# define ACE_HAS_TSS_EMULATION
-# endif
-// VxWorks has no recursive mutexes. This was set in the past but it doesn't
-// work with the pthread support, so only set it for the time being when pthread
-// is disabled
-# define ACE_HAS_RECURSIVE_MUTEXES
-# define ACE_LACKS_COND_T
-# define ACE_HAS_MUTEX_TIMEOUTS
-#endif
-
-#if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-#endif
-
-// Needed include to get all VxWorks CPU types
-#include "types/vxCpu.h"
-#if (CPU == PENTIUM || CPU == PENTIUM2 || CPU == PENTIUM3 || CPU == PENTIUM4)
-// If running an Intel Pentium the
-// ACE_OS::gethrtime () can use the RDTSC instruction.
-# define ACE_HAS_PENTIUM
-#endif
-
-// VxWorks defines the CPU define MAP, undef it to prevent problems with
-// application code
-#if defined (MAP)
-#undef MAP
-#endif /* MAP */
-
-#if !defined (ACE_NEEDS_HUGE_THREAD_STACKSIZE)
-# define ACE_NEEDS_HUGE_THREAD_STACKSIZE 65536
-#endif /* ACE_NEEDS_HUGE_THREAD_STACKSIZE */
-
-#if !defined (ACE_NTRACE)
-# define ACE_NTRACE 1
-#endif /* ACE_NTRACE */
-
-// By default, don't include RCS Id strings in object code.
-#if !defined (ACE_USE_RCSID)
-#define ACE_USE_RCSID 0
-#endif /* !ACE_USE_RCSID */
-
-#if defined (ACE_HAS_IP_MULTICAST)
-# define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
-#endif /* ACE_HAS_IP_MULTICAST */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_VXWORKS_6_2_H */
-
diff --git a/dep/include/ace/config-vxworks6.3.h b/dep/include/ace/config-vxworks6.3.h
deleted file mode 100644
index fe90626e3dc..00000000000
--- a/dep/include/ace/config-vxworks6.3.h
+++ /dev/null
@@ -1,318 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-vxworks6.3.h 81850 2008-06-06 08:39:54Z vzykov $
-
-// The following configuration file is designed to work for VxWorks
-// 6.3 platforms using one of these compilers:
-// 1) The GNU g++ compiler that is shipped with VxWorks 6.3
-
-#ifndef ACE_CONFIG_VXWORKS_6_3_H
-#define ACE_CONFIG_VXWORKS_6_3_H
-#include /**/ "ace/pre.h"
-
-#if ! defined (VXWORKS)
-# define VXWORKS
-#endif /* ! VXWORKS */
-
-#if ! defined (ACE_VXWORKS)
-# define ACE_VXWORKS 0x630
-#endif /* ! ACE_VXWORKS */
-
-#if ! defined (__ACE_INLINE__)
-# define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-// Compiler-specific configuration.
-#if defined (__GNUG__)
-# include "ace/config-g++-common.h"
-
-# define ACE_LACKS_IOSTREAM_FX
-# define ACE_LACKS_LINEBUFFERED_STREAMBUF
-
-# if defined (__RTP__) && !defined (_HAS_C9X)
-// Workaround for the fact that under RTP the log2 method can't be used
-// without this define set, see TSR560446
-# if !defined (_C99)
-# define _C99
-# endif
-# endif
-
-#elif defined (__DCC__)
-# define ACE_HAS_STANDARD_CPP_LIBRARY 1
-# define ACE_TEMPLATES_REQUIRE_SOURCE
-#else /* ! __GNUG__ && ! ghs && !__DCC__ */
-# ifdef __cplusplus /* Let it slide for C compilers. */
-# error unsupported compiler on VxWorks
-# endif /* __cplusplus */
-#endif /* ! __GNUG__ && ! ghs */
-
-#if !defined __RTP__
-# if defined (TOOL) && (TOOL == gnu)
-# if defined (CPU) && (CPU == PPC85XX || CPU == PPC604 || CPU == PPC603)
-// These PPC's do lack log2 in kernel mode
-# define ACE_LACKS_LOG2
-# endif
-# endif
-#endif
-
-// OS-specific configuration
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-#define ACE_HAS_NONCONST_GETBY
-#define ACE_HAS_NONCONST_SWAB
-#define ACE_LACKS_UNIX_SYSLOG
-#define ACE_DEFAULT_MAX_SOCKET_BUFSIZ 32768
-#define ACE_DEFAULT_THREAD_KEYS 16
-#define ACE_HAS_BROKEN_ACCEPT_ADDR
-#define ACE_HAS_NONCONST_SENDMSG
-#define ACE_HAS_NONCONST_WRITEV
-#define ACE_HAS_CHARPTR_DL
-#define ACE_HAS_CLOCK_GETTIME
-#define ACE_HAS_CLOCK_SETTIME
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-#define ACE_HAS_CPLUSPLUS_HEADERS
-#define ACE_HAS_DIRENT
-#define ACE_HAS_DLL 0
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-#define ACE_HAS_MSG
-#define ACE_HAS_NONCONST_READV
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
-#define ACE_HAS_POSIX_NONBLOCK
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_REENTRANT_FUNCTIONS
-#define ACE_HAS_SIGACTION_CONSTP2
-#define ACE_HAS_SIGINFO_T
-#define ACE_HAS_SIGWAIT
-#define ACE_HAS_SIG_ATOMIC_T
-#define ACE_HAS_SOCKADDR_IN_SIN_LEN
-#define ACE_HAS_SOCKADDR_IN6_SIN6_LEN
-#define ACE_HAS_STRERROR
-#define ACE_HAS_THREADS
-#define ACE_HAS_SYSCTL
-#define ACE_LACKS_ALPHASORT
-#define ACE_LACKS_EXEC
-#define ACE_LACKS_FILELOCKS
-#define ACE_LACKS_FORK
-#define ACE_LACKS_GETHOSTENT
-#define ACE_LACKS_GETSERVBYNAME
-#define ACE_LACKS_GETPROTOBYNAME
-#define ACE_LACKS_GETPROTOBYNUMBER
-#define ACE_LACKS_GETIPNODEBYADDR
-#define ACE_LACKS_GETIPNODEBYNAME_IPV6
-#define ACE_LACKS_LSTAT
-#define ACE_LACKS_MADVISE
-#define ACE_LACKS_MALLOC_H
-#define ACE_LACKS_MEMORY_H
-#define ACE_LACKS_MKFIFO
-#define ACE_LACKS_MKTEMP
-#define ACE_LACKS_MKSTEMP
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-#define ACE_LACKS_SYS_PARAM_H
-#define ACE_LACKS_PWD_FUNCTIONS
-#define ACE_LACKS_READDIR_R
-#define ACE_LACKS_READLINK
-#define ACE_LACKS_REALPATH
-#define ACE_LACKS_PIPE
-#define ACE_LACKS_RLIMIT
-#define ACE_LACKS_RWLOCK_T
-#define ACE_LACKS_SBRK
-#define ACE_LACKS_SEEKDIR
-#define ACE_LACKS_SEMBUF_T
-#define ACE_LACKS_SIGINFO_H
-#define ACE_LACKS_SI_ADDR
-#define ACE_LACKS_SOCKETPAIR
-#define ACE_LACKS_STRRECVFD
-#define ACE_LACKS_SYSV_SHMEM
-#define ACE_LACKS_TELLDIR
-#define ACE_LACKS_TEMPNAM
-#define ACE_LACKS_TIMESPEC_T
-#define ACE_LACKS_TRUNCATE
-#define ACE_LACKS_UCONTEXT_H
-#define ACE_LACKS_USECONDS_T
-#define ACE_LACKS_UMASK
-#define ACE_LACKS_STRPTIME
-#define ACE_PAGE_SIZE 4096
-#define ACE_THR_PRI_FIFO_DEF 101
-#define ACE_THR_PRI_OTHER_DEF ACE_THR_PRI_FIFO_DEF
-#define ACE_HAS_SIGTIMEDWAIT
-#define ACE_HAS_SIGSUSPEND
-#define ACE_HAS_GETIFADDRS
-
-#define ACE_LACKS_SETEGID
-#define ACE_LACKS_SETPGID
-#define ACE_LACKS_SETREGID
-#define ACE_LACKS_SETREUID
-#define ACE_LACKS_SETSID
-#define ACE_LACKS_SETUID
-#define ACE_LACKS_SETEUID
-#define ACE_LACKS_GETEUID
-#define ACE_LACKS_GETUID
-#define ACE_LACKS_GETPGID
-#define ACE_LACKS_GETEGID
-#define ACE_LACKS_GETGID
-#define ACE_LACKS_SETGID
-
-#define ACE_LACKS_SYS_UIO_H
-#define ACE_LACKS_SYS_IPC_H
-#define ACE_LACKS_SYS_SEM_H
-#define ACE_LACKS_STROPTS_H
-#define ACE_LACKS_SYS_MSG_H
-#define ACE_LACKS_PWD_H
-#define ACE_LACKS_SYS_SHM_H
-#define ACE_LACKS_TERMIOS_H
-#define ACE_LACKS_POLL_H
-#define ACE_LACKS_FCNTL
-
-// Some string things
-#define ACE_LACKS_ITOW
-#define ACE_LACKS_WCSDUP
-#define ACE_LACKS_WCSICMP
-#define ACE_LACKS_WCSNICMP
-#define ACE_LACKS_STRTOULL
-#define ACE_LACKS_WCSTOULL
-
-#define ACE_HAS_CHARPTR_SOCKOPT
-#define ACE_LACKS_SYMLINKS
-
-#if defined __RTP__
- // We are building for RTP mode
- #if !defined (ACE_AS_STATIC_LIBS)
- # define ACE_HAS_SVR4_DYNAMIC_LINKING
- #endif
- #define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
- #define ACE_LACKS_REGEX_H
- #define ACE_LACKS_PUTENV
- #define ACE_HAS_SETENV
- #define ACE_HAS_3_PARAM_WCSTOK
- #define ACE_HAS_WCHAR
- #define ACE_HAS_VFWPRINTF
- #define ACE_SIZEOF_WCHAR 2
- #define ACE_HAS_SHM_OPEN
- #if defined (ACE_AS_STATIC_LIBS)
- # define ACE_HAS_AIO_CALLS
- #endif
- #define ACE_LACKS_STRCASECMP
- // VxWorks seems to either not define this or define as zero up till now
- #if !defined (IOV_MAX) || (IOV_MAX == 0)
- #define ACE_IOV_MAX 16
- #endif
-#else
- // We are building for kernel mode
- #define ACE_LACKS_SUSECONDS_T
- #define ACE_LACKS_INTPTR_T
- #define ACE_LACKS_INTTYPES_H
- #define ACE_LACKS_STDINT_H
- #define ACE_LACKS_UNAME
- #define ACE_LACKS_UTSNAME_T
- #define ACE_LACKS_RAND_REENTRANT_FUNCTIONS
- #define ACE_LACKS_DLFCN_H
- #define ACE_LACKS_WAIT
- #define ACE_LACKS_WAITPID
- #define ACE_LACKS_SYS_TIME_H
- #define ACE_LACKS_SYS_SELECT_H
- #define ACE_MKDIR_LACKS_MODE
- #define ACE_HAS_SIZET_PTR_ASCTIME_R_AND_CTIME_R
- #define ACE_LACKS_SEARCH_H
- #define ACE_LACKS_SYSCONF
- #define ACE_LACKS_GETPID
- #define ACE_LACKS_GETPPID
- #define ACE_LACKS_WCHAR_H
- #define ACE_LACKS_WCTYPE_H
- #define ACE_LACKS_WCSCAT
- #define ACE_LACKS_WCSCHR
- #define ACE_LACKS_WCSCMP
- #define ACE_LACKS_WCSCPY
- #define ACE_LACKS_WCSCSPN
- #define ACE_LACKS_WCSLEN
- #define ACE_LACKS_WCSNCAT
- #define ACE_LACKS_WCSNCMP
- #define ACE_LACKS_WCSNCPY
- #define ACE_LACKS_WCSPBRK
- #define ACE_LACKS_WCSRCHR
- #define ACE_LACKS_WCSSPN
- #define ACE_LACKS_WCSSTR
- #define ACE_LACKS_WCSTOK
- #define ACE_LACKS_TOWLOWER
- #define ACE_LACKS_TOWUPPER
- #define ACE_LACKS_WCSTOD
- #define ACE_LACKS_WCSTOL
- #define ACE_LACKS_WCSTOUL
- #define ACE_LACKS_FGETWC
- #define ACE_LACKS_FGETWS
- #define ACE_LACKS_FPUTWS
- #define ACE_HAS_IOCTL_INT_3_PARAM
- #define ACE_LACKS_MMAP
- #define ACE_LACKS_MSYNC
- #define ACE_LACKS_MPROTECT
- #if !defined (ACE_MAIN)
- # define ACE_MAIN ace_main
- #endif /* ! ACE_MAIN */
-#endif
-
-// It is possible to enable pthread support with VxWorks, when the user decides
-// to use this, we need some more defines
-#if defined ACE_HAS_PTHREADS
-# define ACE_HAS_THREAD_SPECIFIC_STORAGE
-# define ACE_HAS_POSIX_SEM
-# define ACE_LACKS_MUTEXATTR_PSHARED
-# define ACE_LACKS_CONDATTR_PSHARED
-// Include this file, the sys/stat.h file shipped with VxWorks has old types
-// and without this include we get a lot of compile errors. A TSR has been filed
-// so that hopefully in the future we can zap this include
-#include "types/vxTypesOld.h"
-#else
-# define ACE_LACKS_PTHREAD_H
-# define ACE_HAS_VXTHREADS
-# if !defined __RTP__
-// Only when building for kernel mode we can use TSS emulation, in rtp mode
-// we can't use the WIND_TCB struct anymore
-# define ACE_HAS_TSS_EMULATION
-# if !defined (ACE_VXWORKS_SPARE)
-# define ACE_VXWORKS_SPARE spare4
-# endif /* ! ACE_VXWORKS_SPARE */
-# endif
-// VxWorks has no recursive mutexes. This was set in the past but it doesn't
-// work with the pthread support, so only set it for the time being when pthread
-// is disabled
-# define ACE_HAS_RECURSIVE_MUTEXES
-# define ACE_LACKS_COND_T
-# define ACE_HAS_MUTEX_TIMEOUTS
-#endif
-
-#if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-#endif
-
-// Needed include to get all VxWorks CPU types
-#include "types/vxCpu.h"
-#if defined (CPU) && (CPU == PENTIUM || CPU == PENTIUM2 || CPU == PENTIUM3 || CPU == PENTIUM4)
- // If running an Intel Pentium the
- // ACE_OS::gethrtime () can use the RDTSC instruction.
- # define ACE_HAS_PENTIUM
-#endif
-
-// VxWorks defines the CPU define MAP, undef it to prevent problems with
-// application code
-#if defined (MAP)
-#undef MAP
-#endif /* MAP */
-
-#if !defined (ACE_NEEDS_HUGE_THREAD_STACKSIZE)
-# define ACE_NEEDS_HUGE_THREAD_STACKSIZE 65536
-#endif /* ACE_NEEDS_HUGE_THREAD_STACKSIZE */
-
-#if !defined (ACE_NTRACE)
-# define ACE_NTRACE 1
-#endif /* ACE_NTRACE */
-
-// By default, don't include RCS Id strings in object code.
-#if !defined (ACE_USE_RCSID)
-#define ACE_USE_RCSID 0
-#endif /* !ACE_USE_RCSID */
-
-#if defined (ACE_HAS_IP_MULTICAST)
-# define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
-#endif /* ACE_HAS_IP_MULTICAST */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_VXWORKS_6_3_H */
-
diff --git a/dep/include/ace/config-vxworks6.4.h b/dep/include/ace/config-vxworks6.4.h
deleted file mode 100644
index 80c28ab624c..00000000000
--- a/dep/include/ace/config-vxworks6.4.h
+++ /dev/null
@@ -1,341 +0,0 @@
-//* -*- C++ -*- */
-// $Id: config-vxworks6.4.h 81850 2008-06-06 08:39:54Z vzykov $
-
-// The following configuration file is designed to work for VxWorks
-// 6.4 platforms using one of these compilers:
-// 1) The GNU g++ compiler that is shipped with VxWorks 6.4
-// 2) The Diab compiler that is shipped with VxWorks 6.4
-
-#ifndef ACE_CONFIG_VXWORKS_6_4_H
-#define ACE_CONFIG_VXWORKS_6_4_H
-#include /**/ "ace/pre.h"
-
-#if ! defined (VXWORKS)
-# define VXWORKS
-#endif /* ! VXWORKS */
-
-#if ! defined (ACE_VXWORKS)
-# define ACE_VXWORKS 0x640
-#endif /* ! ACE_VXWORKS */
-
-#if !defined (__RTP__)
- // Fix for wrong typedef of time_t in kernel mode
- #ifndef _TIME_T
- #define _TIME_T
- typedef long time_t;
- #endif
-#endif
-
-#if ! defined (__ACE_INLINE__)
-# define __ACE_INLINE__
-#endif /* ! __ACE_INLINE__ */
-
-// Compiler-specific configuration.
-#if defined (__GNUG__)
-# include "ace/config-g++-common.h"
-
-# define ACE_LACKS_IOSTREAM_FX
-# define ACE_LACKS_LINEBUFFERED_STREAMBUF
-
-# if defined (__RTP__) && !defined (_HAS_C9X)
-// Workaround for the fact that under RTP the log2 method can't be used
-// without this define set, see TSR560446
-# if !defined (_C99)
-# define _C99
-# endif
-# endif
-
-#elif defined (__DCC__)
-# define ACE_HAS_STANDARD_CPP_LIBRARY 1
-# define ACE_TEMPLATES_REQUIRE_SOURCE
-#else /* ! __GNUG__ && ! ghs && !__DCC__ */
-# ifdef __cplusplus /* Let it slide for C compilers. */
-# error unsupported compiler on VxWorks
-# endif /* __cplusplus */
-#endif /* ! __GNUG__ && ! ghs */
-
-// Needed include to get all VxWorks CPU types
-#include "types/vxCpu.h"
-#if defined __RTP__
- #if defined (_VX_CPU) && (_VX_CPU == _VX_PENTIUM || _VX_CPU == _VX_PENTIUM2 || _VX_CPU == _VX_PENTIUM3 || _VX_CPU == _VX_PENTIUM4)
- // If running an Intel Pentium the
- // ACE_OS::gethrtime () can use the RDTSC instruction.
- # define ACE_HAS_PENTIUM
- #endif
-#else
- #if defined (CPU) && (CPU == PENTIUM || CPU == PENTIUM2 || CPU == PENTIUM3 || CPU == PENTIUM4)
- // If running an Intel Pentium the
- // ACE_OS::gethrtime () can use the RDTSC instruction.
- # define ACE_HAS_PENTIUM
- #endif
-#endif
-
-#if !defined __RTP__
-# if defined (TOOL) && (TOOL == gnu)
-# if defined (CPU) && (CPU == PPC85XX || CPU == PPC604 || CPU == PPC603)
-// These PPC's do lack log2 in kernel mode
-# define ACE_LACKS_LOG2
-# endif
-# endif
-#endif
-
-// OS-specific configuration
-#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
-#define ACE_HAS_3_PARAM_READDIR_R
-#define ACE_HAS_NONCONST_GETBY
-#define ACE_HAS_NONCONST_SWAB
-#define ACE_LACKS_UNIX_SYSLOG
-#define ACE_DEFAULT_MAX_SOCKET_BUFSIZ 32768
-#define ACE_DEFAULT_THREAD_KEYS 16
-#define ACE_HAS_BROKEN_ACCEPT_ADDR
-#define ACE_HAS_NONCONST_SENDMSG
-#define ACE_HAS_NONCONST_WRITEV
-#define ACE_HAS_CHARPTR_DL
-#define ACE_HAS_CLOCK_GETTIME
-#define ACE_HAS_CLOCK_SETTIME
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-#define ACE_HAS_CPLUSPLUS_HEADERS
-#define ACE_HAS_DIRENT
-#define ACE_HAS_DLL 0
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-#define ACE_HAS_MSG
-#define ACE_HAS_NONCONST_READV
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
-#define ACE_HAS_POSIX_NONBLOCK
-#define ACE_HAS_POSIX_TIME
-#define ACE_HAS_REENTRANT_FUNCTIONS
-#define ACE_HAS_SIGACTION_CONSTP2
-#define ACE_HAS_SIGINFO_T
-#define ACE_HAS_SIGWAIT
-#define ACE_HAS_SIG_ATOMIC_T
-#define ACE_HAS_SOCKADDR_IN_SIN_LEN
-#define ACE_HAS_SOCKADDR_IN6_SIN6_LEN
-#define ACE_HAS_STRERROR
-#define ACE_HAS_THREADS
-#define ACE_HAS_SYSCTL
-#define ACE_LACKS_ALPHASORT
-#define ACE_LACKS_EXEC
-#define ACE_LACKS_RLIMIT
-#define ACE_LACKS_FILELOCKS
-#define ACE_LACKS_FORK
-#define ACE_LACKS_GETHOSTENT
-#define ACE_LACKS_GETSERVBYNAME
-#define ACE_LACKS_GETPROTOBYNAME
-#define ACE_LACKS_GETPROTOBYNUMBER
-#define ACE_LACKS_GETIPNODEBYADDR
-#define ACE_LACKS_GETIPNODEBYNAME_IPV6
-#define ACE_LACKS_LSTAT
-#define ACE_LACKS_MADVISE
-#define ACE_LACKS_MALLOC_H
-#define ACE_LACKS_MEMORY_H
-#define ACE_LACKS_MKFIFO
-#define ACE_LACKS_MKSTEMP
-#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
-#define ACE_LACKS_SYS_PARAM_H
-#define ACE_LACKS_PWD_FUNCTIONS
-#define ACE_LACKS_READLINK
-#define ACE_LACKS_REALPATH
-#define ACE_LACKS_PIPE
-#define ACE_LACKS_RWLOCK_T
-#define ACE_LACKS_SBRK
-#define ACE_LACKS_SEEKDIR
-#define ACE_LACKS_SEMBUF_T
-#define ACE_LACKS_SIGINFO_H
-#define ACE_LACKS_SI_ADDR
-#define ACE_LACKS_SOCKETPAIR
-#define ACE_LACKS_STRRECVFD
-#define ACE_LACKS_SYSV_SHMEM
-#define ACE_LACKS_TELLDIR
-#define ACE_LACKS_TIMESPEC_T
-#define ACE_LACKS_TRUNCATE
-#define ACE_LACKS_UCONTEXT_H
-#define ACE_LACKS_USECONDS_T
-#define ACE_LACKS_UMASK
-#define ACE_LACKS_STRPTIME
-#define ACE_LACKS_MKTEMP
-#define ACE_LACKS_TEMPNAM
-#define ACE_PAGE_SIZE 4096
-#define ACE_THR_PRI_FIFO_DEF 101
-#define ACE_THR_PRI_OTHER_DEF ACE_THR_PRI_FIFO_DEF
-#define ACE_HAS_SIGTIMEDWAIT
-#define ACE_HAS_SIGSUSPEND
-#define ACE_HAS_GETIFADDRS
-
-#define ACE_LACKS_SETEGID
-#define ACE_LACKS_SETPGID
-#define ACE_LACKS_SETREGID
-#define ACE_LACKS_SETREUID
-#define ACE_LACKS_SETSID
-#define ACE_LACKS_SETUID
-#define ACE_LACKS_SETEUID
-#define ACE_LACKS_GETEUID
-#define ACE_LACKS_GETUID
-#define ACE_LACKS_GETPGID
-#define ACE_LACKS_GETEGID
-#define ACE_LACKS_GETGID
-#define ACE_LACKS_SETGID
-
-#define ACE_LACKS_SYS_UIO_H
-#define ACE_LACKS_SYS_IPC_H
-#define ACE_LACKS_SYS_SEM_H
-#define ACE_LACKS_STROPTS_H
-#define ACE_LACKS_SYS_MSG_H
-#define ACE_LACKS_PWD_H
-#define ACE_LACKS_SYS_SHM_H
-#define ACE_LACKS_TERMIOS_H
-#define ACE_LACKS_POLL_H
-#define ACE_LACKS_FCNTL
-
-// Some string things
-#define ACE_LACKS_ITOW
-#define ACE_LACKS_WCSDUP
-#define ACE_LACKS_WCSICMP
-#define ACE_LACKS_WCSNICMP
-#define ACE_LACKS_STRTOULL
-#define ACE_LACKS_WCSTOULL
-
-#define ACE_HAS_CHARPTR_SOCKOPT
-#define ACE_LACKS_SYMLINKS
-
-#if defined __RTP__
- // We are building for RTP mode
- #if !defined (ACE_AS_STATIC_LIBS)
- # define ACE_HAS_SVR4_DYNAMIC_LINKING
- #endif
- #define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
- #define ACE_LACKS_REGEX_H
- #if defined ACE_HAS_PENTIUM
- // Bug to workaround VxWorks 6.4 x86
- # define ACE_LACKS_PUTENV
- #endif
- #define ACE_HAS_SETENV
- #define ACE_LACKS_STRCASECMP
- #define ACE_HAS_3_PARAM_WCSTOK
- #define ACE_HAS_WCHAR
- #define ACE_HAS_VFWPRINTF
- #define ACE_SIZEOF_WCHAR 2
- #define ACE_HAS_SHM_OPEN
- #if defined (ACE_AS_STATIC_LIBS)
- # define ACE_HAS_AIO_CALLS
- #endif
- // VxWorks seems to either not define this or define as zero up till now
- #if !defined (IOV_MAX) || (IOV_MAX == 0)
- #define ACE_IOV_MAX 16
- #endif
-#else
- // We are building for kernel mode
- #define ACE_LACKS_SUSECONDS_T
- #define ACE_LACKS_INTPTR_T
- #define ACE_LACKS_INTTYPES_H
- #define ACE_LACKS_STDINT_H
- #define ACE_LACKS_UNAME
- #define ACE_LACKS_UTSNAME_T
- #define ACE_LACKS_RAND_REENTRANT_FUNCTIONS
- #define ACE_LACKS_DLFCN_H
- #define ACE_LACKS_WAIT
- #define ACE_LACKS_WAITPID
- #define ACE_LACKS_SYS_TIME_H
- #define ACE_LACKS_SYS_SELECT_H
- #define ACE_MKDIR_LACKS_MODE
- #define ACE_HAS_SIZET_PTR_ASCTIME_R_AND_CTIME_R
- #define ACE_LACKS_SEARCH_H
- #define ACE_LACKS_SYSCONF
- #define ACE_LACKS_GETPPID
- #define ACE_LACKS_WCHAR_H
- #define ACE_LACKS_WCTYPE_H
- #define ACE_LACKS_WCSCAT
- #define ACE_LACKS_WCSCHR
- #define ACE_LACKS_WCSCMP
- #define ACE_LACKS_WCSCPY
- #define ACE_LACKS_WCSCSPN
- #define ACE_LACKS_WCSLEN
- #define ACE_LACKS_WCSNCAT
- #define ACE_LACKS_WCSNCMP
- #define ACE_LACKS_WCSNCPY
- #define ACE_LACKS_WCSPBRK
- #define ACE_LACKS_WCSRCHR
- #define ACE_LACKS_WCSSPN
- #define ACE_LACKS_WCSSTR
- #define ACE_LACKS_WCSTOK
- #define ACE_LACKS_TOWLOWER
- #define ACE_LACKS_TOWUPPER
- #define ACE_LACKS_WCSTOD
- #define ACE_LACKS_WCSTOL
- #define ACE_LACKS_WCSTOUL
- #define ACE_LACKS_FGETWC
- #define ACE_LACKS_FGETWS
- #define ACE_LACKS_FPUTWS
- #define ACE_HAS_IOCTL_INT_3_PARAM
- #define ACE_LACKS_MMAP
- #define ACE_LACKS_MSYNC
- #define ACE_LACKS_MPROTECT
- #if !defined (ACE_MAIN)
- # define ACE_MAIN ace_main
- #endif /* ! ACE_MAIN */
-#endif
-
-// It is possible to enable pthread support with VxWorks, when the user decides
-// to use this, we need some more defines
-#if defined ACE_HAS_PTHREADS
-# define ACE_HAS_THREAD_SPECIFIC_STORAGE
-# if !defined __RTP__
-# define ACE_LACKS_PTHREAD_ATTR_SETSTACK
-# endif
-# define ACE_HAS_PTHREAD_ATTR_SETNAME
-# define ACE_HAS_POSIX_SEM
-# define ACE_LACKS_MUTEXATTR_PSHARED
-# define ACE_LACKS_CONDATTR_PSHARED
-// Include this file, the sys/stat.h file shipped with VxWorks has old types
-// and without this include we get a lot of compile errors. A TSR has been filed
-// so that hopefully in the future we can zap this include
-#include "types/vxTypesOld.h"
-#else
-# define ACE_LACKS_PTHREAD_H
-# define ACE_HAS_VXTHREADS
-# if !defined __RTP__
-// Only when building for kernel mode we can use TSS emulation, in rtp mode
-// we can't use the WIND_TCB struct anymore
-# define ACE_HAS_TSS_EMULATION
-# if !defined (ACE_VXWORKS_SPARE)
-# define ACE_VXWORKS_SPARE spare4
-# endif /* ! ACE_VXWORKS_SPARE */
-# endif
-// VxWorks has no recursive mutexes. This was set in the past but it doesn't
-// work with the pthread support, so only set it for the time being when pthread
-// is disabled
-# define ACE_HAS_RECURSIVE_MUTEXES
-# define ACE_LACKS_COND_T
-# define ACE_HAS_MUTEX_TIMEOUTS
-#endif
-
-#if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-#endif
-
-// VxWorks defines the CPU define MAP, undef it to prevent problems with
-// application code
-#if defined (MAP)
-#undef MAP
-#endif /* MAP */
-
-#if !defined (ACE_NEEDS_HUGE_THREAD_STACKSIZE)
-# define ACE_NEEDS_HUGE_THREAD_STACKSIZE 65536
-#endif /* ACE_NEEDS_HUGE_THREAD_STACKSIZE */
-
-#if !defined (ACE_NTRACE)
-# define ACE_NTRACE 1
-#endif /* ACE_NTRACE */
-
-// By default, don't include RCS Id strings in object code.
-#if !defined (ACE_USE_RCSID)
-#define ACE_USE_RCSID 0
-#endif /* !ACE_USE_RCSID */
-
-#if defined (ACE_HAS_IP_MULTICAST)
-# define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
-#endif /* ACE_HAS_IP_MULTICAST */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_VXWORKS_6_4_H */
-
diff --git a/dep/include/ace/config-vxworks6.5.h b/dep/include/ace/config-vxworks6.5.h
deleted file mode 100644
index d40f695774c..00000000000
--- a/dep/include/ace/config-vxworks6.5.h
+++ /dev/null
@@ -1,26 +0,0 @@
-//* -*- C++ -*- */
-// $Id: config-vxworks6.5.h 80826 2008-03-04 14:51:23Z wotte $
-
-// The following configuration file is designed to work for VxWorks
-// 6.5 platforms using one of these compilers:
-// 1) The GNU g++ compiler that is shipped with VxWorks 6.5
-// 2) The Diab compiler that is shipped with VxWorks 6.5
-
-#ifndef ACE_CONFIG_VXWORKS_6_5_H
-#define ACE_CONFIG_VXWORKS_6_5_H
-#include /**/ "ace/pre.h"
-
-#if !defined (ACE_VXWORKS)
-# define ACE_VXWORKS 0x650
-#endif /* ! ACE_VXWORKS */
-
-#include "ace/config-vxworks6.4.h"
-
-#if defined (__RTP__)
-# undef ACE_HAS_GETIFADDRS
-#endif
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_VXWORKS_6_5_H */
-
-
diff --git a/dep/include/ace/config-vxworks6.6.h b/dep/include/ace/config-vxworks6.6.h
deleted file mode 100644
index a2058aa51c3..00000000000
--- a/dep/include/ace/config-vxworks6.6.h
+++ /dev/null
@@ -1,30 +0,0 @@
-//* -*- C++ -*- */
-// $Id: config-vxworks6.6.h 80826 2008-03-04 14:51:23Z wotte $
-
-// The following configuration file is designed to work for VxWorks
-// 6.6 platforms using one of these compilers:
-// 1) The GNU g++ compiler that is shipped with VxWorks 6.6
-// 2) The Diab compiler that is shipped with VxWorks 6.6
-
-#ifndef ACE_CONFIG_VXWORKS_6_6_H
-#define ACE_CONFIG_VXWORKS_6_6_H
-#include /**/ "ace/pre.h"
-
-#if !defined (ACE_VXWORKS)
-# define ACE_VXWORKS 0x660
-#endif /* ! ACE_VXWORKS */
-
-#include "ace/config-vxworks6.5.h"
-
-#if defined (ACE_HAS_PENTIUM)
-# define ACE_LACKS_LOG2
-#endif
-
-#if !defined (__RTP__)
-# undef ACE_HAS_IOCTL_INT_3_PARAM
-#endif
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_VXWORKS_6_6_H */
-
-
diff --git a/dep/include/ace/config-win32-borland.h b/dep/include/ace/config-win32-borland.h
deleted file mode 100644
index 371919cfdc4..00000000000
--- a/dep/include/ace/config-win32-borland.h
+++ /dev/null
@@ -1,126 +0,0 @@
-// -*- C++ -*-
-//$Id: config-win32-borland.h 82643 2008-08-19 14:02:12Z johnnyw $
-
-// The following configuration file contains defines for Borland compilers.
-
-#ifndef ACE_CONFIG_WIN32_BORLAND_H
-#define ACE_CONFIG_WIN32_BORLAND_H
-#include /**/ "ace/pre.h"
-
-#ifndef ACE_CONFIG_WIN32_H
-#error Use config-win32.h in config.h instead of this header
-#endif /* ACE_CONFIG_WIN32_H */
-
-#include "config-borland-common.h"
-
-// Automatically define WIN32 macro if the compiler tells us it is our
-// target platform.
-# if defined (__WIN32__) && !defined (WIN32)
-# define WIN32 1
-# endif
-
-// When building a VCL application, the main VCL header file should be
-// included before anything else. You can define ACE_HAS_VCL=1 in your
-// project settings to have this file included for you automatically.
-# if defined (ACE_HAS_VCL) && (ACE_HAS_VCL != 0)
-# include /**/ <vcl.h>
-# endif
-
-# define ACE_CC_PREPROCESSOR "CPP32.EXE"
-
-# include "ace/config-win32-common.h"
-
-// Borland on win32 has swab
-# undef ACE_LACKS_SWAB
-
-# define ACE_WSTRING_HAS_USHORT_SUPPORT 1
-# define ACE_HAS_DIRENT
-
-#ifdef ACE_USES_STD_NAMESPACE_FOR_STDC_LIB
-#undef ACE_USES_STD_NAMESPACE_FOR_STDC_LIB
-#define ACE_USES_STD_NAMESPACE_FOR_STDC_LIB 1
-#endif
-
-#define ACE_NEEDS_DL_UNDERSCORE
-
-#define ACE_LACKS_TERMIOS_H
-#define ACE_LACKS_NETINET_TCP_H
-#define ACE_LACKS_REGEX_H
-#define ACE_LACKS_SYS_MSG_H
-#define ACE_LACKS_PWD_H
-#define ACE_LACKS_POLL_H
-#define ACE_LACKS_SYS_SHM_H
-#define ACE_LACKS_STRINGS_H
-#define ACE_LACKS_SEMAPHORE_H
-#define ACE_LACKS_INTTYPES_H
-#define ACE_LACKS_UCONTEXT_H
-#define ACE_LACKS_SYS_SELECT_H
-#define ACE_LACKS_SYS_TIME_H
-#define ACE_LACKS_SYS_RESOURCE_H
-#define ACE_LACKS_SYS_WAIT_H
-#define ACE_LACKS_DLFCN_H
-#define ACE_LACKS_SYS_MMAN_H
-#define ACE_LACKS_SYS_UIO_H
-#define ACE_LACKS_SYS_SOCKET_H
-#define ACE_LACKS_NETINET_IN_H
-#define ACE_LACKS_NETDB_H
-#define ACE_LACKS_NET_IF_H
-#define ACE_LACKS_SYS_IPC_H
-#define ACE_LACKS_SYS_SEM_H
-#define ACE_LACKS_SYS_IOCTL_H
-#define ACE_LACKS_STROPTS_H
-
-#undef ACE_LACKS_STRUCT_DIR
-#undef ACE_LACKS_CLOSEDIR
-#undef ACE_LACKS_OPENDIR
-#undef ACE_LACKS_READDIR
-#undef ACE_LACKS_REWINDDIR
-
-#define ACE_HAS_WOPENDIR
-#define ACE_HAS_WCLOSEDIR
-#define ACE_HAS_WREADDIR
-#define ACE_HAS_WREWINDDIR
-
-#define ACE_LACKS_STRRECVFD
-#define ACE_USES_EXPLICIT_STD_NAMESPACE
-
-#if defined(ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
-// must have _MT defined to include multithreading
-// features from win32 headers
-# if !defined(__MT__)
-// *** DO NOT *** defeat this error message by defining __MT__ yourself.
-// You must link with the multi threaded libraries. Add -tWM to your
-// compiler options
-# error You must link against multi-threaded libraries when using ACE (check your project settings)
-# endif /* !_MT && !ACE_HAS_WINCE */
-#endif /* ACE_MT_SAFE && ACE_MT_SAFE != 0 */
-
-#if (__BORLANDC__ < 0x580)
-# define ACE_LACKS_INTPTR_T
-# define ACE_HAS_NONCONST_SWAB
-# define ACE_HAS_NONCONST_FDOPEN
-#endif
-
-#if (__BORLANDC__ < 0x610)
-# define ACE_HAS_NONCONST_TEMPNAM
-# define ACE_LACKS_STRTOULL
-# define ACE_LACKS_WCSTOULL
-#endif
-
-#if (__BORLANDC__ <= 0x610)
-// Older Borland compilers can't handle assembly in inline methods or
-// templates (E2211). When we build for pentium optimized and we are inlining
-// then we disable inline assembly
-# if defined (ACE_HAS_PENTIUM) && defined(__ACE_INLINE__)
-# define ACE_LACKS_INLINE_ASSEMBLY
-# endif
-#endif
-
-#define ACE_WCSDUP_EQUIVALENT ::_wcsdup
-#define ACE_STRCASECMP_EQUIVALENT ::stricmp
-#define ACE_STRNCASECMP_EQUIVALENT ::strnicmp
-#define ACE_HAS_ITOA 1
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_WIN32_BORLAND_H */
-
diff --git a/dep/include/ace/config-win32-common.h b/dep/include/ace/config-win32-common.h
deleted file mode 100644
index b7beb5ba228..00000000000
--- a/dep/include/ace/config-win32-common.h
+++ /dev/null
@@ -1,663 +0,0 @@
-/* -*- C++ -*- */
-// $Id: config-win32-common.h 82316 2008-07-15 01:28:39Z johnnyw $
-
-#ifndef ACE_CONFIG_WIN32_COMMON_H
-#define ACE_CONFIG_WIN32_COMMON_H
-#include /**/ "ace/pre.h"
-
-#ifndef ACE_CONFIG_WIN32_H
-#error Use config-win32.h in config.h instead of this header
-#endif /* ACE_CONFIG_WIN32_H */
-
-// Windows Mobile (CE) stuff is primarily further restrictions to what's
-// in the rest of this file. Also, it defined ACE_HAS_WINCE, which is used
-// in this file.
-#if defined (_WIN32_WCE)
-# include "ace/config-WinCE.h"
-#endif /* _WIN32_WCE */
-
-// Complain if WIN32 is not already defined.
-#if !defined (WIN32) && !defined (ACE_HAS_WINCE)
-# error Please define WIN32 in your project settings.
-#endif
-
-#define ACE_WIN32
-#if defined (_WIN64) || defined (WIN64)
-# define ACE_WIN64
-
-// Use 64-bit file offsets by default in the WIN64 case, similar to
-// what 64-bit UNIX systems do.
-//
-// Note that _FILE_OFFSET_BITS is not recognized by Windows. It is,
-// however, recognized by ACE.
-# ifndef _FILE_OFFSET_BITS
-# define _FILE_OFFSET_BITS 64
-# endif /* !_FILE_OFFSET_BITS */
-#endif /* _WIN64 || WIN64 */
-
-#if !defined (_WIN32_WINNT)
-# define _WIN32_WINNT 0x0501 // pretend it's at least Windows XP or Win2003
-#endif
-
-// If the invoking procedure turned off debugging by setting NDEBUG, then
-// also set ACE_NDEBUG, unless the user has already set it.
-#if defined (NDEBUG)
-# if !defined (ACE_NDEBUG)
-# define ACE_NDEBUG
-# endif /* ACE_NDEBUG */
-#endif /* NDEBUG */
-
-// Define ACE_HAS_MFC to 1, if you want ACE to use CWinThread. This should
-// be defined, if your application uses MFC.
-// Setting applies to : building ACE
-// Runtime restrictions: MFC DLLs must be installed
-// Additonal notes : If both ACE_HAS_MFC and ACE_MT_SAFE are
-// defined, the MFC DLL (not the static lib)
-// will be used from ACE.
-#if !defined (ACE_HAS_MFC)
-# define ACE_HAS_MFC 0
-#endif
-
-// ACE_USES_STATIC_MFC always implies ACE_HAS_MFC
-#if defined (ACE_USES_STATIC_MFC)
-# if defined (ACE_HAS_MFC)
-# undef ACE_HAS_MFC
-# endif
-# define ACE_HAS_MFC 1
-#endif /* ACE_USES_STATIC_MFC */
-
-// Define ACE_HAS_STRICT to 1 in your config.h file if you want to use
-// STRICT type checking. It is disabled by default because it will
-// break existing application code. However, if ACE_HAS_MFC is turned on,
-// ACE_HAS_STRICT is required by MFC.
-// Setting applies to : building ACE, linking with ACE
-// Runtime restrictions: -
-#if !defined (ACE_HAS_STRICT)
-# define ACE_HAS_STRICT 0
-#endif
-
-// MFC itself defines STRICT.
-#if defined (ACE_HAS_MFC) && (ACE_HAS_MFC != 0)
-# undef ACE_HAS_STRICT
-# define ACE_HAS_STRICT 1
-#endif
-
-// Turn off the following define if you want to disable threading.
-// Compile using multi-thread libraries.
-// Setting applies to : building ACE, linking with ACE
-// Runtime restrictions: multithreaded runtime DLL must be installed
-#if !defined (ACE_MT_SAFE)
-# define ACE_MT_SAFE 1
-#endif
-
-// Build ACE services as DLLs. If you write a library and want it to
-// use ACE_Svc_Export, this will cause those macros to build dlls. If
-// you want your ACE service to be a static library, comment out this
-// line. As far as I know, the only reason to have a library be an
-// ACE "service" is to leverage the ACE_Svc_Export macros. It's just
-// as easy to define your own export macros.
-// #if !defined (ACE_SVC_HAS_DLL)
-// # define ACE_SVC_HAS_DLL 1
-// #endif
-
-// Define the special export macros needed to export symbols outside a dll
-#if !defined(__BORLANDC__)
-#define ACE_HAS_CUSTOM_EXPORT_MACROS 1
-#define ACE_Proper_Export_Flag __declspec (dllexport)
-#define ACE_Proper_Import_Flag __declspec (dllimport)
-#define ACE_EXPORT_SINGLETON_DECLARATION(T) template class __declspec (dllexport) T
-#define ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) template class __declspec (dllexport) SINGLETON_TYPE<CLASS, LOCK>;
-#define ACE_IMPORT_SINGLETON_DECLARATION(T) extern template class T
-#define ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) extern template class SINGLETON_TYPE <CLASS, LOCK>;
-#endif /* !__BORLANDC__ */
-
-// Define ACE_HAS_WINSOCK2 to 0 in your config.h file if you do *not*
-// want to compile with WinSock 2.0.
-// Setting applies to : building ACE
-// Runtime restrictions: winsock2 must be installed.
-// #define ACE_HAS_WINSOCK2 0
-
-// By default, we use non-static object manager on Win32. That is,
-// the object manager is allocated in main's stack memory. If this
-// does not suit your need, i.e., if your programs depend on the use
-// of static object manager, you neet to disable the behavior by adding
-//
-// #undef ACE_HAS_NONSTATIC_OBJECT_MANAGER
-//
-// in the config.h after including config-win32.h
-//
-// MFC users: the main function is defined within a MFC library and
-// therefore, ACE won't be able to meddle with main function and
-// instantiate the non-static object manager for you. To solve the
-// problem, you'll need to instantiate the ACE_Object_Manager by
-// either:
-//
-// 1. Using static object manager (as described above), however, using
-// the non-static object manager is prefered, therefore,
-// 2. Instantiate the non-static object manager yourself by either 1)
-// call ACE::init () at the beginning and ACE::fini () at the end,
-// _or_ 2) instantiate the ACE_Object_Manager in your CWinApp
-// derived class.
-//
-// Optionally, you can #define
-// ACE_DOESNT_INSTANTIATE_NONSTATIC_OBJECT_MANAGER in your
-// ace/config.h and always take care of the business by yourself.
-// ACE_DOESNT_INSTANTIATE_NONSTATIC_OBJECT_MANAGER has no effect when
-// using static object managers.
-#if !defined (ACE_HAS_NONSTATIC_OBJECT_MANAGER)
-# define ACE_HAS_NONSTATIC_OBJECT_MANAGER
-#elif (ACE_HAS_NONSTATIC_OBJECT_MANAGER == 0)
-# undef ACE_HAS_NONSTATIC_OBJECT_MANAGER
-#endif /* ACE_HAS_NONSTATIC_OBJECT_MANAGER */
-
-#define ACE_HAS_GPERF
-
-// By default, don't include RCS Id strings in object code.
-#if !defined (ACE_USE_RCSID)
-# define ACE_USE_RCSID 0
-#endif /* ! ACE_USE_RCSID */
-
-// ---------------- platform features or lack of them -------------
-
-// By default WIN32 has FD_SETSIZE of 64, which places the limit
-// between 61 and 64 on the number of clients a server using the
-// Select Reactor can support at the same time (i.e., 64 - standard in,
-// out, error). Here we raise the limit to 1024. Adjust the definition
-// below if you need to raise or lower it.
-
-#if !defined (FD_SETSIZE)
-#define FD_SETSIZE 1024
-#endif /* FD_SETSIZE */
-
-// Windows doesn't like 65536 ;-) If 65536 is specified, it is
-// silently ignored by the OS, i.e., setsockopt does not fail, and you
-// get stuck with the default size of 8k.
-#define ACE_DEFAULT_MAX_SOCKET_BUFSIZ 65535
-
-// It seems like Win32 does not have a limit on the number of buffers
-// that can be transferred by the scatter/gather type of I/O
-// functions, e.g., WSASend and WSARecv. We are setting this to be 64
-// for now. The typically use case is to create an I/O vector array
-// of size ACE_IOV_MAX on the stack and then filled in. Note that we
-// probably don't want too big a value for ACE_IOV_MAX since it may
-// mostly go to waste or the size of the activation record may become
-// excessively large.
-#if !defined (ACE_IOV_MAX)
-# define ACE_IOV_MAX 64
-#endif /* ACE_IOV_MAX */
-
-#if !defined (ACE_HAS_WINCE)
-// Platform supports pread() and pwrite()
-# define ACE_HAS_P_READ_WRITE
-#endif /* ! ACE_HAS_WINCE */
-
-#if !defined (__MINGW32__)
-# define ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS
-#endif /* __MINGW32__ */
-
-#define ACE_DEFAULT_THREAD_PRIORITY 0
-
-#define ACE_HAS_DIRENT
-#define ACE_HAS_MSG
-#define ACE_HAS_RECURSIVE_MUTEXES
-#define ACE_HAS_SOCKADDR_MSG_NAME
-#define ACE_HAS_THREAD_SAFE_ACCEPT
-
-/* LACKS dir-related facilities */
-#define ACE_LACKS_READDIR_R
-#define ACE_LACKS_REWINDDIR
-#define ACE_LACKS_SEEKDIR
-#define ACE_LACKS_TELLDIR
-
-/* LACKS gid/pid/sid/uid facilities */
-#define ACE_LACKS_GETPGID
-#define ACE_LACKS_GETPPID
-#define ACE_LACKS_SETPGID
-#define ACE_LACKS_SETREGID
-#define ACE_LACKS_SETREUID
-#define ACE_LACKS_SETSID
-#define ACE_LACKS_SETEGID
-#define ACE_LACKS_SETUID
-#define ACE_LACKS_SETEUID
-#define ACE_LACKS_GETGID
-#define ACE_LACKS_GETEGID
-#define ACE_LACKS_GETUID
-#define ACE_LACKS_GETEUID
-#define ACE_LACKS_SETGID
-
-/* LACKS miscellaneous */
-#define ACE_LACKS_ALARM
-#define ACE_LACKS_ARPA_INET_H
-#define ACE_LACKS_DUP2
-#define ACE_LACKS_FORK
-#define ACE_LACKS_GETHOSTENT
-#define ACE_LACKS_GETOPT
-#define ACE_LACKS_GETIPNODEBYNAME_IPV6
-#define ACE_LACKS_KILL
-#define ACE_LACKS_INET_ATON
-#define ACE_LACKS_MADVISE
-#define ACE_LACKS_MKFIFO
-#define ACE_LACKS_MODE_MASKS
-#define ACE_LACKS_PTHREAD_H
-#define ACE_LACKS_PWD_FUNCTIONS
-#define ACE_LACKS_READLINK
-#define ACE_LACKS_RLIMIT
-#define ACE_LACKS_SBRK
-#define ACE_LACKS_SCHED_H
-#define ACE_LACKS_SEMBUF_T
-#define ACE_LACKS_SIGACTION
-#define ACE_LACKS_SIGSET
-#define ACE_LACKS_SOCKETPAIR
-#define ACE_LACKS_SUSECONDS_T
-#define ACE_LACKS_USECONDS_T
-#define ACE_LACKS_SYS_PARAM_H
-#define ACE_LACKS_SYS_SYSCTL_H
-#define ACE_LACKS_SYSCONF
-#define ACE_LACKS_SYSV_SHMEM
-#define ACE_LACKS_UNISTD_H
-#define ACE_LACKS_UNIX_SIGNALS
-#define ACE_LACKS_UNIX_SYSLOG
-#define ACE_LACKS_UTSNAME_T
-#define ACE_LACKS_UNAME
-#define ACE_LACKS_WAIT
-#define ACE_LACKS_IOVEC
-#define ACE_LACKS_LOG2
-
-#define ACE_HAS_PDH_H
-#define ACE_HAS_PDHMSG_H
-
-#define ACE_HAS_VFWPRINTF
-
-#define ACE_MKDIR_LACKS_MODE
-
-#define ACE_SIZEOF_LONG_LONG 8
-// Green Hills Native x86 does not support __int64 keyword
-// Neither does mingw32.
-#if !defined (ACE_LACKS_LONGLONG_T) && !defined (__MINGW32__)
-#define ACE_INT64_TYPE signed __int64
-#define ACE_UINT64_TYPE unsigned __int64
-#endif /* (ghs) */
-
-#if defined (__MINGW32__)
-#define ACE_INT64_TYPE signed long long
-#define ACE_UINT64_TYPE unsigned long long
-#endif
-
-// Optimize ACE_Handle_Set for select().
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-
-// Win32 has wide-char support. Use of the compiler-defined wchar_t type
-// is controlled in compiler configs since it's a compiler switch.
-#define ACE_HAS_WCHAR
-
-// Compiler/platform correctly calls init()/fini() for shared
-// libraries. - applied for DLLs ?
-//define ACE_HAS_AUTOMATIC_INIT_FINI
-
-// Platform supports POSIX O_NONBLOCK semantics.
-//define ACE_HAS_POSIX_NONBLOCK
-
-// Platform contains <poll.h>.
-//define ACE_HAS_POLL
-
-// Platform supports the /proc file system.
-//define ACE_HAS_PROC_FS
-
-// Platform supports the rusage struct.
-#define ACE_HAS_GETRUSAGE
-
-// Compiler/platform supports SVR4 signal typedef.
-//define ACE_HAS_SVR4_SIGNAL_T
-
-// Platform provides <sys/filio.h> header.
-//define ACE_HAS_SYS_FILIO_H
-
-// Compiler/platform supports sys_siglist array.
-//define ACE_HAS_SYS_SIGLIST
-
-// Platform supports ACE_TLI timod STREAMS module.
-//define ACE_HAS_TIMOD_H
-
-// Platform supports ACE_TLI tiuser header.
-//define ACE_HAS_TIUSER_H
-
-// Platform provides ACE_TLI function prototypes.
-// For Win32, this is not really true, but saves a lot of hassle!
-#define ACE_HAS_TLI_PROTOTYPES
-
-// Platform supports ACE_TLI.
-//define ACE_HAS_TLI
-
-// I'm pretty sure NT lacks these
-#define ACE_LACKS_UNIX_DOMAIN_SOCKETS
-
-// Windows NT needs readv() and writev()
-#define ACE_LACKS_WRITEV
-#define ACE_LACKS_READV
-
-#define ACE_LACKS_COND_T
-#define ACE_LACKS_RWLOCK_T
-
-#define ACE_LACKS_KEY_T
-
-// No system support for replacing any previous mappings.
-#define ACE_LACKS_AUTO_MMAP_REPLACEMENT
-
-// ACE_HAS_PENTIUM is used to optimize some CDR operations; it's used for
-// some other time-related things using g++, but not for VC. Current VC
-// compilers set _M_IX86 > 400 by default so if you're not using a Pentium
-// class CPU, set the project code generation options appropriately.
-#if !defined(ACE_HAS_PENTIUM) && (_M_IX86 > 400)
-# define ACE_HAS_PENTIUM
-#endif
-
-#if defined(ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
-// Platform supports threads.
-# define ACE_HAS_THREADS
-
-// Platform supports Windows32 threads.
-# define ACE_HAS_WTHREADS
-
-// Compiler/platform has thread-specific storage
-# define ACE_HAS_THREAD_SPECIFIC_STORAGE
-
-// Win32 doesn't have fcntl
-#define ACE_LACKS_FCNTL
-
-#endif /* ACE_MT_SAFE && ACE_MT_SAFE != 0 */
-
-#if !defined(_DEBUG)
-// If we are making a release, and the user has not specified
-// inline directives, we will default to inline
-# if ! defined (__ACE_INLINE__)
-# define __ACE_INLINE__ 1
-# endif /* __ACE_INLINE__ */
-#endif
-
-// If __ACE_INLINE__ is defined to be 0, we will undefine it
-#if defined (__ACE_INLINE__) && (__ACE_INLINE__ == 0)
-# undef __ACE_INLINE__
-#endif /* __ACE_INLINE__ */
-
-// We are build ACE and want to use MFC (multithreaded)
-#if defined(ACE_HAS_MFC) && (ACE_HAS_MFC != 0) && defined (_MT)
-# if (ACE_HAS_DLL != 0) && defined(ACE_BUILD_DLL) && !defined (_WINDLL)
-// force multithreaded MFC DLL
-# define _WINDLL
-# endif /* _AFXDLL */
-# if !defined (_AFXDLL) && !defined (ACE_USES_STATIC_MFC)
-# define _AFXDLL
-# endif /* _AFXDLL */
-#endif
-
-// <windows.h> and MFC's <afxwin.h> are mutually
-// incompatible. <windows.h> is brain-dead about MFC; it doesn't check
-// to see whether MFC stuff is anticipated or already in progress
-// before doing its thing. ACE needs (practically always) <winsock.h>,
-// and winsock in turn needs support either from windows.h or from
-// afxwin.h. One or the other, not both.
-//
-// The MSVC++ V4.0 environment defines preprocessor macros that
-// indicate the programmer has chosen something from the
-// Build-->Settings-->General-->MFC combo-box. <afxwin.h> defines a
-// macro itself to protect against double inclusion. We'll take
-// advantage of all this to select the proper support for winsock. -
-// trl 26-July-1996
-
-// This is necessary since MFC users apparently can't #include
-// <windows.h> directly.
-#if defined (ACE_HAS_MFC) && (ACE_HAS_MFC != 0)
-# include /**/ <afxwin.h> /* He is doing MFC */
-// Windows.h will be included via afxwin.h->afx.h->afx_ver_.h->afxv_w32.h
-// #define _INC_WINDOWS // Prevent winsock.h from including windows.h
-#elif defined (ACE_HAS_WINCE)
-# include /**/ <windows.h>
-#endif
-
-#if !defined (_INC_WINDOWS) /* Already include windows.h ? */
-// Must define strict before including windows.h !
-# if defined (ACE_HAS_STRICT) && (ACE_HAS_STRICT != 0) && !defined (STRICT)
-# define STRICT 1
-# endif /* ACE_HAS_STRICT */
-
-# if !defined (WIN32_LEAN_AND_MEAN) && !defined (ACE_NO_WIN32_LEAN_AND_MEAN)
-# define WIN32_LEAN_AND_MEAN
-# endif /* WIN32_LEAN_AND_MEAN */
-
-#endif /* !defined (_INC_WINDOWS) */
-
-// Always use WS2 when available
-#if !defined(ACE_HAS_WINSOCK2)
-# define ACE_HAS_WINSOCK2 1
-#endif /* !defined(ACE_HAS_WINSOCK2) */
-
-#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
-# if !defined (_WINSOCK2API_)
-// will also include windows.h, if not present
-# include /**/ <winsock2.h>
-// WinCE 4 doesn't define the Exxx values without the WSA prefix, so do that
-// here. This is all lifted from the #if 0'd out part of winsock2.h.
-# if defined (UNDER_CE)
-# define EWOULDBLOCK WSAEWOULDBLOCK
-# define EINPROGRESS WSAEINPROGRESS
-# define EALREADY WSAEALREADY
-# define ENOTSOCK WSAENOTSOCK
-# define EDESTADDRREQ WSAEDESTADDRREQ
-# define EMSGSIZE WSAEMSGSIZE
-# define EPROTOTYPE WSAEPROTOTYPE
-# define ENOPROTOOPT WSAENOPROTOOPT
-# define EPROTONOSUPPORT WSAEPROTONOSUPPORT
-# define ESOCKTNOSUPPORT WSAESOCKTNOSUPPORT
-# define EOPNOTSUPP WSAEOPNOTSUPP
-# define EPFNOSUPPORT WSAEPFNOSUPPORT
-# define EAFNOSUPPORT WSAEAFNOSUPPORT
-# define EADDRINUSE WSAEADDRINUSE
-# define EADDRNOTAVAIL WSAEADDRNOTAVAIL
-# define ENETDOWN WSAENETDOWN
-# define ENETUNREACH WSAENETUNREACH
-# define ENETRESET WSAENETRESET
-# define ECONNABORTED WSAECONNABORTED
-# define ECONNRESET WSAECONNRESET
-# define ENOBUFS WSAENOBUFS
-# define EISCONN WSAEISCONN
-# define ENOTCONN WSAENOTCONN
-# define ESHUTDOWN WSAESHUTDOWN
-# define ETOOMANYREFS WSAETOOMANYREFS
-# define ETIMEDOUT WSAETIMEDOUT
-# define ECONNREFUSED WSAECONNREFUSED
-# define ELOOP WSAELOOP
-# define ENAMETOOLONG WSAENAMETOOLONG
-# define EHOSTDOWN WSAEHOSTDOWN
-# define EHOSTUNREACH WSAEHOSTUNREACH
-# define ENOTEMPTY WSAENOTEMPTY
-# define EPROCLIM WSAEPROCLIM
-# define EUSERS WSAEUSERS
-# define EDQUOT WSAEDQUOT
-# define ESTALE WSAESTALE
-# define EREMOTE WSAEREMOTE
-# endif /* UNDER_CE */
-# endif /* _WINSOCK2API */
-
-# if defined (ACE_HAS_FORE_ATM_WS2)
-# include /**/ <ws2atm.h>
-# endif /*ACE_HAS_FORE_ATM_WS2 */
-
-// CE doesn't have Microsoft Winsock 2 extensions
-# if !defined _MSWSOCK_ && !defined (ACE_HAS_WINCE)
-# include /**/ <mswsock.h>
-# endif /* _MSWSOCK_ */
-
-# if defined (_MSC_VER)
-# if defined (ACE_HAS_WINCE)
-# pragma comment(lib, "ws2.lib")
-# else
-# pragma comment(lib, "ws2_32.lib")
-# pragma comment(lib, "mswsock.lib")
-# if defined (ACE_HAS_IPV6)
-# pragma comment(lib, "iphlpapi.lib")
-# endif
-# endif /* ACE_HAS_WINCE */
-# endif /* _MSC_VER */
-
-# define ACE_WSOCK_VERSION 2, 0
-#else
-# if !defined (_WINSOCKAPI_)
- // will also include windows.h, if not present
-# include /**/ <winsock.h>
-# endif /* _WINSOCKAPI */
-
-// PharLap ETS has its own winsock lib, so don't grab the one
-// supplied with the OS.
-# if defined (_MSC_VER) && !defined (UNDER_CE) && !defined (ACE_HAS_PHARLAP)
-# pragma comment(lib, "wsock32.lib")
-# endif /* _MSC_VER */
-
-// We can't use recvmsg and sendmsg unless WinSock 2 is available
-# define ACE_LACKS_RECVMSG
-# define ACE_LACKS_SENDMSG
-
-// Version 1.1 of WinSock
-# define ACE_WSOCK_VERSION 1, 1
-#endif /* ACE_HAS_WINSOCK2 */
-
-// Platform supports IP multicast on Winsock 2
-#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
-# define ACE_HAS_IP_MULTICAST
-#endif /* ACE_HAS_WINSOCK2 */
-
-#if !defined (ACE_HAS_WINCE) || defined (PPC) /* CE only on some CPUs */
-# define ACE_HAS_INTERLOCKED_EXCHANGEADD
-#endif
-#define ACE_HAS_WIN32_TRYLOCK
-
-#if !defined (ACE_HAS_WINCE) && !defined (ACE_HAS_PHARLAP)
-# define ACE_HAS_SIGNAL_OBJECT_AND_WAIT
-
-// If CancelIO is undefined get the updated sp2-sdk from MS
-# define ACE_HAS_CANCEL_IO
-# define ACE_HAS_WIN32_OVERLAPPED_IO
-# define ACE_HAS_WIN32_NAMED_PIPES
-#endif /* !defined (ACE_USES_WINCE_SEMA_SIMULATION) && !ACE_HAS_PHARLAP */
-
-#if !defined (ACE_SEH_DEFAULT_EXCEPTION_HANDLING_ACTION)
-# define ACE_SEH_DEFAULT_EXCEPTION_HANDLING_ACTION EXCEPTION_CONTINUE_SEARCH
-#endif /* ACE_SEH_DEFAULT_EXCEPTION_HANDLING_ACTION */
-
-// ACE_HAS_QOS is defined in the qos.mpb base project.
-// If qos=1 in default.features, then this macro will be defined.
-#if defined (ACE_HAS_QOS) && !defined (ACE_HAS_WINSOCK2_GQOS)
-# if defined (WINSOCK_VERSION)
-# define ACE_HAS_WINSOCK2_GQOS 1
-# endif /* WINSOCK_VERSION */
-#endif /* ACE_HAS_WINSOCK2_GQOS */
-
-// These are the defaults and can be overridden by a user's config.h
-#if !defined (ACE_DEFAULT_FILE_PERMS)
-# define ACE_DEFAULT_FILE_PERMS (FILE_SHARE_READ | FILE_SHARE_WRITE | \
- FILE_SHARE_DELETE)
-// This alternate used to be used for pre-NT4 systems; may still be needed
-// by knock-offs such as CE and Pharlap.
-//# define ACE_DEFAULT_FILE_PERMS (FILE_SHARE_READ | FILE_SHARE_WRITE)
-#endif /* !defined (ACE_DEFAULT_FILE_PERMS) */
-
-#define ACE_SIZEOF_WCHAR 2
-#define ACE_HAS_MUTEX_TIMEOUTS
-#define ACE_LACKS_STRUCT_DIR
-#define ACE_LACKS_OPENDIR
-#define ACE_LACKS_CLOSEDIR
-#define ACE_LACKS_READDIR
-#define ACE_LACKS_ALPHASORT
-#define ACE_LACKS_MKSTEMP
-#define ACE_LACKS_LSTAT
-// Looks like Win32 has a non-const swab function
-#define ACE_HAS_NONCONST_SWAB
-
-// If we are using winsock2 then the SO_REUSEADDR feature is broken
-// SO_REUSEADDR=1 behaves like SO_REUSEPORT=1. (SO_REUSEPORT is an
-// extension to sockets on some platforms)
-// We define SO_REUSEPORT here so that ACE_OS::setsockopt() can still
-// allow the user to specify that a socketaddr can *always* be reused.
-#if defined (ACE_HAS_WINSOCK2) && ACE_HAS_WINSOCK2 != 0 && ! defined(SO_REUSEPORT)
-#define SO_REUSEPORT 0x0400 // We just have to pick a value that won't conflict
-#endif
-
-#if defined (ACE_WIN64)
-// Data must be aligned on 8-byte boundaries, at a minimum.
-# define ACE_MALLOC_ALIGN 8
-// Void pointers are 8 bytes
-# define ACE_SIZEOF_VOID_P 8
-#endif /* ACE_WIN64 */
-
-#if !defined (ACE_DISABLES_THREAD_LIBRARY_CALLS)
-# define ACE_DISABLES_THREAD_LIBRARY_CALLS 0
-#endif /* ACE_DISABLES_THREAD_LIBRARY_CALLS */
-
-#if !defined (ACE_HAS_WINCE) && !defined (ACE_HAS_PHARLAP)
-# define ACE_HAS_LOG_MSG_NT_EVENT_LOG
-#endif /* !ACE_HAS_WINCE && !ACE_HAS_PHARLAP */
-
-#if !defined (ACE_HAS_WINCE)
-# define ACE_HAS_LLSEEK
-#endif /* !ACE_HAS_WINCE */
-
-// Needed for obtaining the MAC address
-// I dont believe this will work under CE, notice the
-// check for ACE_HAS_WINCE.
-# if !defined (ACE_HAS_WINCE)
-# include <nb30.h>
-# if defined (_MSC_VER)
-# pragma comment(lib, "netapi32.lib") // needed for obtaing MACaddress
-# endif
-# endif /* !ACE_HAS_WINCE */
-
-#if !defined (WINVER)
-# define WINVER 0x0400 // pretend it's at least WinNT 4.0
-#endif
-
-///////////////////////////////////////
-// windows version-specific definitions
-// see: http://msdn2.microsoft.com/en-us/library/aa383745.aspx
-//
-// For TSS information
-// see http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/thread_local_storage.asp
-
-#if (WINVER>=0x0600)
-// Windows Server 2008 definitions go here
-// Windows Vista defintions go here
-# if ! defined(ACE_DEFAULT_THREAD_KEYS)
-# define ACE_DEFAULT_THREAD_KEYS 1088
-# endif // ! defined(ACE_DEFAULT_THREAD_KEYS)
-#elif (WINVER>=0x0502)
- // Windows Server 2003 SP1 definitions go here
-# if ! defined(ACE_DEFAULT_THREAD_KEYS)
-# define ACE_DEFAULT_THREAD_KEYS 1088
-# endif // ! defined(ACE_DEFAULT_THREAD_KEYS)
-#elif (WINVER>=0x0501)
-// Windows XP definitions go here
-# if ! defined(ACE_DEFAULT_THREAD_KEYS)
-# define ACE_DEFAULT_THREAD_KEYS 1088
-# endif // ! defined(ACE_DEFAULT_THREAD_KEYS)
-#elif (WINVER>=0x0500)
-// Windows 2000 definitions go here
-# if ! defined(ACE_DEFAULT_THREAD_KEYS)
-# define ACE_DEFAULT_THREAD_KEYS 1088
-# endif // ! defined(ACE_DEFAULT_THREAD_KEYS)
-#elif (WINVER>=0x0410)
-// Windows 98 definitions go here
-# if ! defined(ACE_DEFAULT_THREAD_KEYS)
-# define ACE_DEFAULT_THREAD_KEYS 80
-# endif // ! defined(ACE_DEFAULT_THREAD_KEYS)
-#else
-// antique windows
-# if ! defined(ACE_DEFAULT_THREAD_KEYS)
-# define ACE_DEFAULT_THREAD_KEYS 64
-# endif // ! defined(ACE_DEFAULT_THREAD_KEYS)
-#endif
-
-#if !defined (ACE_DEFAULT_BACKLOG)
-# define ACE_DEFAULT_BACKLOG SOMAXCONN
-#endif /* ACE_DEFAULT_BACKLOG */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_WIN32_COMMON_H */
-
diff --git a/dep/include/ace/config-win32-dmc.h b/dep/include/ace/config-win32-dmc.h
deleted file mode 100644
index ca855f5bc97..00000000000
--- a/dep/include/ace/config-win32-dmc.h
+++ /dev/null
@@ -1,111 +0,0 @@
-// -*- C++ -*-
-// $Id: config-win32-dmc.h 81992 2008-06-16 19:09:50Z wotte $
-
-// The following configuration file contains defines for Digital Mars compilers.
-
-#ifndef ACE_CONFIG_WIN32_DMC_H
-#define ACE_CONFIG_WIN32_DMC_H
-#include /**/ "ace/pre.h"
-
-#ifndef ACE_CONFIG_WIN32_H
-#error Use config-win32.h in config.h instead of this header
-#endif /* ACE_CONFIG_WIN32_H */
-
-#ifndef WIN32
-# define WIN32
-#endif /* WIN32 */
-
-#undef _M_IX86
-// This turns on ACE_HAS_PENTIUM
-#define _M_IX86 500
-
-#if defined ACE_LACKS_STRUCT_DIR
-# undef ACE_LACKS_STRUCT_DIR
-#endif
-
-// Changed ACE_TEXT to ACE_TEXT in the following line
-# define ACE_CC_NAME ACE_TEXT ("Digital Mars")
-# define ACE_CC_MAJOR_VERSION (1)
-# define ACE_CC_MINOR_VERSION (8)
-# define ACE_CC_BETA_VERSION (9)
-# ifndef ACE_USING_MCPP_PREPROCESSOR
-# define ACE_CC_PREPROCESSOR "DMC.EXE"
-# define ACE_CC_PREPROCESSOR_ARGS "-E"
-# endif
-
-// Microsoft's standard cpp library auto_ptr doesn't have reset ().
-# define ACE_AUTO_PTR_LACKS_RESET
-
-#define ACE_ENDTHREADEX(STATUS) ::_endthreadex ((DWORD) STATUS)
-
-// This section below was extracted from config-win32-msvc
-#define ACE_HAS_ITOA
-#define ACE_ITOA_EQUIVALENT ::_itoa
-#define ACE_STRCASECMP_EQUIVALENT ::_stricmp
-#define ACE_STRNCASECMP_EQUIVALENT ::_strnicmp
-#define ACE_WCSDUP_EQUIVALENT ::_wcsdup
-// This section above was extracted from config-win32-msvc
-
-# define ACE_EXPORT_NESTED_CLASSES 1
-# define ACE_HAS_CPLUSPLUS_HEADERS 1
-//# define ACE_HAS_EXCEPTIONS 1
-# define ACE_HAS_GNU_CSTRING_H 1
-# define ACE_HAS_NONCONST_SELECT_TIMEVAL 1
-# define ACE_HAS_SIG_ATOMIC_T 1
-# define ACE_HAS_STANDARD_CPP_LIBRARY 0
-# define ACE_HAS_STDCPP_STL_INCLUDES 1
-# define ACE_HAS_STRERROR 1
-# define ACE_HAS_STRING_CLASS 1
-# define ACE_HAS_TEMPLATE_TYPEDEFS 1
-# define ACE_HAS_USER_MODE_MASKS 1
-//# define ACE_LACKS_LINEBUFFERED_STREAMBUF 1
-# define ACE_LACKS_STRPTIME 1
-//# define ACE_LACKS_PRAGMA_ONCE 1
-//# define ACE_NEW_THROWS_EXCEPTIONS 1
-# define ACE_SIZEOF_LONG_DOUBLE 10
-# define ACE_TEMPLATES_REQUIRE_SOURCE 1
-// Changed ACE_TEXT to ACE_TEXT in the following two lines
-# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-# define ACE_HAS_STRBUF_T
-#define ACE_HAS_3_PARAM_WCSTOK
-#define ACE_USES_OLD_IOSTREAMS
-#define ACE_LACKS_UCONTEXT_H
-#define ACE_LACKS_SYS_RESOURCE_H
-#define ACE_LACKS_SYS_WAIT_H
-#define ACE_LACKS_STRINGS_H
-#define ACE_LACKS_SYS_IPC_H
-#define ACE_LACKS_SYS_SEM_H
-#define ACE_LACKS_SEMAPHORE_H
-#define ACE_LACKS_SYS_MMAN_H
-#define ACE_LACKS_SYS_UIO_H
-#define ACE_LACKS_SYS_SOCKET_H
-#define ACE_LACKS_NETINET_IN_H
-#define ACE_LACKS_SYS_IOCTL_H
-#define ACE_LACKS_SYS_SELECT_H
-#define ACE_LACKS_NET_IF_H
-#define ACE_LACKS_DLFCN_H
-#define ACE_LACKS_NETDB_H
-#define ACE_LACKS_SYS_SHM_H
-#define ACE_LACKS_REGEX_H
-#define ACE_LACKS_SYS_MSG_H
-#define ACE_LACKS_NETINET_TCP_H
-#define ACE_LACKS_UNISTD_H
-#define ACE_LACKS_TERMIOS_H
-#define ACE_LACKS_ACE_IOSTREAM
-#define ACE_HAS_NONCONST_TEMPNAM
-
-// Typedefs which we expect DMC to do, but they don't do that
-typedef long o_uid_t;
-typedef long o_gid_t;
-
-#include "io.h"
-#undef umask;
-#undef tell;
-
-# if !defined (ACE_LD_DECORATOR_STR) && defined (_DEBUG)
-# define ACE_LD_DECORATOR_STR ACE_TEXT ("d")
-# endif
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_WIN32_DMC_H */
-
diff --git a/dep/include/ace/config-win32-ghs.h b/dep/include/ace/config-win32-ghs.h
deleted file mode 100644
index 775488f3f7f..00000000000
--- a/dep/include/ace/config-win32-ghs.h
+++ /dev/null
@@ -1,97 +0,0 @@
-// -*- C++ -*-
-// $Id: config-win32-ghs.h 81992 2008-06-16 19:09:50Z wotte $
-
-// The following configuration file contains defines for Green Hills compilers.
-
-#ifndef ACE_CONFIG_WIN32_GHS_H
-#define ACE_CONFIG_WIN32_GHS_H
-#include /**/ "ace/pre.h"
-
-#ifndef ACE_CONFIG_WIN32_H
-#error Use config-win32.h in config.h instead of this header
-#endif /* ACE_CONFIG_WIN32_H */
-
-#ifndef WIN32
-# define WIN32
-#endif /* WIN32 */
-
-#undef _M_IX86
-// This turns on ACE_HAS_PENTIUM
-#define _M_IX86 500
-// GHS does not provide DLL support
-#define ACE_HAS_DLL 0
-#define TAO_HAS_DLL 0
-#undef _DLL
-
-//Green Hills Native x86 does not support structural exceptions
-# undef ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS
-# undef ACE_HAS_WCHAR
-# define ACE_CONFIG_INCLUDE_GHS_COMMON
-# include "ace/config-ghs-common.h"
-
-// Changed ACE_TEXT to ACE_TEXT in the following line
-# define ACE_CC_NAME ACE_TEXT ("Green Hills C++")
-# define ACE_CC_MAJOR_VERSION (1)
-# define ACE_CC_MINOR_VERSION (8)
-# define ACE_CC_BETA_VERSION (9)
-# ifndef ACE_USING_MCPP_PREPROCESSOR
-# define ACE_CC_PREPROCESSOR "GCX.EXE"
-# define ACE_CC_PREPROCESSOR_ARGS "-E"
-# endif
-
-// GHS uses Microsoft's standard cpp library, which has auto_ptr.
-# undef ACE_LACKS_AUTO_PTR
-// Microsoft's standard cpp library auto_ptr doesn't have reset ().
-# define ACE_AUTO_PTR_LACKS_RESET
-
-#define ACE_ENDTHREADEX(STATUS) ::_endthreadex ((DWORD) STATUS)
-
-// This section below was extracted from config-win32-msvc
-#define ACE_HAS_ITOA
-#define ACE_ITOA_EQUIVALENT ::_itoa
-#define ACE_STRCASECMP_EQUIVALENT ::_stricmp
-#define ACE_STRNCASECMP_EQUIVALENT ::_strnicmp
-#define ACE_WCSDUP_EQUIVALENT ::_wcsdup
-// This section above was extracted from config-win32-msvc
-
-# define ACE_EXPORT_NESTED_CLASSES 1
-# define ACE_HAS_CPLUSPLUS_HEADERS 1
-//# define ACE_HAS_EXCEPTIONS 1
-# define ACE_HAS_GNU_CSTRING_H 1
-# define ACE_HAS_NONCONST_SELECT_TIMEVAL 1
-# define ACE_HAS_SIG_ATOMIC_T 1
-# define ACE_HAS_STANDARD_CPP_LIBRARY 1
-# define ACE_HAS_STDCPP_STL_INCLUDES 1
-# define ACE_HAS_STRERROR 1
-# define ACE_HAS_STRING_CLASS 1
-# define ACE_HAS_TEMPLATE_TYPEDEFS 1
-# define ACE_HAS_USER_MODE_MASKS 1
-# define ACE_LACKS_ACE_IOSTREAM 1
-//# define ACE_LACKS_LINEBUFFERED_STREAMBUF 1
-# define ACE_LACKS_STRPTIME 1
-//# define ACE_LACKS_PRAGMA_ONCE 1
-# define ACE_LACKS_STRRECVFD 1
-//# define ACE_NEW_THROWS_EXCEPTIONS 1
-# define ACE_SIZEOF_LONG_DOUBLE 10
-# define ACE_TEMPLATES_REQUIRE_SOURCE 1
-// Changed ACE_TEXT to ACE_TEXT in the following two lines
-# define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%I64u")
-# define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%I64d")
-# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-// Set the following to zero to placate SString.h ACE_WString CTOR
-# undef ACE_WSTRING_HAS_USHORT_SUPPORT
-
-// Green Hills Native x86 does not support __int64 keyword
-# define ACE_LACKS_LONGLONG_T
-
-/* need to ensure these are included before <iomanip> */
-# include <time.h>
-# include <stdlib.h>
-
-# if !defined (ACE_LD_DECORATOR_STR) && defined (_DEBUG)
-# define ACE_LD_DECORATOR_STR ACE_TEXT ("d")
-# endif
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_WIN32_GHS_H */
-
diff --git a/dep/include/ace/config-win32-interix.h b/dep/include/ace/config-win32-interix.h
deleted file mode 100644
index d613444fadb..00000000000
--- a/dep/include/ace/config-win32-interix.h
+++ /dev/null
@@ -1,100 +0,0 @@
-// -*- C++ -*-
-// $Id: config-win32-interix.h 80826 2008-03-04 14:51:23Z wotte $
-
-// The following configuration file is designed to work for Interix
-// platforms using GNU g++ (Interix == Microsoft's Services for Unix)
-
-#ifndef ACE_CONFIG_WIN32_INTERIX_H
-#define ACE_CONFIG_WIN32_INTERIX_H
-#include /**/ "ace/pre.h"
-#include <arpa/inet.h>
-
-# define ACE_LACKS_SENDMSG
-# define ACE_LACKS_RECVMSG
-# define ACE_LACKS_STDINT_H
-# define ACE_LACKS_INTTYPES_H
-# define ACE_LACKS_PRAGMA_ONCE
-# define ACE_LACKS_RWLOCK_T
-# define ACE_LACKS_GETPGID // Don't have getpgid(), have setpgid() though...
-# define ACE_LACKS_UCONTEXT_H
-# define ACE_HAS_REENTRANT_FUNCTIONS
-# define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS // Don't have gethostbyaddr_r and friends.
-# define ACE_HAS_DIRENT
-# define ACE_HAS_STDCPP_STL_INCLUDES
-# define ACE_HAS_STANDARD_CPP_LIBRARY 1
-# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-# define ACE_HAS_NONCONST_SELECT_TIMEVAL
-# define ACE_HAS_SIGWAIT
-# define ACE_HAS_SIGINFO_T
-
-#include "ace/config-g++-common.h"
-
-#define ACE_HAS_NEW_NOTHROW // Need to know 'new's failure semantics.
-
-#if defined (ACE_HAS_THREADS)
-#define ACE_HAS_THREADS
-#define ACE_HAS_PTHREADS
-#define _THREAD_SAFE
-#define ACE_MTSAFE 1
-#define ACE_MT_SAFE 1
-#define ACE_LACKS_PTHREAD_YIELD
-#define ACE_HAS_MUTEX_TIMEOUTS
-#else
- error "You need to enable threads for this Interix port."
-#endif /* ACE_HAS_THREADS */
-
-// INTERIX has the following, just an issue with porting for the moment
-#define ACE_LACKS_ACCESS
-// END INTERIX has the following....
-
-#define ACE_SIZEOF_LONG_DOUBLE 12
-#define ACE_PAGE_SIZE 4096
-
-#define ACE_HAS_SYSV_IPC
-#define ACE_HAS_SVR4_SIGNAL_T
-#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-#define ACE_HAS_SVR4_DYNAMIC_LINKING
-#define ACE_HAS_POSIX_TIME // Supports POSIX timers via struct timespec.
-#define ACE_LACKS_TIMESPEC_T // Defines struct timespec but not timespec_t.
-#define ACE_LACKS_STRRECVFD
-#define ACE_LACKS_SETSCHED
-#define ACE_HAS_SOCKADDR_IN_SIN_LEN
-#define ACE_HAS_RTLD_LAZY_V
-#define ACE_HAS_POSIX_NONBLOCK
-#define ACE_HAS_GETRUSAGE
-#define ACE_HAS_SIG_ATOMIC_T
-#define ACE_HAS_SEMUN
-#define ACE_HAS_SSIZE_T
-#define ACE_HAS_STRERROR
-#define ACE_HAS_SVR4_GETTIMEOFDAY
-#define ACE_HAS_UALARM
-#define ACE_HAS_TERMIOS
-#define ACE_HAS_SIGWAIT
-
-// Turns off the tracing feature.
-#if !defined (ACE_NTRACE)
-#define ACE_NTRACE 1
-#endif /* ACE_NTRACE */
-
-// NOTE: In debugging some of the test apps they would all memory fault in using
-// ACE_Errno_Guard. Upon inspection of that code it uses TSS to save ERRNO in
-// a TSS pointer. Access to that pointer caused the fault. The work around here
-// is to tell ACE we have TSS and use emulation. More investigation is needed to
-// determine whether Interix TSS is broken or the correct semantics for usage under
-// Interix simply need to be ported.
-// To get around the issue ACE_HAS_TSS_EMULATION is defined to use TSS emulation
-// however while many test programs that use TSS pass the TSS_Test program fails.
-#define ACE_HAS_THREAD_SPECIFIC_STORAGE // We need thread specific storage even though...
-#define ACE_HAS_TSS_EMULATION // It would appear to be broken in Interix!
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_WIN32_INTERIX_H */
-
-/*
-The following tests do not run.
-Dynamic_Priority_Test.log ACE_HAS_TIMED_MESSAGE_BLOCKS
-Enum_Interfaces_Test.log
-IOStream_Test.log ACE_IOSTREAM not supported on this platform
-*/
-
-
diff --git a/dep/include/ace/config-win32-mingw.h b/dep/include/ace/config-win32-mingw.h
deleted file mode 100644
index 259e5d927fd..00000000000
--- a/dep/include/ace/config-win32-mingw.h
+++ /dev/null
@@ -1,101 +0,0 @@
-// -*- C++ -*-
-// $Id: config-win32-mingw.h 81693 2008-05-14 12:35:01Z johnnyw $
-
-//
-// The following configuration file is designed to work for win32
-// platforms using gcc/g++ with mingw32 (http://www.mingw.org).
-//
-
-#ifndef ACE_CONFIG_WIN32_MINGW_H
-#define ACE_CONFIG_WIN32_MINGW_H
-#include /**/ "ace/pre.h"
-
-#ifndef ACE_CONFIG_WIN32_H
-# error Use config-win32.h in config.h instead of this header
-#endif /* ACE_CONFIG_WIN32_H */
-
-#define ACE_CC_NAME ACE_TEXT ("g++")
-#define ACE_CC_PREPROCESSOR "cpp"
-#define ACE_CC_PREPROCESOR_ARGS ""
-
-// Why all this is not in config-g++-common.h?
-#define ACE_CC_MAJOR_VERSION __GNUC__
-#define ACE_CC_MINOR_VERSION __GNUC_MINOR__
-#define ACE_CC_BETA_VERSION (0)
-
-#if !defined(__MINGW32__)
-# error You do not seem to be using mingw32
-#endif
-
-#include "ace/config-g++-common.h"
-
-#include /**/ <_mingw.h>
-#include /**/ <w32api.h>
-
-#define ACE_HAS_USER_MODE_MASKS
-
-#if (__MINGW32_MAJOR_VERSION < 2)
-# error You need a newer version (>= 2.0) of mingw32/w32api
-#endif
-
-#if (__MINGW32_MAJOR_VERSION >= 3)
-# define ACE_HAS_SSIZE_T
-# undef ACE_LACKS_STRUCT_DIR
-# undef ACE_LACKS_OPENDIR
-# undef ACE_LACKS_CLOSEDIR
-# undef ACE_LACKS_READDIR
-# undef ACE_LACKS_TELLDIR
-# undef ACE_LACKS_SEEKDIR
-# undef ACE_LACKS_REWINDDIR
-#else
-# define ACE_LACKS_DIRENT_H
-#endif
-
-#undef ACE_LACKS_SIGSET
-
-#define ACE_LACKS_SIGSET_DEFINITIONS
-#define ACE_LACKS_SYS_SHM_H
-#define ACE_LACKS_TERMIOS_H
-#define ACE_LACKS_NETINET_TCP_H
-#define ACE_LACKS_STRRECVFD
-#define ACE_LACKS_STRPTIME
-#define ACE_HAS_STRERROR
-#define ACE_LACKS_POLL_H
-#define ACE_LACKS_REGEX_H
-#define ACE_LACKS_SYS_MSG_H
-#define ACE_LACKS_PWD_H
-#define ACE_LACKS_SEMAPHORE_H
-#define ACE_LACKS_UCONTEXT_H
-#define ACE_LACKS_SYS_SELECT_H
-#define ACE_LACKS_SYS_RESOURCE_H
-#define ACE_LACKS_SYS_WAIT_H
-#define ACE_LACKS_DLFCN_H
-#define ACE_LACKS_SYS_MMAN_H
-#define ACE_LACKS_SYS_UIO_H
-#define ACE_LACKS_SYS_SOCKET_H
-#define ACE_LACKS_NETINET_IN_H
-#define ACE_LACKS_NETDB_H
-#define ACE_LACKS_NET_IF_H
-#define ACE_LACKS_SYS_IPC_H
-#define ACE_LACKS_SYS_SEM_H
-#define ACE_LACKS_STROPTS_H
-#define ACE_LACKS_SYS_IOCTL_H
-#define ACE_LACKS_PDH_H
-#define ACE_LACKS_PDHMSG_H
-#define ACE_HAS_NONCONST_WCSDUP
-#define ACE_HAS_WINSOCK2_GQOS
-
-// We trust the user: He must have used -mpentiumpro or -mpentium
-// if that is what he wants.
-#if defined(pentiumpro) || defined(pentium)
-# define ACE_HAS_PENTIUM
-#endif
-
-#define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%I64d")
-#define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%I64u")
-
-#define ACE_ENDTHREADEX(STATUS) ::_endthreadex ((DWORD) (STATUS))
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_WIN32_MINGW_H */
-
diff --git a/dep/include/ace/config-win32-msvc-7.h b/dep/include/ace/config-win32-msvc-7.h
deleted file mode 100644
index b2b45c6894b..00000000000
--- a/dep/include/ace/config-win32-msvc-7.h
+++ /dev/null
@@ -1,126 +0,0 @@
-/* -*- C++ -*- */
-//=============================================================================
-/**
- * @file config-win32-msvc-7.h
- *
- * $Id: config-win32-msvc-7.h 81935 2008-06-12 22:01:53Z jtc $
- *
- * @brief Microsoft Visual C++ 7.0 configuration file.
- *
- * This file is the ACE configuration file for Microsoft Visual C++ version 7.
- *
- * @note Do not include this file directly, include config-win32.h instead.
- *
- * @author Darrell Brunsch <brunsch@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_CONFIG_WIN32_MSVC_7_H
-#define ACE_CONFIG_WIN32_MSVC_7_H
-#include /**/ "ace/pre.h"
-
-#ifndef ACE_CONFIG_WIN32_H
-#error Use config-win32.h in config.h instead of this header
-#endif /* ACE_CONFIG_WIN32_H */
-
-// Visual C++ 7.0 (.NET) deprecated the old iostreams
-#if !defined (ACE_HAS_STANDARD_CPP_LIBRARY)
-#define ACE_HAS_STANDARD_CPP_LIBRARY 1
-#endif
-
-#if !defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
-#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-#endif
-
-// Win64 SDK compiler claims std::auto_ptr<>::reset not available.
-#if defined (_WIN64) || defined (WIN64)
-#define ACE_AUTO_PTR_LACKS_RESET
-#endif
-
-#define ACE_HAS_ITOA
-#define ACE_HAS_HEADER_ALLOCATED_CLASS_STATIC_CONST_INT_STOREAGE
-#define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
-
-#define ACE_ITOA_EQUIVALENT ::_itoa
-#define ACE_STRCASECMP_EQUIVALENT ::_stricmp
-#define ACE_STRNCASECMP_EQUIVALENT ::_strnicmp
-#define ACE_WCSDUP_EQUIVALENT ::_wcsdup
-
-#if !defined (ACE_HAS_WINCE) && !defined (ACE_HAS_EXCEPTIONS)
-#define ACE_HAS_EXCEPTIONS
-#endif /* ACE_HAS_WINCE */
-
-#define ACE_HAS_STRERROR
-#define ACE_LACKS_STRPTIME
-
-#define ACE_HAS_SIG_ATOMIC_T
-#define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
-#define ACE_LACKS_STRRECVFD
-#define ACE_HAS_CPLUSPLUS_HEADERS
-
-#define ACE_HAS_TEMPLATE_TYPEDEFS
-#define ACE_TEMPLATES_REQUIRE_SOURCE
-
-// Platform provides ACE_TLI function prototypes.
-// For Win32, this is not really true, but saves a lot of hassle!
-#define ACE_HAS_TLI_PROTOTYPES
-
-// Platform support linebuffered streaming is broken
-#define ACE_LACKS_LINEBUFFERED_STREAMBUF
-
-#if !defined (ACE_HAS_WINCE) && !(defined (__INTEL_COMPILER) && (__INTEL_COMPILER == 900))
-# define ACE_HAS_INTRINSIC_INTERLOCKED
-# define ACE_HAS_INTRINSIC_BYTESWAP
-#endif
-
-#if defined (ACE_HAS_STANDARD_CPP_LIBRARY) && (ACE_HAS_STANDARD_CPP_LIBRARY != 0)
-
-// Platform has its Standard C++ library in the namespace std
-# if !defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
-# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-# endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
-
-// ace/iostream.h does not work with the standard cpp library (yet).
-# if !defined (ACE_USES_OLD_IOSTREAMS)
-# define ACE_LACKS_ACE_IOSTREAM
-# endif /* ! ACE_USES_OLD_IOSTREAMS */
-
-// Starting with MSVC 7.1, std::new throws std::bad_alloc on out-of-memory.
-// Since we don't support MSVC 7.0, don't test for it.
-# define ACE_NEW_THROWS_EXCEPTIONS
-# define ACE_HAS_NEW_NOTHROW
-
-#else
-
-// iostream header lacks ipfx (), isfx (), etc., declarations
-# define ACE_LACKS_IOSTREAM_FX
-
-#endif
-
-// There are too many instances of this warning to fix it right now.
-// Maybe in the future.
-// 'this' : used in base member initializer list
-#pragma warning(disable:4355)
-
-// 'class1' : inherits 'class2::member' via dominance
-#pragma warning(disable:4250)
-
-// C++ Exception Specification ignored
-#pragma warning(disable:4290)
-
-// Disable warning of using Microsoft Extension.
-#pragma warning(disable:4231)
-
-// 'function' : unreferenced local function has been removed
-# pragma warning(disable:4505)
-
-// A template can not be exported. Only an instantiation may be exported.
-#define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION_EXPORT
-
-// At least for ACE_UNIMPLEMENTED_FUNC in class templates, this is needed to
-// explicitly instantiate a template that has ACE_UNIMPLEMENTED_FUNC.
-# define ACE_NEEDS_FUNC_DEFINITIONS
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_WIN32_MSVC_7_H */
-
diff --git a/dep/include/ace/config-win32-msvc-8.h b/dep/include/ace/config-win32-msvc-8.h
deleted file mode 100644
index f35ba9f4f94..00000000000
--- a/dep/include/ace/config-win32-msvc-8.h
+++ /dev/null
@@ -1,149 +0,0 @@
-/* -*- C++ -*- */
-//=============================================================================
-/**
- * @file config-win32-msvc-8.h
- *
- * $Id: config-win32-msvc-8.h 81935 2008-06-12 22:01:53Z jtc $
- *
- * @brief Microsoft Visual C++ 8.0 configuration file.
- *
- * This file is the ACE configuration file for Microsoft Visual C++ version 8.
- *
- * @note Do not include this file directly, include config-win32.h instead.
- *
- * @author Darrell Brunsch <brunsch@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_CONFIG_WIN32_MSVC_8_H
-#define ACE_CONFIG_WIN32_MSVC_8_H
-#include /**/ "ace/pre.h"
-
-#ifndef ACE_CONFIG_WIN32_H
-#error Use config-win32.h in config.h instead of this header
-#endif /* ACE_CONFIG_WIN32_H */
-
-#ifndef ACE_WIN32_VC8
-# define ACE_WIN32_VC8
-#endif
-
-// Visual C++ 8.0 (.NET) deprecated the old iostreams
-#if !defined (ACE_HAS_STANDARD_CPP_LIBRARY)
-#define ACE_HAS_STANDARD_CPP_LIBRARY 1
-#endif
-
-#if !defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
-#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-#endif
-
-// Windows' timeval is non-conformant (defined in terms of long instead of
-// time_t) and VC8 (on desktop, not CE) changed time_t to a 64-bit value
-// even when compiling a 32-bit application. Therefore, ace/Time_Value
-// needs to rearrange a few things for this compiler. See Time_Value.h
-// for complete details.
-#if !defined (ACE_HAS_WINCE)
-# define ACE_HAS_TIME_T_LONG_MISMATCH
-#endif
-
-#define ACE_HAS_ITOA
-#define ACE_HAS_HEADER_ALLOCATED_CLASS_STATIC_CONST_INT_STOREAGE
-#define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
-
-#define ACE_ITOA_EQUIVALENT ::_itoa
-#define ACE_STRCASECMP_EQUIVALENT ::_stricmp
-#define ACE_STRNCASECMP_EQUIVALENT ::_strnicmp
-#define ACE_WCSDUP_EQUIVALENT ::_wcsdup
-
-#define ACE_HAS_EXCEPTIONS
-
-// Windows Mobile 5 doesn't do sig_atomic_t, but maybe future versions will.
-# if !defined (_WIN32_WCE) || (_WIN32_WCE > 0x501)
-# define ACE_HAS_SIG_ATOMIC_T
-# endif /* !Win CE 5.0 or less */
-
-#define ACE_HAS_STRERROR
-#define ACE_LACKS_STRPTIME
-
-#if !defined (ACE_HAS_WINCE)
-# define ACE_HAS_INTRIN_H
-# define ACE_HAS_INTRINSIC_INTERLOCKED
-#endif
-
-#if !defined (_WIN32_WCE) || (_WIN32_WCE >= 0x501)
-# define ACE_HAS_INTRINSIC_BYTESWAP
-#endif
-
-#define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
-#define ACE_LACKS_STRRECVFD
-#define ACE_HAS_CPLUSPLUS_HEADERS
-
-#define ACE_HAS_TEMPLATE_TYPEDEFS
-#define ACE_TEMPLATES_REQUIRE_SOURCE
-
-// Platform provides ACE_TLI function prototypes.
-// For Win32, this is not really true, but saves a lot of hassle!
-#define ACE_HAS_TLI_PROTOTYPES
-
-// Platform support linebuffered streaming is broken
-#define ACE_LACKS_LINEBUFFERED_STREAMBUF
-
-#if defined (ACE_HAS_STANDARD_CPP_LIBRARY) && (ACE_HAS_STANDARD_CPP_LIBRARY != 0)
-
-// Platform has its Standard C++ library in the namespace std
-# if !defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
-# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-# endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
-
-// ace/iostream.h does not work with the standard cpp library (yet).
-# if !defined (ACE_USES_OLD_IOSTREAMS)
-# define ACE_LACKS_ACE_IOSTREAM
-# endif /* ! ACE_USES_OLD_IOSTREAMS */
-
-// Starting with MSVC 7.1, std::new throws std::bad_alloc on out-of-memory.
-#define ACE_NEW_THROWS_EXCEPTIONS
-#define ACE_HAS_NEW_NOTHROW
-
-#else
-
-// iostream header lacks ipfx (), isfx (), etc., declarations
-# define ACE_LACKS_IOSTREAM_FX
-
-#endif
-
-// There are too many instances of this warning to fix it right now.
-// Maybe in the future.
-
-// Disable warning of using Microsoft Extension.
-# pragma warning(disable:4231)
-
-// CE (at least thru Windows Mobile 5) doesn't have the new, secure CRT.
-#if !defined (ACE_HAS_WINCE) && !defined (ACE_HAS_TR24731_2005_CRT)
-# define ACE_HAS_TR24731_2005_CRT
-#endif
-
-//Detect Platform SDK 64-bit (AMD64) compiler using _MSC_FULL_VER
-#if (defined (_WIN64) || defined (WIN64)) && _MSC_FULL_VER < 140050000
-# define ACE_AUTO_PTR_LACKS_RESET
-# define ACE_MSVC_USES_DOUBLE_UNDERSCORE_STAT64
-# define ACE_HAS_BROKEN_STD_REVERSE_ITERATOR
-# define ACE_LACKS_NUMERIC_LIMITS_64_BIT_TYPES
-# undef ACE_HAS_TR24731_2005_CRT
-# undef ACE_HAS_INTRIN_H
-#endif
-
-// On CE w/o MFC config-WinCE.h needs to declare a placement new. This
-// triggers a warning that there's no placement delete, which can be ignored.
-#if defined (ACE_HAS_WINCE) && !defined (ACE_HAS_MFC)
-# pragma warning(disable:4291)
-#endif
-
-// A template can not be exported. Only an instantiation may be exported.
-#define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION_EXPORT
-
-// At least for ACE_UNIMPLEMENTED_FUNC in class templates, this is needed to
-// explicitly instantiate a template that has ACE_UNIMPLEMENTED_FUNC.
-# define ACE_NEEDS_FUNC_DEFINITIONS
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_WIN32_MSVC_8_H */
-
diff --git a/dep/include/ace/config-win32-msvc-9.h b/dep/include/ace/config-win32-msvc-9.h
deleted file mode 100644
index ee8feef52e1..00000000000
--- a/dep/include/ace/config-win32-msvc-9.h
+++ /dev/null
@@ -1,141 +0,0 @@
-/* -*- C++ -*- */
-//=============================================================================
-/**
- * @file config-win32-msvc-9.h
- *
- * $Id: config-win32-msvc-9.h 81935 2008-06-12 22:01:53Z jtc $
- *
- * @brief Microsoft Visual C++ 9.0 configuration file.
- *
- * This file is the ACE configuration file for Microsoft Visual C++ version 9.
- *
- * @note Do not include this file directly, include config-win32.h instead.
- */
-//=============================================================================
-
-#ifndef ACE_CONFIG_WIN32_MSVC_9_H
-#define ACE_CONFIG_WIN32_MSVC_9_H
-#include /**/ "ace/pre.h"
-
-#ifndef ACE_CONFIG_WIN32_H
-#error Use config-win32.h in config.h instead of this header
-#endif /* ACE_CONFIG_WIN32_H */
-
-#ifndef ACE_WIN32_VC9
-# define ACE_WIN32_VC9
-#endif
-
-// Visual C++ 9.0 (.NET) deprecated the old iostreams
-#if !defined (ACE_HAS_STANDARD_CPP_LIBRARY)
-#define ACE_HAS_STANDARD_CPP_LIBRARY 1
-#endif
-
-#if !defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
-#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-#endif
-
-// Windows' timeval is non-conformant (defined in terms of long instead of
-// time_t) and VC9 (on desktop, not CE) changed time_t to a 64-bit value
-// even when compiling a 32-bit application. Therefore, ace/Time_Value
-// needs to rearrange a few things for this compiler. See Time_Value.h
-// for complete details.
-#if !defined (ACE_HAS_WINCE)
-# define ACE_HAS_TIME_T_LONG_MISMATCH
-#endif
-
-#define ACE_HAS_ITOA
-#define ACE_HAS_HEADER_ALLOCATED_CLASS_STATIC_CONST_INT_STOREAGE
-#define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
-
-#define ACE_ITOA_EQUIVALENT ::_itoa
-#define ACE_STRCASECMP_EQUIVALENT ::_stricmp
-#define ACE_STRNCASECMP_EQUIVALENT ::_strnicmp
-#define ACE_WCSDUP_EQUIVALENT ::_wcsdup
-
-#define ACE_HAS_EXCEPTIONS
-
-// Windows Mobile 5 doesn't do sig_atomic_t, but maybe future versions will.
-# if !defined (_WIN32_WCE) || (_WIN32_WCE > 0x501)
-# define ACE_HAS_SIG_ATOMIC_T
-# endif /* !Win CE 5.0 or less */
-
-#define ACE_HAS_STRERROR
-#define ACE_LACKS_STRPTIME
-
-// Evaluate this with a WinCE build; maybe things have improved since VC8.
-//#if !defined (ACE_HAS_WINCE)
-# define ACE_HAS_INTRIN_H
-# define ACE_HAS_INTRINSIC_INTERLOCKED
-//#endif
-
-#if !defined (_WIN32_WCE) || (_WIN32_WCE >= 0x501)
-# define ACE_HAS_INTRINSIC_BYTESWAP
-#endif
-
-#define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
-#define ACE_LACKS_STRRECVFD
-#define ACE_HAS_CPLUSPLUS_HEADERS
-
-#define ACE_HAS_TEMPLATE_TYPEDEFS
-#define ACE_TEMPLATES_REQUIRE_SOURCE
-
-// Platform provides ACE_TLI function prototypes.
-// For Win32, this is not really true, but saves a lot of hassle!
-#define ACE_HAS_TLI_PROTOTYPES
-
-// Platform support linebuffered streaming is broken
-#define ACE_LACKS_LINEBUFFERED_STREAMBUF
-
-#if defined (ACE_HAS_STANDARD_CPP_LIBRARY) && (ACE_HAS_STANDARD_CPP_LIBRARY != 0)
-
-// Platform has its Standard C++ library in the namespace std
-# if !defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
-# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
-# endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
-
-// ace/iostream.h does not work with the standard cpp library (yet).
-# if !defined (ACE_USES_OLD_IOSTREAMS)
-# define ACE_LACKS_ACE_IOSTREAM
-# endif /* ! ACE_USES_OLD_IOSTREAMS */
-
-// Starting with MSVC 7.1, std::new throws std::bad_alloc on out-of-memory.
-#define ACE_NEW_THROWS_EXCEPTIONS
-#define ACE_HAS_NEW_NOTHROW
-
-#else
-
-// iostream header lacks ipfx (), isfx (), etc., declarations
-# define ACE_LACKS_IOSTREAM_FX
-
-#endif
-
-// There are too many instances of this warning to fix it right now.
-// Maybe in the future.
-
-// Disable warning of using Microsoft Extension.
-# pragma warning(disable:4231)
-
-// 'class1' : inherits 'class2::member' via dominance
-#pragma warning(disable:4250)
-
-// CE (at least thru Windows Mobile 5) doesn't have the new, secure CRT.
-#if !defined (ACE_HAS_WINCE) && !defined (ACE_HAS_TR24731_2005_CRT)
-# define ACE_HAS_TR24731_2005_CRT
-#endif
-
-// On CE w/o MFC config-WinCE.h needs to declare a placement new. This
-// triggers a warning that there's no placement delete, which can be ignored.
-#if defined (ACE_HAS_WINCE) && !defined (ACE_HAS_MFC)
-# pragma warning(disable:4291)
-#endif
-
-// A template can not be exported. Only an instantiation may be exported.
-#define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION_EXPORT
-
-// At least for ACE_UNIMPLEMENTED_FUNC in class templates, this is needed to
-// explicitly instantiate a template that has ACE_UNIMPLEMENTED_FUNC.
-# define ACE_NEEDS_FUNC_DEFINITIONS
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_WIN32_MSVC_9_H */
-
diff --git a/dep/include/ace/config-win32-msvc.h b/dep/include/ace/config-win32-msvc.h
deleted file mode 100644
index 7abad321c7d..00000000000
--- a/dep/include/ace/config-win32-msvc.h
+++ /dev/null
@@ -1,170 +0,0 @@
-//=============================================================================
-/**
- * @file config-win32-msvc.h
- *
- * $Id: config-win32-msvc.h 82643 2008-08-19 14:02:12Z johnnyw $
- *
- * @brief Microsoft Visual C++ configuration file.
- *
- * This file is the ACE configuration file for Microsoft Visual C++ versions
- * 5.0, 6.0, and 7.0 (.NET)
- *
- * @author Darrell Brunsch <brunsch@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_CONFIG_WIN32_MSVC_H
-#define ACE_CONFIG_WIN32_MSVC_H
-#include /**/ "ace/pre.h"
-
-#ifndef ACE_CONFIG_WIN32_H
-#error Use config-win32.h in config.h instead of this header
-#endif /* ACE_CONFIG_WIN32_H */
-
-#define ACE_CC_NAME ACE_TEXT ("Visual C++")
-#ifndef ACE_USING_MCPP_PREPROCESSOR
-# define ACE_CC_PREPROCESSOR "CL.EXE"
-# define ACE_CC_PREPROCESSOR_ARGS "-nologo -E"
-#endif
-
-#define ACE_CC_MAJOR_VERSION (_MSC_VER / 100 - 6)
-#define ACE_CC_MINOR_VERSION (_MSC_VER % 100)
-#define ACE_CC_BETA_VERSION (0)
-
-#if !defined (ACE_LD_DECORATOR_STR)
-# if defined (_DEBUG)
-# define ACE_LD_DECORATOR_STR ACE_TEXT ("d")
-# endif /* _DEBUG */
-#endif /* ACE_LD_DECORATOR_STR */
-
-#if !defined(_NATIVE_WCHAR_T_DEFINED)
- #define ACE_LACKS_NATIVE_WCHAR_T
-#endif
-
-// Win Mobile still does thread exits differently than PC Windows.
-#if defined (_WIN32_WCE)
-# define ACE_ENDTHREADEX(STATUS) ExitThread ((DWORD) STATUS)
-#else
-# define ACE_ENDTHREADEX(STATUS) ::_endthreadex ((DWORD) STATUS)
-#endif /* _WIN32_WCE */
-
-#if (_MSC_VER >= 1500)
-# include "ace/config-win32-msvc-9.h"
-#elif (_MSC_VER >= 1400)
-# include "ace/config-win32-msvc-8.h"
-#elif (_MSC_VER >= 1310)
-# include "ace/config-win32-msvc-7.h"
-#else
-# error This version of Microsoft Visual C++ is not supported.
-#endif
-
-// MFC changes the behavior of operator new at all MSVC versions from 6 up
-// by throwing a static CMemoryException* instead of std::bad_alloc
-// (see ace/OS_Memory.h). This MFC exception object needs to be cleaned up
-// by calling its Delete() method.
-#if defined (ACE_HAS_MFC) && (ACE_HAS_MFC == 1)
-# if !defined (ACE_NEW_THROWS_EXCEPTIONS)
-# define ACE_NEW_THROWS_EXCEPTIONS
-# endif
-# if defined (ACE_bad_alloc)
-# undef ACE_bad_alloc
-# endif
-# define ACE_bad_alloc CMemoryException *e
-# if defined (ACE_del_bad_alloc)
-# undef ACE_del_bad_alloc
-# endif
-# define ACE_del_bad_alloc e->Delete();
-#endif /* ACE_HAS_MFC && ACE_HAS_MFC==1 */
-
-#if defined(ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
-// must have _MT defined to include multithreading
-// features from win32 headers
-# if !defined(_MT) && !defined (ACE_HAS_WINCE)
-// *** DO NOT *** defeat this error message by defining _MT yourself.
-// On MSVC, this is changed by selecting the Multithreaded
-// DLL or Debug Multithreaded DLL in the Project Settings
-// under C++ Code Generation.
-# error You must link against multi-threaded libraries when using ACE (check your project settings)
-# endif /* !_MT && !ACE_HAS_WINCE */
-#endif /* ACE_MT_SAFE && ACE_MT_SAFE != 0 */
-
-#include <malloc.h>
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//#define ACE_HAS_ALLOCA 1
-
-#define ACE_LACKS_DIRENT_H
-#define ACE_LACKS_DLFCN_H
-#define ACE_LACKS_INTTYPES_H
-#define ACE_LACKS_NETDB_H
-#define ACE_LACKS_NET_IF_H
-#define ACE_LACKS_NETINET_IN_H
-#define ACE_LACKS_STDINT_H
-#define ACE_LACKS_STROPTS_H
-#define ACE_LACKS_SYS_IOCTL_H
-#define ACE_LACKS_SYS_IPC_H
-#define ACE_LACKS_SYS_MMAN_H
-#define ACE_LACKS_SYS_RESOURCE_H
-#define ACE_LACKS_SYS_SELECT_H
-#define ACE_LACKS_SYS_SEM_H
-#define ACE_LACKS_SYS_SOCKET_H
-#define ACE_LACKS_SYS_TIME_H
-#define ACE_LACKS_SYS_UIO_H
-#define ACE_LACKS_SYS_WAIT_H
-#define ACE_LACKS_UCONTEXT_H
-
-#define ACE_LACKS_SEMAPHORE_H
-#define ACE_LACKS_STRINGS_H
-#define ACE_LACKS_PWD_H
-#define ACE_LACKS_POLL_H
-#define ACE_LACKS_SYS_SHM_H
-#define ACE_LACKS_SYS_MSG_H
-#define ACE_LACKS_NETINET_TCP_H
-#define ACE_LACKS_TERMIOS_H
-#define ACE_LACKS_REGEX_H
-
-#define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%I64d")
-#define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%I64u")
-
-#define ACE_STRTOULL_EQUIVALENT ::_strtoui64
-#define ACE_WCSTOOULL_EQUIVALENT ::_wcstoui64
-
-// Turn off warnings for /W4
-// To resume any of these warning: #pragma warning(default: 4xxx)
-// which should be placed after these defines
-
-#if !defined (ALL_WARNINGS) && defined(_MSC_VER) && !defined(ghs) && !defined(__MINGW32__)
-# pragma warning(disable: 4127) /* constant expression for TRACE/ASSERT */
-# pragma warning(disable: 4134) /* message map member fxn casts */
-# pragma warning(disable: 4511) /* private copy constructors are good to have */
-# pragma warning(disable: 4512) /* private operator= are good to have */
-# pragma warning(disable: 4514) /* unreferenced inlines are common */
-# pragma warning(disable: 4710) /* private constructors are disallowed */
-# pragma warning(disable: 4705) /* statement has no effect in optimized code */
-# pragma warning(disable: 4791) /* loss of debugging info in retail version */
-# pragma warning(disable: 4275) /* deriving exported class from non-exported */
-# pragma warning(disable: 4251) /* using non-exported as public in exported */
-# pragma warning(disable: 4786) /* identifier was truncated to '255' characters in the browser information */
-# pragma warning(disable: 4097) /* typedef-name used as synonym for class-name */
-# pragma warning(disable: 4800) /* converting int to boolean */
-# if defined (__INTEL_COMPILER)
-# pragma warning(disable: 1744) /* field of class type without a DLL interface used in a class with a DLL interface */
-# pragma warning(disable: 1738)
-# endif
-#endif /* !ALL_WARNINGS && _MSV_VER && !ghs && !__MINGW32__ */
-
-// STRICT type checking in WINDOWS.H enhances type safety for Windows
-// programs by using distinct types to represent all the different
-// HANDLES in Windows. So for example, STRICT prevents you from
-// mistakenly passing an HPEN to a routine expecting an HBITMAP.
-// Note that we only use this if we
-# if defined (ACE_HAS_STRICT) && (ACE_HAS_STRICT != 0)
-# if !defined (STRICT) /* may already be defined */
-# define STRICT
-# endif /* !STRICT */
-# endif /* ACE_HAS_STRICT */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_WIN32_MSVC_H */
-
diff --git a/dep/include/ace/config-win32.h b/dep/include/ace/config-win32.h
deleted file mode 100644
index 2cf39c60491..00000000000
--- a/dep/include/ace/config-win32.h
+++ /dev/null
@@ -1,92 +0,0 @@
-/* -*- C++ -*- */
-//=============================================================================
-/**
- * @file config-win32.h
- *
- * $Id: config-win32.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @brief Microsoft Windows configuration file.
- *
- * This file is the ACE configuration file for all of Microsoft Windows
- * platforms that ACE runs on. Based on preprocessor definitions, it
- * includes other more specific configuration files.
- *
- * @author Darrell Brunsch <brunsch@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef ACE_CONFIG_WIN32_H
-#define ACE_CONFIG_WIN32_H
-#include /**/ "ace/pre.h"
-
-// by derex ,I include the win32 specific header here,
-// this violates the idea of this file a bit ;)
-#define ACE_HAS_REACTOR_NOTIFICATION_QUEUE
-
-// Max amount of connections for non-epoll platforms
-#ifndef FD_SETSIZE
- #define FD_SETSIZE 4096
-#endif
-
-//disable some deprecate warnings on windows
-#ifndef _CRT_NONSTDC_NO_WARNINGS
- #define _CRT_NONSTDC_NO_WARNINGS
-#endif
-
-#ifndef _CRT_SECURE_NO_WARNINGS
- #define _CRT_SECURE_NO_WARNINGS
-#endif
-
-#ifndef _CRT_SECURE_NO_DEPRECATE
- #define _CRT_SECURE_NO_DEPRECATE
-#endif
-
-#ifndef _CRT_NONSTDC_NO_DEPRECATE
- #define _CRT_NONSTDC_NO_DEPRECATE
-#endif
-
-#ifndef _WINDOWS
- #define _WINDOWS
-#endif
-
-// end custom config stuff
-
-// NOTE: Please do not add anything besides #include's here. Put other stuff
-// (definitions, etc.) in the included headers
-
-// We need to ensure that for Borland vcl.h can be included before
-// windows.h. So we will not include config-win32-common.h from here,
-// but instead let it be included at the appropriate place in
-// config-win32-borland.h.
-#if !defined (__BORLANDC__)
-# include "ace/config-win32-common.h"
-#endif /* !__BORLANDC__ */
-
-// Include the config-win32-* file specific to the compiler
-#if defined (__BORLANDC__)
-# include "ace/config-win32-borland.h"
-#elif defined (_MSC_VER)
-# include "ace/config-win32-msvc.h"
-#elif defined (ghs)
-# include "ace/config-win32-ghs.h"
-#elif defined (__MINGW32__)
-# include "ace/config-win32-mingw.h"
-#elif defined (__DMC__)
-# include "ace/config-win32-dmc.h"
-#else
-# error Compiler is not supported
-#endif
-
-// gethostbyaddr does not handle IPv6-mapped-IPv4 addresses
-#define ACE_HAS_BROKEN_GETHOSTBYADDR_V4MAPPED
-
-// TODO remove this at some point when we add ACE::init and ACE::fini
-// by derex
-#ifdef ACE_HAS_NONSTATIC_OBJECT_MANAGER
-#undef ACE_HAS_NONSTATIC_OBJECT_MANAGER
-#endif //ACE_HAS_NONSTATIC_OBJECT_MANAGER
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_WIN32_H */
-
-
diff --git a/dep/include/ace/iosfwd.h b/dep/include/ace/iosfwd.h
deleted file mode 100644
index 1dc1c581213..00000000000
--- a/dep/include/ace/iosfwd.h
+++ /dev/null
@@ -1,99 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file iosfwd.h
- *
- * $Id: iosfwd.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Irfan Pyarali
- *
- * This file contains the portability ugliness for the Standard C++
- * Library. As implementations of the "standard" emerge, this file
- * will need to be updated.
- *
- * This files deals with forward declaration for the stream
- * classes. Remember that since the new Standard C++ Library code
- * for streams uses templates, simple forward declaration will not
- * work.
- */
-//=============================================================================
-
-#ifndef ACE_IOSFWD_H
-#define ACE_IOSFWD_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_IOSTREAM_TOTALLY)
-
-#if defined (__APPLE_CC__)
-// Should this really be here? dhinton
-// FUZZ: disable check_for_streams_include
-# include "ace/streams.h"
-#endif
-
-#if defined (ACE_HAS_STANDARD_CPP_LIBRARY) && \
- (ACE_HAS_STANDARD_CPP_LIBRARY != 0)
-
-# if !defined (ACE_USES_OLD_IOSTREAMS)
-# include /**/ <iosfwd>
-# else
- // @note If these forward declarations don't work (e.g. aren't
- // portable), we may have to include "ace/streams.h" as a last
- // resort. Doing so would defeat the purpose of this header,
- // unfortunately.
- class ios;
- class streambuf;
- class istream;
- class ostream;
- class iostream;
- class filebuf;
- class ifstream;
- class ofstream;
- class fstream;
-# endif /* ! ACE_USES_OLD_IOSTREAMS */
-
-# if defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB) && \
- (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB != 0)
-
-# if !defined (ACE_USES_OLD_IOSTREAMS)
- // Make these available in the global name space
- using std::ios;
- using std::streambuf;
- using std::istream;
- using std::ostream;
- using std::iostream;
- using std::filebuf;
- using std::ifstream;
- using std::ofstream;
- using std::fstream;
-# endif /* ! ACE_USES_OLD_IOSTREAMS */
-
-# endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
-
-#else /* ! ACE_HAS_STANDARD_CPP_LIBRARY */
-
- class ios;
- class streambuf;
- class istream;
- class ostream;
- class iostream;
- class filebuf;
- class ifstream;
- class ofstream;
- class fstream;
-
-# endif /* ! ACE_HAS_STANDARD_CPP_LIBRARY */
-
-#include /**/ "ace/post.h"
-
-#endif /* ACE_LACKS_IOSTREAM_TOTALLY */
-
-#endif /* ACE_IOSFWD_H */
-
diff --git a/dep/include/ace/os_include/arpa/os_inet.h b/dep/include/ace/os_include/arpa/os_inet.h
deleted file mode 100644
index 37538c0824d..00000000000
--- a/dep/include/ace/os_include/arpa/os_inet.h
+++ /dev/null
@@ -1,75 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_inet.h
- *
- * definitions for internet operations
- *
- * $Id: os_inet.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_ARPA_OS_INET_H
-#define ACE_OS_INCLUDE_ARPA_OS_INET_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/netinet/os_in.h"
-
-#if !defined (ACE_LACKS_ARPA_INET_H)
- extern "C" {
-# include /**/ <arpa/inet.h>
- }
-#endif /* !ACE_LACKS_ARPA_INET_H */
-
-#if defined (ACE_VXWORKS)
-# include /**/ <inetLib.h>
-#endif /* ACE_VXWORKS */
-
-/**
- * In some environments it is useful to swap the bytes on write, for
- * instance: a fast server can be feeding a lot of slow clients that
- * happen to have the wrong byte order.
- * Because this is a rarely used feature we disable it by default to
- * minimize footprint.
- * This macro enables the functionality, but we still need a way to
- * activate it on a per-connection basis.
- */
-// #define ACE_ENABLE_SWAP_ON_WRITE
-
-/**
- * In some environements we never need to swap bytes when reading, for
- * instance embebbed systems (such as avionics) or homogenous
- * networks.
- * Setting this macro disables the capabilities to demarshall streams
- * in the wrong byte order.
- */
-// #define ACE_DISABLE_SWAP_ON_READ
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (ACE_LACKS_INET_ATON_PROTOTYPE)
- int inet_aton (const char *, struct in_addr *);
-#endif /* ACE_LACKS_INET_ATON_PROTOTYPE */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_ARPA_OS_INET_H */
-
diff --git a/dep/include/ace/os_include/net/os_if.h b/dep/include/ace/os_include/net/os_if.h
deleted file mode 100644
index da099f89dc2..00000000000
--- a/dep/include/ace/os_include/net/os_if.h
+++ /dev/null
@@ -1,120 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_if.h
- *
- * sockets local interfaces
- *
- * $Id: os_if.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_NET_OS_IF_H
-#define ACE_OS_INCLUDE_NET_OS_IF_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_NET_IF_H)
- // This part if to avoid STL name conflict with the map structure
- // in net/if.h.
-# if defined (ACE_HAS_STL_MAP_CONFLICT)
-# define map _Resource_Allocation_Map_
-# endif /* ACE_HAS_STL_MAP_CONFLICT */
- extern "C" {
-# include /**/ <net/if.h>
- }
-# if defined (ACE_HAS_STL_MAP_CONFLICT)
-# undef map
-# endif /* ACE_HAS_STL_MAP_CONFLICT */
-# if defined (HPUX) && defined (IOR)
- /* HP-UX 11.11 defines IOR in /usr/include/pa/inline.h
- and we don't want that definition. See IOP_IORC.h.
- Thanks to Torsten Kopper <tkue_0931@fastmail.fm> for this patch.*/
-# undef IOR
-# endif /* HPUX && IOR */
-#endif /* !ACE_LACKS_NET_IF_H */
-
-#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
-# include /**/ <ws2tcpip.h>
-#endif /* ACE_HAS_WINSOCK2 */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (ACE_HAS_BROKEN_IF_HEADER)
- struct ifafilt;
-#endif /* ACE_HAS_BROKEN_IF_HEADER */
-
-#if defined (ACE_LACKS_IFREQ)
-struct ifreq {
-#define IFNAMSIZ 16
- char ifr_name[IFNAMSIZ]; /* if name, e.g. "en0" */
- union {
- struct sockaddr ifru_addr;
- struct sockaddr ifru_dstaddr;
- struct sockaddr ifru_broadaddr;
- short ifru_flags;
- int ifru_metric;
- int ifru_mtu;
- int ifru_phys;
- int ifru_media;
- caddr_t ifru_data;
- int (*ifru_tap)(struct ifnet *, struct ether_header *, struct mbuf *);
- } ifr_ifru;
-#define ifr_addr ifr_ifru.ifru_addr /* address */
-#define ifr_dstaddr ifr_ifru.ifru_dstaddr /* other end of p-to-p link */
-#define ifr_broadaddr ifr_ifru.ifru_broadaddr /* broadcast address */
-#define ifr_flags ifr_ifru.ifru_flags /* flags */
-#define ifr_metric ifr_ifru.ifru_metric /* metric */
-#define ifr_mtu ifr_ifru.ifru_mtu /* mtu */
-#define ifr_phys ifr_ifru.ifru_phys /* physical wire */
-#define ifr_media ifr_ifru.ifru_media /* physical media */
-#define ifr_data ifr_ifru.ifru_data /* for use by interface */
-#define ifr_tap ifr_ifru.ifru_tap /* tap function */
-};
-#endif /* ACE_LACKS_IFREQ */
-
-#if defined (ACE_LACKS_IFCONF)
-struct ifconf {
- int ifc_len;
- union {
- caddr_t ifcu_buf;
- struct ifreq *ifcu_req;
- } ifc_ifcu;
-#define ifc_buf ifc_ifcu.ifcu_buf /* buffer address */
-#define ifc_req ifc_ifcu.ifcu_req /* array of structures returned */
- };
-#endif /* ACE_LACKS_IFCONF */
-
-#if !defined (IFF_UP)
-# define IFF_UP 0x1
-#endif /* IFF_UP */
-
-#if !defined (IFF_LOOPBACK)
-# define IFF_LOOPBACK 0x8
-#endif /* IFF_LOOPBACK */
-
-#if !defined (IFF_BROADCAST)
-# define IFF_BROADCAST 0x2
-#endif /* IFF_BROADCAST */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_NET_OS_IF_H */
-
diff --git a/dep/include/ace/os_include/netinet/os_in.h b/dep/include/ace/os_include/netinet/os_in.h
deleted file mode 100644
index c90fb8fa8d4..00000000000
--- a/dep/include/ace/os_include/netinet/os_in.h
+++ /dev/null
@@ -1,186 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_in.h
- *
- * Internet address family
- *
- * $Id: os_in.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_NETINET_OS_IN_H
-#define ACE_OS_INCLUDE_NETINET_OS_IN_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_inttypes.h"
-#include "ace/os_include/sys/os_socket.h"
-
-#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
-# include /**/ <ws2tcpip.h>
-#endif /* ACE_HAS_WINSOCK2 */
-
-#if !defined (ACE_LACKS_NETINET_IN_H)
-# if defined (ACE_HAS_STL_QUEUE_CONFLICT)
-# define queue _Queue_
-# endif /* ACE_HAS_STL_QUEUE_CONFLICT */
- extern "C" {
-# include /**/ <netinet/in.h>
- }
-# if defined (ACE_HAS_STL_QUEUE_CONFLICT)
-# undef queue
-# endif /* ACE_HAS_STL_QUEUE_CONFLICT */
-#endif /* !ACE_LACKS_NETINET_IN_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-# if defined (ACE_HAS_PHARLAP_RT)
-# define ACE_IPPROTO_TCP SOL_SOCKET
-# else
-# define ACE_IPPROTO_TCP IPPROTO_TCP
-# endif /* ACE_HAS_PHARLAP_RT */
-
-# if !defined (ACE_HAS_IP_MULTICAST) && defined (ACE_LACKS_IP_ADD_MEMBERSHIP)
- // Even if ACE_HAS_IP_MULTICAST is not defined, if IP_ADD_MEMBERSHIP
- // is defined, assume that the ip_mreq struct is also defined
- // (presumably in netinet/in.h).
- struct ip_mreq
- {
- /// IP multicast address of group
- struct in_addr imr_multiaddr;
- /// Local IP address of interface
- struct in_addr imr_interface;
- };
-# endif /* ! ACE_HAS_IP_MULTICAST && ACE_LACKS_IP_ADD_MEMBERSHIP */
-
-# if defined (ACE_LACKS_IN_ADDR)
- struct in_addr
- {
- u_long s_addr;
- };
-# endif /* ACE_LACKS_IN_ADDR */
-
-# if defined (ACE_LACKS_SOCKADDR_IN)
- struct sockaddr_in
- {
- short sin_family; // e.g. AF_INET
- unsigned short sin_port; // e.g. htons(3490)
- struct in_addr sin_addr; // see struct in_addr, below
- char sin_zero[8]; // zero this if you want to
- };
-# endif /* ACE_LACKS_SOCKADDR_IN */
-
-# if defined (ACE_LACKS_SOCKADDR_UN)
- struct sockaddr_un {
- u_char sun_len; /* sockaddr len including null */
- u_char sun_family; /* AF_UNIX */
- char sun_path[104]; /* path name (gag) */
- };
-#endif /* ACE_LACKS_SOCKADDR_UN */
-
-# if defined (ACE_LACKS_IP_MREQ)
- struct ip_mreq
- {
- struct in_addr imr_multiaddr; /* IP multicast address of group */
- struct in_addr imr_interface; /* local IP address of interface */
- };
-# endif /* ACE_LACKS_IP_MREQ */
-
-#if !defined (IPPORT_RESERVED)
-# define IPPORT_RESERVED 1024
-#endif /* !IPPORT_RESERVED */
-
-#if !defined (IPPORT_USERRESERVED)
-# define IPPORT_USERRESERVED 5000
-#endif /* !IPPORT_USERRESERVED */
-
-// Define INET loopback address constant if it hasn't been defined
-// Dotted Decimal 127.0.0.1 == Hexidecimal 0x7f000001
-#if !defined (INADDR_LOOPBACK)
-# define INADDR_LOOPBACK ((ACE_UINT32) 0x7f000001)
-#endif /* INADDR_LOOPBACK */
-
-// The INADDR_NONE address is generally 255.255.255.255.
-#if !defined (INADDR_NONE)
-# define INADDR_NONE ((ACE_UINT32) 0xffffffff)
-#endif /* INADDR_NONE */
-
-// Define INET string length constants if they haven't been defined
-//
-// for IPv4 dotted-decimal
-#if !defined (INET_ADDRSTRLEN)
-# define INET_ADDRSTRLEN 16
-#endif /* INET_ADDRSTRLEN */
-//
-// for IPv6 hex string
-#if !defined (INET6_ADDRSTRLEN)
-# define INET6_ADDRSTRLEN 46
-#endif /* INET6_ADDRSTRLEN */
-
-# if !defined (IP_DROP_MEMBERSHIP)
-# define IP_DROP_MEMBERSHIP 0
-# endif /* IP_DROP_MEMBERSHIP */
-
-# if !defined (IP_ADD_MEMBERSHIP)
-# define IP_ADD_MEMBERSHIP 0
-# define ACE_LACKS_IP_ADD_MEMBERSHIP
-# endif /* IP_ADD_MEMBERSHIP */
-
-# if !defined (IP_DEFAULT_MULTICAST_TTL)
-# define IP_DEFAULT_MULTICAST_TTL 0
-# endif /* IP_DEFAULT_MULTICAST_TTL */
-
-# if !defined (IP_DEFAULT_MULTICAST_LOOP)
-# define IP_DEFAULT_MULTICAST_LOOP 0
-# endif /* IP_DEFAULT_MULTICAST_LOOP */
-
-# if !defined (IP_MULTICAST_IF)
-# define IP_MULTICAST_IF 0
-# endif /* IP_MULTICAST_IF */
-
-# if !defined (IP_MULTICAST_TTL)
-# define IP_MULTICAST_TTL 1
-# endif /* IP_MULTICAST_TTL */
-
-# if !defined (IP_MULTICAST_LOOP)
-# define IP_MULTICAST_LOOP 2
-# endif /* IP_MULTICAST_LOOP */
-
-# if !defined (IP_MAX_MEMBERSHIPS)
-# define IP_MAX_MEMBERSHIPS 0
-# endif /* IP_MAX_MEMBERSHIP */
-
-# if !defined (IPPROTO_IP)
-# define IPPROTO_IP 0
-# endif /* IPPROTO_IP */
-
-# if !defined (IPPROTO_TCP)
-# define IPPROTO_TCP 6
-# endif /* IPPROTO_TCP */
-
-# if !defined (INADDR_ANY)
-# define INADDR_ANY (u_long)0x00000000
-# endif /* INADDR_ANY */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_NETINET_OS_IN_H */
-
diff --git a/dep/include/ace/os_include/netinet/os_tcp.h b/dep/include/ace/os_include/netinet/os_tcp.h
deleted file mode 100644
index 9f60cd91af8..00000000000
--- a/dep/include/ace/os_include/netinet/os_tcp.h
+++ /dev/null
@@ -1,47 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_tcp.h
- *
- * definitions for the Internet Transmission Control Protocol (TCP)
- *
- * $Id: os_tcp.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_NETINET_OS_TCP_H
-#define ACE_OS_INCLUDE_NETINET_OS_TCP_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_NETINET_TCP_H)
-# include /**/ <netinet/tcp.h>
-#endif /* !ACE_LACKS_NETIINET_TCP_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-# if !defined (TCP_NODELAY)
-# define TCP_NODELAY 0x01
-# endif /* TCP_NODELAY */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_NETINET_OS_TCP_H */
-
diff --git a/dep/include/ace/os_include/os_aio.h b/dep/include/ace/os_include/os_aio.h
deleted file mode 100644
index 2011403ff3c..00000000000
--- a/dep/include/ace/os_include/os_aio.h
+++ /dev/null
@@ -1,48 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_aio.h
- *
- * asynchronous input and output (REALTIME)
- *
- * $Id: os_aio.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_AIO_H
-#define ACE_OS_INCLUDE_OS_AIO_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// Inclusion of the <aio.h> header may make visible symbols defined in
-// the headers <fcntl.h>, <signal.h>, <sys/types.h>, and <time.h>.
-
-#include "ace/os_include/os_signal.h" // for sigevent
-
-#if !defined (ACE_LACKS_AIO_H)
-# include /**/ <aio.h>
-#endif /* !ACE_LACKS_AIO_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_AIO_H */
-
diff --git a/dep/include/ace/os_include/os_assert.h b/dep/include/ace/os_include/os_assert.h
deleted file mode 100644
index 1c1ed53d852..00000000000
--- a/dep/include/ace/os_include/os_assert.h
+++ /dev/null
@@ -1,47 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_assert.h
- *
- * verify program assertion
- *
- * $Id: os_assert.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_ASSERT_H
-#define ACE_OS_INCLUDE_OS_ASSERT_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_ASSERT_H)
-# include /**/ <assert.h>
-#endif /* !ACE_LACKS_ASSERT_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (ACE_LACKS_ASSERT_MACRO)
-# define assert(expr)
-#endif
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_ASSERT_H */
-
diff --git a/dep/include/ace/os_include/os_byteswap.h b/dep/include/ace/os_include/os_byteswap.h
deleted file mode 100644
index fd1ff253fce..00000000000
--- a/dep/include/ace/os_include/os_byteswap.h
+++ /dev/null
@@ -1,42 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_byteswap.h
- *
- * Byteswap methods
- *
- * $Id: os_byteswap.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Johnny Willemsen <jwillemsen@remedy.nl>
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_BYTESWAP_H
-#define ACE_OS_INCLUDE_OS_BYTESWAP_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_BYTESWAP_H)
-# include /**/ <byteswap.h>
-#endif /* !ACE_HAS_INTRIN_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_BYTESWAP_H */
-
diff --git a/dep/include/ace/os_include/os_complex.h b/dep/include/ace/os_include/os_complex.h
deleted file mode 100644
index 27ce474b6dc..00000000000
--- a/dep/include/ace/os_include/os_complex.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_complex.h
- *
- * complex arithmetic
- *
- * $Id: os_complex.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_COMPLEX_H
-#define ACE_OS_INCLUDE_OS_COMPLEX_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_COMPLEX_H)
-# include /**/ <complex.h>
-#endif /* !ACE_LACKS_COMPLEX_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_COMPLEX_H */
-
diff --git a/dep/include/ace/os_include/os_cpio.h b/dep/include/ace/os_include/os_cpio.h
deleted file mode 100644
index 09e536d521a..00000000000
--- a/dep/include/ace/os_include/os_cpio.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_cpio.h
- *
- * cpio archive values
- *
- * $Id: os_cpio.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_CPIO_H
-#define ACE_OS_INCLUDE_OS_CPIO_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_CPIO_H)
-# include /**/ <cpio.h>
-#endif /* !ACE_LACKS_CPIO_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_CPIO_H */
-
diff --git a/dep/include/ace/os_include/os_ctype.h b/dep/include/ace/os_include/os_ctype.h
deleted file mode 100644
index 61a3df06375..00000000000
--- a/dep/include/ace/os_include/os_ctype.h
+++ /dev/null
@@ -1,46 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_ctype.h
- *
- * character types
- *
- * $Id: os_ctype.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_CTYPE_H
-#define ACE_OS_INCLUDE_OS_CTYPE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_CTYPE_H)
-# include /**/ <ctype.h>
-#endif /* !ACE_LACKS_CTYPE_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-// @todo move the is* and is* emulation methods in ACE_OS here
-// and let ACE_OS just call them.
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_CTYPE_H */
-
diff --git a/dep/include/ace/os_include/os_dirent.h b/dep/include/ace/os_include/os_dirent.h
deleted file mode 100644
index 4e81e94d1bf..00000000000
--- a/dep/include/ace/os_include/os_dirent.h
+++ /dev/null
@@ -1,109 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_dirent.h
- *
- * format of directory entries
- *
- * $Id: os_dirent.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_DIRENT_H
-#define ACE_OS_INCLUDE_OS_DIRENT_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-#include "ace/os_include/os_limits.h"
-
-#if defined (ACE_VXWORKS) && (ACE_VXWORKS < 0x620)
-# include "ace/os_include/os_unistd.h" // VxWorks needs this to compile
-#endif /* ACE_VXWORKS */
-
-#if !defined (ACE_LACKS_DIRENT_H)
-# include /**/ <dirent.h>
-#endif /* !ACE_LACKS_DIRENT_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if !defined (MAXNAMLEN)
-# define MAXNAMLEN NAME_MAX
-#endif /* !MAXNAMLEN */
-
-// At least compile on some of the platforms without <ACE_DIR> info yet.
-#if !defined (ACE_HAS_DIRENT)
-typedef int ACE_DIR;
-struct dirent {
-};
-#endif /* ACE_HAS_DIRENT */
-
-#if defined (ACE_LACKS_STRUCT_DIR)
-struct dirent {
- unsigned short d_ino;
- unsigned short d_off;
- unsigned short d_reclen;
- // This must be a ACE_TCHAR * and not a one element
- // ACE_TCHAR array. It causes problems on wide
- // character builds with Visual C++ 6.0.
- ACE_TCHAR *d_name;
-};
-
-#define ACE_DIRENT dirent
-
-struct ACE_DIR {
- /// The name of the directory we are looking into
- ACE_TCHAR *directory_name_;
-
- /// Remember the handle between calls.
- HANDLE current_handle_;
-
- /// The struct for the results
- ACE_DIRENT *dirent_;
-
- /// The struct for intermediate results.
- ACE_TEXT_WIN32_FIND_DATA fdata_;
-
- /// A flag to remember if we started reading already.
- int started_reading_;
-};
-#elif defined (ACE_WIN32) && (__BORLANDC__) && defined (ACE_USES_WCHAR)
-#define ACE_DIRENT wdirent
-typedef wDIR ACE_DIR;
-#else
-#define ACE_DIRENT dirent
-typedef DIR ACE_DIR;
-#endif /* ACE_LACKS_STRUCT_DIR */
-
-#if defined (ACE_LACKS_SCANDIR_PROTOTYPE)
-int scandir (const char *,
- struct dirent ***,
- int (*) (const struct dirent *),
- int (*) (const void *, const void *));
-#endif /* ACE_LACKS_SCANDIR_PROTOTYPE */
-
-#if defined (ACE_LACKS_ALPHASORT_PROTOTYPE)
-int alphasort (const void *, const void *);
-#endif /* ACE_LACKS_ALPHASORT_PROTOTYPE */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_DIRENT_H */
-
diff --git a/dep/include/ace/os_include/os_dlfcn.h b/dep/include/ace/os_include/os_dlfcn.h
deleted file mode 100644
index f7691ad8a58..00000000000
--- a/dep/include/ace/os_include/os_dlfcn.h
+++ /dev/null
@@ -1,102 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_dlfcn.h
- *
- * dynamic linking
- *
- * $Id: os_dlfcn.h 82273 2008-07-09 14:21:45Z jtc $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_DLFCN_H
-#define ACE_OS_INCLUDE_OS_DLFCN_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_DLFCN_H)
-# include /**/ <dlfcn.h>
-#endif /* !ACE_LACKS_DLFCN_H */
-
-#if defined (__hpux)
-# if defined(__GNUC__) || __cplusplus >= 199707L
-# include /**/ <dl.h>
-# else
-# include /**/ <cxxdl.h>
-# endif /* (g++ || HP aC++) vs. HP C++ */
-#endif /* __hpux */
-
-#if defined (ACE_VXWORKS) && !defined (__RTP__)
-# include /**/ <loadLib.h> /* for module load */
-# include /**/ <unldLib.h> /* for module unload */
-# include /**/ <symLib.h> /* for findSymbol */
-# include /**/ <sysSymTbl.h> /* for global symbol table */
-#endif /* ACE_VXWORKS */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (_M_UNIX)
- int _dlclose (void *);
- char *_dlerror (void);
- void *_dlopen (const char *, int);
- void * _dlsym (void *, const char *);
-#endif /* _M_UNIX */
-
-/* Set the proper handle type for dynamically-loaded libraries. */
-/* Also define a default 'mode' for loading a library - the names and values */
-/* differ between OSes, so if you write code that uses the mode, be careful */
-/* of the platform differences. */
-#if defined (ACE_WIN32)
- // Dynamic loading-related types - used for dlopen and family.
- typedef HINSTANCE ACE_SHLIB_HANDLE;
-# define ACE_SHLIB_INVALID_HANDLE 0
-# define ACE_DEFAULT_SHLIB_MODE 0
-#elif defined (ACE_HAS_SVR4_DYNAMIC_LINKING)
- typedef void *ACE_SHLIB_HANDLE;
-# define ACE_SHLIB_INVALID_HANDLE 0
- // This is needed to for dynamic_cast to work properly on objects passed to
- // libraries.
-# define ACE_DEFAULT_SHLIB_MODE RTLD_LAZY | RTLD_GLOBAL
-#elif defined (__hpux)
- typedef shl_t ACE_SHLIB_HANDLE;
-# define ACE_SHLIB_INVALID_HANDLE 0
-# define ACE_DEFAULT_SHLIB_MODE BIND_DEFERRED | DYNAMIC_PATH
-#else /* !ACE_WIN32 && !ACE_HAS_SVR4_DYNAMIC_LINKING && !__hpux */
- typedef void *ACE_SHLIB_HANDLE;
-# define ACE_SHLIB_INVALID_HANDLE 0
-# define ACE_DEFAULT_SHLIB_MODE RTLD_LAZY
-#endif /* ACE_WIN32 */
-
-#if !defined (RTLD_LAZY)
-#define RTLD_LAZY 1
-#endif /* !RTLD_LAZY */
-
-#if !defined (RTLD_NOW)
-#define RTLD_NOW 2
-#endif /* !RTLD_NOW */
-
-#if !defined (RTLD_GLOBAL)
-#define RTLD_GLOBAL 3
-#endif /* !RTLD_GLOBAL */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_DLFCN_H */
-
diff --git a/dep/include/ace/os_include/os_errno.h b/dep/include/ace/os_include/os_errno.h
deleted file mode 100644
index 6534aa8c7c8..00000000000
--- a/dep/include/ace/os_include/os_errno.h
+++ /dev/null
@@ -1,154 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_errno.h
- *
- * system error numbers
- *
- * $Id: os_errno.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_ERRNO_H
-#define ACE_OS_INCLUDE_OS_ERRNO_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_ERRNO_H)
-# include /**/ <errno.h>
-#endif /* !ACE_LACKS_ERRNO_H */
-
-#if defined (ACE_VXWORKS)
-// Needed for VxWorks to pickup errnoSet()
-#include /**/ <errnoLib.h>
-#endif /* ACE_VXWORKS */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (ACE_WIN32)
- // error code mapping for windows
-# define ETIME ERROR_SEM_TIMEOUT
-# define EWOULDBLOCK WSAEWOULDBLOCK
-# define EINPROGRESS WSAEINPROGRESS
-# define EALREADY WSAEALREADY
-# define ENOTSOCK WSAENOTSOCK
-# define EDESTADDRREQ WSAEDESTADDRREQ
-# define EMSGSIZE WSAEMSGSIZE
-# define EPROTOTYPE WSAEPROTOTYPE
-# define ENOPROTOOPT WSAENOPROTOOPT
-# define EPROTONOSUPPORT WSAEPROTONOSUPPORT
-# define ESOCKTNOSUPPORT WSAESOCKTNOSUPPORT
-# define EOPNOTSUPP WSAEOPNOTSUPP
-# define EPFNOSUPPORT WSAEPFNOSUPPORT
-# define EAFNOSUPPORT WSAEAFNOSUPPORT
-# define EADDRINUSE WSAEADDRINUSE
-# define EADDRNOTAVAIL WSAEADDRNOTAVAIL
-# define ENETDOWN WSAENETDOWN
-# define ENETUNREACH WSAENETUNREACH
-# define ENETRESET WSAENETRESET
-# define ECONNABORTED WSAECONNABORTED
-# define ECONNRESET WSAECONNRESET
-# define ENOBUFS WSAENOBUFS
-# define EISCONN WSAEISCONN
-# define ENOTCONN WSAENOTCONN
-# define ESHUTDOWN WSAESHUTDOWN
-# define ETOOMANYREFS WSAETOOMANYREFS
-# define ETIMEDOUT WSAETIMEDOUT
-# define ECONNREFUSED WSAECONNREFUSED
-# define ELOOP WSAELOOP
-# define EHOSTDOWN WSAEHOSTDOWN
-# define EHOSTUNREACH WSAEHOSTUNREACH
-# define EPROCLIM WSAEPROCLIM
-# define EUSERS WSAEUSERS
-# define EDQUOT WSAEDQUOT
-# define ESTALE WSAESTALE
-# define EREMOTE WSAEREMOTE
- // Grrr! ENAMETOOLONG and ENOTEMPTY are already defined by the horrible
- // 'standard' library.
- // #define ENAMETOOLONG WSAENAMETOOLONG
-# define EADDRINUSE WSAEADDRINUSE
-
- // CE needs this...
-# if !defined (EPERM)
-# define EPERM ERROR_ACCESS_DENIED
-# endif
-#endif /* ACE_WIN32 */
-
-#if defined (ACE_HAS_H_ERRNO)
-void herror (const char *str);
-#endif /* ACE_HAS_H_ERRNO */
-
-#if !defined (ACE_WIN32) && defined (ACE_LACKS_T_ERRNO)
-extern int t_errno;
-#endif /* ACE_WIN32 && ACE_LACKS_T_ERRNO */
-
-#if !defined (ENOSYS)
-# define ENOSYS EFAULT /* Operation not supported or unknown error. */
-#endif /* !ENOSYS */
-
-#if !defined (ENOTSUP)
-# define ENOTSUP ENOSYS /* Operation not supported. */
-#endif /* !ENOTSUP */
-
-#if !defined (ESUCCESS)
-# define ESUCCESS 0
-#endif /* !ESUCCESS */
-
-#if !defined (EIDRM)
-# define EIDRM 0
-#endif /* !EIDRM */
-
-#if !defined (ENFILE)
-# define ENFILE EMFILE /* No more socket descriptors are available. */
-#endif /* !ENFILE */
-
-#if !defined (ECOMM)
- // Not the same, but ECONNABORTED is provided on NT.
-# define ECOMM ECONNABORTED
-#endif /* ECOMM */
-
-#if !defined (EDEADLK)
-# define EDEADLK 1000 /* Some large number.... */
-#endif /* !EDEADLK */
-
-#if !defined (ENXIO) /* Needed in SOCK_Dgram_Mcast */
-# define ENXIO 6
-#endif /* ENXIO */
-
-#if !defined (ETIMEDOUT) && defined (ETIME)
-# define ETIMEDOUT ETIME
-#endif /* ETIMEDOUT */
-
-#if !defined (ETIME) && defined (ETIMEDOUT)
-# define ETIME ETIMEDOUT
-#endif /* ETIMED */
-
-#if !defined (EBUSY)
-# define EBUSY ETIME
-#endif /* EBUSY */
-
-#if !defined (ECANCELED)
-# define ECANCELED 125
-#endif /* ECANCELED */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_ERRNO_H */
-
diff --git a/dep/include/ace/os_include/os_fcntl.h b/dep/include/ace/os_include/os_fcntl.h
deleted file mode 100644
index ad5beeb9511..00000000000
--- a/dep/include/ace/os_include/os_fcntl.h
+++ /dev/null
@@ -1,107 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_fcntl.h
- *
- * file control options
- *
- * $Id: os_fcntl.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_FCNTL_H
-#define ACE_OS_INCLUDE_OS_FCNTL_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_stat.h"
-#include "ace/os_include/sys/os_types.h"
-
-#if !defined (ACE_LACKS_FCNTL_H)
-# include /**/ <fcntl.h>
-#endif /* !ACE_LACKS_FCNTL_H */
-
-#if defined (ACE_VXWORKS) && (ACE_VXWORKS < 0x620)
-// for creat(), open()
-# include /**/ <ioLib.h>
-#endif /* ACE_VXWORKS */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (__BORLANDC__)
-# define _O_CREAT O_CREAT
-# define _O_EXCL O_EXCL
-# define _O_TRUNC O_TRUNC
- // 0x0800 is used for O_APPEND. 0x08 looks free.
-# define _O_TEMPORARY 0x08 /* see fcntl.h */
-# define _O_RDWR O_RDWR
-# define _O_WRONLY O_WRONLY
-# define _O_RDONLY O_RDONLY
-# define _O_APPEND O_APPEND
-# define _O_BINARY O_BINARY
-# define _O_TEXT O_TEXT
-#endif /* __BORLANDC__ */
-
-#if defined (__DMC__)
-# define _O_TEMPORARY 0x08 /* see fcntl.h */
-#endif /* __DMC__ */
-
-// defined Win32 specific macros for UNIX platforms
-#if !defined (O_BINARY)
-# define O_BINARY 0
-#endif /* O_BINARY */
-#if !defined (_O_BINARY)
-# define _O_BINARY O_BINARY
-#endif /* _O_BINARY */
-#if !defined (O_TEXT)
-# define O_TEXT 0
-#endif /* O_TEXT */
-#if !defined (_O_TEXT)
-# define _O_TEXT O_TEXT
-#endif /* _O_TEXT */
-#if !defined (O_RAW)
-# define O_RAW 0
-#endif /* O_RAW */
-#if !defined (_O_RAW)
-# define _O_RAW O_RAW
-#endif /* _O_RAW */
-
-#if defined (ACE_WIN32)
-# define O_NDELAY 1
-#endif /* ACE_WIN32 */
-
-# if !defined (O_NONBLOCK)
-# define O_NONBLOCK 1
-# endif /* O_NONBLOCK */
-
-#if defined (ACE_HAS_POSIX_NONBLOCK)
-# define ACE_NONBLOCK O_NONBLOCK
-#else
-# define ACE_NONBLOCK O_NDELAY
-#endif /* ACE_HAS_POSIX_NONBLOCK */
-
-# if !defined (F_GETFL)
-# define F_GETFL 0
-# endif /* F_GETFL */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_FCNTL_H */
-
diff --git a/dep/include/ace/os_include/os_fenv.h b/dep/include/ace/os_include/os_fenv.h
deleted file mode 100644
index a178c04c91b..00000000000
--- a/dep/include/ace/os_include/os_fenv.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_fenv.h
- *
- * floating-point environment
- *
- * $Id: os_fenv.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_FENV_H
-#define ACE_OS_INCLUDE_OS_FENV_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_FENV_H)
-# include /**/ <fenv.h>
-#endif /* !ACE_LACKS_FENV_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_FENV_H */
-
diff --git a/dep/include/ace/os_include/os_float.h b/dep/include/ace/os_include/os_float.h
deleted file mode 100644
index 6b114a5dc3e..00000000000
--- a/dep/include/ace/os_include/os_float.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_float.h
- *
- * floating types
- *
- * $Id: os_float.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_FLOAT_H
-#define ACE_OS_INCLUDE_OS_FLOAT_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_FLOAT_H)
-# include /**/ <float.h>
-#endif /* !ACE_LACKS_FLOAT_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_FLOAT_H */
-
diff --git a/dep/include/ace/os_include/os_fmtmsg.h b/dep/include/ace/os_include/os_fmtmsg.h
deleted file mode 100644
index 391e8606e27..00000000000
--- a/dep/include/ace/os_include/os_fmtmsg.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_fmtmsg.h
- *
- * message display structures
- *
- * $Id: os_fmtmsg.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_FMTMSG_H
-#define ACE_OS_INCLUDE_OS_FMTMSG_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_FMTMSG_H)
-# include /**/ <fmtmsg.h>
-#endif /* !ACE_LACKS_FMTMSG_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_FMTMSG_H */
-
diff --git a/dep/include/ace/os_include/os_fnmatch.h b/dep/include/ace/os_include/os_fnmatch.h
deleted file mode 100644
index 2f592ef46e1..00000000000
--- a/dep/include/ace/os_include/os_fnmatch.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_fnmatch.h
- *
- * filename-matching types
- *
- * $Id: os_fnmatch.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_FNMATCH_H
-#define ACE_OS_INCLUDE_OS_FNMATCH_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_FNMATCH_H)
-# include /**/ <fnmatch.h>
-#endif /* !ACE_LACKS_FNMATCH_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_FNMATCH_H */
-
diff --git a/dep/include/ace/os_include/os_ftw.h b/dep/include/ace/os_include/os_ftw.h
deleted file mode 100644
index ab4655f241b..00000000000
--- a/dep/include/ace/os_include/os_ftw.h
+++ /dev/null
@@ -1,45 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_ftw.h
- *
- * file tree traversal
- *
- * $Id: os_ftw.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_FTW_H
-#define ACE_OS_INCLUDE_OS_FTW_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_stat.h"
-
-#if !defined (ACE_LACKS_FTW_H)
-# include /**/ <ftw.h>
-#endif /* !ACE_LACKS_FTW_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_FTW_H */
-
diff --git a/dep/include/ace/os_include/os_glob.h b/dep/include/ace/os_include/os_glob.h
deleted file mode 100644
index 2ffdbab53e6..00000000000
--- a/dep/include/ace/os_include/os_glob.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_glob.h
- *
- * pathname pattern-matching types
- *
- * $Id: os_glob.h 81692 2008-05-14 12:25:02Z johnnyw $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_GLOB_H
-#define ACE_OS_INCLUDE_OS_GLOB_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_GLOB_H)
-# include /**/ <glob.h>
-#endif /* !ACE_LACKS_GLOB_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_GLOB_H */
-
diff --git a/dep/include/ace/os_include/os_grp.h b/dep/include/ace/os_include/os_grp.h
deleted file mode 100644
index bc0741e9de2..00000000000
--- a/dep/include/ace/os_include/os_grp.h
+++ /dev/null
@@ -1,45 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_grp.h
- *
- * group structure
- *
- * $Id: os_grp.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_GRP_H
-#define ACE_OS_INCLUDE_OS_GRP_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h" // for gid_t
-
-#if !defined (ACE_LACKS_GRP_H)
-# include /**/ <grp.h>
-#endif /* !ACE_LACKS_GRP_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_GRP_H */
-
diff --git a/dep/include/ace/os_include/os_iconv.h b/dep/include/ace/os_include/os_iconv.h
deleted file mode 100644
index 14a69870112..00000000000
--- a/dep/include/ace/os_include/os_iconv.h
+++ /dev/null
@@ -1,45 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_iconv.h
- *
- * codeset conversion facility
- *
- * $Id: os_iconv.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_ICONV_H
-#define ACE_OS_INCLUDE_OS_ICONV_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-
-#if !defined (ACE_LACKS_ICONV_H)
-# include /**/ <iconv.h>
-#endif /* !ACE_LACKS_ICONV_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_ICONV_H */
-
diff --git a/dep/include/ace/os_include/os_intrin.h b/dep/include/ace/os_include/os_intrin.h
deleted file mode 100644
index d56951b6b57..00000000000
--- a/dep/include/ace/os_include/os_intrin.h
+++ /dev/null
@@ -1,58 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_intrin.h
- *
- * Intrinsic methods
- *
- * $Id: os_intrin.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Johnny Willemsen <jwillemsen@remedy.nl>
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_INTRIN_H
-#define ACE_OS_INCLUDE_OS_INTRIN_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_INTRIN_H)
-# include /**/ <intrin.h>
-#endif /* !ACE_HAS_INTRIN_H */
-
-#if defined (ACE_HAS_IA64INTRIN_H)
-# include /**/ <ia64intrin.h>
-#endif /* !ACE_HAS_IA64INTRIN_H */
-
-#if defined (ACE_HAS_IA32INTRIN_H)
-# include /**/ <ia32intrin.h>
-#endif /* !ACE_HAS_IA32INTRIN_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (_MSC_VER) && (_MSC_VER < 1400) && !(defined (__INTEL_COMPILER) && (__INTEL_COMPILER == 900))
-// See http://msdn2.microsoft.com/en-us/library/f24ya7ct(VS.71).aspx
-LONG __cdecl _InterlockedIncrement (LONG volatile *Addend);
-LONG __cdecl _InterlockedDecrement (LONG volatile *Addend);
-LONG __cdecl _InterlockedExchange (LONG volatile *Target, LONG Value);
-LONG __cdecl _InterlockedExchangeAdd (LONG volatile *Addend, LONG Value);
-#endif //_MSC_VER
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_INTRIN_H */
-
diff --git a/dep/include/ace/os_include/os_inttypes.h b/dep/include/ace/os_include/os_inttypes.h
deleted file mode 100644
index 86105a723a6..00000000000
--- a/dep/include/ace/os_include/os_inttypes.h
+++ /dev/null
@@ -1,47 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_inttypes.h
- *
- * fixed size integer types
- *
- * $Id: os_inttypes.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_INTTYPES_H
-#define ACE_OS_INCLUDE_OS_INTTYPES_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_stdint.h"
-
-#if !defined (ACE_LACKS_INTTYPES_H)
-# include /**/ <inttypes.h>
-#endif /* !ACE_LACKS_INTTYPES_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-// @todo if needbe, we can define the macros if they aren't available.
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_INTTYPES_H */
-
diff --git a/dep/include/ace/os_include/os_iso646.h b/dep/include/ace/os_include/os_iso646.h
deleted file mode 100644
index bccc85f17ad..00000000000
--- a/dep/include/ace/os_include/os_iso646.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_iso646.h
- *
- * alternative spellings
- *
- * $Id: os_iso646.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_ISO646_H
-#define ACE_OS_INCLUDE_OS_ISO646_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_ISO646_H)
-# include /**/ <iso646.h>
-#endif /* !ACE_LACKS_ISO646_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_ISO646_H */
-
diff --git a/dep/include/ace/os_include/os_kstat.h b/dep/include/ace/os_include/os_kstat.h
deleted file mode 100644
index 5ca91673d8e..00000000000
--- a/dep/include/ace/os_include/os_kstat.h
+++ /dev/null
@@ -1,44 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_kstat.h
- *
- * $Id: os_kstat.h 81692 2008-05-14 12:25:02Z johnnyw $
- *
- * @author Johnny Willemsen <jwillemsen@remedy.nl>
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_KSTAT_H
-#define ACE_OS_INCLUDE_OS_KSTAT_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_KSTAT)
-# define ACE_HAS_KSTAT_H
-#endif /* ACE_HAS_KSTAT */
-
-#if defined (ACE_HAS_KSTAT_H)
-# include <kstat.h>
-#endif /* ACE_HAS_KSTAT_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_KSTAT_H */
-
diff --git a/dep/include/ace/os_include/os_langinfo.h b/dep/include/ace/os_include/os_langinfo.h
deleted file mode 100644
index 29648b459d8..00000000000
--- a/dep/include/ace/os_include/os_langinfo.h
+++ /dev/null
@@ -1,45 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_langinfo.h
- *
- * language information constants
- *
- * $Id: os_langinfo.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystem.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_LANGINFO_H
-#define ACE_OS_INCLUDE_OS_LANGINFO_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_nl_types.h"
-
-#if !defined (ACE_LACKS_LANGINFO_H)
-# include /**/ <langinfo.h>
-#endif /* !ACE_LACKS_LANGINFO_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_LANGINFO_H */
-
diff --git a/dep/include/ace/os_include/os_libgen.h b/dep/include/ace/os_include/os_libgen.h
deleted file mode 100644
index 5692f5effe1..00000000000
--- a/dep/include/ace/os_include/os_libgen.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_libgen.h
- *
- * definitions for pattern matching functions
- *
- * $Id: os_libgen.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_LIBGEN_H
-#define ACE_OS_INCLUDE_OS_LIBGEN_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_LIBGEN_H)
-# include /**/ <libgen.h>
-#endif /* !ACE_LACKS_LIBGEN_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_LIBGEN_H */
-
diff --git a/dep/include/ace/os_include/os_limits.h b/dep/include/ace/os_include/os_limits.h
deleted file mode 100644
index 87eb978d541..00000000000
--- a/dep/include/ace/os_include/os_limits.h
+++ /dev/null
@@ -1,144 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_limits.h
- *
- * implementation-defined constants
- *
- * $Id: os_limits.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_LIMITS_H
-#define ACE_OS_INCLUDE_OS_LIMITS_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_unistd.h"
-#include "ace/os_include/os_stdio.h" // for FILENAME_MAX on Windows
-
-#if !defined (ACE_LACKS_LIMITS_H)
-# include /**/ <limits.h>
-#endif /* !ACE_LACKS_LIMITS_H */
-
-#if !defined (ACE_LACKS_SYS_PARAM_H)
-# include /**/ <sys/param.h>
-#endif /* ACE_LACKS_SYS_PARAM_H */
-
-// On VxWorks 5.5.1 _POSIX_TIMER_MAX is defined in time.h
-#if defined (ACE_VXWORKS) && (ACE_VXWORKS < 0x620)
-# include /**/ <time.h>
-#endif /* ACE_VXWORKS */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if ! defined (howmany)
-# define howmany(x, y) (((x)+((y)-1))/(y))
-#endif /* howmany */
-
-#if !defined (NAME_MAX)
-# if defined (MAXNAMLEN)
-# define NAME_MAX MAXNAMLEN
-# elif defined (MAXNAMELEN)
-# define NAME_MAX MAXNAMELEN
-# elif defined (FILENAME_MAX)
-# define NAME_MAX FILENAME_MAX
-# elif defined (_MAX_FNAME)
-# define NAME_MAX _MAX_FNAME
-# else /* _MAX_FNAME */
-# define NAME_MAX 256
-# endif /* MAXNAMLEN */
-#endif /* !NAME_MAX */
-
-#if !defined (MAXNAMELEN)
-# define MAXNAMELEN NAME_MAX
-#endif /* MAXNAMELEN */
-
-#if !defined (HOST_NAME_MAX)
-# define HOST_NAME_MAX 256
-#endif /* !HOST_NAME_MAX */
-
-// Note that we are using PATH_MAX instead of _POSIX_PATH_MAX, since
-// _POSIX_PATH_MAX is the *minimun* maximum value for PATH_MAX and is
-// defined by POSIX as 256.
-#if !defined (PATH_MAX)
-# if defined (_MAX_PATH)
-# define PATH_MAX _MAX_PATH
-# elif defined (MAX_PATH)
-# define PATH_MAX MAX_PATH
-# else /* !_MAX_PATH */
-# define PATH_MAX 1024
-# endif /* _MAX_PATH */
-#endif /* !PATH_MAX */
-
-// Leaving this for backward compatibility, but PATH_MAX should always be
-// used directly.
-#if !defined (MAXPATHLEN)
-# define MAXPATHLEN PATH_MAX
-#endif /* !MAXPATHLEN */
-
-// This is defined by XOPEN to be a minimum of 16. POSIX.1g
-// also defines this value. platform-specific config.h can
-// override this if need be.
-#if !defined (IOV_MAX)
-# define IOV_MAX 16
-#endif /* IOV_MAX */
-
-#if !defined (ACE_IOV_MAX)
-# define ACE_IOV_MAX IOV_MAX
-#endif /* ACE_IOV_MAX */
-
-#if defined (ACE_VXWORKS) && ((ACE_VXWORKS >= 0x620) && (ACE_VXWORKS <= 0x660)) && !defined (__RTP__)
-# if defined (PIPE_BUF) && (PIPE_BUF == -1)
-# undef PIPE_BUF
-# endif
-#endif /* ACE_VXWORKS */
-
-#if !defined (PIPE_BUF)
-# define PIPE_BUF 5120
-#endif /* PIPE_BUF */
-
-#if defined (ACE_HAS_POSIX_REALTIME_SIGNALS)
- // = Giving unique ACE scoped names for some important
- // RTSignal-Related constants. Becuase sometimes, different
- // platforms use different names for these constants.
-
- // Number of realtime signals provided in the system.
- // _POSIX_RTSIG_MAX is the upper limit on the number of real time
- // signals supported in a posix-4 compliant system.
-# if defined (_POSIX_RTSIG_MAX)
-# define ACE_RTSIG_MAX _POSIX_RTSIG_MAX
-# else /* not _POSIX_RTSIG_MAX */
- // POSIX-4 compilant system has to provide atleast 8 RT signals.
- // @@ Make sure the platform does *not* define this constant with
- // some other name. If yes, use that instead of 8.
-# define ACE_RTSIG_MAX 8
-# endif /* _POSIX_RTSIG_MAX */
-#endif /* ACE_HAS_POSIX_REALTIME_SIGNALS */
-
- // The maximum number of concurrent timers per process.
-# if !defined (_POSIX_TIMER_MAX)
-# define _POSIX_TIMER_MAX 44
-# endif /* _POSIX_TIMER_MAX */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_LIMITS_H */
-
diff --git a/dep/include/ace/os_include/os_local.h b/dep/include/ace/os_include/os_local.h
deleted file mode 100644
index 64ff0d4d06f..00000000000
--- a/dep/include/ace/os_include/os_local.h
+++ /dev/null
@@ -1,45 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_local.h
- *
- * category macros
- *
- * $Id: os_local.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_LOCAL_H
-#define ACE_OS_INCLUDE_OS_LOCAL_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_stddef.h"
-
-#if !defined (ACE_LACKS_LOCAL_H)
-# include /**/ <local.h>
-#endif /* !ACE_LACKS_LOCAL_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_LOCAL_H */
-
diff --git a/dep/include/ace/os_include/os_math.h b/dep/include/ace/os_include/os_math.h
deleted file mode 100644
index 8a1fcd84790..00000000000
--- a/dep/include/ace/os_include/os_math.h
+++ /dev/null
@@ -1,45 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_math.h
- *
- * mathematical declarations
- *
- * $Id: os_math.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_MATH_H
-#define ACE_OS_INCLUDE_OS_MATH_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// FUZZ: disable check_for_math_include
-
-#if !defined (ACE_LACKS_MATH_H)
-# include /**/ <math.h>
-#endif /* !ACE_LACKS_MATH_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_MATH_H */
-
diff --git a/dep/include/ace/os_include/os_monetary.h b/dep/include/ace/os_include/os_monetary.h
deleted file mode 100644
index 731dbc11210..00000000000
--- a/dep/include/ace/os_include/os_monetary.h
+++ /dev/null
@@ -1,45 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_monetary.h
- *
- * monetary types
- *
- * $Id: os_monetary.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_MONETARY_H
-#define ACE_OS_INCLUDE_OS_MONETARY_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-
-#if !defined (ACE_LACKS_MONETARY_H)
-# include /**/ <monetary.h>
-#endif /* !ACE_LACKS_MONETARY_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_MONETARY_H */
-
diff --git a/dep/include/ace/os_include/os_mqueue.h b/dep/include/ace/os_include/os_mqueue.h
deleted file mode 100644
index 186d10697e8..00000000000
--- a/dep/include/ace/os_include/os_mqueue.h
+++ /dev/null
@@ -1,45 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_mqueue.h
- *
- * message queues (REALTIME)
- *
- * $Id: os_mqueue.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_MQUEUE_H
-#define ACE_OS_INCLUDE_OS_MQUEUE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_signal.h"
-
-#if !defined (ACE_LACKS_MQUEUE_H)
-# include /**/ <mqueue.h>
-#endif /* !ACE_LACKS_MQUEUE_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_MQUEUE_H */
-
diff --git a/dep/include/ace/os_include/os_ndbm.h b/dep/include/ace/os_include/os_ndbm.h
deleted file mode 100644
index f3decb0064f..00000000000
--- a/dep/include/ace/os_include/os_ndbm.h
+++ /dev/null
@@ -1,45 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_ndbm.h
- *
- * definitions for ndbm database operations
- *
- * $Id: os_ndbm.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_NDBM_H
-#define ACE_OS_INCLUDE_OS_NDBM_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-
-#if !defined (ACE_LACKS_NDBM_H)
-# include /**/ <ndbm.h>
-#endif /* !ACE_LACKS_NDBM_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_NDBM_H */
-
diff --git a/dep/include/ace/os_include/os_netdb.h b/dep/include/ace/os_include/os_netdb.h
deleted file mode 100644
index 7c08f6df081..00000000000
--- a/dep/include/ace/os_include/os_netdb.h
+++ /dev/null
@@ -1,109 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_netdb.h
- *
- * definitions for network database operations
- *
- * $Id: os_netdb.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_NETDB_H
-#define ACE_OS_INCLUDE_OS_NETDB_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/netinet/os_in.h"
-#include "ace/os_include/os_limits.h"
-
-#if !defined (ACE_LACKS_NETDB_H)
-# if defined (ACE_HAS_STL_QUEUE_CONFLICT)
-# define queue _Queue_
-# endif /* ACE_HAS_STL_QUEUE_CONFLICT */
- extern "C" {
-# include /**/ <netdb.h>
- }
-# if defined (ACE_HAS_STL_QUEUE_CONFLICT)
-# undef queue
-# endif /* ACE_HAS_STL_QUEUE_CONFLICT */
-#endif /* !ACE_LACKS_NETDB_H */
-
-#if defined (ACE_VXWORKS) && (ACE_VXWORKS < 0x620)
-# include /**/ <hostLib.h>
-#endif /* ACE_VXWORKS */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (ACE_LACKS_HOSTENT)
-struct hostent {
- char *h_name; /* official name of host */
- char **h_aliases; /* alias list */
- int h_addrtype; /* host address type */
- int h_length; /* length of address */
- char **h_addr_list; /* list of addresses from name server */
-#define h_addr h_addr_list[0] /* address, for backward compatibility */
-};
-#endif /* ACE_LACKS_HOSTENT */
-
-#if defined (ACE_LACKS_PROTOENT)
-struct protoent {
- char *p_name; /* official protocol name */
- char **p_aliases; /* alias list */
- int p_proto; /* protocol # */
-};
-#endif /* ACE_LACKS_PROTOENT */
-
-#if defined (ACE_LACKS_SERVENT)
-struct servent {
- char *s_name; /* official service name */
- char **s_aliases; /* alias list */
- int s_port; /* port # */
- char *s_proto; /* protocol to use */
-};
-#endif /* ACE_LACKS_SERVENT */
-
-#if defined (ACE_HAS_STRUCT_NETDB_DATA)
- typedef char ACE_HOSTENT_DATA[sizeof(struct hostent_data)];
- typedef char ACE_SERVENT_DATA[sizeof(struct servent_data)];
- typedef char ACE_PROTOENT_DATA[sizeof(struct protoent_data)];
-#else
-# if !defined ACE_HOSTENT_DATA_SIZE
-# define ACE_HOSTENT_DATA_SIZE (4*1024)
-# endif /*ACE_HOSTENT_DATA_SIZE */
-# if !defined ACE_SERVENT_DATA_SIZE
-# define ACE_SERVENT_DATA_SIZE (4*1024)
-# endif /*ACE_SERVENT_DATA_SIZE */
-# if !defined ACE_PROTOENT_DATA_SIZE
-# define ACE_PROTOENT_DATA_SIZE (2*1024)
-# endif /*ACE_PROTOENT_DATA_SIZE */
- typedef char ACE_HOSTENT_DATA[ACE_HOSTENT_DATA_SIZE];
- typedef char ACE_SERVENT_DATA[ACE_SERVENT_DATA_SIZE];
- typedef char ACE_PROTOENT_DATA[ACE_PROTOENT_DATA_SIZE];
-#endif /* ACE_HAS_STRUCT_NETDB_DATA */
-
-# if !defined(MAXHOSTNAMELEN)
-# define MAXHOSTNAMELEN HOST_NAME_MAX
-# endif /* MAXHOSTNAMELEN */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_NETDB_H */
-
diff --git a/dep/include/ace/os_include/os_nl_types.h b/dep/include/ace/os_include/os_nl_types.h
deleted file mode 100644
index 2b14f55c7ec..00000000000
--- a/dep/include/ace/os_include/os_nl_types.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_nl_types.h
- *
- * data types
- *
- * $Id: os_nl_types.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_NL_TYPES_H
-#define ACE_OS_INCLUDE_OS_NL_TYPES_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_NL_TYPES_H)
-# include /**/ <nl_types.h>
-#endif /* !ACE_LACKS_nl_types_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_NL_TYPES_H */
-
diff --git a/dep/include/ace/os_include/os_pdh.h b/dep/include/ace/os_include/os_pdh.h
deleted file mode 100644
index 4dd5b582f31..00000000000
--- a/dep/include/ace/os_include/os_pdh.h
+++ /dev/null
@@ -1,46 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_pdh.h
- *
- * definitions for the windows pdh API
- *
- * $Id: os_pdh.h 81614 2008-05-05 14:04:25Z johnnyw $
- *
- * @author Johnny Willemsen <jwillemsen@remedy.nl>
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_PDH_H
-#define ACE_OS_INCLUDE_OS_PDH_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_PDH_H) && !defined (ACE_LACKS_PDH_H)
-# include /**/ <pdh.h>
-#endif /* ACE_HAS_PDH_H && !ACE_LACKS_PDH_H */
-
-#if defined (ACE_HAS_PDH_H) && !defined (ACE_LACKS_PDH_H)
-# define ACE_HAS_WIN32_PDH
-#endif
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_PDH_H */
-
diff --git a/dep/include/ace/os_include/os_pdhmsg.h b/dep/include/ace/os_include/os_pdhmsg.h
deleted file mode 100644
index 4bd09ba9d54..00000000000
--- a/dep/include/ace/os_include/os_pdhmsg.h
+++ /dev/null
@@ -1,42 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_pdhmsg.h
- *
- * definitions for the windows pdh API
- *
- * $Id: os_pdhmsg.h 81693 2008-05-14 12:35:01Z johnnyw $
- *
- * @author Johnny Willemsen <jwillemsen@remedy.nl>
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_PDHMSG_H
-#define ACE_OS_INCLUDE_OS_PDHMSG_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_PDHMSG_H) && !defined (ACE_LACKS_PDHMSG_H)
-# include /**/ <pdhmsg.h>
-#endif /* ACE_HAS_PDH_H && !ACE_LACKS_PDH_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_PDHMSG_H */
-
diff --git a/dep/include/ace/os_include/os_poll.h b/dep/include/ace/os_include/os_poll.h
deleted file mode 100644
index e9597e5d50e..00000000000
--- a/dep/include/ace/os_include/os_poll.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_poll.h
- *
- * definitions for the poll() function
- *
- * $Id: os_poll.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_POLL_H
-#define ACE_OS_INCLUDE_OS_POLL_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_POLL_H)
-# include /**/ <poll.h>
-#endif /* !ACE_LACKS_POLL_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_POLL_H */
-
diff --git a/dep/include/ace/os_include/os_pthread.h b/dep/include/ace/os_include/os_pthread.h
deleted file mode 100644
index c45fc4cf802..00000000000
--- a/dep/include/ace/os_include/os_pthread.h
+++ /dev/null
@@ -1,424 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_pthread.h
- *
- * threads
- *
- * $Id: os_pthread.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_PTHREAD_H
-#define ACE_OS_INCLUDE_OS_PTHREAD_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_PRIOCNTL)
- // Need to #include thread.h before #defining THR_BOUND, etc.,
- // when building without threads on SunOS 5.x.
-# if defined (sun)
-# include /**/ <thread.h>
-# endif /* sun */
-
- // Need to #include these before #defining USYNC_PROCESS on SunOS 5.x.
-# include /**/ <sys/rtpriocntl.h>
-# include /**/ <sys/tspriocntl.h>
-#endif /* ACE_HAS_PRIOCNTL */
-
-#include "ace/os_include/sys/os_types.h"
-
-// This needs to go here *first* to avoid problems with AIX.
-# if defined (ACE_HAS_PTHREADS)
-# define ACE_DONT_INCLUDE_ACE_SIGNAL_H
-# include "ace/os_include/os_signal.h"
-# undef ACE_DONT_INCLUDE_ACE_SIGNAL_H
-# if defined (DIGITAL_UNIX)
-# define pthread_self __pthread_self
-extern "C" pthread_t pthread_self (void);
-# endif /* DIGITAL_UNIX */
-# endif /* ACE_HAS_PTHREADS */
-
-#if !defined (ACE_LACKS_PTHREAD_H)
- extern "C" {
-# if defined (ACE_TANDEM_T1248_PTHREADS)
-# include /**/ <spthread.h>
-# else
-# include /**/ <pthread.h>
-# endif
- }
-#endif /* !ACE_LACKS_PTHREAD_H */
-
-#if defined (ACE_HAS_PTHREAD_NP_H)
-// FreeBSD declares _np (non-portable) pthread extensions in <pthread_np.h>
-# include /**/ <pthread_np.h>
-#endif
-
-// @todo: need to reoganize to put includes at the top and the rest of the
-// code at the bottom. Also, move the classes out of this file.
-#if defined (ACE_HAS_PTHREADS)
-# define ACE_SCHED_OTHER SCHED_OTHER
-# define ACE_SCHED_FIFO SCHED_FIFO
-# define ACE_SCHED_RR SCHED_RR
-
-// Definitions for THREAD- and PROCESS-LEVEL priorities...some
-// implementations define these while others don't. In order to
-// further complicate matters, we don't redefine the default (*_DEF)
-// values if they've already been defined, which allows individual
-// programs to have their own ACE-wide "default".
-
-// PROCESS-level values
-# if (defined (_POSIX_PRIORITY_SCHEDULING) || defined (ACE_TANDEM_T1248_PTHREADS)) \
- && !defined(_UNICOS) && !defined(UNIXWARE_7_1)
-# define ACE_PROC_PRI_FIFO_MIN (sched_get_priority_min(SCHED_FIFO))
-# define ACE_PROC_PRI_RR_MIN (sched_get_priority_min(SCHED_RR))
-# if defined (HPUX)
- // HP-UX's other is the SCHED_HPUX class, which uses historical
- // values that have reverse semantics from POSIX (low value is
- // more important priority). To use these in pthreads calls,
- // the values need to be converted. The other scheduling classes
- // don't need this special treatment.
-# define ACE_PROC_PRI_OTHER_MIN \
- (sched_get_priority_min(SCHED_OTHER))
-# else
-# define ACE_PROC_PRI_OTHER_MIN (sched_get_priority_min(SCHED_OTHER))
-# endif /* HPUX */
-# else /* UNICOS is missing a sched_get_priority_min() implementation,
- SCO too */
-# define ACE_PROC_PRI_FIFO_MIN 0
-# define ACE_PROC_PRI_RR_MIN 0
-# define ACE_PROC_PRI_OTHER_MIN 0
-# endif
-
-# if defined (_POSIX_PRIORITY_SCHEDULING) && !defined(UNIXWARE_7_1)
-# define ACE_PROC_PRI_FIFO_MAX (sched_get_priority_max(SCHED_FIFO))
-# define ACE_PROC_PRI_RR_MAX (sched_get_priority_max(SCHED_RR))
-# if defined (HPUX)
-# define ACE_PROC_PRI_OTHER_MAX \
- (sched_get_priority_max(SCHED_OTHER))
-# else
-# define ACE_PROC_PRI_OTHER_MAX (sched_get_priority_max(SCHED_OTHER))
-# endif /* HPUX */
-# else /* SCO missing sched_get_priority_max() implementation */
-# define ACE_PROC_PRI_FIFO_MAX 59
-# define ACE_PROC_PRI_RR_MAX 59
-# define ACE_PROC_PRI_OTHER_MAX 59
-# endif
-
-# if !defined(ACE_PROC_PRI_FIFO_DEF)
-# define ACE_PROC_PRI_FIFO_DEF (ACE_PROC_PRI_FIFO_MIN + (ACE_PROC_PRI_FIFO_MAX - ACE_PROC_PRI_FIFO_MIN)/2)
-# endif
-# if !defined(ACE_PROC_PRI_RR_DEF)
-# define ACE_PROC_PRI_RR_DEF (ACE_PROC_PRI_RR_MIN + (ACE_PROC_PRI_RR_MAX - ACE_PROC_PRI_RR_MIN)/2)
-# endif
-# if !defined(ACE_PROC_PRI_OTHER_DEF)
-# define ACE_PROC_PRI_OTHER_DEF (ACE_PROC_PRI_OTHER_MIN + (ACE_PROC_PRI_OTHER_MAX - ACE_PROC_PRI_OTHER_MIN)/2)
-# endif
-
-// THREAD-level values
-# if defined(PRI_FIFO_MIN) && defined(PRI_FIFO_MAX) && defined(PRI_RR_MIN) && defined(PRI_RR_MAX) && defined(PRI_OTHER_MIN) && defined(PRI_OTHER_MAX)
-# if !defined (ACE_THR_PRI_FIFO_MIN)
-# define ACE_THR_PRI_FIFO_MIN (long) PRI_FIFO_MIN
-# endif /* !ACE_THR_PRI_FIFO_MIN */
-# if !defined (ACE_THR_PRI_FIFO_MAX)
-# define ACE_THR_PRI_FIFO_MAX (long) PRI_FIFO_MAX
-# endif /* !ACE_THR_PRI_FIFO_MAX */
-# if !defined (ACE_THR_PRI_RR_MIN)
-# define ACE_THR_PRI_RR_MIN (long) PRI_RR_MIN
-# endif /* !ACE_THR_PRI_RR_MIN */
-# if !defined (ACE_THR_PRI_RR_MAX)
-# define ACE_THR_PRI_RR_MAX (long) PRI_RR_MAX
-# endif /* !ACE_THR_PRI_RR_MAX */
-# if !defined (ACE_THR_PRI_OTHER_MIN)
-# define ACE_THR_PRI_OTHER_MIN (long) PRI_OTHER_MIN
-# endif /* !ACE_THR_PRI_OTHER_MIN */
-# if !defined (ACE_THR_PRI_OTHER_MAX)
-# define ACE_THR_PRI_OTHER_MAX (long) PRI_OTHER_MAX
-# endif /* !ACE_THR_PRI_OTHER_MAX */
-# elif defined (AIX)
- // AIX's priority range is 1 (low) to 127 (high). There aren't
- // any preprocessor macros I can find. PRIORITY_MIN is for
- // process priorities, as far as I can see, and does not apply
- // to thread priority. The 1 to 127 range is from the
- // pthread_attr_setschedparam man page (Steve Huston, 18-May-2001).
-# if !defined (ACE_THR_PRI_FIFO_MIN)
-# define ACE_THR_PRI_FIFO_MIN (long) 1
-# endif /* !ACE_THR_PRI_FIFO_MIN */
-# if !defined (ACE_THR_PRI_FIFO_MAX)
-# define ACE_THR_PRI_FIFO_MAX (long) 127
-# endif /* !ACE_THR_PRI_FIFO_MAX */
-# if !defined (ACE_THR_PRI_RR_MIN)
-# define ACE_THR_PRI_RR_MIN (long) 1
-# endif /* !ACE_THR_PRI_RR_MIN */
-# if !defined (ACE_THR_PRI_RR_MAX)
-# define ACE_THR_PRI_RR_MAX (long) 127
-# endif /* !ACE_THR_PRI_RR_MAX */
-# if !defined (ACE_THR_PRI_OTHER_MIN)
-# define ACE_THR_PRI_OTHER_MIN (long) 1
-# endif /* !ACE_THR_PRI_OTHER_MIN */
-# if !defined (ACE_THR_PRI_OTHER_MAX)
-# define ACE_THR_PRI_OTHER_MAX (long) 127
-# endif /* !ACE_THR_PRI_OTHER_MAX */
-# elif defined (sun)
-# if !defined (ACE_THR_PRI_FIFO_MIN)
-# define ACE_THR_PRI_FIFO_MIN (long) 0
-# endif /* !ACE_THR_PRI_FIFO_MIN */
-# if !defined (ACE_THR_PRI_FIFO_MAX)
-# define ACE_THR_PRI_FIFO_MAX (long) 59
-# endif /* !ACE_THR_PRI_FIFO_MAX */
-# if !defined (ACE_THR_PRI_RR_MIN)
-# define ACE_THR_PRI_RR_MIN (long) 0
-# endif /* !ACE_THR_PRI_RR_MIN */
-# if !defined (ACE_THR_PRI_RR_MAX)
-# define ACE_THR_PRI_RR_MAX (long) 59
-# endif /* !ACE_THR_PRI_RR_MAX */
-# if !defined (ACE_THR_PRI_OTHER_MIN)
-# define ACE_THR_PRI_OTHER_MIN (long) 0
-# endif /* !ACE_THR_PRI_OTHER_MIN */
-# if !defined (ACE_THR_PRI_OTHER_MAX)
-# define ACE_THR_PRI_OTHER_MAX (long) 127
-# endif /* !ACE_THR_PRI_OTHER_MAX */
-# else
-# if !defined (ACE_THR_PRI_FIFO_MIN)
-# define ACE_THR_PRI_FIFO_MIN (long) ACE_PROC_PRI_FIFO_MIN
-# endif /* !ACE_THR_PRI_FIFO_MIN */
-# if !defined (ACE_THR_PRI_FIFO_MAX)
-# define ACE_THR_PRI_FIFO_MAX (long) ACE_PROC_PRI_FIFO_MAX
-# endif /* !ACE_THR_PRI_FIFO_MAX */
-# if !defined (ACE_THR_PRI_RR_MIN)
-# define ACE_THR_PRI_RR_MIN (long) ACE_PROC_PRI_RR_MIN
-# endif /* !ACE_THR_PRI_RR_MIN */
-# if !defined (ACE_THR_PRI_RR_MAX)
-# define ACE_THR_PRI_RR_MAX (long) ACE_PROC_PRI_RR_MAX
-# endif /* !ACE_THR_PRI_RR_MAX */
-# if !defined (ACE_THR_PRI_OTHER_MIN)
-# define ACE_THR_PRI_OTHER_MIN (long) ACE_PROC_PRI_OTHER_MIN
-# endif /* !ACE_THR_PRI_OTHER_MIN */
-# if !defined (ACE_THR_PRI_OTHER_MAX)
-# define ACE_THR_PRI_OTHER_MAX (long) ACE_PROC_PRI_OTHER_MAX
-# endif /* !ACE_THR_PRI_OTHER_MAX */
-# endif
-# if !defined(ACE_THR_PRI_FIFO_DEF)
-# define ACE_THR_PRI_FIFO_DEF ((ACE_THR_PRI_FIFO_MIN + ACE_THR_PRI_FIFO_MAX)/2)
-# endif
-# if !defined(ACE_THR_PRI_RR_DEF)
-# define ACE_THR_PRI_RR_DEF ((ACE_THR_PRI_RR_MIN + ACE_THR_PRI_RR_MAX)/2)
-# endif
-# if !defined(ACE_THR_PRI_OTHER_DEF)
-# define ACE_THR_PRI_OTHER_DEF ((ACE_THR_PRI_OTHER_MIN + ACE_THR_PRI_OTHER_MAX)/2)
-# endif
- // Typedefs to help compatibility with Windows NT and Pthreads.
- typedef pthread_t ACE_hthread_t;
- typedef pthread_t ACE_thread_t;
-
- // native TSS key type
- typedef pthread_key_t ACE_OS_thread_key_t;
- // TSS key type to be used by application
-# if defined (ACE_HAS_TSS_EMULATION)
- typedef u_int ACE_thread_key_t;
-# else /* ! ACE_HAS_TSS_EMULATION */
- typedef ACE_OS_thread_key_t ACE_thread_key_t;
-# endif /* ! ACE_HAS_TSS_EMULATION */
-
-# if !defined (ACE_LACKS_COND_T)
- typedef pthread_mutex_t ACE_mutex_t;
- typedef pthread_cond_t ACE_cond_t;
- typedef pthread_condattr_t ACE_condattr_t;
- typedef pthread_mutexattr_t ACE_mutexattr_t;
-# endif /* ! ACE_LACKS_COND_T */
- typedef pthread_mutex_t ACE_thread_mutex_t;
-
-# if !defined (PTHREAD_CANCEL_DISABLE)
-# define PTHREAD_CANCEL_DISABLE 0
-# endif /* PTHREAD_CANCEL_DISABLE */
-
-# if !defined (PTHREAD_CANCEL_ENABLE)
-# define PTHREAD_CANCEL_ENABLE 0
-# endif /* PTHREAD_CANCEL_ENABLE */
-
-# if !defined (PTHREAD_CANCEL_DEFERRED)
-# define PTHREAD_CANCEL_DEFERRED 0
-# endif /* PTHREAD_CANCEL_DEFERRED */
-
-# if !defined (PTHREAD_CANCEL_ASYNCHRONOUS)
-# define PTHREAD_CANCEL_ASYNCHRONOUS 0
-# endif /* PTHREAD_CANCEL_ASYNCHRONOUS */
-
-# define THR_CANCEL_DISABLE PTHREAD_CANCEL_DISABLE
-# define THR_CANCEL_ENABLE PTHREAD_CANCEL_ENABLE
-# define THR_CANCEL_DEFERRED PTHREAD_CANCEL_DEFERRED
-# define THR_CANCEL_ASYNCHRONOUS PTHREAD_CANCEL_ASYNCHRONOUS
-
-# if !defined (PTHREAD_CREATE_JOINABLE)
-# if defined (PTHREAD_CREATE_UNDETACHED)
-# define PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED
-# else
-# define PTHREAD_CREATE_JOINABLE 0
-# endif /* PTHREAD_CREATE_UNDETACHED */
-# endif /* PTHREAD_CREATE_JOINABLE */
-
-# if !defined (PTHREAD_CREATE_DETACHED)
-# define PTHREAD_CREATE_DETACHED 1
-# endif /* PTHREAD_CREATE_DETACHED */
-
-# if !defined (PTHREAD_PROCESS_PRIVATE) && !defined (ACE_HAS_PTHREAD_PROCESS_ENUM)
-# if defined (PTHREAD_MUTEXTYPE_FAST)
-# define PTHREAD_PROCESS_PRIVATE PTHREAD_MUTEXTYPE_FAST
-# else
-# define PTHREAD_PROCESS_PRIVATE 0
-# endif /* PTHREAD_MUTEXTYPE_FAST */
-# endif /* PTHREAD_PROCESS_PRIVATE */
-
-# if !defined (PTHREAD_PROCESS_SHARED) && !defined (ACE_HAS_PTHREAD_PROCESS_ENUM)
-# if defined (PTHREAD_MUTEXTYPE_FAST)
-# define PTHREAD_PROCESS_SHARED PTHREAD_MUTEXTYPE_FAST
-# else
-# define PTHREAD_PROCESS_SHARED 1
-# endif /* PTHREAD_MUTEXTYPE_FAST */
-# endif /* PTHREAD_PROCESS_SHARED */
-
-# if !defined (ACE_HAS_STHREADS)
-# if !defined (USYNC_THREAD)
-# define USYNC_THREAD PTHREAD_PROCESS_PRIVATE
-# endif /* ! USYNC_THREAD */
-# if !defined (USYNC_PROCESS)
-# define USYNC_PROCESS PTHREAD_PROCESS_SHARED
-# endif /* ! USYNC_PROCESS */
-# endif /* ACE_HAS_STHREADS */
-
- /* MM-Graz: prevent warnings */
-# if !defined (UNIXWARE_7_1)
-# undef THR_BOUND
-# undef THR_NEW_LWP
-# undef THR_DETACHED
-# undef THR_SUSPENDED
-# undef THR_DAEMON
-
-# define THR_BOUND 0x00000001
-# define THR_NEW_LWP 0x00000002
-# define THR_DETACHED 0x00000040
-# define THR_SUSPENDED 0x00000080
-# define THR_DAEMON 0x00000100
-# define THR_SCHED_FIFO 0x00020000
-# define THR_SCHED_RR 0x00040000
-# define THR_SCHED_DEFAULT 0x00080000
-# endif /* UNIXWARE_7_1 */
-
-# define THR_JOINABLE 0x00010000
-
-# if defined (ACE_HAS_IRIX62_THREADS)
-# define THR_SCOPE_SYSTEM 0x00100000
-# else
-# define THR_SCOPE_SYSTEM THR_BOUND
-# endif /*ACE_HAS_IRIX62_THREADS*/
-
-# define THR_SCOPE_PROCESS 0x00200000
-# define THR_INHERIT_SCHED 0x00400000
-# define THR_EXPLICIT_SCHED 0x00800000
-# define THR_SCHED_IO 0x01000000
-
-# if !defined (ACE_HAS_STHREADS)
-# if !defined (ACE_HAS_POSIX_SEM) && !defined (ACE_USES_FIFO_SEM)
-
-// This needs to be moved out of here.
-#include /**/ "ace/ACE_export.h"
-/**
- * @class ACE_sema_t
- *
- * @brief This is used to implement semaphores for platforms that support
- * POSIX pthreads, but do *not* support POSIX semaphores, i.e.,
- * it's a different type than the POSIX <sem_t>.
- */
-class ACE_Export ACE_sema_t
-{
-public:
- /// Serialize access to internal state.
- ACE_mutex_t lock_;
-
- /// Block until there are no waiters.
- ACE_cond_t count_nonzero_;
-
- /// Count of the semaphore.
- u_long count_;
-
- /// Number of threads that have called <ACE_OS::sema_wait>.
- u_long waiters_;
-};
-# endif /* !ACE_HAS_POSIX_SEM */
-
-# if defined (ACE_LACKS_PTHREAD_YIELD) && defined (ACE_HAS_THR_YIELD)
- // If we are on Solaris we can just reuse the existing
- // implementations of these synchronization types.
-# if !defined (ACE_LACKS_RWLOCK_T) && !defined (ACE_HAS_PTHREADS_UNIX98_EXT)
-# include /**/ <synch.h>
- typedef rwlock_t ACE_rwlock_t;
-# endif /* !ACE_LACKS_RWLOCK_T */
-# include /**/ <thread.h>
-# endif /* (ACE_LACKS_PTHREAD_YIELD) && defined (ACE_HAS_THR_YIELD) */
-
-# else
-# if !defined (ACE_HAS_POSIX_SEM)
- typedef sema_t ACE_sema_t;
-# endif /* !ACE_HAS_POSIX_SEM */
-# endif /* !ACE_HAS_STHREADS */
-
-# if defined (ACE_HAS_PTHREADS_UNIX98_EXT)
- typedef pthread_rwlock_t ACE_rwlock_t;
-# endif /* ACE_HAS_PTHREADS_UNIX98_EXT */
-
-# if defined (__GLIBC__) && ((__GLIBC__ > 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2))
-
- // glibc 2.2.x or better has pthread_mutex_timedlock()
-# ifndef ACE_HAS_MUTEX_TIMEOUTS
-# define ACE_HAS_MUTEX_TIMEOUTS
-# endif /* ACE_HAS_MUTEX_TIMEOUTS */
-
- // Use new pthread_attr_setstack if XPG6 support is enabled.
-# if defined (_XOPEN_SOURCE) && (_XOPEN_SOURCE - 0) < 600
-# define ACE_LACKS_PTHREAD_ATTR_SETSTACK
-# endif /* (_XOPEN_SOURCE - 0) < 600 */
-
-# if !defined (_XOPEN_SOURCE) \
- || (defined (_XOPEN_SOURCE) && (_XOPEN_SOURCE - 0) < 600)
- // pthread_mutex_timedlock() prototype is not visible if _XOPEN_SOURCE
- // is not >= 600 (i.e. for XPG6).
- extern "C" int pthread_mutex_timedlock (pthread_mutex_t *mutex,
- const struct timespec * abstime);
-# endif /* _XOPEN_SOURCE && _XOPEN_SOURCE < 600 */
-
-# endif /* linux && ((__GLIBC__ > 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2)) */
-
-#elif defined (ACE_HAS_STHREADS)
-# if !defined (ACE_THR_PRI_FIFO_MIN)
-# define ACE_THR_PRI_FIFO_MIN (long) 0
-# endif /* !ACE_THR_PRI_FIFO_MIN */
-# if !defined (ACE_THR_PRI_FIFO_MAX)
-# define ACE_THR_PRI_FIFO_MAX (long) 59
-# endif /* !ACE_THR_PRI_FIFO_MAX */
-# if !defined (ACE_THR_PRI_RR_MIN)
-# define ACE_THR_PRI_RR_MIN (long) 0
-# endif /* !ACE_THR_PRI_RR_MIN */
-# if !defined (ACE_THR_PRI_RR_MAX)
-# define ACE_THR_PRI_RR_MAX (long) 59
-# endif /* !ACE_THR_PRI_RR_MAX */
-# if !defined (ACE_THR_PRI_OTHER_MIN)
-# define ACE_THR_PRI_OTHER_MIN (long) 0
-# endif /* !ACE_THR_PRI_OTHER_MIN */
-# if !defined (ACE_THR_PRI_OTHER_MAX)
-# define ACE_THR_PRI_OTHER_MAX (long) 127
-# endif /* !ACE_THR_PRI_OTHER_MAX */
-#endif /* ACE_HAS_PTHREADS */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_PTHREAD_H */
-
diff --git a/dep/include/ace/os_include/os_pwd.h b/dep/include/ace/os_include/os_pwd.h
deleted file mode 100644
index f3cba066af9..00000000000
--- a/dep/include/ace/os_include/os_pwd.h
+++ /dev/null
@@ -1,59 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_pwd.h
- *
- * password structure
- *
- * $Id: os_pwd.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_PWD_H
-#define ACE_OS_INCLUDE_OS_PWD_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-
-#if !defined (ACE_LACKS_PWD_H)
-# include /**/ <pwd.h>
-#endif /* !ACE_LACKS_PWD_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if !defined (ACE_WIN32)
-// VAC++ doesn't correctly grok the ::getpwnam_r - the function is redefined
-// in pwd.h, and that redefinition is used here
-# if defined (_AIX) && defined (__IBMCPP__) && (__IBMCPP__ >= 400)
- extern int _posix_getpwnam_r(const char *, struct passwd *, char *,
- int, struct passwd **);
-# endif /* AIX and VAC++ 4 */
-#endif /* !ACE_WIN32 */
-
-#if defined (DIGITAL_UNIX)
- extern int _Pgetpwnam_r (const char *, struct passwd *,
- char *, size_t, struct passwd **);
-#endif /* DIGITAL_UNIX */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_PWD_H */
-
diff --git a/dep/include/ace/os_include/os_regex.h b/dep/include/ace/os_include/os_regex.h
deleted file mode 100644
index 94606e45e58..00000000000
--- a/dep/include/ace/os_include/os_regex.h
+++ /dev/null
@@ -1,49 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_regex.h
- *
- * regular expression matching types
- *
- * $Id: os_regex.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_REGEX_H
-#define ACE_OS_INCLUDE_OS_REGEX_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-
-#if !defined (ACE_LACKS_REGEX_H)
-# include /**/ <regex.h>
-#endif /* !ACE_LACKS_REGEX_H */
-
-#if defined (ACE_HAS_REGEX)
-# include /**/ <regexpr.h>
-#endif /* ACE_HAS_REGEX */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_REGEX_H */
-
diff --git a/dep/include/ace/os_include/os_sched.h b/dep/include/ace/os_include/os_sched.h
deleted file mode 100644
index 15279dbeef3..00000000000
--- a/dep/include/ace/os_include/os_sched.h
+++ /dev/null
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_sched.h
- *
- * execution scheduling (REALTIME)
- *
- * $Id: os_sched.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_SCHED_H
-#define ACE_OS_INCLUDE_OS_SCHED_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_time.h"
-
-#if !defined (ACE_LACKS_SCHED_H)
-# include /**/ <sched.h>
-#endif /* !ACE_LACKS_SCHED_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if !defined (__cpu_set_t_defined) || !defined (ACE_HAS_CPU_SET_T)
-# define ACE_CPU_SETSIZE 1024
- typedef struct
- {
- ACE_UINT32 bit_array_[ACE_CPU_SETSIZE / (8 * sizeof (ACE_UINT32))];
- } cpu_set_t;
-#endif /* !ACE_HAS_CPU_SET_T || !__cpu_set_t_defined */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_SCHED_H */
-
diff --git a/dep/include/ace/os_include/os_search.h b/dep/include/ace/os_include/os_search.h
deleted file mode 100644
index b67d902e9af..00000000000
--- a/dep/include/ace/os_include/os_search.h
+++ /dev/null
@@ -1,45 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_search.h
- *
- * search tables
- *
- * $Id: os_search.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_SEARCH_H
-#define ACE_OS_INCLUDE_OS_SEARCH_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-
-#if !defined (ACE_LACKS_SEARCH_H)
-# include /**/ <search.h>
-#endif /* !ACE_LACKS_SEARCH_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_SEARCH_H */
-
diff --git a/dep/include/ace/os_include/os_semaphore.h b/dep/include/ace/os_include/os_semaphore.h
deleted file mode 100644
index e6ae6b19b40..00000000000
--- a/dep/include/ace/os_include/os_semaphore.h
+++ /dev/null
@@ -1,78 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_semaphore.h
- *
- * semaphores (REALTIME)
- *
- * $Id: os_semaphore.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_SEMAPHORE_H
-#define ACE_OS_INCLUDE_OS_SEMAPHORE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_time.h"
-
-#if !defined (ACE_LACKS_SEMAPHORE_H)
-# include /**/ <semaphore.h>
-#endif /* !ACE_LACKS_SEMAPHORE_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (ACE_HAS_POSIX_SEM)
-# if !defined (SEM_FAILED) && !defined (ACE_LACKS_NAMED_POSIX_SEM)
-# define SEM_FAILED ((sem_t *) -1)
-# endif /* !SEM_FAILED */
-
- typedef struct
- {
- /// Pointer to semaphore handle. This is allocated by ACE if we are
- /// working with an unnamed POSIX semaphore or by the OS if we are
- /// working with a named POSIX semaphore.
- sem_t *sema_;
-
- /// Name of the semaphore (if this is non-NULL then this is a named
- /// POSIX semaphore, else its an unnamed POSIX semaphore).
- char *name_;
-
-# if defined (ACE_LACKS_NAMED_POSIX_SEM)
- /// this->sema_ doesn't always get created dynamically if a platform
- /// doesn't support named posix semaphores. We use this flag to
- /// remember if we need to delete <sema_> or not.
- bool new_sema_;
-# endif /* ACE_LACKS_NAMED_POSIX_SEM */
-
-# if !defined (ACE_HAS_POSIX_SEM_TIMEOUT) && !defined (ACE_DISABLE_POSIX_SEM_TIMEOUT_EMULATION)
- /// Serialize access to internal state.
- ACE_mutex_t lock_;
-
- /// Block until there are no waiters.
- ACE_cond_t count_nonzero_;
-# endif /* !ACE_HAS_POSIX_SEM_TIMEOUT && !ACE_DISABLE_POSIX_SEM_TIMEOUT_EMULATION */
- } ACE_sema_t;
-#endif /* ACE_HAS_POSIX_SEM */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_SEMAPHORE_H */
-
diff --git a/dep/include/ace/os_include/os_setjmp.h b/dep/include/ace/os_include/os_setjmp.h
deleted file mode 100644
index e5261965cd8..00000000000
--- a/dep/include/ace/os_include/os_setjmp.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_setjmp.h
- *
- * stack environment declarations
- *
- * $Id: os_setjmp.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_SETJMP_H
-#define ACE_OS_INCLUDE_OS_SETJMP_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_SETJMP_H)
-# include /**/ <setjmp.h>
-#endif /* !ACE_LACKS_SETJMP_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_SETJMP_H */
-
diff --git a/dep/include/ace/os_include/os_signal.h b/dep/include/ace/os_include/os_signal.h
deleted file mode 100644
index 029e5553921..00000000000
--- a/dep/include/ace/os_include/os_signal.h
+++ /dev/null
@@ -1,254 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_signal.h
- *
- * signals
- *
- * $Id: os_signal.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_SIGNAL_H
-#define ACE_OS_INCLUDE_OS_SIGNAL_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-
-#if !defined (ACE_LACKS_SIGNAL_H)
- extern "C" {
-# include /**/ <signal.h>
- }
-#endif /* !ACE_LACKS_SIGNAL_H */
-
-// This must come after signal.h is #included.
-#if defined (SCO)
-# define SIGIO SIGPOLL
-# include /**/ <sys/regset.h>
-#endif /* SCO */
-
-#if defined (ACE_HAS_SIGINFO_T)
-# if !defined (ACE_LACKS_SIGINFO_H)
-# if defined (__QNX__) || defined (__OpenBSD__) || defined (__INTERIX)
-# include /**/ <sys/siginfo.h>
-# else /* __QNX__ || __OpenBSD__ */
-# include /**/ <siginfo.h>
-# endif /* __QNX__ || __OpenBSD__ */
-# endif /* ACE_LACKS_SIGINFO_H */
-#endif /* ACE_HAS_SIGINFO_T */
-
-#if defined (ACE_VXWORKS) && (ACE_VXWORKS < 0x620) && !defined (__RTP__)
-# include /**/ <sigLib.h>
-#endif /* ACE_VXWORKS */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (ACE_LACKS_SIGSET)
- typedef u_int sigset_t;
-#endif /* ACE_LACKS_SIGSET */
-
-#if defined (ACE_HAS_SIG_MACROS)
-# undef sigemptyset
-# undef sigfillset
-# undef sigaddset
-# undef sigdelset
-# undef sigismember
-#endif /* ACE_HAS_SIG_MACROS */
-
-// This must come after signal.h is #included. It's to counteract
-// the sigemptyset and sigfillset #defines, which only happen
-// when __OPTIMIZE__ is #defined (really!) on Linux.
-#if defined (linux) && defined (__OPTIMIZE__)
-# undef sigemptyset
-# undef sigfillset
-#endif /* linux && __OPTIMIZE__ */
-
-#if !defined (ACE_HAS_SIG_ATOMIC_T)
- typedef int sig_atomic_t;
-#endif /* !ACE_HAS_SIG_ATOMIC_T */
-
-# if !defined (SA_SIGINFO)
-# define SA_SIGINFO 0
-# endif /* SA_SIGINFO */
-
-# if !defined (SA_RESTART)
-# define SA_RESTART 0
-# endif /* SA_RESTART */
-
-#if !defined (SIGHUP)
-# define SIGHUP 0
-#endif /* SIGHUP */
-
-#if !defined (SIGINT)
-# define SIGINT 0
-#endif /* SIGINT */
-
-#if !defined (SIGSEGV)
-# define SIGSEGV 0
-#endif /* SIGSEGV */
-
-#if !defined (SIGIO)
-# define SIGIO 0
-#endif /* SIGSEGV */
-
-#if !defined (SIGUSR1)
-# define SIGUSR1 0
-#endif /* SIGUSR1 */
-
-#if !defined (SIGUSR2)
-# define SIGUSR2 0
-#endif /* SIGUSR2 */
-
-#if !defined (SIGCHLD)
-# define SIGCHLD 0
-#endif /* SIGCHLD */
-
-#if !defined (SIGCLD)
-# define SIGCLD SIGCHLD
-#endif /* SIGCLD */
-
-#if !defined (SIGQUIT)
-# define SIGQUIT 0
-#endif /* SIGQUIT */
-
-#if !defined (SIGPIPE)
-# define SIGPIPE 0
-#endif /* SIGPIPE */
-
-#if !defined (SIGALRM)
-# define SIGALRM 0
-#endif /* SIGALRM */
-
-#if !defined (SIG_DFL)
-# define SIG_DFL ((__sighandler_t) 0)
-#endif /* SIG_DFL */
-
-#if !defined (SIG_IGN)
-# define SIG_IGN ((__sighandler_t) 1) /* ignore signal */
-#endif /* SIG_IGN */
-
-#if !defined (SIG_ERR)
-# define SIG_ERR ((__sighandler_t) -1) /* error return from signal */
-#endif /* SIG_ERR */
-
-// These are used by the <ACE_IPC_SAP::enable> and
-// <ACE_IPC_SAP::disable> methods. They must be unique and cannot
-// conflict with the value of <ACE_NONBLOCK>. We make the numbers
-// negative here so they won't conflict with other values like SIGIO,
-// etc.
-# define ACE_SIGIO -1
-# define ACE_SIGURG -2
-# define ACE_CLOEXEC -3
-
-#if defined (ACE_VXWORKS)
-# define ACE_NSIG (_NSIGS + 1)
-#elif defined (__Lynx__) || defined (ACE_HAS_RTEMS)
-# define ACE_NSIG (NSIG + 1)
-#else
- // All other platforms set NSIG to one greater than the
- // highest-numbered signal.
-# define ACE_NSIG NSIG
-#endif /* __Lynx__ */
-
-#if defined (ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES)
- // Prototypes for both signal() and struct sigaction are consistent..
- typedef void (*ACE_SignalHandler)(int);
- typedef void (*ACE_SignalHandlerV)(int);
-#elif defined (ACE_HAS_LYNXOS_SIGNALS) || defined (ACE_HAS_TANDEM_SIGNALS)
- typedef void (*ACE_SignalHandler)(...);
- typedef void (*ACE_SignalHandlerV)(...);
-#elif defined (ACE_HAS_SVR4_SIGNAL_T)
- // SVR4 Signals are inconsistent (e.g., see struct sigaction)..
- typedef void (*ACE_SignalHandler)(int);
- typedef void (*ACE_SignalHandlerV)(void);
-#elif defined (ACE_WIN32)
- typedef void (__cdecl *ACE_SignalHandler)(int);
- typedef void (__cdecl *ACE_SignalHandlerV)(int);
-#elif defined (ACE_HAS_UNIXWARE_SVR4_SIGNAL_T)
- typedef void (*ACE_SignalHandler)(int);
- typedef void (*ACE_SignalHandlerV)(...);
-#elif defined (INTEGRITY)
- typedef void (*ACE_SignalHandler)();
- typedef void (*ACE_SignalHandlerV)(int);
-#elif defined (ACE_HAS_RTEMS)
- typedef void (*ACE_SignalHandler)();
- typedef void (*ACE_SignalHandlerV)();
-#else /* This is necessary for some older broken version of cfront */
-# if defined (SIG_PF)
-# define ACE_SignalHandler SIG_PF
-# else
- typedef void (*ACE_SignalHandler)(int);
-# endif /* SIG_PF */
- typedef void (*ACE_SignalHandlerV)(...);
-#endif /* ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES */
-
-#if defined (ACE_LACKS_SIGACTION)
- struct sigaction
- {
- int sa_flags;
- ACE_SignalHandlerV sa_handler;
- sigset_t sa_mask;
- };
-#endif /* ACE_LACKS_SIGACTION */
-
-// Defining POSIX4 real-time signal range.
-#if defined(ACE_HAS_POSIX_REALTIME_SIGNALS)
-# define ACE_SIGRTMIN SIGRTMIN
-# define ACE_SIGRTMAX SIGRTMAX
-#else /* !ACE_HAS_POSIX_REALTIME_SIGNALS */
-# ifndef ACE_SIGRTMIN
-# define ACE_SIGRTMIN 0
-# endif /* ACE_SIGRTMIN */
-# ifndef ACE_SIGRTMAX
-# define ACE_SIGRTMAX 0
-# endif /* ACE_SIGRTMAX */
-#endif /* ACE_HAS_POSIX_REALTIME_SIGNALS */
-
-#if defined (DIGITAL_UNIX)
- // sigwait is yet another macro on Digital UNIX 4.0, just causing
- // trouble when introducing member functions with the same name.
- // Thanks to Thilo Kielmann" <kielmann@informatik.uni-siegen.de> for
- // this fix.
-# if defined (__DECCXX_VER)
-# undef sigwait
- // cxx on Digital Unix 4.0 needs this declaration. With it,
- // <::_Psigwait> works with cxx -pthread. g++ does _not_ need
- // it.
- int _Psigwait __((const sigset_t *set, int *sig));
-# endif /* __DECCXX_VER */
-#elif !defined (ACE_HAS_SIGWAIT)
-# if defined(ACE_HAS_RTEMS)
- int sigwait (const sigset_t *set, int *sig);
-# else
- int sigwait (sigset_t *set);
-# endif /* ACE_HAS_RTEMS */
-#endif /* ! DIGITAL_UNIX && ! ACE_HAS_SIGWAIT */
-
-#if !defined (ACE_HAS_PTHREAD_SIGMASK_PROTOTYPE)
- int pthread_sigmask(int, const sigset_t *, sigset_t *);
-#endif /*!ACE_HAS_PTHREAD_SIGMASK_PROTOTYPE */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include "ace/os_include/os_ucontext.h"
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_SIGNAL_H */
-
diff --git a/dep/include/ace/os_include/os_spawn.h b/dep/include/ace/os_include/os_spawn.h
deleted file mode 100644
index ffa80163f50..00000000000
--- a/dep/include/ace/os_include/os_spawn.h
+++ /dev/null
@@ -1,47 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_spawn.h
- *
- * spawn (ADVANCED REALTIME)
- *
- * $Id: os_spawn.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_SPAWN_H
-#define ACE_OS_INCLUDE_OS_SPAWN_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_signal.h"
-#include "ace/os_include/sys/os_types.h"
-#include "ace/os_include/os_sched.h"
-
-#if !defined (ACE_LACKS_SPAWN_H)
-# include /**/ <spawn.h>
-#endif /* !ACE_LACKS_SPAWN_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_SPAWN_H */
-
diff --git a/dep/include/ace/os_include/os_stdarg.h b/dep/include/ace/os_include/os_stdarg.h
deleted file mode 100644
index 7a9fcf5a928..00000000000
--- a/dep/include/ace/os_include/os_stdarg.h
+++ /dev/null
@@ -1,51 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_stdarg.h
- *
- * handle variable argument list
- *
- * $Id: os_stdarg.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_STDARG_H
-#define ACE_OS_INCLUDE_OS_STDARG_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_STDARG_H)
-# include /**/ <stdarg.h>
-#endif /* !ACE_LACKS_STDARG_H */
-
-#if !defined (va_copy)
-#if defined (__va_copy)
-#define va_copy(d, s) __va_copy((d),(s))
-#else
-#define va_copy(d, s) memcpy((void *)&(d),(void *)&(s),sizeof(va_list))
-#endif
-#endif
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_STDARG_H */
-
diff --git a/dep/include/ace/os_include/os_stdbool.h b/dep/include/ace/os_include/os_stdbool.h
deleted file mode 100644
index e739fddf26d..00000000000
--- a/dep/include/ace/os_include/os_stdbool.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_stdbool.h
- *
- * boolean type and values
- *
- * $Id: os_stdbool.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_STDBOOL_H
-#define ACE_OS_INCLUDE_OS_STDBOOL_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_STDBOOL_H)
-# include /**/ <stdbool.h>
-#endif /* !ACE_LACKS_STDBOOL_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_STDBOOL_H */
-
diff --git a/dep/include/ace/os_include/os_stddef.h b/dep/include/ace/os_include/os_stddef.h
deleted file mode 100644
index 34e6001925f..00000000000
--- a/dep/include/ace/os_include/os_stddef.h
+++ /dev/null
@@ -1,98 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_stddef.h
- *
- * standard type definitions
- *
- * $Id: os_stddef.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-// From http://www.UNIX-systems.org/single_unix_specification/
-
-#ifndef ACE_OS_INCLUDE_OS_STDDEF_H
-#define ACE_OS_INCLUDE_OS_STDDEF_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_STDDEF_H)
-# include /**/ <stddef.h>
-#endif /* !ACE_LACKS_STDDEF_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-//FUZZ: disable check_for_NULL
-// NULL pointer constant
-#if defined (ACE_LACKS_NULL)
-# undef NULL
-# if defined(__cplusplus)
-# define NULL 0
-# else
-# define NULL ((void *)0)
-# endif
-#endif /* ACE_LACKS_NULL */
-//FUZZ: enable check_for_NULL
-
-/*
- Integer constant expression of type size_t, the value of which is the offset
- in bytes to the structure member (member-designator), from the beginning of
- its structure (type).
-*/
-#if defined (ACE_LACKS_OFFSETOF)
-# undef offsetof
-# define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
-#endif /* ACE_LACKS_OFFSETOF */
-
-// Signed integer type of the result of subtracting two pointers.
-#if defined (ACE_LACKS_PTRDIFF_T)
-# if !defined (ACE_PTRDIFF_T_TYPE)
-# define ACE_PTRDIFF_T_TYPE unsigned long
-# endif /* !ACE_PTRDIFF_T_TYPE */
- typedef ACE_PTRDIFF_T_TYPE ptrdiff_t;
-#endif /* ACE_LACKS_PTRDIFF_T */
-
-/*
- Integer type whose range of values can represent distinct wide-character
- codes for all members of the largest character set specified among the
- locales supported by the compilation environment: the null character has
- the code value 0 and each member of the portable character set has a code
- value equal to its value when used as the lone character in an integer
- character constant.
-*/
-#if defined (ACE_LACKS_WCHAR_T)
-# if !defined (ACE_WCHAR_T_TYPE)
-# define ACE_WCHAR_T_TYPE long;
-# endif /* !ACE_WCHAR_T_TYPE */
- typedef ACE_WCHAR_T_TYPE wchar_t;
-#endif /* ACE_LACKS_WCHAR_T */
-
-// Unsigned integer type of the result of the sizeof operator.
-#if defined (ACE_LACKS_SIZE_T)
-# if !defined (ACE_SIZE_T_TYPE)
-# define ACE_SIZE_T_TYPE unsigned int;
-# endif /* !ACE_SIZE_T_TYPE */
- typedef ACE_SIZE_T_TYPE size_t;
-#endif /* ACE_LACKS_SIZE_T */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_STDDEF_H */
-
diff --git a/dep/include/ace/os_include/os_stdint.h b/dep/include/ace/os_include/os_stdint.h
deleted file mode 100644
index 3cd849de612..00000000000
--- a/dep/include/ace/os_include/os_stdint.h
+++ /dev/null
@@ -1,141 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_stdint.h
- *
- * integer types
- *
- * $Id: os_stdint.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_STDINT_H
-#define ACE_OS_INCLUDE_OS_STDINT_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_STDINT_H)
-# include /**/ <stdint.h>
-#endif /* !ACE_LACKS_STDINT_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-// BSD style types
-#if defined (ACE_LACKS_SYS_TYPES_H) \
- || (defined (__GLIBC__) && !defined (_BSD_SOURCE))
- typedef unsigned char u_char;
- typedef unsigned short u_short;
- typedef unsigned int u_int;
- typedef unsigned long u_long;
-
- typedef unsigned char uchar_t;
- typedef unsigned short ushort_t;
- typedef unsigned int uint_t;
- typedef unsigned long ulong_t;
-#endif /* ACE_LACKS_SYS_TYPES_H */
-
-/* Define required types if missing */
-
-#if defined (ACE_LACKS_INT8_T)
-# if !defined (ACE_INT8_T_TYPE)
-# define ACE_INT8_T_TYPE char
-# endif /* !ACE_INT8_T_TYPE */
- typedef ACE_INT8_T_TYPE int8_t;
-#endif /* ACE_LACKS_INT8_T */
-
-#if defined (ACE_LACKS_UINT8_T)
-# if !defined (ACE_UINT8_T_TYPE)
-# define ACE_UINT8_T_TYPE unsigned char
-# endif /* !ACE_UINT8_T_TYPE */
- typedef ACE_UINT8_T_TYPE int8_t;
-#endif /* ACE_LACKS_UINT8_T */
-
-#if defined (ACE_LACKS_INT16_T)
-# if !defined (ACE_INT16_T_TYPE)
-# define ACE_INT16_T_TYPE short
-# endif /* !ACE_INT16_T_TYPE */
- typedef ACE_INT16_T_TYPE int16_t;
-#endif /* ACE_LACKS_INT16_T */
-
-#if defined (ACE_LACKS_UINT16_T)
-# if !defined (ACE_UINT16_T_TYPE)
-# define ACE_UINT16_T_TYPE unsigned short
-# endif /* !ACE_UINT16_T_TYPE */
- typedef ACE_UINT16_T_TYPE int16_t;
-#endif /* ACE_LACKS_UINT16_T */
-
-#if defined (ACE_LACKS_INT32_T)
-# if !defined (ACE_INT32_T_TYPE)
-# define ACE_INT32_T_TYPE long
-# endif /* !ACE_INT32_T_TYPE */
- typedef ACE_INT32_T_TYPE int32_t;
-#endif /* ACE_LACKS_INT32_T */
-
-#if defined (ACE_LACKS_UINT32_T)
-# if !defined (ACE_UINT32_T_TYPE)
-# define ACE_UINT32_T_TYPE unsigned long
-# endif /* !ACE_UINT32_T_TYPE */
- typedef ACE_UINT32_T_TYPE int32_t;
-#endif /* ACE_LACKS_UIN32_T */
-
-// @todo pull in ACE class here
-// 64 bit will be a problem, but stub it out for now
-/*
-If an implementation provides integer types with width 64 that meet
-these requirements, then the following types are required: int64_t uint64_t
-
-In particular, this will be the case if any of the following are true:
-
-The implementation supports the _POSIX_V6_ILP32_OFFBIG programming
-environment and the application is being built in the
-_POSIX_V6_ILP32_OFFBIG programming environment (see the Shell and
-Utilities volume of IEEE Std 1003.1-2001, c99, Programming Environments).
-
-The implementation supports the _POSIX_V6_LP64_OFF64 programming
-environment and the application is being built in the
-_POSIX_V6_LP64_OFF64 programming environment.
-
-The implementation supports the _POSIX_V6_LPBIG_OFFBIG programming
-environment and the application is being built in the
-_POSIX_V6_LPBIG_OFFBIG programming environment.
-*/
-#if defined (ACE_LACKS_INT64_T)
-# if !defined (ACE_INT64_T_TYPE)
-# define ACE_INT64_T_TYPE long
-# endif /* !ACE_INT64_T_TYPE */
- typedef ACE_INT64_T_TYPE int64_t;
-#endif /* ACE_LACKS_INT64_T */
-
-#if defined (ACE_LACKS_UINT64_T)
-# if !defined (ACE_UINT64_T_TYPE)
-# define ACE_UINT64_T_TYPE unsigned long
-# endif /* !ACE_UINT64_T_TYPE */
- typedef ACE_UINT64_T_TYPE int64_t;
-#endif /* ACE_LACKS_UIN64_T */
-
-// @todo move the ACE_INT## typedefs here so that ACE_INT64 will
-// always be available.
-
-// @todo perhaps add macros
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_STDINT_H */
-
diff --git a/dep/include/ace/os_include/os_stdio.h b/dep/include/ace/os_include/os_stdio.h
deleted file mode 100644
index 23cec4d8eba..00000000000
--- a/dep/include/ace/os_include/os_stdio.h
+++ /dev/null
@@ -1,88 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_stdio.h
- *
- * standard buffered input/output
- *
- * $Id: os_stdio.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_STDIO_H
-#define ACE_OS_INCLUDE_OS_STDIO_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// NOTE: stdarg.h must be #included before stdio.h on LynxOS.
-#include "ace/os_include/os_stdarg.h"
-#include "ace/os_include/os_stddef.h"
-
-#if !defined (ACE_LACKS_STDIO_H)
-# include /**/ <stdio.h>
-#endif /* !ACE_LACKS_STDIO_H */
-
-#if defined (ACE_VXWORKS)
-// for remove(), rename()
-# include /**/ <ioLib.h>
-// for remCurIdGet()
-# include /**/ <remLib.h>
-# if defined (__RTP__) && ((ACE_VXWORKS >= 0x620) && (ACE_VXWORKS <= 0x650))
-# define L_cuserid _PARM_L_cuserid
-# endif
-#endif /* ACE_VXWORKS */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-# if defined (INTEGRITY)
-# define ACE_MAX_USERID 32
-# elif defined (ACE_WIN32)
-# define ACE_MAX_USERID 32
-# else
-# if defined (_POSIX_SOURCE) && defined (L_cuserid)
-# define ACE_MAX_USERID L_cuserid
-# else
-# define ACE_MAX_USERID 9
-# endif
-# endif /* INTEGRITY */
-
-#if defined (BUFSIZ)
-# define ACE_STREAMBUF_SIZE BUFSIZ
-#else
-# define ACE_STREAMBUF_SIZE 1024
-#endif /* BUFSIZ */
-
-#if defined (ACE_WIN32)
- typedef OVERLAPPED ACE_OVERLAPPED;
-#else
- struct ACE_OVERLAPPED
- {
- unsigned long Internal;
- unsigned long InternalHigh;
- unsigned long Offset;
- unsigned long OffsetHigh;
- ACE_HANDLE hEvent;
- };
-#endif /* ACE_WIN32 */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_STDIO_H */
-
diff --git a/dep/include/ace/os_include/os_stdlib.h b/dep/include/ace/os_include/os_stdlib.h
deleted file mode 100644
index 4813f4e2bcc..00000000000
--- a/dep/include/ace/os_include/os_stdlib.h
+++ /dev/null
@@ -1,78 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_stdlib.h
- *
- * standard library definitions
- *
- * $Id: os_stdlib.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_STDLIB_H
-#define ACE_OS_INCLUDE_OS_STDLIB_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_stddef.h"
-#include "ace/os_include/sys/os_wait.h"
-
-#if defined (ACE_HAS_ALLOCA_H)
-# include /**/ <alloca.h>
-#endif /* ACE_HAS_ALLOCA_H */
-
-#if !defined (ACE_LACKS_STDLIB_H)
-# include /**/ <stdlib.h>
-#endif /* !ACE_LACKS_STDLIB_H */
-
-#if defined (ACE_VXWORKS) && !defined (__RTP__)
-# include /**/ <envLib.h>
-#endif /* ACE_VXWORKS */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
- typedef u_int ACE_RANDR_TYPE;
-#if defined (ACE_HAS_BROKEN_RANDR)
- // The SunOS 5.4.X version of rand_r is inconsistent with the header
- // files...
- int rand_r (ACE_RANDR_TYPE seed);
-#else
-#endif /* ACE_HAS_BROKEN_RANDR */
-
-#if defined (DIGITAL_UNIX)
- extern int _Prand_r (unsigned int *seedptr);
-#endif /* DIGITAL_UNIX */
-
-#if defined (ACE_LACKS_PUTENV_PROTOTYPE)
- int putenv (char *);
-#endif /* ACE_LACKS_PUTENV_PROTOTYPE */
-
-#if defined (ACE_LACKS_MKTEMP_PROTOTYPE)
- char *mktemp (char *);
-#endif /* ACE_LACKS_MKTEMP_PROTOTYPE */
-
-#if defined (ACE_LACKS_MKSTEMP_PROTOTYPE)
- int mkstemp(char *);
-#endif /* ACE_LACKS_MKSTEMP_PROTOTYPE */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_STDLIB_H */
-
diff --git a/dep/include/ace/os_include/os_string.h b/dep/include/ace/os_include/os_string.h
deleted file mode 100644
index cfbc4fd2fcf..00000000000
--- a/dep/include/ace/os_include/os_string.h
+++ /dev/null
@@ -1,77 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_string.h
- *
- * string operations
- *
- * $Id: os_string.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_STRING_H
-#define ACE_OS_INCLUDE_OS_STRING_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_stddef.h"
-
-// Matthew Stevens 7-10-95 Fix GNU GCC 2.7 for memchr() problem.
-#if defined (ACE_HAS_GNU_CSTRING_H)
-// Define this file to keep /usr/include/memory.h from being included.
-# include /**/ <cstring>
-#else
-# if !defined (ACE_LACKS_MEMORY_H)
-# include /**/ <memory.h>
-# endif /* !ACE_LACKS_MEMORY_H */
-# if !defined (ACE_LACKS_STRING_H)
-# include /**/ <string.h>
-# endif /* !ACE_LACKS_STRING_H */
-#endif /* ACE_HAS_GNU_CSTRING_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
- // this looks fishy... dhinton
-#if !defined (ACE_HAS_STRERROR)
-# if defined (ACE_HAS_SYS_ERRLIST)
- extern char *sys_errlist[];
-# define strerror(err) sys_errlist[err]
-# else
-# define strerror(err) "strerror is unsupported"
-# endif /* ACE_HAS_SYS_ERRLIST */
-#endif /* !ACE_HAS_STRERROR */
-
-#if defined (ACE_LACKS_STRTOK_R_PROTOTYPE) && !defined (_POSIX_SOURCE)
- char *strtok_r (char *s, const char *delim, char **save_ptr);
-#endif /* ACE_LACKS_STRTOK_R_PROTOTYPE */
-
-#if defined (ACE_LACKS_STRNLEN_PROTOTYPE)
- size_t strnlen(const char *s, size_t maxlen);
-#endif /* ACE_LACKS_STRNLEN_PROTOTYPE */
-
-#if defined (__BORLANDC__) && (__BORLANDC__ < 0x560)
-# define _stricmp stricmp
-# define _strnicmp strnicmp
-#endif /* __BORLANDC__ */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_STRING_H */
-
diff --git a/dep/include/ace/os_include/os_strings.h b/dep/include/ace/os_include/os_strings.h
deleted file mode 100644
index 8bfc768962f..00000000000
--- a/dep/include/ace/os_include/os_strings.h
+++ /dev/null
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_strings.h
- *
- * string operations
- *
- * $Id: os_strings.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_STRINGS_H
-#define ACE_OS_INCLUDE_OS_STRINGS_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_stddef.h"
-
-#if !defined (ACE_LACKS_STRINGS_H)
-# include /**/ <strings.h>
-#endif /* !ACE_LACKS_STRINGS_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (ACE_LACKS_STRCASECMP_PROTOTYPE)
- int strcasecmp(const char *, const char *);
-#endif /* ACE_LACKS_STRCASECMP_PROTOTYPE */
-
-#if defined (ACE_LACKS_STRNCASECMP_PROTOTYPE)
- int strncasecmp(const char *, const char *, size_t);
-#endif /* ACE_LACKS_STRNCASECMP_PROTOTYPE */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_STRINGS_H */
-
diff --git a/dep/include/ace/os_include/os_stropts.h b/dep/include/ace/os_include/os_stropts.h
deleted file mode 100644
index 961bd37feaa..00000000000
--- a/dep/include/ace/os_include/os_stropts.h
+++ /dev/null
@@ -1,121 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_stropts.h
- *
- * STREAMS interface (STREAMS)
- *
- * $Id: os_stropts.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_STROPTS_H
-#define ACE_OS_INCLUDE_OS_STROPTS_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_unistd.h"
-
-#if defined (ACE_HAS_TIMOD_H)
-# if defined (ACE_HAS_STL_QUEUE_CONFLICT)
-# define queue _Queue_
-# endif /* ACE_HAS_STL_QUEUE_CONFLICT */
-# include /**/ <sys/timod.h>
-# if defined (ACE_HAS_STL_QUEUE_CONFLICT)
-# undef queue
-# endif /* ACE_HAS_STL_QUEUE_CONFLICT */
-#elif defined (ACE_HAS_OSF_TIMOD_H)
-# include /**/ <tli/timod.h>
-#endif /* ACE_HAS_TIMOD_H */
-
-#if !defined (ACE_LACKS_SYS_IOCTL_H)
-# include /**/ <sys/ioctl.h>
-#endif /* !ACE_LACKS_IOCTL_H */
-
-#if defined (ACE_HAS_SYS_FILIO_H)
-# include /**/ <sys/filio.h>
-#endif /* ACE_HAS_SYS_FILIO_H */
-
-#if defined (ACE_HAS_SYS_SOCKIO_H)
-# include /**/ <sys/sockio.h>
-#endif /* ACE_HAS_SOCKIO_H */
-
-// This is sorta counter intuitive, but this is how it was done in OS.h
-// @todo: fix this... dhinton
-#if defined (ACE_HAS_STREAMS)
-# if defined (AIX)
-# if !defined (_XOPEN_EXTENDED_SOURCE)
-# define _XOPEN_EXTENDED_SOURCE
-# endif /* !_XOPEN_EXTENDED_SOURCE */
-# endif /* AIX */
-#endif /* ACE_HAS_STREAMS */
-
-#if !defined (ACE_LACKS_STROPTS_H)
-# include /**/ <stropts.h>
-#endif /* !ACE_LACKS_STROPTS_H */
-
-// This is sorta counter intuitive, but this is how it was done in OS.h
-// @todo: fix this... dhinton
-#if defined (ACE_HAS_STREAMS)
-# if defined (AIX)
-# undef _XOPEN_EXTENDED_SOURCE
-# endif /* AIX */
-#endif /* ACE_HAS_STREAMS */
-
-#if defined (ACE_VXWORKS)
-// for ioctl()
-# include /**/ <ioLib.h>
-#endif /* ACE_VXWORKS */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (ACE_LACKS_STRRECVFD)
- struct strrecvfd {};
-#endif /* ACE_LACKS_STRRECVFD */
-
-# if !defined (SIOCGIFBRDADDR)
-# define SIOCGIFBRDADDR 0
-# endif /* SIOCGIFBRDADDR */
-
-# if !defined (SIOCGIFADDR)
-# define SIOCGIFADDR 0
-# endif /* SIOCGIFADDR */
-
-# if !defined (ACE_HAS_STRBUF_T)
-struct strbuf
-{
- /// No. of bytes in buffer.
- int maxlen;
- /// No. of bytes returned.
- int len;
- /// Pointer to data.
- void *buf;
-};
-# endif /* ACE_HAS_STRBUF_T */
-
-// These prototypes are chronically lacking from many versions of UNIX.
-#if !defined (ACE_WIN32) && !defined (ACE_HAS_ISASTREAM_PROTOTYPE)
- int isastream (int);
-#endif /* !ACE_WIN32 && ACE_HAS_ISASTREAM_PROTOTYPE */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_STROPTS_H */
-
diff --git a/dep/include/ace/os_include/os_syslog.h b/dep/include/ace/os_include/os_syslog.h
deleted file mode 100644
index f1713b47780..00000000000
--- a/dep/include/ace/os_include/os_syslog.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_syslog.h
- *
- * definitions for system error logging
- *
- * $Id: os_syslog.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_SYSLOG_H
-#define ACE_OS_INCLUDE_OS_SYSLOG_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_SYSLOG_H)
-# include /**/ <syslog.h>
-#endif /* !ACE_LACKS_SYSLOG_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_SYSLOG_H */
-
diff --git a/dep/include/ace/os_include/os_tar.h b/dep/include/ace/os_include/os_tar.h
deleted file mode 100644
index a0dc6ce2a76..00000000000
--- a/dep/include/ace/os_include/os_tar.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_tar.h
- *
- * extended tar definitions
- *
- * $Id: os_tar.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_TAR_H
-#define ACE_OS_INCLUDE_OS_TAR_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_TAR_H)
-# include /**/ <tar.h>
-#endif /* !ACE_LACKS_TAR_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_TAR_H */
-
diff --git a/dep/include/ace/os_include/os_termios.h b/dep/include/ace/os_include/os_termios.h
deleted file mode 100644
index d67aa4a1aa9..00000000000
--- a/dep/include/ace/os_include/os_termios.h
+++ /dev/null
@@ -1,47 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_termios.h
- *
- * define values for termios
- *
- * $Id: os_termios.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_TERMIOS_H
-#define ACE_OS_INCLUDE_OS_TERMIOS_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_TERMIOS_H)
-# include /**/ <termios.h>
-#endif /* !ACE_LACKS_TERMIOS_H */
-
-#if defined (HPUX)
-# include /**/ <sys/modem.h>
-#endif /* HPUX */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_TERMIOS_H */
-
diff --git a/dep/include/ace/os_include/os_tgmath.h b/dep/include/ace/os_include/os_tgmath.h
deleted file mode 100644
index 2b112a12875..00000000000
--- a/dep/include/ace/os_include/os_tgmath.h
+++ /dev/null
@@ -1,46 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_tgmath.h
- *
- * type-generic macros
- *
- * $Id: os_tgmath.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_TGMATH_H
-#define ACE_OS_INCLUDE_OS_TGMATH_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_math.h"
-#include "ace/os_include/os_complex.h"
-
-#if !defined (ACE_LACKS_TGMATH_H)
-# include /**/ <tgmath.h>
-#endif /* !ACE_LACKS_TGMATH_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_TGMATH_H */
-
diff --git a/dep/include/ace/os_include/os_time.h b/dep/include/ace/os_include/os_time.h
deleted file mode 100644
index 3670f3b492d..00000000000
--- a/dep/include/ace/os_include/os_time.h
+++ /dev/null
@@ -1,124 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_time.h
- *
- * time types
- *
- * $Id: os_time.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_TIME_H
-#define ACE_OS_INCLUDE_OS_TIME_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// @todo should we include anything from signal.h?
-#include "ace/os_include/sys/os_types.h"
-
-// To get the proper select() signature, this is required for HP-UX, and
-// maybe other platforms that offer both int and fdset forms of select().
-// For HP-UX, sys/time.h must be included before time.h, or
-// _XOPEN_SOURCE_EXTENDED must be defined. It's not nice to require
-// the preprocessor macro, so we force our select() preference this way.
-#if !defined (ACE_LACKS_SYS_TIME_H)
-# include /**/ <sys/time.h>
-#endif /* !ACE_LACKS_SYS_TIME_H */
-
-#if !defined (ACE_LACKS_TIME_H)
-# include /**/ <time.h>
-#endif /* !ACE_LACKS_TIME_H */
-
-# if defined (ACE_USES_STD_NAMESPACE_FOR_STDC_LIB) && \
- (ACE_USES_STD_NAMESPACE_FOR_STDC_LIB != 0)
-using std::tm;
-# if !defined (ACE_HAS_DINKUM_STL)
-# if defined (ACE_WIN32)
-using std::_timezone;
-# else
-using std::timezone;
-# endif
-# endif
-using std::difftime;
-# endif /* ACE_USES_STD_NAMESPACE_FOR_STDC_LIB */
-
-# if !defined (ACE_HAS_POSIX_TIME)
-// Definition per POSIX.
-typedef struct timespec
-{
- /// Seconds
- time_t tv_sec;
- /// Nanoseconds
- long tv_nsec;
-} timespec_t;
-# elif defined (ACE_HAS_BROKEN_POSIX_TIME)
-# if defined (ACE_OPENVMS)
-# include /**/ <timers.h>
-# else
-// OSF/1 defines struct timespec in <sys/timers.h> - Tom Marrs
-# include /**/ <sys/timers.h>
-# endif
-# endif /* !ACE_HAS_POSIX_TIME */
-
-# if defined(ACE_LACKS_TIMESPEC_T)
-typedef struct timespec timespec_t;
-# endif /* ACE_LACKS_TIMESPEC_T */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (ACE_HAS_BROKEN_CTIME)
-# undef ctime
-#endif /* ACE_HAS_BROKEN_CTIME */
-
-// There are a lot of threads-related macro definitions in the config files.
-// They came in at different times and from different places and platform
-// requirements as threads evolved. They are probably not all needed - some
-// overlap or are otherwise confused. This is an attempt to start
-// straightening them out.
-#if defined (ACE_HAS_PTHREADS) /* POSIX.1c threads (pthreads) */
- // ... and 2-parameter asctime_r and ctime_r
-# if !defined (ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R) && \
- !defined (ACE_HAS_STHREADS) && !defined (ACE_VXWORKS)
-# define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
-# endif
-#endif /* ACE_HAS_PTHREADS */
-
-#if defined (ACE_LACKS_STRPTIME_PROTOTYPE) && !defined (_XOPEN_SOURCE)
- extern char *strptime (const char *s, const char *fmt, struct tm *tp);
-#endif /* ACE_LACKS_STRPTIME_PROTOTYPE */
-
-#if defined (ACE_LACKS_CONST_TIMESPEC_PTR)
-typedef struct timespec * ACE_TIMESPEC_PTR;
-#else
-typedef const struct timespec * ACE_TIMESPEC_PTR;
-#endif /* ACE_LACKS_CONST_TIMESPEC_PTR */
-
-#if defined (DIGITAL_UNIX)
- extern char *_Pctime_r (const time_t *, char *);
- extern struct tm *_Plocaltime_r (const time_t *, struct tm *);
- extern struct tm *_Pgmtime_r (const time_t *, struct tm *);
- extern char *_Pasctime_r (const struct tm *, char *);
-#endif /* DIGITAL_UNIX */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_TIME_H */
-
diff --git a/dep/include/ace/os_include/os_trace.h b/dep/include/ace/os_include/os_trace.h
deleted file mode 100644
index 0eacf9dc4bb..00000000000
--- a/dep/include/ace/os_include/os_trace.h
+++ /dev/null
@@ -1,45 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_trace.h
- *
- * tracing
- *
- * $Id: os_trace.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_TRACE_H
-#define ACE_OS_INCLUDE_OS_TRACE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-
-#if !defined (ACE_LACKS_TRACE_H)
-# include /**/ <trace.h>
-#endif /* !ACE_LACKS_TRACE_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_TRACE_H */
-
diff --git a/dep/include/ace/os_include/os_ucontext.h b/dep/include/ace/os_include/os_ucontext.h
deleted file mode 100644
index 556bbdbbe45..00000000000
--- a/dep/include/ace/os_include/os_ucontext.h
+++ /dev/null
@@ -1,49 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_ucontext.h
- *
- * user context
- *
- * $Id: os_ucontext.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_UCONTEXT_H
-#define ACE_OS_INCLUDE_OS_UCONTEXT_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_signal.h"
-
-#if !defined (ACE_LACKS_UCONTEXT_H)
-# include /**/ <ucontext.h>
-#endif /* !ACE_LACKS_ucontext_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-# if !defined (ACE_HAS_UCONTEXT_T)
-typedef int ucontext_t;
-# endif /* ACE_HAS_UCONTEXT_T */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_UCONTEXT_H */
-
diff --git a/dep/include/ace/os_include/os_ulimit.h b/dep/include/ace/os_include/os_ulimit.h
deleted file mode 100644
index ad18c8a18d2..00000000000
--- a/dep/include/ace/os_include/os_ulimit.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_ulimit.h
- *
- * ulimit commands
- *
- * $Id: os_ulimit.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_ULIMIT_H
-#define ACE_OS_INCLUDE_OS_ULIMIT_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_ULIMIT_H)
-# include /**/ <ulimit.h>
-#endif /* !ACE_LACKS_ULIMIT_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_ULIMIT_H */
-
diff --git a/dep/include/ace/os_include/os_unistd.h b/dep/include/ace/os_include/os_unistd.h
deleted file mode 100644
index 6e2d4a5c537..00000000000
--- a/dep/include/ace/os_include/os_unistd.h
+++ /dev/null
@@ -1,204 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_unistd.h
- *
- * standard symbolic constants and types
- *
- * $Id: os_unistd.h 81697 2008-05-14 18:33:11Z johnnyw $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_UNISTD_H
-#define ACE_OS_INCLUDE_OS_UNISTD_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-#include "ace/os_include/os_inttypes.h"
-
-#if defined (__BORLANDC__)
-# include "ace/os_include/os_fcntl.h"
-#endif /* __BORLANDC */
-
-#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)
-# include /**/ <process.h>
-# include /**/ <io.h>
-#endif /* ACE_WIN32 && !ACE_HAS_WINCE */
-
-#if defined (ACE_HAS_SYS_SYSTEMINFO_H)
-# include /**/ <sys/systeminfo.h>
-#endif /* ACE_HAS_SYS_SYSTEMINFO_H */
-
-#if !defined (ACE_LACKS_UNISTD_H)
-# include /**/ <unistd.h>
-#endif /* !ACE_LACKS_UNISTD_H */
-
-#if defined (ACE_VXWORKS)
-# if !defined (__RTP__)
- // for unlink(), close(), read(), write(), lseek(), chdir(), getcwd(),
- // getwd(), and isatty()
- # include /**/ <ioLib.h>
-# endif
-// for gethostname()
-# include /**/ <hostLib.h>
-#endif /* ACE_VXWORKS */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (ACE_WIN32)
-// The following are #defines and #includes that are specific to
-// WIN32.
-# if defined (ACE_HAS_WINCE)
-# define ACE_STDIN _fileno (stdin)
-# define ACE_STDOUT _fileno (stdout)
-# define ACE_STDERR _fileno (stderr)
-# else
-# define ACE_STDIN GetStdHandle (STD_INPUT_HANDLE)
-# define ACE_STDOUT GetStdHandle (STD_OUTPUT_HANDLE)
-# define ACE_STDERR GetStdHandle (STD_ERROR_HANDLE)
-# endif // ACE_HAS_WINCE
-// The following are #defines and #includes that are specific to UNIX.
-#else /* !ACE_WIN32 */
-# if defined (STDIN_FILENO)
-# define ACE_STDIN STDIN_FILENO
-# else
-# define ACE_STDIN 0
-# endif
-# if defined (STDOUT_FILENO)
-# define ACE_STDOUT STDOUT_FILENO
-# else
-# define ACE_STDOUT 1
-# endif
-# if defined (STDERR_FILENO)
-# define ACE_STDERR STDERR_FILENO
-# else
-# define ACE_STDERR 2
-# endif
-#endif /* ACE_WIN32 */
-
-#if (!defined (_BSD_SOURCE) && \
- !defined (_XOPEN_SOURCE) && !defined (_XOPEN_SOURCE_EXTENDED)) \
- || (defined (_XOPEN_SOURCE) && defined (__GNUC__))
-
-# if defined (ACE_LACKS_SETREUID_PROTOTYPE)
- extern int setreuid (uid_t ruid, uid_t euid);
-# endif /* ACE_LACKS_SETREUID_PROTOTYPE */
-
-# if defined (ACE_LACKS_SETREGID_PROTOTYPE)
- extern int setregid (gid_t rgid, gid_t egid);
-# endif /* ACE_LACKS_SETREGID_PROTOTYPE */
-#endif /* !_BSD_SOURCE && !_XOPEN_SOURCE && !_XOPEN_SOURCE_EXTENDED
- || _XOPEN_SOURCE && __GNUC__ */
-
- // for use by access()
-# if !defined (R_OK)
-# define R_OK 04 /* Test for Read permission. */
-# endif /* R_OK */
-
-# if !defined (W_OK)
-# define W_OK 02 /* Test for Write permission. */
-# endif /* W_OK */
-
-# if !defined (X_OK)
-# if defined (ACE_WIN32)
- /* Windows has no test for X_OK - use R_OK instead */
-# define X_OK R_OK /* Test for eXecute permission. */
-# else /* ACE_WIN32 */
-# define X_OK 01 /* Test for eXecute permission. */
-# endif /* ACE_WIN32 */
-# endif /* X_OK */
-
-# if !defined (F_OK)
-# define F_OK 0 /* Test for existence of File. */
-# endif /* F_OK */
-
-#if defined (ACE_LACKS_UALARM_PROTOTYPE)
- u_int ualarm (u_int usecs, u_int interval);
-#endif /* ACE_LACKS_UALARM_PROTOTYPE */
-
-#if defined (ACE_LACKS_PREAD_PROTOTYPE) && (_XOPEN_SOURCE - 0) < 500
- // _XOPEN_SOURCE == 500 Single Unix conformance
- // It seems that _XOPEN_SOURCE == 500 means that the prototypes are
- // already defined in the system headers.
- ssize_t pread (int fd,
- void *buf,
- size_t nbytes,
- ACE_OFF_T offset);
-
- ssize_t pwrite (int fd,
- const void *buf,
- size_t n,
- ACE_OFF_T offset);
-#endif /* ACE_LACKS_PREAD_PROTOTYPE && (_XOPEN_SOURCE - 0) < 500 */
-
-#if defined (ACE_LACKS_GETPGID_PROTOTYPE) && \
- !defined (_XOPEN_SOURCE) && !defined (_XOPEN_SOURCE_EXTENDED)
- pid_t getpgid (pid_t pid);
-#endif /* ACE_LACKS_GETPGID_PROTOTYPE &&
- !_XOPEN_SOURCE && !_XOPEN_SOURCE_EXTENDED */
-
-#if !defined (_LARGEFILE64_SOURCE)
-# if defined (ACE_LACKS_LSEEK64_PROTOTYPE) && \
- defined (ACE_LACKS_LLSEEK_PROTOTYPE)
-# error Define either ACE_LACKS_LSEEK64_PROTOTYPE or ACE_LACKS_LLSEEK_PROTOTYPE, not both!
-# elif defined (ACE_LACKS_LSEEK64_PROTOTYPE)
- ACE_LOFF_T lseek64 (int fd, ACE_LOFF_T offset, int whence);
-# elif defined (ACE_LACKS_LLSEEK_PROTOTYPE)
- ACE_LOFF_T llseek (int fd, ACE_LOFF_T offset, int whence);
-# endif
-#endif /* _LARGEFILE64_SOURCE */
-
-#if defined (__BORLANDC__)
-# if (__BORLANDC__ <= 0x540)
-# define _getcwd getcwd
-# define _chdir chdir
-# undef _access
-# define _access access
-# endif
-# define _isatty isatty
-#endif /* __BORLANDC__ */
-
-# if defined (ACE_LACKS_TIMEDWAIT_PROTOTYPES)
-
- ssize_t read_timedwait (ACE_HANDLE handle,
- char *buf,
- size_t n,
- struct timespec *timeout);
-
- ssize_t write_timedwait (ACE_HANDLE handle,
- const void *buf,
- size_t n,
- struct timespec *timeout);
-
-# endif /* ACE_LACKS_TIMEDWAIT_PROTOTYPES */
-
-#if defined (ACE_LACKS_SWAB_PROTOTYPE)
- void swab(const void *, void *, ssize_t);
-#endif /* ACE_LACKS_SWAB_PROTOTYPE */
-
-#if defined (ACE_LACKS_GETOPT_PROTOTYPE)
- int getopt(int, char * const [], const char *);
-#endif /* ACE_LACKS_GETOPT_PROTOTYPE */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_UNISTD_H */
-
diff --git a/dep/include/ace/os_include/os_utime.h b/dep/include/ace/os_include/os_utime.h
deleted file mode 100644
index 4cf719e34f9..00000000000
--- a/dep/include/ace/os_include/os_utime.h
+++ /dev/null
@@ -1,45 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_utime.h
- *
- * access and modification times structure
- *
- * $Id: os_utime.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_UTIME_H
-#define ACE_OS_INCLUDE_OS_UTIME_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-
-#if !defined (ACE_LACKS_UTIME_H)
-# include /**/ <utime.h>
-#endif /* !ACE_LACKS_UTIME_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_UTIME_H */
-
diff --git a/dep/include/ace/os_include/os_utmpx.h b/dep/include/ace/os_include/os_utmpx.h
deleted file mode 100644
index 234351366fb..00000000000
--- a/dep/include/ace/os_include/os_utmpx.h
+++ /dev/null
@@ -1,45 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_utmpx.h
- *
- * user accounting database definitions
- *
- * $Id: os_utmpx.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_UTMPX_H
-#define ACE_OS_INCLUDE_OS_UTMPX_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_time.h"
-
-#if !defined (ACE_LACKS_UTMPX_H)
-# include /**/ <utmpx.h>
-#endif /* !ACE_LACKS_UTMPX_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_UTMPX_H */
-
diff --git a/dep/include/ace/os_include/os_wchar.h b/dep/include/ace/os_include/os_wchar.h
deleted file mode 100644
index a020715876f..00000000000
--- a/dep/include/ace/os_include/os_wchar.h
+++ /dev/null
@@ -1,50 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_wchar.h
- *
- * wide-character handling
- *
- * $Id: os_wchar.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_WCHAR_H
-#define ACE_OS_INCLUDE_OS_WCHAR_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// ctype.h, string.h, stdarg.h, stdio.h, stdlib.h, time.h
-#include "ace/os_include/os_stdio.h"
-#include "ace/os_include/os_stdlib.h"
-#include "ace/os_include/os_time.h"
-#include "ace/os_include/os_string.h"
-#include "ace/os_include/os_ctype.h"
-
-#if !defined (ACE_LACKS_WCHAR_H)
-# include /**/ <wchar.h>
-#endif /* !ACE_LACKS_WCHAR_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_WCHAR_H */
-
diff --git a/dep/include/ace/os_include/os_wctype.h b/dep/include/ace/os_include/os_wctype.h
deleted file mode 100644
index 5f385e0fc63..00000000000
--- a/dep/include/ace/os_include/os_wctype.h
+++ /dev/null
@@ -1,46 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_wctype.h
- *
- * wide-character classification and mapping utilities
- *
- * $Id: os_wctype.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_WCTYPE_H
-#define ACE_OS_INCLUDE_OS_WCTYPE_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// ctype.h, string.h, stdarg.h, stdio.h, stdlib.h, time.h
-#include "ace/os_include/os_wchar.h"
-
-#if !defined (ACE_LACKS_WCTYPE_H)
-# include /**/ <wctype.h>
-#endif /* !ACE_LACKS_WCTYPE_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_WCTYPE_H */
-
diff --git a/dep/include/ace/os_include/os_wordexp.h b/dep/include/ace/os_include/os_wordexp.h
deleted file mode 100644
index 885893861a2..00000000000
--- a/dep/include/ace/os_include/os_wordexp.h
+++ /dev/null
@@ -1,45 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_wordexp.h
- *
- * word-expansion types
- *
- * $Id: os_wordexp.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_OS_WORDEXP_H
-#define ACE_OS_INCLUDE_OS_WORDEXP_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_stddef.h" // size_t
-
-#if !defined (ACE_LACKS_WORDEXP_H)
-# include /**/ <wordexp.h>
-#endif /* !ACE_LACKS_WORDEXP_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_OS_WORDEXP_H */
-
diff --git a/dep/include/ace/os_include/sys/os_ipc.h b/dep/include/ace/os_include/sys/os_ipc.h
deleted file mode 100644
index 99401b724cb..00000000000
--- a/dep/include/ace/os_include/sys/os_ipc.h
+++ /dev/null
@@ -1,75 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_ipc.h
- *
- * XSI interprocess communication access structure
- *
- * $Id: os_ipc.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_IPC_H
-#define ACE_OS_INCLUDE_SYS_OS_IPC_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-
-#if !defined (ACE_LACKS_SYS_IPC_H)
-# include /**/ <sys/ipc.h>
-#endif /* !ACE_LACKS_SYS_IPC_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (ACE_WIN32)
-# define ACE_INVALID_SEM_KEY 0
-#else /* !ACE_WIN32 */
-# define ACE_INVALID_SEM_KEY -1
-#endif /* ACE_WIN32 */
-
-#if !defined (IPC_PRIVATE)
-# define IPC_PRIVATE ACE_INVALID_SEM_KEY
-#endif /* IPC_PRIVATE */
-
-#if !defined (IPC_STAT)
-# define IPC_STAT 0
-#endif /* IPC_STAT */
-
-#if !defined (IPC_CREAT)
-# define IPC_CREAT 0
-#endif /* IPC_CREAT */
-
-#if !defined (IPC_NOWAIT)
-# define IPC_NOWAIT 0
-#endif /* IPC_NOWAIT */
-
-#if !defined (IPC_RMID)
-# define IPC_RMID 0
-#endif /* IPC_RMID */
-
-#if !defined (IPC_EXCL)
-# define IPC_EXCL 0
-#endif /* IPC_EXCL */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_IPC_H */
-
diff --git a/dep/include/ace/os_include/sys/os_loadavg.h b/dep/include/ace/os_include/sys/os_loadavg.h
deleted file mode 100644
index 151f400e2c2..00000000000
--- a/dep/include/ace/os_include/sys/os_loadavg.h
+++ /dev/null
@@ -1,42 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_loadavg.h
- *
- * loadavg functions
- *
- * $Id: os_loadavg.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Johnny Willemsen <jwillemsen@remedy.nl>
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_LOADAVG_H
-#define ACE_OS_INCLUDE_SYS_OS_LOADAVG_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_SYS_LOADAVG_H)
-# include /**/ <sys/loadavg.h>
-#endif /* ACE_HAS_SYS_LOADAVG_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_LOADAVG_H */
-
diff --git a/dep/include/ace/os_include/sys/os_mman.h b/dep/include/ace/os_include/sys/os_mman.h
deleted file mode 100644
index c100d52fafe..00000000000
--- a/dep/include/ace/os_include/sys/os_mman.h
+++ /dev/null
@@ -1,123 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_mman.h
- *
- * memory management declarations
- *
- * $Id: os_mman.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_MMAN_H
-#define ACE_OS_INCLUDE_SYS_OS_MMAN_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-
-#if defined (ACE_LACKS_MMAP)
-# define ACE_LACKS_SYS_MMAN_H
-#endif /* ACE_LACKS_MMAP */
-
-#if !defined (ACE_LACKS_SYS_MMAN_H)
- // Fixes a problem with HP/UX.
-# if defined (ACE_HAS_BROKEN_MMAP_H)
- extern "C" {
-# endif /* ACE_HAS_BROKEN_MMAP_H */
-# include /**/ <sys/mman.h>
-# if defined (ACE_HAS_BROKEN_MMAP_H)
- }
-# endif /* ACE_HAS_BROKEN_MMAP_H */
-#endif /* ACE_LACKS_SYS_MMAN_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (ACE_LACKS_SYS_MMAN_H) && !defined (ACE_WIN32)
-# define PROT_READ 0
-# define PROT_WRITE 0
-# define PROT_EXEC 0
-# define PROT_NONE 0
-# define PROT_RDWR 0
-# define MAP_PRIVATE 0
-# define MAP_SHARED 0
-# define MAP_FIXED 0
-#elif defined (ACE_WIN32)
- // These two may be used for internal flags soon:
-# define MAP_PRIVATE 1
-# define MAP_SHARED 2
-# define MAP_FIXED 4
- // MMAP flags
-# define PROT_READ PAGE_READONLY
-# define PROT_WRITE PAGE_READWRITE
-# define PROT_RDWR PAGE_READWRITE
-/* If we can find suitable use for these flags, here they are:
-PAGE_WRITECOPY
-PAGE_EXECUTE
-PAGE_EXECUTE_READ
-PAGE_EXECUTE_READWRITE
-PAGE_EXECUTE_WRITECOPY
-PAGE_GUARD
-PAGE_NOACCESS
-PAGE_NOCACHE */
-#endif /* !ACE_LACKS_SYS_MMAN_H && !ACE_WIN32*/
-
-# if !defined (ACE_MAP_PRIVATE)
-# define ACE_MAP_PRIVATE MAP_PRIVATE
-# endif /* ! ACE_MAP_PRIVATE */
-
-# if !defined (ACE_MAP_SHARED)
-# define ACE_MAP_SHARED MAP_SHARED
-# endif /* ! ACE_MAP_SHARED */
-
-# if !defined (ACE_MAP_FIXED)
-# define ACE_MAP_FIXED MAP_FIXED
-# endif /* ! ACE_MAP_FIXED */
-
-# if !defined (MAP_FAILED) || defined (ACE_HAS_BROKEN_MAP_FAILED)
-# undef MAP_FAILED
-# define MAP_FAILED ((void *) -1)
-# elif defined (ACE_HAS_LONG_MAP_FAILED)
-# undef MAP_FAILED
-# define MAP_FAILED ((void *) -1L)
-# endif /* !MAP_FAILED || ACE_HAS_BROKEN_MAP_FAILED */
-
-#if !defined (PROT_RDWR)
-# define PROT_RDWR (PROT_READ|PROT_WRITE)
-#endif /* PROT_RDWR */
-
-# if defined (ACE_WIN32)
- // Needed to map calls to NT transparently.
-# define MS_ASYNC 0
-# define MS_INVALIDATE 0
-# endif /* ACE_WIN32 */
-
-# if !defined (MS_SYNC)
-# define MS_SYNC 0x0
-# endif /* !MS_SYNC */
-
-#if !defined (ACE_LACKS_MADVISE) && defined (ACE_LACKS_MADVISE_PROTOTYPE)
- extern "C" int madvise(caddr_t, size_t, int);
-#endif /* !ACE_LACKS_MADVISE && ACE_LACKS_MADVISE_PROTOTYPE */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_MMAN_H */
-
diff --git a/dep/include/ace/os_include/sys/os_msg.h b/dep/include/ace/os_include/sys/os_msg.h
deleted file mode 100644
index 57341dba97d..00000000000
--- a/dep/include/ace/os_include/sys/os_msg.h
+++ /dev/null
@@ -1,56 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_msg.h
- *
- * XSI message queue structures
- *
- * $Id: os_msg.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_MSG_H
-#define ACE_OS_INCLUDE_SYS_OS_MSG_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_ipc.h"
-
-#if !defined (ACE_LACKS_SYS_MSG_H)
-# include /**/ <sys/msg.h>
-#endif /* !ACE_LACKS_SYS_MSG_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
- // Declare opaque type. Needed for ACE_OS wrappers on systems
- // without SysV IPC.
- struct msqid_ds;
-
-#if defined (ACE_LACKS_SYSV_MSQ_PROTOS)
- int msgget (key_t, int);
- int msgrcv (int, void *, size_t, long, int);
- int msgsnd (int, const void *, size_t, int);
- int msgctl (int, int, struct msqid_ds *);
-#endif /* ACE_LACKS_SYSV_MSQ_PROTOS */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_MSG_H */
-
diff --git a/dep/include/ace/os_include/sys/os_pstat.h b/dep/include/ace/os_include/sys/os_pstat.h
deleted file mode 100644
index 253b8127979..00000000000
--- a/dep/include/ace/os_include/sys/os_pstat.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_pstat.h
- *
- * pstat functions
- *
- * $Id: os_pstat.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Johnny Willemsen <jwillemsen@remedy.nl>
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_PSTAT_H
-#define ACE_OS_INCLUDE_SYS_OS_PSTAT_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_SYS_PSTAT_H)
-# include /**/ <sys/param.h>
-# include /**/ <sys/pstat.h>
-#endif /* ACE_HAS_SYS_PSTAT_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_PSTAT_H */
-
diff --git a/dep/include/ace/os_include/sys/os_resource.h b/dep/include/ace/os_include/sys/os_resource.h
deleted file mode 100644
index a724ed2e0eb..00000000000
--- a/dep/include/ace/os_include/sys/os_resource.h
+++ /dev/null
@@ -1,105 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_resource.h
- *
- * definitions for XSI resource operations
- *
- * $Id: os_resource.h 81697 2008-05-14 18:33:11Z johnnyw $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_RESOURCE_H
-#define ACE_OS_INCLUDE_SYS_OS_RESOURCE_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_time.h"
-#include "ace/os_include/sys/os_types.h"
-
-#if !defined (ACE_LACKS_SYS_RESOURCE_H)
-# include /**/ <sys/resource.h>
-#endif /* !ACE_LACKS_SYS_RESOURCE_H */
-
-#if defined (ACE_HAS_SYS_SYSTEMINFO_H)
-# include /**/ <sys/systeminfo.h>
-#endif /* ACE_HAS_SYS_SYSTEMINFO_H */
-
-#if defined (ACE_HAS_SYS_SYSCALL_H)
-# include /**/ <sys/syscall.h>
-#endif /* ACE_HAS_SYS_SYSCALL_H */
-
-// prusage_t is defined in <sys/procfs.h>
-#if defined (ACE_HAS_PROC_FS)
-# include /**/ <sys/procfs.h>
-#endif /* ACE_HAS_PROC_FS */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-// There must be a better way to do this...
-#if !defined (RLIMIT_NOFILE) && !defined (ACE_LACKS_RLIMIT_NOFILE)
-# if defined (linux) || defined (AIX) || defined (SCO)
-# if defined (RLIMIT_OFILE)
-# define RLIMIT_NOFILE RLIMIT_OFILE
-# else
-# define RLIMIT_NOFILE 200
-# endif /* RLIMIT_OFILE */
-# endif /* defined (linux) || defined (AIX) || defined (SCO) */
-#endif /* RLIMIT_NOFILE */
-
-#if defined (ACE_WIN32)
-# define RUSAGE_SELF 1
- /// Fake the UNIX rusage structure. Perhaps we can add more to this
- /// later on?
- struct rusage
- {
- FILETIME ru_utime;
- FILETIME ru_stime;
- };
-#endif /* ACE_WIN32 */
-
-#if defined (ACE_LACKS_RLIMIT_PROTOTYPE)
- int getrlimit (int resource, struct rlimit *rlp);
- int setrlimit (int resource, const struct rlimit *rlp);
-#endif /* ACE_LACKS_RLIMIT_PROTOTYPE */
-
-#if defined (ACE_HAS_PRUSAGE_T)
- typedef prusage_t ACE_Rusage;
-#elif defined (ACE_HAS_GETRUSAGE)
- typedef rusage ACE_Rusage;
-#else
- typedef int ACE_Rusage;
-#endif /* ACE_HAS_PRUSAGE_T */
-
-#if !defined (ACE_WIN32)
-// These prototypes are chronically lacking from many versions of UNIX.
-# if !defined (ACE_HAS_GETRUSAGE_PROTOTYPE)
- int getrusage (int who, struct rusage *rusage);
-# endif /* ! ACE_HAS_GETRUSAGE_PROTOTYPE */
-
-# if defined (ACE_LACKS_SYSCALL)
- int syscall (int, ACE_HANDLE, struct rusage *);
-# endif /* ACE_LACKS_SYSCALL */
-#endif /* !ACE_WIN32 */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_RESOURCE_H */
-
diff --git a/dep/include/ace/os_include/sys/os_select.h b/dep/include/ace/os_include/sys/os_select.h
deleted file mode 100644
index f3e999831fd..00000000000
--- a/dep/include/ace/os_include/sys/os_select.h
+++ /dev/null
@@ -1,60 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_select.h
- *
- * select types
- *
- * $Id: os_select.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_SELECT_H
-#define ACE_OS_INCLUDE_SYS_OS_SELECT_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_time.h"
-#include "ace/os_include/os_signal.h"
-#include "ace/os_include/os_unistd.h"
-
-#if !defined (ACE_LACKS_SYS_SELECT_H)
-# include /**/ <sys/select.h>
-#endif /* !ACE_LACKS_SYS_SELECT_H */
-
-#if defined (ACE_VXWORKS) && defined (ACE_LACKS_SYS_SELECT_H)
-# include /**/ <selectLib.h>
-#endif /* ACE_VXWORKS */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (ACE_WIN32)
- // This will help until we figure out everything:
-# define NFDBITS 32 /* only used in unused functions... */
-#elif defined (__QNX__)
-# if !defined (NFDBITS)
-# define NFDBITS (sizeof(fd_mask) * NBBY) /* bits per mask */
-# endif /* ! NFDBITS */
-#endif /* ACE_WIN32 */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_SELECT_H */
-
diff --git a/dep/include/ace/os_include/sys/os_sem.h b/dep/include/ace/os_include/sys/os_sem.h
deleted file mode 100644
index 92153e2fcea..00000000000
--- a/dep/include/ace/os_include/sys/os_sem.h
+++ /dev/null
@@ -1,91 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_sem.h
- *
- * XSI semaphore facility
- *
- * $Id: os_sem.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_SEM_H
-#define ACE_OS_INCLUDE_SYS_OS_SEM_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_ipc.h"
-
-#if !defined (ACE_LACKS_SYS_SEM_H)
-# include /**/ <sys/sem.h>
-#endif /* !ACE_LACKS_SYS_SEM_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-# if !defined (GETVAL)
-# define GETVAL 0
-# endif /* GETVAL */
-
-# if !defined (SETVAL)
-# define SETVAL 0
-# endif /* SETVAL */
-
-# if !defined (GETALL)
-# define GETALL 0
-# endif /* GETALL */
-
-# if !defined (SETALL)
-# define SETALL 0
-# endif /* SETALL */
-
-# if !defined (SEM_UNDO)
-# define SEM_UNDO 0
-# endif /* SEM_UNDO */
-
-#if defined (ACE_LACKS_SEMBUF_T)
- struct sembuf
- {
- /// semaphore #
- unsigned short sem_num;
-
- /// semaphore operation
- short sem_op;
-
- /// operation flags
- short sem_flg;
- };
-#endif /* ACE_LACKS_SEMBUF_T */
-
-#if !defined (ACE_HAS_SEMUN) || (defined (__GLIBC__) && defined (_SEM_SEMUN_UNDEFINED))
- union semun
- {
- /// value for SETVAL
- int val;
- /// buffer for IPC_STAT & IPC_SET
- struct semid_ds *buf;
- /// array for GETALL & SETALL
- u_short *array;
- };
-#endif /* !ACE_HAS_SEMUN || (defined (__GLIBC__) && defined (_SEM_SEMUN_UNDEFINED)) */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_SEM_H */
-
diff --git a/dep/include/ace/os_include/sys/os_shm.h b/dep/include/ace/os_include/sys/os_shm.h
deleted file mode 100644
index 83e32486cb6..00000000000
--- a/dep/include/ace/os_include/sys/os_shm.h
+++ /dev/null
@@ -1,49 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_shm.h
- *
- * XSI shared memory facility
- *
- * $Id: os_shm.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_SHM_H
-#define ACE_OS_INCLUDE_SYS_OS_SHM_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_ipc.h"
-
-#if !defined (ACE_LACKS_SYS_SHM_H)
-# include /**/ <sys/shm.h>
-#endif /* !ACE_LACKS_SYS_SHM_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
- // Declare opaque type. Needed for ACE_OS wrappers on systems
- // without SysV IPC.
- struct shmid_ds;
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_SHM_H */
-
diff --git a/dep/include/ace/os_include/sys/os_socket.h b/dep/include/ace/os_include/sys/os_socket.h
deleted file mode 100644
index cefc28c2134..00000000000
--- a/dep/include/ace/os_include/sys/os_socket.h
+++ /dev/null
@@ -1,308 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_socket.h
- *
- * main sockets header
- *
- * $Id: os_socket.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_SOCKET_H
-#define ACE_OS_INCLUDE_SYS_OS_SOCKET_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_uio.h"
-
-#if !defined (ACE_LACKS_SYS_SOCKET_H)
-# include /**/ <sys/socket.h>
-#endif /* !ACE_LACKS_SYS_SOCKET_H */
-
-#if defined (ACE_VXWORKS) && (ACE_VXWORKS < 0x620)
-# include /**/ <sockLib.h>
-#endif /* ACE_VXWORKS */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if !defined (ACE_HAS_MSG) && !defined (SCO)
- struct msghdr {};
-#endif /* ACE_HAS_MSG */
-
-#if defined (ACE_HAS_MSG) && defined (ACE_LACKS_MSG_ACCRIGHTS)
-# if !defined (msg_accrights)
-# undef msg_control
-# define msg_accrights msg_control
-# endif /* ! msg_accrights */
-
-# if !defined (msg_accrightslen)
-# undef msg_controllen
-# define msg_accrightslen msg_controllen
-# endif /* ! msg_accrightslen */
-#endif /* ACE_HAS_MSG && ACE_LACKS_MSG_ACCRIGHTS */
-
-# if defined (ACE_LACKS_SOCKADDR)
- struct sockaddr {
- u_char sa_len; /* total length */
- u_char sa_family; /* address family */
- char sa_data[14]; /* actually longer; address value */
- };
-# endif /* ACE_LACKS_SOCKADDR */
-
-# if defined (ACE_LACKS_LINGER)
- struct linger {
- int l_onoff; /* option on/off */
- int l_linger; /* linger time */
- };
-# endif /* ACE_LACKS_LINGER */
-
-#if defined (ACE_WIN32)
- struct msghdr
- {
- /// Optional address
- sockaddr * msg_name;
-
- /// Size of address
- int msg_namelen;
-
- /// Scatter/gather array
- iovec *msg_iov;
-
- /// # elements in msg_iov
- int msg_iovlen;
-
- /// Access rights sent/received
- caddr_t msg_accrights;
-
- int msg_accrightslen;
- };
-#endif /* ACE_WIN32 */
-
-#if defined (ACE_HAS_4_4BSD_SENDMSG_RECVMSG)
- // Control message size to pass a file descriptor.
-# define ACE_BSD_CONTROL_MSG_LEN sizeof (struct cmsghdr) + sizeof (ACE_HANDLE)
-#endif /* ACE_HAS_4_4BSD_SENDMSG_RECVMSG */
-
-// Increase the range of "address families". Please note that this
-// must appear _after_ the include of sys/socket.h, for the AF_FILE
-// definition on Linux/glibc2.
-#if !defined (AF_ANY)
-# define AF_ANY (-1)
-#endif /* AF_ANY */
-
-#if !defined (AF_UNSPEC)
-# define AF_UNSPEC 0
-#endif /* AF_UNSPEC */
-
-#if !defined (AF_LOCAL)
-# define AF_LOCAL 1
-#endif /* AF_LOCAL */
-
-#if !defined (AF_UNIX)
-# define AF_UNIX AF_LOCAL
-#endif /* AF_UNIX */
-
-#if !defined (AF_INET)
-# define AF_INET 2
-#endif /* AF_INET */
-
-#if !defined (PF_INET)
-# define PF_INET AF_INET
-#endif /* PF_INET */
-
-#if !defined (PF_LOCAL)
-# define PF_LOCAL AF_LOCAL
-#endif /* PF_LOCAL */
-
-#if !defined (PF_UNIX)
-# define PF_UNIX PF_LOCAL
-#endif /* PF_UNIX */
-
-#if !defined (AF_MAX)
-# define AF_MAX 29
-#endif /* AF_MAX */
-
-#if !defined (PF_UNSPEC)
-# define PF_UNSPEC 0
-#endif /* PF_UNSPEC */
-
-#define AF_SPIPE (AF_MAX + 1)
-#if !defined (AF_FILE)
-# define AF_FILE (AF_MAX + 2)
-#endif /* ! AF_FILE */
-#define AF_DEV (AF_MAX + 3)
-#define AF_UPIPE (AF_SPIPE)
-
-#if !defined (MSG_OOB)
-# define MSG_OOB 0x1
-#endif /* MSG_OOB */
-
-#if !defined (MSG_PEEK)
-# define MSG_PEEK 0x2
-#endif /* MSG_PEEK */
-
-#if !defined (SOCK_STREAM)
-# define SOCK_STREAM 1
-#endif /* SOCK_STREAM */
-
-#if !defined (SOCK_DGRAM)
-# define SOCK_DGRAM 2
-#endif /* SOCK_DGRAM */
-
-#if !defined (SOCK_SEQPACKET)
-# define SOCK_SEQPACKET 5
-#endif /* SOCK_SEQPACKET */
-
-#if !defined (SOL_SOCKET)
-# define SOL_SOCKET 0xffff
-#endif /* SOL_SOCKET */
-
-#if !defined (SO_REUSEADDR)
-# define SO_REUSEADDR 0x0004
-#endif /* SO_REUSEADDR */
-
-#if !defined (SO_LINGER)
-# define SO_LINGER 0x0080
-#endif /* SO_LINGER */
-
-#if !defined (SO_SNDBUF)
-# define SO_SNDBUF 0x1001
-#endif /* SO_SNDBUF */
-
-#if !defined (SO_RCVBUF)
-# define SO_RCVBUF 0x1002
-#endif /* SO_RCVBUF */
-
-#if !defined (SO_BROADCAST)
-# define SO_BROADCAST 0x0020
-#endif /* SO_BROADCAST */
-
-#if !defined (SO_ERROR)
-# define SO_ERROR 0x1007
-#endif /* SO_ERROR */
-
-#if !defined (SCM_RIGHTS)
-# define SCM_RIGHTS 0x01
-#endif /* SCM_RIGHTS */
-
-#if defined (ACE_HAS_IPV6)
-# if defined (ACE_USES_IPV4_IPV6_MIGRATION)
-# define ACE_ADDRESS_FAMILY_INET AF_UNSPEC
-# define ACE_PROTOCOL_FAMILY_INET PF_UNSPEC
-# else
-# define ACE_ADDRESS_FAMILY_INET AF_INET6
-# define ACE_PROTOCOL_FAMILY_INET PF_INET6
-# endif /* ACE_USES_IPV4_IPV6_MIGRATION */
-#else /* !ACE_HAS_IPV6 */
-# define ACE_ADDRESS_FAMILY_INET AF_INET
-# define ACE_PROTOCOL_FAMILY_INET PF_INET
-#endif /* ACE_HAS_IPV6 */
-
-#if !defined (ACE_HAS_SOCK_BUF_SIZE_MAX_VALUE)
-#define ACE_HAS_SOCK_BUF_SIZE_MAX_VALUE SSIZE_MAX
-#endif /* ACE_HAS_SOCK_BUF_SIZE_MAX_VALUE */
-
-#if defined (ACE_HAS_SOCKLEN_T)
-# if defined (__hpux)
- /*
- ** HP-UX supplies the socklen_t type unless some feature set less than
- ** _XOPEN_SOURCE_EXTENDED is specifically requested. However, it only
- ** actually uses the socklen_t type in supplied socket functions if
- ** _XOPEN_SOURCE_EXTENDED is specifically requested. So, for example,
- ** the compile options ACE usually uses (includes -mt) cause _HPUX_SOURCE
- ** to be set, which sets _INCLUDE_XOPEN_SOURCE_EXTENDED (causing socklen_t
- ** to be defined) but _not_ _XOPEN_SOURCE_EXTENDED (causing socket functions
- ** to use int, not socklen_t). React to this situation here...
- */
-# if defined (_XOPEN_SOURCE_EXTENDED)
-typedef socklen_t ACE_SOCKET_LEN;
-# else
-typedef int ACE_SOCKET_LEN;
-# endif /* _XOPEN_SOURCE_EXTENDED */
-# else
-typedef socklen_t ACE_SOCKET_LEN;
-# endif /* __hpux */
-#elif defined (ACE_HAS_SIZET_SOCKET_LEN)
-typedef size_t ACE_SOCKET_LEN;
-#else
-typedef int ACE_SOCKET_LEN;
-#endif /* ACE_HAS_SIZET_SOCKET_LEN */
-
-#if defined (ACE_HAS_NETLINK)
-# include /**/ <asm/types.h>
-# include /**/ <linux/netlink.h>
-# define ACE_PROTOCOL_FAMILY_NETLINK AF_NETLINK
-#endif
-
-#if defined (ACE_HAS_LKSCTP)
-extern "C"
-{
-#include /**/ <netinet/in.h>
-#include /**/ <netinet/sctp.h>
-}
-#endif /* ACE_HAS_LKSCTP */
-
-# if defined (ACE_LACKS_TIMEDWAIT_PROTOTYPES)
-
- ssize_t recv_timedwait (ACE_HANDLE handle,
- char *buf,
- int len,
- int flags,
- struct timespec *timeout);
-
- ssize_t recvmsg_timedwait (ACE_HANDLE handle,
- struct msghdr *msg,
- int flags,
- struct timespec *timeout);
-
- ssize_t recvfrom_timedwait (ACE_HANDLE handle,
- char *buf,
- int len,
- int flags,
- struct sockaddr *addr,
- int *addrlen,
- struct timespec *timeout);
-
- ssize_t send_timedwait (ACE_HANDLE handle,
- const char *buf,
- int len,
- int flags,
- struct timespec *timeout);
-
- ssize_t sendmsg_timedwait (ACE_HANDLE handle,
- const struct msghdr *msg,
- int flags,
- struct timespec *timeout);
-
- ssize_t sendto_timedwait (ACE_HANDLE handle,
- const char *buf,
- int len,
- int flags,
- const struct sockaddr *addr,
- int addrlen,
- struct timespec *timeout);
-
-# endif /* ACE_LACKS_TIMEDWAIT_PROTOTYPES */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_SOCKET_H */
-
diff --git a/dep/include/ace/os_include/sys/os_stat.h b/dep/include/ace/os_include/sys/os_stat.h
deleted file mode 100644
index edd43d3932a..00000000000
--- a/dep/include/ace/os_include/sys/os_stat.h
+++ /dev/null
@@ -1,128 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_stat.h
- *
- * data returned by the stat() function
- *
- * $Id: os_stat.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_STAT_H
-#define ACE_OS_INCLUDE_SYS_OS_STAT_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-
-#if defined (ACE_WIN32) && !defined (ACE_HAS_WINCE)
-# include /**/ <direct.h>
-#endif /* ACE_WIN32 && !ACE_HAS_WINCE */
-
-#if !defined (ACE_LACKS_SYS_STAT_H)
-# include /**/ <sys/stat.h>
-#endif /* !ACE_LACKS_SYS_STAT_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (ACE_LACKS_MODE_MASKS)
-// MODE MASKS
-
-// the following macros are for POSIX conformance.
-
-# if !defined (ACE_HAS_USER_MODE_MASKS)
-# define S_IRWXU 00700 /* read, write, execute: owner. */
-# define S_IRUSR 00400 /* read permission: owner. */
-# define S_IWUSR 00200 /* write permission: owner. */
-# define S_IXUSR 00100 /* execute permission: owner. */
-# endif /* ACE_HAS_USER_MODE_MASKS */
-# define S_IRWXG 00070 /* read, write, execute: group. */
-# define S_IRGRP 00040 /* read permission: group. */
-# define S_IWGRP 00020 /* write permission: group. */
-# define S_IXGRP 00010 /* execute permission: group. */
-# define S_IRWXO 00007 /* read, write, execute: other. */
-# define S_IROTH 00004 /* read permission: other. */
-# define S_IWOTH 00002 /* write permission: other. */
-# define S_IXOTH 00001 /* execute permission: other. */
-
-// WinCE's S_IFLNK is defined with the other bits, below.
-#if !defined (S_IFLNK) && !defined (ACE_HAS_WINCE)
-#define S_IFLNK 0200000
-#endif /* S_IFLNK && !ACE_HAS_WINCE */
-
-#endif /* ACE_LACKS_MODE_MASKS */
-
-// Some systems (VxWorks) don't define S_ISLNK
-#if !defined (S_ISLNK)
-# if defined (S_IFLNK)
-# define S_ISLNK(mode) (((mode)&S_IFLNK) == S_IFLNK)
-# else
-# define S_ISLNK(mode) 0
-# endif /* S_IFLNK */
-#endif /* S_ISLNK */
-
-#if defined (ACE_HAS_WINCE)
-# include "ace/Time_Value.h"
-
-// Translate the WinCE bits into names expected by our callers.
-// The dwFileAttributes parameter doesn't have protection info, so
-// S_IFMT is the whole thing. Since there are no symbolic links, S_IFLNK is 0.
-# define S_IFMT 0xFFFF
-# define S_IFDIR FILE_ATTRIBUTE_DIRECTORY
-# define S_IFREG FILE_ATTRIBUTE_NORMAL
-# define S_IFLNK 0
-
- struct stat
- {
- /// always 0 on Windows platforms
- dev_t st_dev;
-
- /// always 0 on Windows platforms
- dev_t st_rdev;
-
- /// file attribute
- unsigned short st_mode;
-
- /// number of hard links
- short st_nlink;
-
- /// time of last access
- ACE_Time_Value st_atime;
-
- /// time of last data modification
- ACE_Time_Value st_mtime;
-
- /// time of creation
- ACE_Time_Value st_ctime;
-
- /// file size, in bytes
- ACE_OFF_T st_size;
-
- // Following members do not have direct conversion in Window platforms.
- //u_long st_blksize; // optimal blocksize for I/O
- //u_long st_flags; // user defined flags for file
- };
-#endif /* ACE_HAS_WINCE */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_STAT_H */
-
diff --git a/dep/include/ace/os_include/sys/os_statvfs.h b/dep/include/ace/os_include/sys/os_statvfs.h
deleted file mode 100644
index 6661aa437d9..00000000000
--- a/dep/include/ace/os_include/sys/os_statvfs.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_statvfs.h
- *
- * VFS File System information structure
- *
- * $Id: os_statvfs.h 81692 2008-05-14 12:25:02Z johnnyw $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_STATVFS_H
-#define ACE_OS_INCLUDE_SYS_OS_STATVFS_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_SYS_STATVFS_H)
-# include /**/ <sys/statvfs.h>
-#endif /* !ACE_LACKS_SYS_STATVFS_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_STATVFS_H */
-
diff --git a/dep/include/ace/os_include/sys/os_sysctl.h b/dep/include/ace/os_include/sys/os_sysctl.h
deleted file mode 100644
index 630c9de345b..00000000000
--- a/dep/include/ace/os_include/sys/os_sysctl.h
+++ /dev/null
@@ -1,42 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_sysctl.h
- *
- * declarations for sysctl
- *
- * $Id: os_sysctl.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Johnny Willemsen <jwillemsen@remedy.nl>
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_SYSCTL_H
-#define ACE_OS_INCLUDE_SYS_OS_SYSCTL_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_SYS_SYSCTL_H)
-# include /**/ <sys/sysctl.h>
-#endif /* !ACE_LACKS_SYS_SYSCTL_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_SYSCTL_H */
-
diff --git a/dep/include/ace/os_include/sys/os_sysinfo.h b/dep/include/ace/os_include/sys/os_sysinfo.h
deleted file mode 100644
index 19d57e984f9..00000000000
--- a/dep/include/ace/os_include/sys/os_sysinfo.h
+++ /dev/null
@@ -1,40 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_sysinfo.h
- *
- * $Id: os_sysinfo.h 81692 2008-05-14 12:25:02Z johnnyw $
- *
- * @author Johnny Willemsen <jwillemsen@remedy.nl>
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_SYSINFO_H
-#define ACE_OS_INCLUDE_SYS_OS_SYSINFO_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if defined (ACE_HAS_SYS_SYSINFO_H)
-# include /**/ <sys/sysinfo.h>
-#endif /* ACE_HAS_SYS_SYSINFO_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_SYSINFO_H */
-
diff --git a/dep/include/ace/os_include/sys/os_time.h b/dep/include/ace/os_include/sys/os_time.h
deleted file mode 100644
index 130a8265ac2..00000000000
--- a/dep/include/ace/os_include/sys/os_time.h
+++ /dev/null
@@ -1,61 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_time.h
- *
- * time types
- *
- * $Id: os_time.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_TIME_H
-#define ACE_OS_INCLUDE_SYS_OS_TIME_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-
-#if !defined (ACE_LACKS_SYS_TIME_H)
-# include /**/ <sys/time.h>
-#endif /* !ACE_LACKS_SYS_TIME_H */
-
-#if defined (ACE_VXWORKS) && (ACE_VXWORKS == 0x620)
-# include /**/ <time.h> // VxWorks 6.2 defined timeval in time.h
-#endif
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (ACE_HAS_SVR4_GETTIMEOFDAY)
-# if !defined (SCO)
- int gettimeofday (struct timeval *tp, void * = 0);
-# else
- int gettimeofday (struct timeval *tp);
-# endif /* !SCO */
-#elif defined (ACE_HAS_OSF1_GETTIMEOFDAY)
- int gettimeofday (struct timeval *tp, struct timezone * = 0);
-#elif defined (ACE_HAS_VOIDPTR_GETTIMEOFDAY)
-# define ACE_HAS_SVR4_GETTIMEOFDAY
-#endif /* ACE_HAS_SVR4_GETTIMEOFDAY */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_TIME_H */
-
diff --git a/dep/include/ace/os_include/sys/os_timeb.h b/dep/include/ace/os_include/sys/os_timeb.h
deleted file mode 100644
index c8c0d74043c..00000000000
--- a/dep/include/ace/os_include/sys/os_timeb.h
+++ /dev/null
@@ -1,50 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_timeb.h
- *
- * additional definitions for date and time
- *
- * $Id: os_timeb.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_TIMEB_H
-#define ACE_OS_INCLUDE_SYS_OS_TIMEB_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-
-#if !defined (ACE_LACKS_SYS_TIMEB_H)
-# include /**/ <sys/timeb.h>
-#endif /* !ACE_LACKS_SYS_TIMEB_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (__BORLANDC__) && (__BORLANDC__ <= 0x560)
-# define _ftime ftime
-# define _timeb timeb
-#endif /* __BORLANDC__ */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_TIMEB_H */
-
diff --git a/dep/include/ace/os_include/sys/os_times.h b/dep/include/ace/os_include/sys/os_times.h
deleted file mode 100644
index d6769f7eb8d..00000000000
--- a/dep/include/ace/os_include/sys/os_times.h
+++ /dev/null
@@ -1,45 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_times.h
- *
- * file access and modification times structure
- *
- * $Id: os_times.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_TIMES_H
-#define ACE_OS_INCLUDE_SYS_OS_TIMES_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-
-#if !defined (ACE_LACKS_SYS_TIMES_H)
-# include /**/ <sys/times.h>
-#endif /* !ACE_LACKS_SYS_TIMES_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_TIMES_H */
-
diff --git a/dep/include/ace/os_include/sys/os_types.h b/dep/include/ace/os_include/sys/os_types.h
deleted file mode 100644
index 0377e024b69..00000000000
--- a/dep/include/ace/os_include/sys/os_types.h
+++ /dev/null
@@ -1,159 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_types.h
- *
- * data types
- *
- * $Id: os_types.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_TYPES_H
-#define ACE_OS_INCLUDE_SYS_OS_TYPES_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_stddef.h"
-
-#if !defined (ACE_LACKS_SYS_TYPES_H)
-# include /**/ <sys/types.h>
-#endif /* !ACE_LACKS_SYS_TYPES_H */
-
-#if defined (ACE_HAS_WINCE)
-# include /**/ <types.h>
-#endif /* ACE_HAS_WINCE */
-
-# if defined (ACE_USES_STD_NAMESPACE_FOR_STDC_LIB) && \
- (ACE_USES_STD_NAMESPACE_FOR_STDC_LIB != 0)
-using std::time_t;
-# endif /* ACE_USES_STD_NAMESPACE_FOR_STDC_LIB */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-typedef double ACE_timer_t;
-
-// todo: don't forget to clean this up! ;-)
-#if !defined (ACE_HAS_CLOCK_GETTIME) && !(defined (_CLOCKID_T_) || defined (_CLOCKID_T))
- typedef int clockid_t;
-# if !defined (CLOCK_REALTIME)
-# define CLOCK_REALTIME 0
-# endif /* CLOCK_REALTIME */
-#endif /* ! ACE_HAS_CLOCK_GETTIME && ! _CLOCKID_T_ */
-
-#if defined (ACE_HAS_WINCE)
-
-// CE's add-on for c-style fstat/stat functionalities. This struct is
-// by no mean complete compared to what you usually find in UNIX
-// platforms. Only members that have direct conversion using Win32's
-// BY_HANDLE_FILE_INFORMATION are defined so that users can discover
-// non-supported members at compile time. Time values are of type
-// ACE_Time_Value for easy comparison.
-
-// Since CE does not have _stat by default as NT/2000 does, the 'stat'
-// struct defined here will be used. Also note that CE file system
-// struct is only for the CE 3.0 or later.
-// Refer to the WCHAR.H from Visual C++ and WIBASE.H from eVC 3.0.
-
- typedef unsigned int dev_t;
-#endif /* ACE_HAS_WINCE */
-
-#if defined(ACE_WIN32) && defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS==64)
- typedef __int64 ACE_OFF_T;
-#else
- typedef off_t ACE_OFF_T;
-#endif
-
-#if defined (ACE_SIZEOF_LONG) && ACE_SIZEOF_LONG == 8
- typedef off_t ACE_LOFF_T;
-#elif defined (ACE_HAS_RTEMS) || defined (__FreeBSD__) || defined (__NetBSD__) || defined (__OpenBSD__) || defined (__APPLE__) || \
- (defined (ACE_OPENVMS) && defined (_LARGEFILE)) || defined(ACE_MVS)
- typedef off_t ACE_LOFF_T;
-#elif defined (__sgi) || defined (AIX) || defined (HPUX) || defined (__QNX__)
- typedef off64_t ACE_LOFF_T;
-#elif defined (__sun)
- typedef offset_t ACE_LOFF_T;
-#elif defined (WIN32)
- typedef __int64 ACE_LOFF_T;
-#elif (defined (ACE_VXWORKS) && (ACE_VXWORKS <= 0x660)) || \
- defined (ACE_LYNXOS_MAJOR) || \
- (defined (ACE_OPENVMS) && !defined (_LARGEFILE)) || \
- defined (__TANDEM)
- typedef long long ACE_LOFF_T;
-#else
- typedef loff_t ACE_LOFF_T;
-#endif
-
-#if defined (ACE_WIN32)
-# if !defined (__BORLANDC__)
- typedef DWORD nlink_t;
-# if !defined(__MINGW32__)
- typedef int mode_t;
-# endif /* !__MINGW32__ */
- typedef long uid_t;
- typedef long gid_t;
-# endif /* __BORLANDC__ */
- typedef char *caddr_t;
-#endif /* ACE_WIN32 */
-
-#if defined (ACE_LACKS_KEY_T)
-# if defined (ACE_WIN32)
- // Win32 doesn't use numeric values to name its semaphores, it uses
- // strings!
- typedef char *key_t;
-# else
- typedef int key_t;
-# endif /* ACE_WIN32 */
-#endif /* ACE_LACKS_KEY_T */
-
-#if !defined (ACE_HAS_SSIZE_T)
-# if defined (ACE_WIN64)
- typedef SSIZE_T ssize_t;
-# else
- typedef int ssize_t;
-# endif /* ACE_WIN64 */
-#endif /* ACE_HAS_SSIZE_T */
-
-#if defined (ACE_WIN32)
- typedef DWORD ACE_exitcode;
-#else
- typedef int ACE_exitcode;
-#endif /* ACE_WIN32 */
-
-#if defined (ACE_LACKS_SUSECONDS_T)
- typedef long suseconds_t;
-#endif
-
-#if defined (ACE_LACKS_USECONDS_T)
- typedef unsigned long useconds_t;
-#endif
-
-#if defined (ACE_WIN32) && !defined(__MINGW32__)
- typedef int pid_t;
-#endif /* ACE_WIN32 */
-
-# if !defined (ACE_INVALID_PID)
-# define ACE_INVALID_PID ((pid_t) -1)
-# endif /* ACE_INVALID_PID */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_TYPES_H */
-
diff --git a/dep/include/ace/os_include/sys/os_uio.h b/dep/include/ace/os_include/sys/os_uio.h
deleted file mode 100644
index 72a2819e524..00000000000
--- a/dep/include/ace/os_include/sys/os_uio.h
+++ /dev/null
@@ -1,77 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_uio.h
- *
- * definitions for vector I/O operations
- *
- * $Id: os_uio.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_UIO_H
-#define ACE_OS_INCLUDE_SYS_OS_UIO_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_types.h"
-#include "ace/os_include/os_limits.h"
-
-#if !defined (ACE_LACKS_SYS_UIO_H)
-# include /**/ <sys/uio.h>
-#endif /* !ACE_LACKS_SYS_UIO_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (ACE_LACKS_IOVEC)
- /// The ordering of the fields in this struct is important. It has to
- /// match those in WSABUF.
- struct iovec
- {
- /// byte count to read/write
- u_long iov_len;
- /// data to be read/written
- char *iov_base;
-
- // WSABUF is a Winsock2-only type.
-# if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
- operator WSABUF &(void) { return *((WSABUF *) this); }
-# endif /* defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0) */
- };
-#endif /* ACE_LACKS_IOVEC */
-
-# if defined (ACE_LACKS_TIMEDWAIT_PROTOTYPES)
-
- ssize_t readv_timedwait (ACE_HANDLE handle,
- const iovec *iov,
- int iovcnt,
- struct timespec* timeout);
-
- ssize_t writev_timedwait (ACE_HANDLE handle,
- const iovec *iov,
- int iovcnt,
- struct timespec *timeout);
-
-# endif /* ACE_LACKS_TIMEDWAIT_PROTOTYPES */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_UIO_H */
-
diff --git a/dep/include/ace/os_include/sys/os_un.h b/dep/include/ace/os_include/sys/os_un.h
deleted file mode 100644
index 88d86a232a6..00000000000
--- a/dep/include/ace/os_include/sys/os_un.h
+++ /dev/null
@@ -1,52 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_un.h
- *
- * definitions for UNIX domain sockets
- *
- * $Id: os_un.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_UN_H
-#define ACE_OS_INCLUDE_SYS_OS_UN_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/sys/os_socket.h"
-
-#if !defined (ACE_LACKS_SYS_UN_H)
-# include /**/ <sys/un.h>
-#endif /* !ACE_LACKS_SYS_UN_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#if defined (ACE_VXWORKS) && (ACE_VXWORKS <= 0x600)
-struct sockaddr_un {
- short sun_family; // AF_UNIX.
- char sun_path[108]; // path name.
-};
-#endif /* ACE_VXWORKS */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_UN_H */
-
diff --git a/dep/include/ace/os_include/sys/os_utsname.h b/dep/include/ace/os_include/sys/os_utsname.h
deleted file mode 100644
index 23748bb7160..00000000000
--- a/dep/include/ace/os_include/sys/os_utsname.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_utsname.h
- *
- * system name structure
- *
- * $Id: os_utsname.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_UTSNAME_H
-#define ACE_OS_INCLUDE_SYS_OS_UTSNAME_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#if !defined (ACE_LACKS_SYS_UTSNAME_H)
-# include /**/ <sys/utsname.h>
-#endif /* !ACE_LACKS_SYS_UTSNAME_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_UTSNAME_H */
-
diff --git a/dep/include/ace/os_include/sys/os_wait.h b/dep/include/ace/os_include/sys/os_wait.h
deleted file mode 100644
index fd42e2cdf90..00000000000
--- a/dep/include/ace/os_include/sys/os_wait.h
+++ /dev/null
@@ -1,98 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file os_wait.h
- *
- * declarations for waiting
- *
- * $Id: os_wait.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Don Hinton <dhinton@dresystems.com>
- * @author This code was originally in various places including ace/OS.h.
- */
-//=============================================================================
-
-#ifndef ACE_OS_INCLUDE_SYS_OS_WAIT_H
-#define ACE_OS_INCLUDE_SYS_OS_WAIT_H
-
-#include /**/ "ace/pre.h"
-
-#include "ace/config-lite.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "ace/os_include/os_signal.h"
-#include "ace/os_include/sys/os_resource.h"
-
-#if !defined (ACE_LACKS_SYS_WAIT_H)
-# include /**/ <sys/wait.h>
-#endif /* !ACE_LACKS_SYS_WAIT_H */
-
-// Place all additions (especially function declarations) within extern "C" {}
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
- // Wrapping around wait status <wstat> macros for platforms that
- // lack them.
-
-# if !defined (WCOREDUMP)
-# define WCOREDUMP(stat) 0
-# endif /* WCOREDUMP */
-
-# if !defined (WNOHANG)
-# define WNOHANG 0100
-# endif /* !WNOHANG */
-
- // If the value of WIFEXITED(stat) is non-zero, this macro evaluates
- // to the exit code that the child process exit(3C), or the value
- // that the child process returned from main. Peaceful exit code is
- // 0.
-# if !defined (WEXITSTATUS)
-# define WEXITSTATUS(stat) stat
-# endif /* WEXITSTATUS */
-
-# if !defined (WIFCONTINUED)
-# define WIFCONTINUED(stat) 0
-# endif /* WIFCONTINUED */
-
- // Evaluates to a non-zero value if status was returned for a child
- // process that terminated normally. 0 means status wasn't
- // returned.
-# if !defined (WIFEXITED)
-# define WIFEXITED(stat) 1
-# endif /* WIFEXITED */
-
- // Evaluates to a non-zero value if status was returned for a child
- // process that terminated due to the receipt of a signal. 0 means
- // status wasnt returned.
-# if !defined (WIFSIGNALED)
-# define WIFSIGNALED(stat) 0
-# endif /* WIFSIGNALED */
-
-# if !defined (WIFSTOPPED)
-# define WIFSTOPPED(stat) 0
-# endif /* WIFSTOPPED */
-
-# if !defined (WSTOPSIG)
-# define WSTOPSIG(stat) 0
-# endif /* WSTOPSIG */
-
- // If the value of WIFSIGNALED(stat) is non-zero, this macro
- // evaluates to the number of the signal that caused the
- // termination of the child process.
-# if !defined (WTERMSIG)
-# define WTERMSIG(stat) 0
-# endif /* WTERMSIG */
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_OS_INCLUDE_SYS_OS_WAIT_H */
-
diff --git a/dep/include/ace/post.h b/dep/include/ace/post.h
deleted file mode 100644
index 7c77af216ad..00000000000
--- a/dep/include/ace/post.h
+++ /dev/null
@@ -1,23 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file post.h
- *
- * $Id: post.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Christopher Kohlhoff <chris@kohlhoff.com>
- *
- * This file restores the original alignment rules.
- */
-//=============================================================================
-
-// No header guard
-#if defined (_MSC_VER)
-# pragma pack (pop)
-#elif defined (__BORLANDC__)
-# pragma option pop
-# pragma nopushoptwarn
-# pragma nopackwarning
-#endif
-
diff --git a/dep/include/ace/pre.h b/dep/include/ace/pre.h
deleted file mode 100644
index 6984b22804e..00000000000
--- a/dep/include/ace/pre.h
+++ /dev/null
@@ -1,26 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file pre.h
- *
- * $Id: pre.h 80826 2008-03-04 14:51:23Z wotte $
- *
- * @author Christopher Kohlhoff <chris@kohlhoff.com>
- *
- * This file saves the original alignment rules and changes the alignment
- * boundary to ACE's default.
- */
-//=============================================================================
-
-// No header guard
-#if defined (_MSC_VER)
-# pragma warning (disable:4103)
-# pragma warning (disable:4005)
-# pragma pack (push, 8)
-#elif defined (__BORLANDC__)
-# pragma option push -a8 -b -Ve- -Vx- -w-rvl -w-rch -w-ccc -w-obs -w-aus -w-pia -w-inl -w-sig
-# pragma nopushoptwarn
-# pragma nopackwarning
-#endif
-
diff --git a/dep/include/ace/streams.h b/dep/include/ace/streams.h
deleted file mode 100644
index 3401435b4b1..00000000000
--- a/dep/include/ace/streams.h
+++ /dev/null
@@ -1,137 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file streams.h
- *
- * $Id: streams.h 82445 2008-07-28 13:40:01Z johnnyw $
- *
- * @author Irfan Pyarali
- *
- * This file contains the portability ugliness for the Standard C++
- * Library. As implementations of the "standard" emerge, this file
- * will need to be updated.
- *
- * This files deals with the streams includes.
- *
- *
- */
-//=============================================================================
-
-#ifndef ACE_STREAMS_H
-#define ACE_STREAMS_H
-#include /**/ "ace/pre.h"
-
-#include /**/ "ace/config-all.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-// Do this so the #pragma warning in the MSVC headers do not
-// affect our #pragma warning settings
-#if defined (_MSC_VER)
-#pragma warning(push)
-#endif /* _MSC_VER*/
-
-#if !defined (ACE_LACKS_IOSTREAM_TOTALLY)
-
-# if defined (ACE_HAS_STANDARD_CPP_LIBRARY) && \
- (ACE_HAS_STANDARD_CPP_LIBRARY != 0)
-
-# if defined (_MSC_VER)
-# pragma warning(disable: 4018 4114 4146 4245)
-# pragma warning(disable: 4663 4664 4665 4511 4512)
-# endif /* _MSC_VER */
-
-# if defined (ACE_USES_OLD_IOSTREAMS)
-# include /**/ <iostream.h>
-# include /**/ <fstream.h>
- // This has been commented as it is not needed and causes problems with Qt.
- // (brunsch) But has been uncommented since it should be included. Qt
- // probably should have some sort of macro that will prevent including this
- // when it is used.
-# include /**/ <iomanip.h>
-# else
-# include /**/ <iostream>
-# include /**/ <fstream>
-# include /**/ <istream>
-# include /**/ <ostream>
-# include /**/ <streambuf>
-# include /**/ <iomanip>
-# include /**/ <ios>
-# endif /* ACE_USES_OLD_IOSTREAMS */
-
-# if defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB) && \
- (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB != 0)
-
-# if !defined (ACE_USES_OLD_IOSTREAMS)
- // Make these available in the global name space
- using std::ios;
- using std::ios_base;
- using std::streambuf;
- using std::istream;
- using std::ostream;
- using std::iostream;
- using std::filebuf;
- using std::ifstream;
- using std::ofstream;
- using std::fstream;
-
- using std::cin;
- using std::cout;
- using std::cerr;
- using std::clog;
-
- using std::endl;
- using std::ends;
- using std::flush;
-
- using std::ws;
-
- using std::resetiosflags;
- using std::setfill;
- using std::setiosflags;
- using std::setprecision;
- using std::setw;
-
- using std::dec;
- using std::hex;
- using std::oct;
-# endif /* ! ACE_USES_OLD_IOSTREAMS */
-
-# endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
-
-# if defined (_MSC_VER)
-# pragma warning(4: 4018 4114 4146 4245)
-# pragma warning(4: 4663 4664 4665 4512 4511)
-# endif /* _MSC_VER */
-
-# else /* ! ACE_HAS_STANDARD_CPP_LIBRARY */
-
-# include /**/ <fstream.h>
-# include /**/ <iostream.h>
-# include /**/ <iomanip.h>
-
-# if defined (ACE_WIN32) && !defined(__MINGW32__)
-# if defined(_MSC_VER) // VSB
-# include /**/ <ios.h>
-# include /**/ <streamb.h>
-# include /**/ <istream.h>
-# include /**/ <ostream.h>
-# endif /* _MSC_VER */
-# endif /* ACE_WIN32 && !__MINGW32__ */
-
-# endif /* ! ACE_HAS_STANDARD_CPP_LIBRARY */
-
-#endif /* ! ACE_LACKS_IOSTREAM_TOTALLY */
-
-// Do this so the #pragma warning in the MSVC headers do not
-// affect our #pragma warning settings
-#if defined (_MSC_VER)
-#pragma warning(pop)
-#endif /* _MSC_VER */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_STREAMS_H */
-
diff --git a/dep/include/ace/svc_export.h b/dep/include/ace/svc_export.h
deleted file mode 100644
index 33fa67cd80b..00000000000
--- a/dep/include/ace/svc_export.h
+++ /dev/null
@@ -1,45 +0,0 @@
-// -*- C++ -*-
-// $Id: svc_export.h 80826 2008-03-04 14:51:23Z wotte $
-// Definition for Win32 Export directives.
-
-// This file was generated by generate_export_file.pl
-// but needed to be altered to support ACE_BUILD_SVC_DLL
-// instead of ACE_SVC_BUILD_DLL which was already being
-// used.
-
-// ------------------------------
-#if !defined (ACE_SVC_EXPORT_H)
-#define ACE_SVC_EXPORT_H
-
-#include /**/ "ace/config-all.h"
-
-#if defined (ACE_AS_STATIC_LIBS) && !defined (ACE_SVC_HAS_DLL)
-# define ACE_SVC_HAS_DLL 0
-#endif /* ACE_AS_STATIC_LIBS && ACE_SVC_HAS_DLL */
-
-#if !defined (ACE_SVC_HAS_DLL)
-#define ACE_SVC_HAS_DLL 1
-#endif /* ! ACE_SVC_HAS_DLL */
-
-#if defined (ACE_SVC_HAS_DLL)
-# if (ACE_SVC_HAS_DLL == 1)
-# if defined (ACE_BUILD_SVC_DLL) || defined (ACE_SVC_BUILD_DLL)
-# define ACE_Svc_Export ACE_Proper_Export_Flag
-# define ACE_SVC_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
-# else
-# define ACE_Svc_Export ACE_Proper_Import_Flag
-# define ACE_SVC_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
-# endif /* ACE_BUILD_SVC_DLL */
-# else
-# define ACE_Svc_Export
-# define ACE_SVC_SINGLETON_DECLARATION(T)
-# endif /* ! ACE_SVC_HAS_DLL == 1 */
-#else
-# define ACE_Svc_Export
-# define ACE_SVC_SINGLETON_DECLARATION(T)
-#endif /* ACE_SVC_HAS_DLL */
-
-#endif /* ACE_SVC_EXPORT_H */
-
-// End of auto generated file.
-