summaryrefslogtreecommitdiff
path: root/cpp
diff options
context:
space:
mode:
authorStephen D. Huston <shuston@apache.org>2009-02-20 00:04:37 +0000
committerStephen D. Huston <shuston@apache.org>2009-02-20 00:04:37 +0000
commitd4b433f542ab8a506d7dbc53e685770a96ee7958 (patch)
treef0b7d7c643825f279c45f74a8c17f7b0753b53de /cpp
parent44ff0feac9edbf7faffdeed5a3df22313e0543c8 (diff)
downloadqpid-python-d4b433f542ab8a506d7dbc53e685770a96ee7958.tar.gz
Merged win-pollable-condition branch changes 743545:746056 into trunk
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@746061 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp')
-rw-r--r--cpp/src/Makefile.am2
-rw-r--r--cpp/src/common.vcproj1695
-rw-r--r--cpp/src/qpid/sys/PollableCondition.h54
-rw-r--r--cpp/src/qpid/sys/PollableQueue.h46
-rw-r--r--cpp/src/qpid/sys/posix/PollableCondition.cpp119
-rw-r--r--cpp/src/qpid/sys/posix/PollableCondition.h56
-rw-r--r--cpp/src/qpid/sys/windows/PollableCondition.cpp125
-rw-r--r--cpp/src/tests/QueueEvents.cpp1
8 files changed, 1401 insertions, 697 deletions
diff --git a/cpp/src/Makefile.am b/cpp/src/Makefile.am
index d5b53dc502..5d50756ec1 100644
--- a/cpp/src/Makefile.am
+++ b/cpp/src/Makefile.am
@@ -41,6 +41,7 @@ windows_dist = \
qpid/sys/windows/IOHandle.cpp \
qpid/sys/windows/IoHandlePrivate.h \
qpid/sys/windows/LockFile.cpp \
+ qpid/sys/windows/PollableCondition.cpp \
qpid/sys/windows/Mutex.h \
qpid/sys/windows/Shlib.cpp \
qpid/sys/windows/Socket.cpp \
@@ -139,7 +140,6 @@ posix_plat_hdr = \
qpid/sys/posix/PrivatePosix.h \
qpid/sys/posix/Mutex.h \
qpid/sys/posix/Fork.h \
- qpid/sys/posix/PollableCondition.h \
qpid/sys/posix/IntegerTypes.h \
qpid/sys/posix/Time.h
diff --git a/cpp/src/common.vcproj b/cpp/src/common.vcproj
index e8c40da426..c074afad53 100644
--- a/cpp/src/common.vcproj
+++ b/cpp/src/common.vcproj
@@ -1,25 +1,4 @@
<?xml version="1.0" encoding="Windows-1252"?>
-<!--
-
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
--->
-
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
@@ -27,7 +6,7 @@
ProjectGUID="{C961EF23-FECA-1BAD-BB9C-8C3A4564ADCF}"
RootNamespace="common"
Keyword="Win32Proj"
- SignManifests="true"
+ TargetFrameworkVersion="0"
>
<Platforms>
<Platform
@@ -46,7 +25,6 @@
IntermediateDirectory="Static_Debug\common\I386"
ConfigurationType="4"
CharacterSet="0"
-
>
<Tool
Name="VCPreBuildEventTool"
@@ -73,7 +51,7 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,.,gen"
- PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
+ PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
MinimalRebuild="false"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
@@ -116,12 +94,11 @@
/>
</Configuration>
<Configuration
- Name="Release|Win32"
+ Name="Debug|x64"
OutputDirectory="."
- IntermediateDirectory="Static_Release\common\I386"
+ IntermediateDirectory="Static_Debug\common\AMD64"
ConfigurationType="4"
CharacterSet="0"
-
>
<Tool
Name="VCPreBuildEventTool"
@@ -146,13 +123,16 @@
/>
<Tool
Name="VCCLCompilerTool"
- Optimization="2"
+ Optimization="0"
AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,.,gen"
- PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
- RuntimeLibrary="0"
+ PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;_CRT_NONSTDC_NO_WARNINGS;_AMD64_;_WIN64;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
+ MinimalRebuild="false"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="1"
RuntimeTypeInfo="true"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
DisableSpecificWarnings="4244;4800;4355"
/>
<Tool
@@ -160,7 +140,7 @@
/>
<Tool
Name="VCResourceCompilerTool"
- PreprocessorDefinitions="NDEBUG;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
+ PreprocessorDefinitions="_DEBUG;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;_WIN64"
Culture="1033"
AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,.,gen"
/>
@@ -169,7 +149,7 @@
/>
<Tool
Name="VCLibrarianTool"
- OutputFile=".\qpidcommons.lib"
+ OutputFile=".\qpidcommonsd.lib"
/>
<Tool
Name="VCALinkTool"
@@ -188,12 +168,11 @@
/>
</Configuration>
<Configuration
- Name="Debug|x64"
+ Name="Release|Win32"
OutputDirectory="."
- IntermediateDirectory="Static_Debug\common\AMD64"
+ IntermediateDirectory="Static_Release\common\I386"
ConfigurationType="4"
CharacterSet="0"
-
>
<Tool
Name="VCPreBuildEventTool"
@@ -218,16 +197,13 @@
/>
<Tool
Name="VCCLCompilerTool"
- Optimization="0"
+ Optimization="2"
AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,.,gen"
- PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;_CRT_NONSTDC_NO_WARNINGS;_AMD64_;_WIN64;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
- MinimalRebuild="false"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
+ PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
+ RuntimeLibrary="0"
RuntimeTypeInfo="true"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
DisableSpecificWarnings="4244;4800;4355"
/>
<Tool
@@ -235,7 +211,7 @@
/>
<Tool
Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;_WIN64"
+ PreprocessorDefinitions="NDEBUG;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
Culture="1033"
AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,.,gen"
/>
@@ -244,7 +220,7 @@
/>
<Tool
Name="VCLibrarianTool"
- OutputFile=".\qpidcommonsd.lib"
+ OutputFile=".\qpidcommons.lib"
/>
<Tool
Name="VCALinkTool"
@@ -268,7 +244,6 @@
IntermediateDirectory="Static_Release\common\AMD64"
ConfigurationType="4"
CharacterSet="0"
-
>
<Tool
Name="VCPreBuildEventTool"
@@ -295,7 +270,7 @@
Name="VCCLCompilerTool"
Optimization="2"
AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,.,gen"
- PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;_CRT_NONSTDC_NO_WARNINGS;_AMD64_;_WIN64;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
+ PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;_CRT_NONSTDC_NO_WARNINGS;_AMD64_;_WIN64;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
RuntimeLibrary="0"
RuntimeTypeInfo="true"
WarningLevel="3"
@@ -340,1534 +315,2048 @@
<Files>
<Filter
Name="Source Files"
- Filter="cpp;cxx;cc;C;c">
+ Filter="cpp;cxx;cc;C;c"
+ >
+ <File
+ RelativePath="qpid\framing\AccumulatedAck.cpp"
+ >
+ </File>
<File
- RelativePath="gen\qpid\framing\AllInvoker.cpp">
+ RelativePath="qpid\Address.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\AMQP_AllProxy.cpp">
+ RelativePath="qpid\sys\AggregateOutput.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\AMQP_ClientProxy.cpp">
+ RelativePath="gen\qpid\framing\AllInvoker.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\AMQP_ServerProxy.cpp">
+ RelativePath="qpid\framing\AMQBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClientInvoker.cpp">
+ RelativePath="qpid\framing\AMQContentBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConfigChangeBody.cpp">
+ RelativePath="qpid\framing\AMQFrame.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionAccumulatedAckBody.cpp">
+ RelativePath="qpid\framing\AMQHeaderBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionConsumerStateBody.cpp">
+ RelativePath="qpid\framing\AMQHeartbeatBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionDeliverCloseBody.cpp">
+ RelativePath="qpid\framing\AMQMethodBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionDeliverDoOutputBody.cpp">
+ RelativePath="gen\qpid\framing\AMQP_AllProxy.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionDeliveryRecordBody.cpp">
+ RelativePath="gen\qpid\framing\AMQP_ClientProxy.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionExchangeBody.cpp">
+ RelativePath="qpid\framing\AMQP_HighestVersion.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionMembershipBody.cpp">
+ RelativePath="gen\qpid\framing\AMQP_ServerProxy.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionQueueBody.cpp">
+ RelativePath="qpid\framing\Array.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionQueuePositionBody.cpp">
+ RelativePath="qpid\assert.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionSessionStateBody.cpp">
+ RelativePath="qpid\assert.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionShadowReadyBody.cpp">
+ RelativePath="qpid\sys\windows\AsynchIO.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionTxAcceptBody.cpp">
+ RelativePath="qpid\sys\AsynchIOHandler.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionTxDequeueBody.cpp">
+ RelativePath="qpid\framing\BodyHandler.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionTxEndBody.cpp">
+ RelativePath="qpid\framing\Buffer.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionTxEnqueueBody.cpp">
+ RelativePath="gen\qpid\framing\ClientInvoker.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionTxPublishBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterConfigChangeBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionTxStartBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterConnectionAccumulatedAckBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterMessageExpiredBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterConnectionConsumerStateBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterReadyBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterConnectionDeliverCloseBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterShutdownBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterConnectionDeliverDoOutputBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterUpdateOfferBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterConnectionDeliveryRecordBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterUpdateRequestBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterConnectionExchangeBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionCloseBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterConnectionMembershipBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionCloseOkBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterConnectionQueueBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionHeartbeatBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterConnectionQueuePositionBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionOpenBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterConnectionSessionStateBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionOpenOkBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterConnectionShadowReadyBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionRedirectBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterConnectionTxAcceptBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionSecureBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterConnectionTxDequeueBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionSecureOkBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterConnectionTxEndBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionStartBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterConnectionTxEnqueueBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionStartOkBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterConnectionTxPublishBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionTuneBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterConnectionTxStartBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionTuneOkBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterMessageExpiredBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DeliveryProperties.cpp">
+ RelativePath="gen\qpid\framing\ClusterReadyBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxCommitBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterShutdownBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxEndBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterUpdateOfferBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxForgetBody.cpp">
+ RelativePath="gen\qpid\framing\ClusterUpdateRequestBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxGetTimeoutBody.cpp">
+ RelativePath="gen\qpid\framing\ConnectionCloseBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxGetTimeoutResult.cpp">
+ RelativePath="gen\qpid\framing\ConnectionCloseOkBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxPrepareBody.cpp">
+ RelativePath="gen\qpid\framing\ConnectionHeartbeatBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxRecoverBody.cpp">
+ RelativePath="gen\qpid\framing\ConnectionOpenBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxRecoverResult.cpp">
+ RelativePath="gen\qpid\framing\ConnectionOpenOkBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxRollbackBody.cpp">
+ RelativePath="gen\qpid\framing\ConnectionRedirectBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxSelectBody.cpp">
+ RelativePath="gen\qpid\framing\ConnectionSecureBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxSetTimeoutBody.cpp">
+ RelativePath="gen\qpid\framing\ConnectionSecureOkBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxStartBody.cpp">
+ RelativePath="gen\qpid\framing\ConnectionStartBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExchangeBindBody.cpp">
+ RelativePath="gen\qpid\framing\ConnectionStartOkBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExchangeBoundBody.cpp">
+ RelativePath="gen\qpid\framing\ConnectionTuneBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExchangeBoundResult.cpp">
+ RelativePath="gen\qpid\framing\ConnectionTuneOkBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExchangeDeclareBody.cpp">
+ RelativePath="qpid\DataDir.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExchangeDeleteBody.cpp">
+ RelativePath="gen\qpid\framing\DeliveryProperties.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExchangeQueryBody.cpp">
+ RelativePath="qpid\sys\Dispatcher.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExchangeQueryResult.cpp">
+ RelativePath="gen\qpid\framing\DtxCommitBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExchangeUnbindBody.cpp">
+ RelativePath="gen\qpid\framing\DtxEndBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExecutionExceptionBody.cpp">
+ RelativePath="gen\qpid\framing\DtxForgetBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExecutionResultBody.cpp">
+ RelativePath="gen\qpid\framing\DtxGetTimeoutBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExecutionSyncBody.cpp">
+ RelativePath="gen\qpid\framing\DtxGetTimeoutResult.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileAckBody.cpp">
+ RelativePath="gen\qpid\framing\DtxPrepareBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileCancelBody.cpp">
+ RelativePath="gen\qpid\framing\DtxRecoverBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileConsumeBody.cpp">
+ RelativePath="gen\qpid\framing\DtxRecoverResult.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileConsumeOkBody.cpp">
+ RelativePath="gen\qpid\framing\DtxRollbackBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileDeliverBody.cpp">
+ RelativePath="gen\qpid\framing\DtxSelectBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileOpenBody.cpp">
+ RelativePath="gen\qpid\framing\DtxSetTimeoutBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileOpenOkBody.cpp">
+ RelativePath="gen\qpid\framing\DtxStartBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileProperties.cpp">
+ RelativePath="qpid\framing\Endian.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FilePublishBody.cpp">
+ RelativePath="qpid\Exception.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileQosBody.cpp">
+ RelativePath="gen\qpid\framing\ExchangeBindBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileQosOkBody.cpp">
+ RelativePath="gen\qpid\framing\ExchangeBoundBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileRejectBody.cpp">
+ RelativePath="gen\qpid\framing\ExchangeBoundResult.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileReturnBody.cpp">
+ RelativePath="gen\qpid\framing\ExchangeDeclareBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileStageBody.cpp">
+ RelativePath="gen\qpid\framing\ExchangeDeleteBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FragmentProperties.cpp">
+ RelativePath="gen\qpid\framing\ExchangeQueryBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\Header.cpp">
+ RelativePath="gen\qpid\framing\ExchangeQueryResult.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageAcceptBody.cpp">
+ RelativePath="gen\qpid\framing\ExchangeUnbindBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageAcquireBody.cpp">
+ RelativePath="gen\qpid\framing\ExecutionExceptionBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageAcquireResult.cpp">
+ RelativePath="gen\qpid\framing\ExecutionResultBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageCancelBody.cpp">
+ RelativePath="gen\qpid\framing\ExecutionSyncBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageFlowBody.cpp">
+ RelativePath="qpid\framing\FieldTable.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageFlushBody.cpp">
+ RelativePath="qpid\framing\FieldValue.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageProperties.cpp">
+ RelativePath="gen\qpid\framing\FileAckBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageRejectBody.cpp">
+ RelativePath="gen\qpid\framing\FileCancelBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageReleaseBody.cpp">
+ RelativePath="gen\qpid\framing\FileConsumeBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageResumeBody.cpp">
+ RelativePath="gen\qpid\framing\FileConsumeOkBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageResumeResult.cpp">
+ RelativePath="gen\qpid\framing\FileDeliverBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageSetFlowModeBody.cpp">
+ RelativePath="gen\qpid\framing\FileOpenBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageStopBody.cpp">
+ RelativePath="gen\qpid\framing\FileOpenOkBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageSubscribeBody.cpp">
+ RelativePath="gen\qpid\framing\FileProperties.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageTransferBody.cpp">
+ RelativePath="gen\qpid\framing\FilePublishBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MethodBodyDefaultVisitor.cpp">
+ RelativePath="gen\qpid\framing\FileQosBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MethodBodyFactory.cpp">
+ RelativePath="gen\qpid\framing\FileQosOkBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\QueueDeclareBody.cpp">
+ RelativePath="gen\qpid\framing\FileRejectBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\QueueDeleteBody.cpp">
+ RelativePath="gen\qpid\framing\FileReturnBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\QueuePurgeBody.cpp">
+ RelativePath="gen\qpid\framing\FileStageBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\QueueQueryBody.cpp">
+ RelativePath="qpid\sys\windows\FileSysDir.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\QueueQueryResult.cpp">
+ RelativePath="gen\qpid\framing\FragmentProperties.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\reply_exceptions.cpp">
+ RelativePath="qpid\framing\FrameDecoder.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ReplyTo.cpp">
+ RelativePath="qpid\framing\FrameSet.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ServerInvoker.cpp">
+ RelativePath="gen\qpid\framing\Header.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionAttachBody.cpp">
+ RelativePath="qpid\sys\windows\IocpPoller.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionAttachedBody.cpp">
+ RelativePath="qpid\sys\windows\IOHandle.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionCommandPointBody.cpp">
+ RelativePath="qpid\sys\LatencyMetric.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionCompletedBody.cpp">
+ RelativePath="qpid\sys\windows\LockFile.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionConfirmedBody.cpp">
+ RelativePath="qpid\log\Logger.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionDetachBody.cpp">
+ RelativePath="qpid\management\Manageable.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionDetachedBody.cpp">
+ RelativePath="qpid\management\ManagementObject.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionExpectedBody.cpp">
+ RelativePath="gen\qpid\framing\MessageAcceptBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionFlushBody.cpp">
+ RelativePath="gen\qpid\framing\MessageAcquireBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionGapBody.cpp">
+ RelativePath="gen\qpid\framing\MessageAcquireResult.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionKnownCompletedBody.cpp">
+ RelativePath="gen\qpid\framing\MessageCancelBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionRequestTimeoutBody.cpp">
+ RelativePath="gen\qpid\framing\MessageFlowBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionTimeoutBody.cpp">
+ RelativePath="gen\qpid\framing\MessageFlushBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\StreamCancelBody.cpp">
+ RelativePath="gen\qpid\framing\MessageProperties.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\StreamConsumeBody.cpp">
+ RelativePath="gen\qpid\framing\MessageRejectBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\StreamConsumeOkBody.cpp">
+ RelativePath="gen\qpid\framing\MessageReleaseBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\StreamDeliverBody.cpp">
+ RelativePath="gen\qpid\framing\MessageResumeBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\StreamProperties.cpp">
+ RelativePath="gen\qpid\framing\MessageResumeResult.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\StreamPublishBody.cpp">
+ RelativePath="gen\qpid\framing\MessageSetFlowModeBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\StreamQosBody.cpp">
+ RelativePath="gen\qpid\framing\MessageStopBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\StreamQosOkBody.cpp">
+ RelativePath="gen\qpid\framing\MessageSubscribeBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\StreamReturnBody.cpp">
+ RelativePath="gen\qpid\framing\MessageTransferBody.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\TxCommitBody.cpp">
+ RelativePath="gen\qpid\framing\MethodBodyDefaultVisitor.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\TxRollbackBody.cpp">
+ RelativePath="gen\qpid\framing\MethodBodyFactory.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\TxSelectBody.cpp">
+ RelativePath="qpid\Modules.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\TypeCode.cpp">
+ RelativePath="qpid\Options.cpp"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ ObjectFile="$(IntDir)\$(InputName)2.obj"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|x64"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ ObjectFile="$(IntDir)\$(InputName)2.obj"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ ObjectFile="$(IntDir)\$(InputName)2.obj"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|x64"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ ObjectFile="$(IntDir)\$(InputName)2.obj"
+ />
+ </FileConfiguration>
</File>
<File
- RelativePath="gen\qpid\framing\XaResult.cpp">
+ RelativePath="qpid\log\Options.cpp"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\Xid.cpp">
+ RelativePath="qpid\log\OstreamOutput.cpp"
+ >
</File>
<File
- RelativePath="qpid\Address.cpp">
+ RelativePath="qpid\Plugin.cpp"
+ >
</File>
<File
- RelativePath="qpid\amqp_0_10\SessionHandler.cpp">
+ RelativePath="qpid\pointer_to_other.h"
+ >
</File>
<File
- RelativePath="qpid\amqp_0_10\SessionHandler.h">
+ RelativePath="qpid\sys\windows\PollableCondition.cpp"
+ >
</File>
<File
- RelativePath="qpid\assert.cpp">
+ RelativePath="qpid\framing\ProtocolInitiation.cpp"
+ >
</File>
<File
- RelativePath="qpid\assert.h">
+ RelativePath="qpid\framing\ProtocolVersion.cpp"
+ >
</File>
<File
- RelativePath="qpid\DataDir.cpp">
+ RelativePath="qpid\framing\Proxy.cpp"
+ >
</File>
<File
- RelativePath="qpid\Exception.cpp">
+ RelativePath="gen\qpid\framing\QueueDeclareBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\AccumulatedAck.cpp">
+ RelativePath="gen\qpid\framing\QueueDeleteBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\AMQBody.cpp">
+ RelativePath="gen\qpid\framing\QueuePurgeBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\AMQContentBody.cpp">
+ RelativePath="gen\qpid\framing\QueueQueryBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\AMQFrame.cpp">
+ RelativePath="gen\qpid\framing\QueueQueryResult.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\AMQHeaderBody.cpp">
+ RelativePath="qpid\RefCountedBuffer.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\AMQHeartbeatBody.cpp">
+ RelativePath="qpid\RefCountedBuffer.h"
+ >
</File>
<File
- RelativePath="qpid\framing\AMQMethodBody.cpp">
+ RelativePath="gen\qpid\framing\reply_exceptions.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\AMQP_HighestVersion.h">
+ RelativePath="gen\qpid\framing\ReplyTo.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\Array.cpp">
+ RelativePath="qpid\sys\Runnable.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\BodyHandler.cpp">
+ RelativePath="qpid\log\Selector.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\Buffer.cpp">
+ RelativePath="qpid\framing\SendContent.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\Endian.cpp">
+ RelativePath="qpid\framing\SequenceNumber.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\FieldTable.cpp">
+ RelativePath="qpid\framing\SequenceNumberSet.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\FieldValue.cpp">
+ RelativePath="qpid\framing\SequenceSet.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\FrameDecoder.cpp">
+ RelativePath="qpid\Serializer.h"
+ >
</File>
<File
- RelativePath="qpid\framing\FrameSet.cpp">
+ RelativePath="gen\qpid\framing\ServerInvoker.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\ProtocolInitiation.cpp">
+ RelativePath="gen\qpid\framing\SessionAttachBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\ProtocolVersion.cpp">
+ RelativePath="gen\qpid\framing\SessionAttachedBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\Proxy.cpp">
+ RelativePath="gen\qpid\framing\SessionCommandPointBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\SendContent.cpp">
+ RelativePath="gen\qpid\framing\SessionCompletedBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\SequenceNumber.cpp">
+ RelativePath="gen\qpid\framing\SessionConfirmedBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\SequenceNumberSet.cpp">
+ RelativePath="gen\qpid\framing\SessionDetachBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\SequenceSet.cpp">
+ RelativePath="gen\qpid\framing\SessionDetachedBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\TransferContent.cpp">
+ RelativePath="gen\qpid\framing\SessionExpectedBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\framing\Uuid.cpp">
+ RelativePath="gen\qpid\framing\SessionFlushBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\log\Logger.cpp">
+ RelativePath="gen\qpid\framing\SessionGapBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\log\Options.cpp">
+ RelativePath="qpid\amqp_0_10\SessionHandler.cpp"
+ >
</File>
<File
- RelativePath="qpid\log\OstreamOutput.cpp">
+ RelativePath="qpid\amqp_0_10\SessionHandler.h"
+ >
</File>
<File
- RelativePath="qpid\log\Selector.cpp">
+ RelativePath="qpid\SessionId.cpp"
+ >
</File>
<File
- RelativePath="qpid\log\Statement.cpp">
+ RelativePath="gen\qpid\framing\SessionKnownCompletedBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\log\windows\SinkOptions.cpp">
+ RelativePath="gen\qpid\framing\SessionRequestTimeoutBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\management\Manageable.cpp">
+ RelativePath="qpid\SessionState.cpp"
+ >
</File>
<File
- RelativePath="qpid\management\ManagementObject.cpp">
+ RelativePath="qpid\SessionState.h"
+ >
</File>
<File
- RelativePath="qpid\Modules.cpp">
+ RelativePath="gen\qpid\framing\SessionTimeoutBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\Options.cpp">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCLCompilerTool"
- ObjectFile="$(IntDir)\$(InputName)2.obj"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCLCompilerTool"
- ObjectFile="$(IntDir)\$(InputName)2.obj"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64">
- <Tool
- Name="VCCLCompilerTool"
- ObjectFile="$(IntDir)\$(InputName)2.obj"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64">
- <Tool
- Name="VCCLCompilerTool"
- ObjectFile="$(IntDir)\$(InputName)2.obj"/>
- </FileConfiguration>
+ RelativePath="qpid\sys\windows\Shlib.cpp"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ ObjectFile="$(IntDir)\$(InputName)2.obj"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|x64"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ ObjectFile="$(IntDir)\$(InputName)2.obj"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ ObjectFile="$(IntDir)\$(InputName)2.obj"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|x64"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ ObjectFile="$(IntDir)\$(InputName)2.obj"
+ />
+ </FileConfiguration>
</File>
<File
- RelativePath="qpid\Plugin.cpp">
+ RelativePath="qpid\sys\Shlib.cpp"
+ >
</File>
<File
- RelativePath="qpid\pointer_to_other.h">
+ RelativePath="qpid\log\windows\SinkOptions.cpp"
+ >
</File>
<File
- RelativePath="qpid\RefCountedBuffer.cpp">
+ RelativePath="qpid\sys\windows\Socket.cpp"
+ >
</File>
<File
- RelativePath="qpid\RefCountedBuffer.h">
+ RelativePath="qpid\log\Statement.cpp"
+ >
</File>
<File
- RelativePath="qpid\Serializer.h">
+ RelativePath="gen\qpid\framing\StreamCancelBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\SessionId.cpp">
+ RelativePath="gen\qpid\framing\StreamConsumeBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\SessionState.cpp">
+ RelativePath="gen\qpid\framing\StreamConsumeOkBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\SessionState.h">
+ RelativePath="gen\qpid\framing\StreamDeliverBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\StringUtils.cpp">
+ RelativePath="gen\qpid\framing\StreamProperties.cpp"
+ >
</File>
<File
- RelativePath="qpid\sys\AggregateOutput.cpp">
+ RelativePath="gen\qpid\framing\StreamPublishBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\sys\AsynchIOHandler.cpp">
+ RelativePath="gen\qpid\framing\StreamQosBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\sys\Dispatcher.cpp">
+ RelativePath="gen\qpid\framing\StreamQosOkBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\sys\LatencyMetric.cpp">
+ RelativePath="gen\qpid\framing\StreamReturnBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\sys\Runnable.cpp">
+ RelativePath="qpid\sys\windows\StrError.cpp"
+ >
</File>
<File
- RelativePath="qpid\sys\Shlib.cpp">
+ RelativePath="qpid\StringUtils.cpp"
+ >
</File>
<File
- RelativePath="qpid\sys\Timer.cpp">
+ RelativePath="qpid\sys\windows\SystemInfo.cpp"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\AsynchIO.cpp">
+ RelativePath="qpid\sys\windows\Thread.cpp"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\FileSysDir.cpp">
+ RelativePath="qpid\sys\windows\Time.cpp"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\IocpPoller.cpp">
+ RelativePath="qpid\sys\Timer.cpp"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\IOHandle.cpp">
+ RelativePath="qpid\framing\TransferContent.cpp"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\LockFile.cpp">
+ RelativePath="gen\qpid\framing\TxCommitBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\Shlib.cpp">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCLCompilerTool"
- ObjectFile="$(IntDir)\$(InputName)2.obj"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCLCompilerTool"
- ObjectFile="$(IntDir)\$(InputName)2.obj"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64">
- <Tool
- Name="VCCLCompilerTool"
- ObjectFile="$(IntDir)\$(InputName)2.obj"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64">
- <Tool
- Name="VCCLCompilerTool"
- ObjectFile="$(IntDir)\$(InputName)2.obj"/>
- </FileConfiguration>
+ RelativePath="gen\qpid\framing\TxRollbackBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\Socket.cpp">
+ RelativePath="gen\qpid\framing\TxSelectBody.cpp"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\StrError.cpp">
+ RelativePath="gen\qpid\framing\TypeCode.cpp"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\SystemInfo.cpp">
+ RelativePath="qpid\Url.cpp"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\Thread.cpp">
+ RelativePath="qpid\sys\windows\uuid.cpp"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ ObjectFile="$(IntDir)\$(InputName)2.obj"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|x64"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ ObjectFile="$(IntDir)\$(InputName)2.obj"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ ObjectFile="$(IntDir)\$(InputName)2.obj"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|x64"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ ObjectFile="$(IntDir)\$(InputName)2.obj"
+ />
+ </FileConfiguration>
</File>
<File
- RelativePath="qpid\sys\windows\Time.cpp">
+ RelativePath="qpid\framing\Uuid.cpp"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\uuid.cpp">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCLCompilerTool"
- ObjectFile="$(IntDir)\$(InputName)2.obj"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCLCompilerTool"
- ObjectFile="$(IntDir)\$(InputName)2.obj"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64">
- <Tool
- Name="VCCLCompilerTool"
- ObjectFile="$(IntDir)\$(InputName)2.obj"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64">
- <Tool
- Name="VCCLCompilerTool"
- ObjectFile="$(IntDir)\$(InputName)2.obj"/>
- </FileConfiguration>
+ RelativePath="gen\qpid\framing\XaResult.cpp"
+ >
</File>
<File
- RelativePath="qpid\Url.cpp">
+ RelativePath="gen\qpid\framing\Xid.cpp"
+ >
</File>
</Filter>
<Filter
Name="Header Files"
- Filter="h;hpp;hxx;hh">
+ Filter="h;hpp;hxx;hh"
+ >
<File
- RelativePath="gen\qpid\framing\all_method_bodies.h">
+ RelativePath="qpid\framing\AccumulatedAck.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\AllInvoker.h">
+ RelativePath="qpid\Address.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\AMQP_AllOperations.h">
+ RelativePath="qpid\sys\AggregateOutput.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\AMQP_AllProxy.h">
+ RelativePath="gen\qpid\framing\all_method_bodies.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\AMQP_ClientOperations.h">
+ RelativePath="gen\qpid\framing\AllInvoker.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\AMQP_ClientProxy.h">
+ RelativePath="qpid\framing\AMQBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\AMQP_ServerOperations.h">
+ RelativePath="qpid\framing\AMQCommandControlBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\AMQP_ServerProxy.h">
+ RelativePath="qpid\framing\AMQContentBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\amqp_structs.h">
+ RelativePath="qpid\framing\AMQDataBlock.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClientInvoker.h">
+ RelativePath="qpid\framing\AMQFrame.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConfigChangeBody.h">
+ RelativePath="qpid\framing\AMQHeaderBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionAccumulatedAckBody.h">
+ RelativePath="qpid\framing\AMQHeartbeatBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionConsumerStateBody.h">
+ RelativePath="qpid\framing\AMQMethodBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionDeliverCloseBody.h">
+ RelativePath="gen\qpid\framing\AMQP_AllOperations.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionDeliverDoOutputBody.h">
+ RelativePath="gen\qpid\framing\AMQP_AllProxy.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionDeliveryRecordBody.h">
+ RelativePath="gen\qpid\framing\AMQP_ClientOperations.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionExchangeBody.h">
+ RelativePath="gen\qpid\framing\AMQP_ClientProxy.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionMembershipBody.h">
+ RelativePath="qpid\framing\amqp_framing.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionQueueBody.h">
+ RelativePath="qpid\framing\AMQP_HighestVersion.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionQueuePositionBody.h">
+ RelativePath="gen\qpid\framing\AMQP_ServerOperations.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionSessionStateBody.h">
+ RelativePath="gen\qpid\framing\AMQP_ServerProxy.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionShadowReadyBody.h">
+ RelativePath="gen\qpid\framing\amqp_structs.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionTxAcceptBody.h">
+ RelativePath="qpid\framing\amqp_types.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionTxDequeueBody.h">
+ RelativePath="qpid\framing\amqp_types_full.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionTxEndBody.h">
+ RelativePath="qpid\amqp_0_10\apply.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionTxEnqueueBody.h">
+ RelativePath="qpid\framing\Array.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionTxPublishBody.h">
+ RelativePath="qpid\assert.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterConnectionTxStartBody.h">
+ RelativePath="qpid\sys\AsynchIO.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterMessageExpiredBody.h">
+ RelativePath="qpid\sys\AsynchIOHandler.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterReadyBody.h">
+ RelativePath="qpid\sys\windows\AsynchIoResult.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterShutdownBody.h">
+ RelativePath="qpid\sys\AtomicCount.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterUpdateOfferBody.h">
+ RelativePath="qpid\sys\AtomicValue.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ClusterUpdateRequestBody.h">
+ RelativePath="qpid\sys\BlockingQueue.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionCloseBody.h">
+ RelativePath="qpid\framing\BodyFactory.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionCloseOkBody.h">
+ RelativePath="qpid\framing\BodyHandler.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionHeartbeatBody.h">
+ RelativePath="qpid\framing\Buffer.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionOpenBody.h">
+ RelativePath="qpid\framing\ChannelHandler.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionOpenOkBody.h">
+ RelativePath="qpid\sys\windows\check.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionRedirectBody.h">
+ RelativePath="gen\qpid\framing\ClientInvoker.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionSecureBody.h">
+ RelativePath="gen\qpid\framing\ClusterConfigChangeBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionSecureOkBody.h">
+ RelativePath="gen\qpid\framing\ClusterConnectionAccumulatedAckBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionStartBody.h">
+ RelativePath="gen\qpid\framing\ClusterConnectionConsumerStateBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionStartOkBody.h">
+ RelativePath="gen\qpid\framing\ClusterConnectionDeliverCloseBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionTuneBody.h">
+ RelativePath="gen\qpid\framing\ClusterConnectionDeliverDoOutputBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ConnectionTuneOkBody.h">
+ RelativePath="gen\qpid\framing\ClusterConnectionDeliveryRecordBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\constants.h">
+ RelativePath="gen\qpid\framing\ClusterConnectionExchangeBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DeliveryProperties.h">
+ RelativePath="gen\qpid\framing\ClusterConnectionMembershipBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxCommitBody.h">
+ RelativePath="gen\qpid\framing\ClusterConnectionQueueBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxEndBody.h">
+ RelativePath="gen\qpid\framing\ClusterConnectionQueuePositionBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxForgetBody.h">
+ RelativePath="gen\qpid\framing\ClusterConnectionSessionStateBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxGetTimeoutBody.h">
+ RelativePath="gen\qpid\framing\ClusterConnectionShadowReadyBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxGetTimeoutResult.h">
+ RelativePath="gen\qpid\framing\ClusterConnectionTxAcceptBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxPrepareBody.h">
+ RelativePath="gen\qpid\framing\ClusterConnectionTxDequeueBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxRecoverBody.h">
+ RelativePath="gen\qpid\framing\ClusterConnectionTxEndBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxRecoverResult.h">
+ RelativePath="gen\qpid\framing\ClusterConnectionTxEnqueueBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxRollbackBody.h">
+ RelativePath="gen\qpid\framing\ClusterConnectionTxPublishBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxSelectBody.h">
+ RelativePath="gen\qpid\framing\ClusterConnectionTxStartBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxSetTimeoutBody.h">
+ RelativePath="gen\qpid\framing\ClusterMessageExpiredBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\DtxStartBody.h">
+ RelativePath="gen\qpid\framing\ClusterReadyBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\enum.h">
+ RelativePath="gen\qpid\framing\ClusterShutdownBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExchangeBindBody.h">
+ RelativePath="gen\qpid\framing\ClusterUpdateOfferBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExchangeBoundBody.h">
+ RelativePath="gen\qpid\framing\ClusterUpdateRequestBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExchangeBoundResult.h">
+ RelativePath="qpid\sys\Codec.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExchangeDeclareBody.h">
+ RelativePath="qpid\sys\windows\Condition.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExchangeDeleteBody.h">
+ RelativePath="qpid\sys\Condition.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExchangeQueryBody.h">
+ RelativePath="gen\qpid\framing\ConnectionCloseBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExchangeQueryResult.h">
+ RelativePath="gen\qpid\framing\ConnectionCloseOkBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExchangeUnbindBody.h">
+ RelativePath="qpid\sys\ConnectionCodec.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExecutionExceptionBody.h">
+ RelativePath="gen\qpid\framing\ConnectionHeartbeatBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExecutionResultBody.h">
+ RelativePath="qpid\sys\ConnectionInputHandler.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ExecutionSyncBody.h">
+ RelativePath="qpid\sys\ConnectionInputHandlerFactory.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileAckBody.h">
+ RelativePath="gen\qpid\framing\ConnectionOpenBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileCancelBody.h">
+ RelativePath="gen\qpid\framing\ConnectionOpenOkBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileConsumeBody.h">
+ RelativePath="qpid\sys\ConnectionOutputHandler.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileConsumeOkBody.h">
+ RelativePath="qpid\sys\ConnectionOutputHandlerPtr.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileDeliverBody.h">
+ RelativePath="gen\qpid\framing\ConnectionRedirectBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileOpenBody.h">
+ RelativePath="gen\qpid\framing\ConnectionSecureBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileOpenOkBody.h">
+ RelativePath="gen\qpid\framing\ConnectionSecureOkBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileProperties.h">
+ RelativePath="gen\qpid\framing\ConnectionStartBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FilePublishBody.h">
+ RelativePath="gen\qpid\framing\ConnectionStartOkBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileQosBody.h">
+ RelativePath="gen\qpid\framing\ConnectionTuneBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileQosOkBody.h">
+ RelativePath="gen\qpid\framing\ConnectionTuneOkBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileRejectBody.h">
+ RelativePath="gen\qpid\framing\constants.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileReturnBody.h">
+ RelativePath="qpid\sys\CopyOnWriteArray.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FileStageBody.h">
+ RelativePath="qpid\DataDir.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\FragmentProperties.h">
+ RelativePath="qpid\sys\DeletionManager.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\frame_body_lists.h">
+ RelativePath="gen\qpid\framing\DeliveryProperties.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\Header.h">
+ RelativePath="qpid\sys\Dispatcher.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageAcceptBody.h">
+ RelativePath="gen\qpid\framing\DtxCommitBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageAcquireBody.h">
+ RelativePath="gen\qpid\framing\DtxEndBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageAcquireResult.h">
+ RelativePath="gen\qpid\framing\DtxForgetBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageCancelBody.h">
+ RelativePath="gen\qpid\framing\DtxGetTimeoutBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageFlowBody.h">
+ RelativePath="gen\qpid\framing\DtxGetTimeoutResult.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageFlushBody.h">
+ RelativePath="gen\qpid\framing\DtxPrepareBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageProperties.h">
+ RelativePath="gen\qpid\framing\DtxRecoverBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageRejectBody.h">
+ RelativePath="gen\qpid\framing\DtxRecoverResult.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageReleaseBody.h">
+ RelativePath="gen\qpid\framing\DtxRollbackBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageResumeBody.h">
+ RelativePath="gen\qpid\framing\DtxSelectBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageResumeResult.h">
+ RelativePath="gen\qpid\framing\DtxSetTimeoutBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageSetFlowModeBody.h">
+ RelativePath="gen\qpid\framing\DtxStartBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageStopBody.h">
+ RelativePath="qpid\framing\Endian.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageSubscribeBody.h">
+ RelativePath="gen\qpid\framing\enum.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MessageTransferBody.h">
+ RelativePath="qpid\amqp_0_10\Exception.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MethodBodyConstVisitor.h">
+ RelativePath="qpid\Exception.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\MethodBodyDefaultVisitor.h">
+ RelativePath="qpid\sys\ExceptionHolder.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\QueueDeclareBody.h">
+ RelativePath="gen\qpid\framing\ExchangeBindBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\QueueDeleteBody.h">
+ RelativePath="gen\qpid\framing\ExchangeBoundBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\QueuePurgeBody.h">
+ RelativePath="gen\qpid\framing\ExchangeBoundResult.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\QueueQueryBody.h">
+ RelativePath="gen\qpid\framing\ExchangeDeclareBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\QueueQueryResult.h">
+ RelativePath="gen\qpid\framing\ExchangeDeleteBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\reply_exceptions.h">
+ RelativePath="gen\qpid\framing\ExchangeQueryBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ReplyTo.h">
+ RelativePath="gen\qpid\framing\ExchangeQueryResult.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\ServerInvoker.h">
+ RelativePath="gen\qpid\framing\ExchangeUnbindBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionAttachBody.h">
+ RelativePath="gen\qpid\framing\ExecutionExceptionBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionAttachedBody.h">
+ RelativePath="gen\qpid\framing\ExecutionResultBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionCommandPointBody.h">
+ RelativePath="gen\qpid\framing\ExecutionSyncBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionCompletedBody.h">
+ RelativePath="qpid\framing\FieldTable.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionConfirmedBody.h">
+ RelativePath="qpid\framing\FieldValue.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionDetachBody.h">
+ RelativePath="gen\qpid\framing\FileAckBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionDetachedBody.h">
+ RelativePath="gen\qpid\framing\FileCancelBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionExpectedBody.h">
+ RelativePath="gen\qpid\framing\FileConsumeBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionFlushBody.h">
+ RelativePath="gen\qpid\framing\FileConsumeOkBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionGapBody.h">
+ RelativePath="gen\qpid\framing\FileDeliverBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionKnownCompletedBody.h">
+ RelativePath="gen\qpid\framing\FileOpenBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionRequestTimeoutBody.h">
+ RelativePath="gen\qpid\framing\FileOpenOkBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\SessionTimeoutBody.h">
+ RelativePath="gen\qpid\framing\FileProperties.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\StreamCancelBody.h">
+ RelativePath="gen\qpid\framing\FilePublishBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\StreamConsumeBody.h">
+ RelativePath="gen\qpid\framing\FileQosBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\StreamConsumeOkBody.h">
+ RelativePath="gen\qpid\framing\FileQosOkBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\StreamDeliverBody.h">
+ RelativePath="gen\qpid\framing\FileRejectBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\StreamProperties.h">
+ RelativePath="gen\qpid\framing\FileReturnBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\StreamPublishBody.h">
+ RelativePath="gen\qpid\framing\FileStageBody.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\StreamQosBody.h">
+ RelativePath="qpid\sys\FileSysDir.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\StreamQosOkBody.h">
+ RelativePath="gen\qpid\framing\FragmentProperties.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\StreamReturnBody.h">
+ RelativePath="gen\qpid\framing\frame_body_lists.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\TxCommitBody.h">
+ RelativePath="qpid\framing\frame_functors.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\TxRollbackBody.h">
+ RelativePath="qpid\framing\FrameDecoder.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\TxSelectBody.h">
+ RelativePath="qpid\framing\FrameDefaultVisitor.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\TypeCode.h">
+ RelativePath="qpid\framing\FrameHandler.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\XaResult.h">
+ RelativePath="qpid\framing\FrameSet.h"
+ >
</File>
<File
- RelativePath="gen\qpid\framing\Xid.h">
+ RelativePath="qpid\framing\Handler.h"
+ >
</File>
<File
- RelativePath="qpid\Address.h">
+ RelativePath="gen\qpid\framing\Header.h"
+ >
</File>
<File
- RelativePath="qpid\amqp_0_10\apply.h">
+ RelativePath="qpid\framing\HeaderProperties.h"
+ >
</File>
<File
- RelativePath="qpid\amqp_0_10\Exception.h">
+ RelativePath="qpid\framing\variant.h qpid\log\Helpers.h"
+ >
</File>
<File
- RelativePath="qpid\amqp_0_10\SessionHandler.h">
+ RelativePath="qpid\framing\InitiationHandler.h"
+ >
</File>
<File
- RelativePath="qpid\assert.h">
+ RelativePath="qpid\InlineAllocator.h"
+ >
</File>
<File
- RelativePath="qpid\DataDir.h">
+ RelativePath="qpid\InlineVector.h"
+ >
</File>
<File
- RelativePath="qpid\Exception.h">
+ RelativePath="qpid\framing\InputHandler.h"
+ >
</File>
<File
- RelativePath="qpid\framing\AccumulatedAck.h">
+ RelativePath="qpid\sys\windows\IntegerTypes.h"
+ >
</File>
<File
- RelativePath="qpid\framing\AMQBody.h">
+ RelativePath="qpid\sys\IntegerTypes.h"
+ >
</File>
<File
- RelativePath="qpid\framing\AMQCommandControlBody.h">
+ RelativePath="qpid\framing\Invoker.h"
+ >
</File>
<File
- RelativePath="qpid\framing\AMQContentBody.h">
+ RelativePath="qpid\sys\IOHandle.h"
+ >
</File>
<File
- RelativePath="qpid\framing\AMQDataBlock.h">
+ RelativePath="qpid\sys\windows\IoHandlePrivate.h"
+ >
</File>
<File
- RelativePath="qpid\framing\AMQFrame.h">
+ RelativePath="qpid\sys\LatencyMetric.h"
+ >
</File>
<File
- RelativePath="qpid\framing\AMQHeaderBody.h">
+ RelativePath="qpid\sys\LockFile.h"
+ >
</File>
<File
- RelativePath="qpid\framing\AMQHeartbeatBody.h">
+ RelativePath="qpid\sys\LockPtr.h"
+ >
</File>
<File
- RelativePath="qpid\framing\AMQMethodBody.h">
+ RelativePath="qpid\log\Logger.h"
+ >
</File>
<File
- RelativePath="qpid\framing\amqp_framing.h">
+ RelativePath="qpid\management\Manageable.h"
+ >
</File>
<File
- RelativePath="qpid\framing\AMQP_HighestVersion.h">
+ RelativePath="qpid\management\ManagementObject.h"
+ >
</File>
<File
- RelativePath="qpid\framing\amqp_types.h">
+ RelativePath="qpid\memory.h"
+ >
</File>
<File
- RelativePath="qpid\framing\amqp_types_full.h">
+ RelativePath="gen\qpid\framing\MessageAcceptBody.h"
+ >
</File>
<File
- RelativePath="qpid\framing\Array.h">
+ RelativePath="gen\qpid\framing\MessageAcquireBody.h"
+ >
</File>
<File
- RelativePath="qpid\framing\BodyFactory.h">
+ RelativePath="gen\qpid\framing\MessageAcquireResult.h"
+ >
</File>
<File
- RelativePath="qpid\framing\BodyHandler.h">
+ RelativePath="gen\qpid\framing\MessageCancelBody.h"
+ >
</File>
<File
- RelativePath="qpid\framing\Buffer.h">
+ RelativePath="gen\qpid\framing\MessageFlowBody.h"
+ >
</File>
<File
- RelativePath="qpid\framing\ChannelHandler.h">
+ RelativePath="gen\qpid\framing\MessageFlushBody.h"
+ >
</File>
<File
- RelativePath="qpid\framing\Endian.h">
+ RelativePath="gen\qpid\framing\MessageProperties.h"
+ >
</File>
<File
- RelativePath="qpid\framing\FieldTable.h">
+ RelativePath="gen\qpid\framing\MessageRejectBody.h"
+ >
</File>
<File
- RelativePath="qpid\framing\FieldValue.h">
+ RelativePath="gen\qpid\framing\MessageReleaseBody.h"
+ >
</File>
<File
- RelativePath="qpid\framing\frame_functors.h">
+ RelativePath="gen\qpid\framing\MessageResumeBody.h"
+ >
</File>
<File
- RelativePath="qpid\framing\FrameDecoder.h">
+ RelativePath="gen\qpid\framing\MessageResumeResult.h"
+ >
</File>
<File
- RelativePath="qpid\framing\FrameDefaultVisitor.h">
+ RelativePath="gen\qpid\framing\MessageSetFlowModeBody.h"
+ >
</File>
<File
- RelativePath="qpid\framing\FrameHandler.h">
+ RelativePath="gen\qpid\framing\MessageStopBody.h"
+ >
</File>
<File
- RelativePath="qpid\framing\FrameSet.h">
+ RelativePath="gen\qpid\framing\MessageSubscribeBody.h"
+ >
</File>
<File
- RelativePath="qpid\framing\Handler.h">
+ RelativePath="gen\qpid\framing\MessageTransferBody.h"
+ >
</File>
<File
- RelativePath="qpid\framing\HeaderProperties.h">
+ RelativePath="gen\qpid\framing\MethodBodyConstVisitor.h"
+ >
</File>
<File
- RelativePath="qpid\framing\InitiationHandler.h">
+ RelativePath="gen\qpid\framing\MethodBodyDefaultVisitor.h"
+ >
</File>
<File
- RelativePath="qpid\framing\InputHandler.h">
+ RelativePath="qpid\framing\MethodBodyFactory.h"
+ >
</File>
<File
- RelativePath="qpid\framing\Invoker.h">
+ RelativePath="qpid\framing\MethodContent.h"
+ >
</File>
<File
- RelativePath="qpid\framing\MethodBodyFactory.h">
+ RelativePath="qpid\framing\ModelMethod.h"
+ >
</File>
<File
- RelativePath="qpid\framing\MethodContent.h">
+ RelativePath="qpid\Modules.h"
+ >
</File>
<File
- RelativePath="qpid\framing\ModelMethod.h">
+ RelativePath="qpid\sys\Monitor.h"
+ >
</File>
<File
- RelativePath="qpid\framing\OutputHandler.h">
+ RelativePath="qpid\Msg.h"
+ >
</File>
<File
- RelativePath="qpid\framing\ProtocolInitiation.h">
+ RelativePath="qpid\sys\windows\Mutex.h"
+ >
</File>
<File
- RelativePath="qpid\framing\ProtocolVersion.h">
+ RelativePath="qpid\sys\Mutex.h"
+ >
</File>
<File
- RelativePath="qpid\framing\Proxy.h">
+ RelativePath="qpid\Options.h"
+ >
</File>
<File
- RelativePath="qpid\framing\SendContent.h">
+ RelativePath="qpid\log\Options.h"
+ >
</File>
<File
- RelativePath="qpid\framing\SequenceNumber.h">
+ RelativePath="qpid\log\OstreamOutput.h"
+ >
</File>
<File
- RelativePath="qpid\framing\SequenceNumberSet.h">
+ RelativePath="qpid\sys\OutputControl.h"
+ >
</File>
<File
- RelativePath="qpid\framing\SequenceSet.h">
+ RelativePath="qpid\framing\OutputHandler.h"
+ >
</File>
<File
- RelativePath="qpid\framing\StructHelper.h">
+ RelativePath="qpid\sys\OutputTask.h"
+ >
</File>
<File
- RelativePath="qpid\framing\TransferContent.h">
+ RelativePath="qpid\Plugin.h"
+ >
</File>
<File
- RelativePath="qpid\framing\TypeFilter.h">
+ RelativePath="qpid\pointer_to_other.h"
+ >
</File>
<File
- RelativePath="qpid\framing\Uuid.h">
+ RelativePath="qpid\sys\PollableCondition.h"
+ >
</File>
<File
- RelativePath="qpid\framing\variant.h qpid\log\Helpers.h">
+ RelativePath="qpid\sys\PollableQueue.h"
+ >
</File>
<File
- RelativePath="qpid\framing\Visitor.h">
+ RelativePath="qpid\sys\Poller.h"
+ >
</File>
<File
- RelativePath="qpid\InlineAllocator.h">
+ RelativePath="qpid\sys\ProtocolFactory.h"
+ >
</File>
<File
- RelativePath="qpid\InlineVector.h">
+ RelativePath="qpid\framing\ProtocolInitiation.h"
+ >
</File>
<File
- RelativePath="qpid\log\Logger.h">
+ RelativePath="qpid\framing\ProtocolVersion.h"
+ >
</File>
<File
- RelativePath="qpid\log\Options.h">
+ RelativePath="qpid\framing\Proxy.h"
+ >
</File>
<File
- RelativePath="qpid\log\OstreamOutput.h">
+ RelativePath="qpid\ptr_map.h"
+ >
</File>
<File
- RelativePath="qpid\log\Selector.h">
+ RelativePath="gen\qpid\framing\QueueDeclareBody.h"
+ >
</File>
<File
- RelativePath="qpid\log\SinkOptions.h">
+ RelativePath="gen\qpid\framing\QueueDeleteBody.h"
+ >
</File>
<File
- RelativePath="qpid\log\Statement.h">
+ RelativePath="gen\qpid\framing\QueuePurgeBody.h"
+ >
</File>
<File
- RelativePath="qpid\log\windows\SinkOptions.h">
+ RelativePath="gen\qpid\framing\QueueQueryBody.h"
+ >
</File>
<File
- RelativePath="qpid\management\Manageable.h">
+ RelativePath="gen\qpid\framing\QueueQueryResult.h"
+ >
</File>
<File
- RelativePath="qpid\management\ManagementObject.h">
+ RelativePath="qpid\RangeSet.h"
+ >
</File>
<File
- RelativePath="qpid\memory.h">
+ RelativePath="qpid\RefCounted.h"
+ >
</File>
<File
- RelativePath="qpid\Modules.h">
+ RelativePath="qpid\RefCountedBuffer.h"
+ >
</File>
<File
- RelativePath="qpid\Msg.h">
+ RelativePath="gen\qpid\framing\reply_exceptions.h"
+ >
</File>
<File
- RelativePath="qpid\Options.h">
+ RelativePath="gen\qpid\framing\ReplyTo.h"
+ >
</File>
<File
- RelativePath="qpid\Plugin.h">
+ RelativePath="qpid\sys\Runnable.h"
+ >
</File>
<File
- RelativePath="qpid\pointer_to_other.h">
+ RelativePath="qpid\sys\ScopedIncrement.h"
+ >
</File>
<File
- RelativePath="qpid\ptr_map.h">
+ RelativePath="qpid\sys\SecurityLayer.h"
+ >
</File>
<File
- RelativePath="qpid\RangeSet.h">
+ RelativePath="qpid\log\Selector.h"
+ >
</File>
<File
- RelativePath="qpid\RefCounted.h">
+ RelativePath="qpid\sys\Semaphore.h"
+ >
</File>
<File
- RelativePath="qpid\RefCountedBuffer.h">
+ RelativePath="qpid\framing\SendContent.h"
+ >
</File>
<File
- RelativePath="qpid\Serializer.h">
+ RelativePath="qpid\framing\SequenceNumber.h"
+ >
</File>
<File
- RelativePath="qpid\SessionId.h">
+ RelativePath="qpid\framing\SequenceNumberSet.h"
+ >
</File>
<File
- RelativePath="qpid\SessionState.h">
+ RelativePath="qpid\framing\SequenceSet.h"
+ >
</File>
<File
- RelativePath="qpid\shared_ptr.h">
+ RelativePath="qpid\Serializer.h"
+ >
</File>
<File
- RelativePath="qpid\SharedObject.h">
+ RelativePath="gen\qpid\framing\ServerInvoker.h"
+ >
</File>
<File
- RelativePath="qpid\StringUtils.h">
+ RelativePath="gen\qpid\framing\SessionAttachBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\AggregateOutput.h">
+ RelativePath="gen\qpid\framing\SessionAttachedBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\AsynchIO.h">
+ RelativePath="gen\qpid\framing\SessionCommandPointBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\AsynchIOHandler.h">
+ RelativePath="gen\qpid\framing\SessionCompletedBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\AtomicCount.h">
+ RelativePath="gen\qpid\framing\SessionConfirmedBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\AtomicValue.h">
+ RelativePath="gen\qpid\framing\SessionDetachBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\BlockingQueue.h">
+ RelativePath="gen\qpid\framing\SessionDetachedBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\Codec.h">
+ RelativePath="gen\qpid\framing\SessionExpectedBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\Condition.h">
+ RelativePath="gen\qpid\framing\SessionFlushBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\ConnectionCodec.h">
+ RelativePath="gen\qpid\framing\SessionGapBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\ConnectionInputHandler.h">
+ RelativePath="qpid\amqp_0_10\SessionHandler.h"
+ >
</File>
<File
- RelativePath="qpid\sys\ConnectionInputHandlerFactory.h">
+ RelativePath="qpid\SessionId.h"
+ >
</File>
<File
- RelativePath="qpid\sys\ConnectionOutputHandler.h">
+ RelativePath="gen\qpid\framing\SessionKnownCompletedBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\ConnectionOutputHandlerPtr.h">
+ RelativePath="gen\qpid\framing\SessionRequestTimeoutBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\CopyOnWriteArray.h">
+ RelativePath="qpid\SessionState.h"
+ >
</File>
<File
- RelativePath="qpid\sys\DeletionManager.h">
+ RelativePath="gen\qpid\framing\SessionTimeoutBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\Dispatcher.h">
+ RelativePath="qpid\shared_ptr.h"
+ >
</File>
<File
- RelativePath="qpid\sys\ExceptionHolder.h">
+ RelativePath="qpid\SharedObject.h"
+ >
</File>
<File
- RelativePath="qpid\sys\FileSysDir.h">
+ RelativePath="qpid\sys\Shlib.h"
+ >
</File>
<File
- RelativePath="qpid\sys\IntegerTypes.h">
+ RelativePath="qpid\sys\ShutdownHandler.h"
+ >
</File>
<File
- RelativePath="qpid\sys\IOHandle.h">
+ RelativePath="qpid\log\windows\SinkOptions.h"
+ >
</File>
<File
- RelativePath="qpid\sys\LatencyMetric.h">
+ RelativePath="qpid\log\SinkOptions.h"
+ >
</File>
<File
- RelativePath="qpid\sys\LockFile.h">
+ RelativePath="qpid\sys\Socket.h"
+ >
</File>
<File
- RelativePath="qpid\sys\LockPtr.h">
+ RelativePath="qpid\log\Statement.h"
+ >
</File>
<File
- RelativePath="qpid\sys\Monitor.h">
+ RelativePath="qpid\sys\StateMonitor.h"
+ >
</File>
<File
- RelativePath="qpid\sys\Mutex.h">
+ RelativePath="gen\qpid\framing\StreamCancelBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\OutputControl.h">
+ RelativePath="gen\qpid\framing\StreamConsumeBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\OutputTask.h">
+ RelativePath="gen\qpid\framing\StreamConsumeOkBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\PollableCondition.h">
+ RelativePath="gen\qpid\framing\StreamDeliverBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\PollableQueue.h">
+ RelativePath="gen\qpid\framing\StreamProperties.h"
+ >
</File>
<File
- RelativePath="qpid\sys\Poller.h">
+ RelativePath="gen\qpid\framing\StreamPublishBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\ProtocolFactory.h">
+ RelativePath="gen\qpid\framing\StreamQosBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\Runnable.h">
+ RelativePath="gen\qpid\framing\StreamQosOkBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\ScopedIncrement.h">
+ RelativePath="gen\qpid\framing\StreamReturnBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\SecurityLayer.h">
+ RelativePath="qpid\sys\StrError.h"
+ >
</File>
<File
- RelativePath="qpid\sys\Semaphore.h">
+ RelativePath="qpid\StringUtils.h"
+ >
</File>
<File
- RelativePath="qpid\sys\Shlib.h">
+ RelativePath="qpid\framing\StructHelper.h"
+ >
</File>
<File
- RelativePath="qpid\sys\ShutdownHandler.h">
+ RelativePath="qpid\sys\SystemInfo.h"
+ >
</File>
<File
- RelativePath="qpid\sys\Socket.h">
+ RelativePath="qpid\sys\Thread.h"
+ >
</File>
<File
- RelativePath="qpid\sys\StateMonitor.h">
+ RelativePath="qpid\sys\windows\Time.h"
+ >
</File>
<File
- RelativePath="qpid\sys\StrError.h">
+ RelativePath="qpid\sys\Time.h"
+ >
</File>
<File
- RelativePath="qpid\sys\SystemInfo.h">
+ RelativePath="qpid\sys\TimeoutHandler.h"
+ >
</File>
<File
- RelativePath="qpid\sys\Thread.h">
+ RelativePath="qpid\sys\Timer.h"
+ >
</File>
<File
- RelativePath="qpid\sys\Time.h">
+ RelativePath="qpid\framing\TransferContent.h"
+ >
</File>
<File
- RelativePath="qpid\sys\TimeoutHandler.h">
+ RelativePath="gen\qpid\framing\TxCommitBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\Timer.h">
+ RelativePath="gen\qpid\framing\TxRollbackBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\uuid.h">
+ RelativePath="gen\qpid\framing\TxSelectBody.h"
+ >
</File>
<File
- RelativePath="qpid\sys\Waitable.h">
+ RelativePath="gen\qpid\framing\TypeCode.h"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\AsynchIoResult.h">
+ RelativePath="qpid\framing\TypeFilter.h"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\check.h">
+ RelativePath="qpid\Url.h"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\Condition.h">
+ RelativePath="qpid\framing\Uuid.h"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\IntegerTypes.h">
+ RelativePath="qpid\sys\windows\uuid.h"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\IoHandlePrivate.h">
+ RelativePath="qpid\sys\uuid.h"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\Mutex.h">
+ RelativePath="qpid\Version.h"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\Time.h">
+ RelativePath="qpid\framing\Visitor.h"
+ >
</File>
<File
- RelativePath="qpid\sys\windows\uuid.h">
+ RelativePath="qpid\sys\Waitable.h"
+ >
</File>
<File
- RelativePath="qpid\Url.h">
+ RelativePath="gen\qpid\framing\XaResult.h"
+ >
</File>
<File
- RelativePath="qpid\Version.h">
+ RelativePath="gen\qpid\framing\Xid.h"
+ >
</File>
</Filter>
</Files>
diff --git a/cpp/src/qpid/sys/PollableCondition.h b/cpp/src/qpid/sys/PollableCondition.h
index 56d38f90da..49e84e6cb0 100644
--- a/cpp/src/qpid/sys/PollableCondition.h
+++ b/cpp/src/qpid/sys/PollableCondition.h
@@ -22,7 +22,57 @@
*
*/
-// Currently only has a posix implementation, add #ifdefs for other platforms as needed.
-#include "posix/PollableCondition.h"
+#include "qpid/sys/Poller.h"
+#include <boost/function.hpp>
+#include <boost/shared_ptr.hpp>
+
+
+namespace qpid {
+namespace sys {
+
+class PollableConditionPrivate;
+
+class PollableCondition {
+public:
+ typedef boost::function1<void, PollableCondition&> Callback;
+
+ PollableCondition(const Callback& cb,
+ const boost::shared_ptr<sys::Poller>& poller);
+
+ ~PollableCondition();
+
+ /**
+ * Set the condition. Triggers callback to Callback from Poller.
+ * When callback is made, condition is suspended. Call rearm() to
+ * resume reacting to the condition.
+ */
+ void set();
+
+ /**
+ * Get the current state of the condition, then clear it.
+ *
+ * @return The state of the condition before it was cleared.
+ */
+ bool clear();
+
+ /**
+ * Temporarily suspend the ability for the poller to react to the
+ * condition. It can be rearm()ed later.
+ */
+ void disarm();
+
+ /**
+ * Reset the ability for the poller to react to the condition.
+ */
+ void rearm();
+
+ private:
+ PollableConditionPrivate *impl;
+
+ Callback callback;
+ boost::shared_ptr<sys::Poller> poller;
+};
+
+}} // namespace qpid::sys
#endif /*!QPID_SYS_POLLABLECONDITION_H*/
diff --git a/cpp/src/qpid/sys/PollableQueue.h b/cpp/src/qpid/sys/PollableQueue.h
index b5ff98c2c7..a23cc5137a 100644
--- a/cpp/src/qpid/sys/PollableQueue.h
+++ b/cpp/src/qpid/sys/PollableQueue.h
@@ -23,8 +23,6 @@
*/
#include "qpid/sys/PollableCondition.h"
-#include "qpid/sys/Dispatcher.h"
-#include "qpid/sys/DispatchHandle.h"
#include "qpid/sys/Monitor.h"
#include "qpid/sys/Thread.h"
#include <boost/function.hpp>
@@ -38,9 +36,10 @@ namespace sys {
class Poller;
/**
- * A queue that can be polled by sys::Poller. Any thread can push to
- * the queue, on wakeup the poller thread processes all items on the
- * queue by passing them to a callback in a batch.
+ * A queue whose item processing is dispatched by sys::Poller.
+ * Any thread can push to the queue; items pushed trigger an event the Poller
+ * recognizes. When a Poller I/O thread dispatches the event, a
+ * user-specified callback is invoked with all items on the queue.
*/
template <class T>
class PollableQueue {
@@ -50,12 +49,21 @@ class PollableQueue {
/**
* Callback to process a batch of items from the queue.
- * @param values to process, any items remaining after call are put back on the queue.
+ *
+ * @param values Queue of values to process. Any items remaining
+ * on return from Callback are put back on the queue.
*/
typedef boost::function<void (Queue& values)> Callback;
- /** When the queue is selected by the poller, values are passed to callback cb. */
- PollableQueue(const Callback& cb, const boost::shared_ptr<sys::Poller>& poller);
+ /**
+ * Constructor; sets necessary parameters.
+ *
+ * @param cb Callback that will be called to process items on the
+ * queue. Will be called from a Poller I/O thread.
+ * @param poller Poller to use for dispatching queue events.
+ */
+ PollableQueue(const Callback& cb,
+ const boost::shared_ptr<sys::Poller>& poller);
~PollableQueue();
@@ -85,14 +93,12 @@ class PollableQueue {
typedef sys::Monitor::ScopedLock ScopedLock;
typedef sys::Monitor::ScopedUnlock ScopedUnlock;
- void dispatch(sys::DispatchHandle&);
+ void dispatch(PollableCondition& cond);
void process();
mutable sys::Monitor lock;
Callback callback;
- boost::shared_ptr<sys::Poller> poller;
PollableCondition condition;
- DispatchHandleRef handle;
Queue queue, batch;
Thread dispatcher;
bool stopped;
@@ -100,11 +106,10 @@ class PollableQueue {
template <class T> PollableQueue<T>::PollableQueue(
const Callback& cb, const boost::shared_ptr<sys::Poller>& p)
- : callback(cb), poller(p),
- handle(condition, boost::bind(&PollableQueue<T>::dispatch, this, _1), 0, 0), stopped(true)
+ : callback(cb),
+ condition(boost::bind(&PollableQueue<T>::dispatch, this, _1), p),
+ stopped(true)
{
- handle.startWatch(poller);
- handle.unwatch();
}
template <class T> void PollableQueue<T>::start() {
@@ -112,11 +117,10 @@ template <class T> void PollableQueue<T>::start() {
if (!stopped) return;
stopped = false;
if (!queue.empty()) condition.set();
- handle.rewatch();
+ condition.rearm();
}
template <class T> PollableQueue<T>::~PollableQueue() {
- handle.stopWatch();
}
template <class T> void PollableQueue<T>::push(const T& t) {
@@ -125,15 +129,15 @@ template <class T> void PollableQueue<T>::push(const T& t) {
queue.push_back(t);
}
-template <class T> void PollableQueue<T>::dispatch(sys::DispatchHandle& h) {
+template <class T> void PollableQueue<T>::dispatch(PollableCondition& cond) {
ScopedLock l(lock);
assert(dispatcher.id() == 0);
dispatcher = Thread::current();
process();
dispatcher = Thread();
- if (queue.empty()) condition.clear();
+ if (queue.empty()) cond.clear();
if (stopped) lock.notifyAll();
- else h.rewatch();
+ else cond.rearm();
}
template <class T> void PollableQueue<T>::process() {
@@ -159,7 +163,7 @@ template <class T> void PollableQueue<T>::shutdown() {
template <class T> void PollableQueue<T>::stop() {
ScopedLock l(lock);
if (stopped) return;
- handle.unwatch();
+ condition.disarm();
stopped = true;
// Avoid deadlock if stop is called from the dispatch thread
while (dispatcher.id() && dispatcher.id() != Thread::current().id())
diff --git a/cpp/src/qpid/sys/posix/PollableCondition.cpp b/cpp/src/qpid/sys/posix/PollableCondition.cpp
index 0c55fd3c0d..0991e5fd76 100644
--- a/cpp/src/qpid/sys/posix/PollableCondition.cpp
+++ b/cpp/src/qpid/sys/posix/PollableCondition.cpp
@@ -22,17 +22,46 @@
*
*/
-#include "PollableCondition.h"
+#include "qpid/sys/PollableCondition.h"
+#include "qpid/sys/DispatchHandle.h"
+#include "qpid/sys/IOHandle.h"
#include "qpid/sys/posix/PrivatePosix.h"
#include "qpid/Exception.h"
+#include <boost/bind.hpp>
+
#include <unistd.h>
#include <fcntl.h>
namespace qpid {
namespace sys {
-PollableCondition::PollableCondition() : IOHandle(new sys::IOHandlePrivate) {
+class PollableConditionPrivate : public sys::IOHandle {
+ friend class PollableCondition;
+
+private:
+ PollableConditionPrivate(const sys::PollableCondition::Callback& cb,
+ sys::PollableCondition& parent,
+ const boost::shared_ptr<sys::Poller>& poller);
+ ~PollableConditionPrivate();
+
+ void dispatch(sys::DispatchHandle& h);
+ void rewatch();
+ void unwatch();
+
+private:
+ PollableCondition::Callback cb;
+ PollableCondition& parent;
+ boost::shared_ptr<sys::Poller> poller;
+ int writeFd;
+ std::auto_ptr<DispatchHandleRef> handle;
+};
+
+PollableConditionPrivate::PollableConditionPrivate(const sys::PollableCondition::Callback& cb,
+ sys::PollableCondition& parent,
+ const boost::shared_ptr<sys::Poller>& poller)
+ : IOHandle(new sys::IOHandlePrivate), cb(cb), parent(parent)
+{
int fds[2];
if (::pipe(fds) == -1)
throw ErrnoException(QPID_MSG("Can't create PollableCondition"));
@@ -42,22 +71,71 @@ PollableCondition::PollableCondition() : IOHandle(new sys::IOHandlePrivate) {
throw ErrnoException(QPID_MSG("Can't create PollableCondition"));
if (::fcntl(writeFd, F_SETFL, O_NONBLOCK) == -1)
throw ErrnoException(QPID_MSG("Can't create PollableCondition"));
+ handle.reset (new DispatchHandleRef(*this,
+ boost::bind(&sys::PollableConditionPrivate::dispatch, this, _1),
+ 0, 0));
+ handle->startWatch(poller);
+ handle->unwatch();
+}
+
+PollableConditionPrivate::~PollableConditionPrivate()
+{
+ handle->stopWatch();
+ close(writeFd);
+}
+
+void PollableConditionPrivate::dispatch(sys::DispatchHandle& /*h*/)
+{
+ cb(parent);
+}
+
+void PollableConditionPrivate::rewatch()
+{
+ handle->rewatch();
+}
+
+void PollableConditionPrivate::unwatch()
+{
+ handle->unwatch();
+}
+
+ /* PollableCondition */
+
+PollableCondition::PollableCondition(const Callback& cb,
+ const boost::shared_ptr<sys::Poller>& poller)
+ : impl(new PollableConditionPrivate(cb, *this, poller))
+{
+}
+
+PollableCondition::~PollableCondition()
+{
+ delete impl;
+}
+
+void PollableCondition::set() {
+ static const char dummy=0;
+ ssize_t n = ::write(impl->writeFd, &dummy, 1);
+ if (n == -1 && errno != EAGAIN)
+ throw ErrnoException("Error setting PollableCondition");
}
bool PollableCondition::clear() {
char buf[256];
ssize_t n;
bool wasSet = false;
- while ((n = ::read(impl->fd, buf, sizeof(buf))) > 0)
+ while ((n = ::read(impl->impl->fd, buf, sizeof(buf))) > 0)
wasSet = true;
- if (n == -1 && errno != EAGAIN) throw ErrnoException(QPID_MSG("Error clearing PollableCondition"));
+ if (n == -1 && errno != EAGAIN)
+ throw ErrnoException(QPID_MSG("Error clearing PollableCondition"));
return wasSet;
}
-void PollableCondition::set() {
- static const char dummy=0;
- ssize_t n = ::write(writeFd, &dummy, 1);
- if (n == -1 && errno != EAGAIN) throw ErrnoException("Error setting PollableCondition");
+void PollableCondition::disarm() {
+ impl->unwatch();
+}
+
+void PollableCondition::rearm() {
+ impl->rewatch();
}
@@ -71,22 +149,35 @@ void PollableCondition::set() {
namespace qpid {
namespace sys {
-PollableCondition::PollableCondition() : IOHandle(new sys::IOHandlePrivate) {
+PollableConditionPrivate::PollableConditionPrivate(const PollableCondition::Callback& cb,
+ sys::PollableCondition& parent,
+ const boost::shared_ptr<sys::Poller>& poller)
+ : cb(cb), parent(parent), poller(poller),
+ IOHandle(new sys::IOHandlePrivate) {
impl->fd = ::eventfd(0, 0);
if (impl->fd < 0) throw ErrnoException("conditionfd() failed");
}
+void PollableCondition::set() {
+ static const uint64_t value=1;
+ ssize_t n = ::write(impl->impl->fd,
+ reinterpret_cast<const void*>(&value), 8);
+ if (n != 8) throw ErrnoException("write failed on conditionfd");
+}
+
bool PollableCondition::clear() {
char buf[8];
- ssize_t n = ::read(impl->fd, buf, 8);
+ ssize_t n = ::read(impl->impl->fd, buf, 8);
if (n != 8) throw ErrnoException("read failed on conditionfd");
return *reinterpret_cast<uint64_t*>(buf);
}
-void PollableCondition::set() {
- static const uint64_t value=1;
- ssize_t n = ::write(impl->fd, reinterpret_cast<const void*>(&value), 8);
- if (n != 8) throw ErrnoException("write failed on conditionfd");
+void PollableCondition::disarm() {
+ // ????
+}
+
+void PollableCondition::rearm() {
+ // ????
}
#endif
diff --git a/cpp/src/qpid/sys/posix/PollableCondition.h b/cpp/src/qpid/sys/posix/PollableCondition.h
deleted file mode 100644
index 4ec277b0ec..0000000000
--- a/cpp/src/qpid/sys/posix/PollableCondition.h
+++ /dev/null
@@ -1,56 +0,0 @@
-#ifndef QPID_SYS_POSIX_POLLABLECONDITION_H
-#define QPID_SYS_POSIX_POLLABLECONDITION_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-#include "qpid/sys/IOHandle.h"
-
-namespace qpid {
-namespace sys {
-
-/**
- * A pollable condition to integrate in-process conditions with IO
- * conditions in a polling loop.
- *
- * Setting the condition makes it readable for a poller.
- *
- * Writable/disconnected conditions are undefined and should not be
- * polled for.
- */
-class PollableCondition : public sys::IOHandle {
- public:
- PollableCondition();
-
- /** Set the condition, triggers readable in a poller. */
- void set();
-
- /** Get the current state of the condition, then clear it.
- *@return The state of the condition before it was cleared.
- */
- bool clear();
-
- private:
- int writeFd;
-};
-}} // namespace qpid::sys
-
-#endif /*!QPID_SYS_POSIX_POLLABLECONDITION_H*/
diff --git a/cpp/src/qpid/sys/windows/PollableCondition.cpp b/cpp/src/qpid/sys/windows/PollableCondition.cpp
new file mode 100644
index 0000000000..ed0f7c3917
--- /dev/null
+++ b/cpp/src/qpid/sys/windows/PollableCondition.cpp
@@ -0,0 +1,125 @@
+#ifndef QPID_SYS_WINDOWS_POLLABLECONDITION_CPP
+#define QPID_SYS_WINDOWS_POLLABLECONDITION_CPP
+
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+#include "qpid/sys/PollableCondition.h"
+#include "qpid/sys/IOHandle.h"
+#include "AsynchIoResult.h"
+#include "IoHandlePrivate.h"
+
+#include <boost/bind.hpp>
+#include <windows.h>
+
+namespace qpid {
+namespace sys {
+
+// PollableConditionPrivate will reuse the IocpPoller's ability to queue
+// a completion to the IOCP and have it dispatched to the completer callback
+// noted in the IOHandlePrivate when the request is queued. The
+// AsynchCallbackRequest object is not really used - we already have the
+// desired callback for the user of PollableCondition.
+class PollableConditionPrivate : private IOHandle {
+ friend class PollableCondition;
+
+private:
+ PollableConditionPrivate(const sys::PollableCondition::Callback& cb,
+ sys::PollableCondition& parent,
+ const boost::shared_ptr<sys::Poller>& poller);
+ ~PollableConditionPrivate();
+
+ void poke();
+ void dispatch(AsynchIoResult *result);
+
+private:
+ PollableCondition::Callback cb;
+ PollableCondition& parent;
+ boost::shared_ptr<sys::Poller> poller;
+ LONG isSet;
+ LONG armed;
+};
+
+PollableConditionPrivate::PollableConditionPrivate(const sys::PollableCondition::Callback& cb,
+ sys::PollableCondition& parent,
+ const boost::shared_ptr<sys::Poller>& poller)
+ : IOHandle(new sys::IOHandlePrivate(INVALID_SOCKET,
+ boost::bind(&PollableConditionPrivate::dispatch, this, _1))),
+ cb(cb), parent(parent), poller(poller), isSet(0), armed(0)
+{
+}
+
+PollableConditionPrivate::~PollableConditionPrivate()
+{
+}
+
+void PollableConditionPrivate::poke()
+{
+ if (!armed)
+ return;
+
+ // addFd will queue a completion for the IOCP; when it's handled, a
+ // poller thread will call back to dispatch() below.
+ PollerHandle ph(*this);
+ poller->addFd(ph, Poller::INPUT);
+}
+
+void PollableConditionPrivate::dispatch(AsynchIoResult *result)
+{
+ delete result; // Poller::addFd() allocates this
+ cb(parent);
+}
+
+ /* PollableCondition */
+
+PollableCondition::PollableCondition(const Callback& cb,
+ const boost::shared_ptr<sys::Poller>& poller)
+ : impl(new PollableConditionPrivate(cb, *this, poller))
+{
+}
+
+PollableCondition::~PollableCondition()
+{
+ delete impl;
+}
+
+void PollableCondition::set() {
+ // Add one to the set count and poke it to provoke a callback
+ ::InterlockedIncrement(&impl->isSet);
+ impl->poke();
+}
+
+bool PollableCondition::clear() {
+ return (0 != ::InterlockedExchange(&impl->isSet, 0));
+}
+
+void PollableCondition::disarm() {
+ ::InterlockedExchange(&impl->armed, 0);
+}
+
+void PollableCondition::rearm() {
+ if (0 == ::InterlockedExchange(&impl->armed, 1) && impl->isSet)
+ impl->poke();
+}
+
+}} // namespace qpid::sys
+
+#endif /*!QPID_SYS_WINDOWS_POLLABLECONDITION_CPP*/
diff --git a/cpp/src/tests/QueueEvents.cpp b/cpp/src/tests/QueueEvents.cpp
index 3e377d04b3..df3c937e33 100644
--- a/cpp/src/tests/QueueEvents.cpp
+++ b/cpp/src/tests/QueueEvents.cpp
@@ -27,6 +27,7 @@
#include "qpid/broker/QueueEvents.h"
#include "qpid/client/QueueOptions.h"
#include "qpid/framing/SequenceNumber.h"
+#include "qpid/sys/Dispatcher.h"
#include <boost/bind.hpp>
#include <boost/format.hpp>