Large tidying up of Beast

- Move key classes into beast_core
- Tidy up various macros and files
- Disable leaking FifoFreeStoreWithTLS
This commit is contained in:
Vinnie Falco
2013-06-29 13:02:41 -07:00
parent b0c1b5834a
commit fe8834a52a
66 changed files with 1214 additions and 1154 deletions

View File

@@ -1,6 +1,24 @@
//------------------------------------------------------------------------------
/*
This file is part of Beast: https://github.com/vinniefalco/Beast
Copyright 2013, Vinnie Falco <vinnie.falco@gmail.com>
#ifndef BEAST_BEASTCONFIG_HEADER Permission to use, copy, modify, and/or distribute this software for any
#define BEAST_BEASTCONFIG_HEADER purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL , DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
//==============================================================================
#ifndef BEAST_BEASTCONFIG_H_INCLUDED
#define BEAST_BEASTCONFIG_H_INCLUDED
// beast_core flags: // beast_core flags:
@@ -22,7 +40,7 @@
// beast_basics flags // beast_basics flags
#define BEAST_USE_BOOST 1 #define BEAST_BOOST_IS_AVAILABLE 1
#ifndef BEAST_USE_LEAKCHECKED #ifndef BEAST_USE_LEAKCHECKED
#define BEAST_USE_LEAKCHECKED BEAST_CHECK_MEMORY_LEAKS #define BEAST_USE_LEAKCHECKED BEAST_CHECK_MEMORY_LEAKS

View File

@@ -23,10 +23,10 @@ Global
{19465545-42EE-42FA-9CC8-F8975F8F1CC7}.Release|x64.Build.0 = Release|x64 {19465545-42EE-42FA-9CC8-F8975F8F1CC7}.Release|x64.Build.0 = Release|x64
{73C5A0F0-7629-4DE7-9194-BE7AC6C19535}.Debug|Win32.ActiveCfg = Debug|Win32 {73C5A0F0-7629-4DE7-9194-BE7AC6C19535}.Debug|Win32.ActiveCfg = Debug|Win32
{73C5A0F0-7629-4DE7-9194-BE7AC6C19535}.Debug|Win32.Build.0 = Debug|Win32 {73C5A0F0-7629-4DE7-9194-BE7AC6C19535}.Debug|Win32.Build.0 = Debug|Win32
{73C5A0F0-7629-4DE7-9194-BE7AC6C19535}.Debug|x64.ActiveCfg = Debug|Win32 {73C5A0F0-7629-4DE7-9194-BE7AC6C19535}.Debug|x64.ActiveCfg = Debug|x64
{73C5A0F0-7629-4DE7-9194-BE7AC6C19535}.Release|Win32.ActiveCfg = Release|Win32 {73C5A0F0-7629-4DE7-9194-BE7AC6C19535}.Release|Win32.ActiveCfg = Release|Win32
{73C5A0F0-7629-4DE7-9194-BE7AC6C19535}.Release|Win32.Build.0 = Release|Win32 {73C5A0F0-7629-4DE7-9194-BE7AC6C19535}.Release|Win32.Build.0 = Release|Win32
{73C5A0F0-7629-4DE7-9194-BE7AC6C19535}.Release|x64.ActiveCfg = Release|Win32 {73C5A0F0-7629-4DE7-9194-BE7AC6C19535}.Release|x64.ActiveCfg = Release|x64
EndGlobalSection EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets" />
<PropertyGroup Label="UserMacros" />
<PropertyGroup />
<ItemDefinitionGroup>
<ClCompile>
<WarningLevel>Level4</WarningLevel>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup />
</Project>

View File

@@ -17,31 +17,87 @@
*/ */
//============================================================================== //==============================================================================
#ifndef BEAST_BEASTCONFIG_HEADER #ifndef BEAST_BEASTCONFIG_H_INCLUDED
#define BEAST_BEASTCONFIG_HEADER #define BEAST_BEASTCONFIG_H_INCLUDED
// beast_core flags: //------------------------------------------------------------------------------
#ifndef BEAST_FORCE_DEBUG /** Config: BEAST_FORCE_DEBUG
//#define BEAST_FORCE_DEBUG
Normally, BEAST_DEBUG is set to 1 or 0 based on compiler and project
settings, but if you define this value, you can override this to force it
to be true or false.
*/
#ifndef BEAST_FORCE_DEBUG
//#define BEAST_FORCE_DEBUG 0
#endif #endif
#ifndef BEAST_LOG_ASSERTIONS //------------------------------------------------------------------------------
//#define BEAST_LOG_ASSERTIONS 1
/** Config: BEAST_LOG_ASSERTIONS
If this flag is enabled, the the bassert and bassertfalse macros will always
use Logger::writeToLog() to write a message when an assertion happens.
Enabling it will also leave this turned on in release builds. When it's
disabled, however, the bassert and bassertfalse macros will not be compiled
in a release build.
@see bassert, bassertfalse, Logger
*/
#ifndef BEAST_LOG_ASSERTIONS
//#define BEAST_LOG_ASSERTIONS 0
#endif #endif
#ifndef BEAST_CHECK_MEMORY_LEAKS //------------------------------------------------------------------------------
//#define BEAST_CHECK_MEMORY_LEAKS
/** Config: BEAST_CHECK_MEMORY_LEAKS
Enables a memory-leak check for certain objects when the app terminates.
See the LeakedObjectDetector and LeakChecked classes, and the
BEAST_LEAK_DETECTOR macro for more details about enabling leak checking for
specific classes.
*/
#ifndef BEAST_CHECK_MEMORY_LEAKS
//#define BEAST_CHECK_MEMORY_LEAKS 1
#endif #endif
#ifndef BEAST_DONT_AUTOLINK_TO_WIN32_LIBRARIES //------------------------------------------------------------------------------
//#define BEAST_DONT_AUTOLINK_TO_WIN32_LIBRARIES
/** Config: BEAST_DONT_AUTOLINK_TO_WIN32_LIBRARIES
In a Visual C++ build, this can be used to stop the required system libs
being automatically added to the link stage.
*/
#ifndef BEAST_DONT_AUTOLINK_TO_WIN32_LIBRARIES
//#define BEAST_DONT_AUTOLINK_TO_WIN32_LIBRARIES 1
#endif #endif
//------------------------------------------------------------------------------
/** Config: BEAST_INCLUDE_ZLIB_CODE
This can be used to disable Beast's embedded 3rd-party zlib code.
You might need to tweak this if you're linking to an external zlib library in your app,
but for normal apps, this option should be left alone.
If you disable this, you might also want to set a value for BEAST_ZLIB_INCLUDE_PATH, to
specify the path where your zlib headers live.
*/
#ifndef BEAST_INCLUDE_ZLIB_CODE
//#define BEAST_INCLUDE_ZLIB_CODE 0
#endif
#ifndef BEAST_ZLIB_INCLUDE_PATH
#define BEAST_ZLIB_INCLUDE_PATH <zlib.h>
#endif
//------------------------------------------------------------------------------
// beast_basics flags // beast_basics flags
#ifndef BEAST_USE_BOOST #ifndef BEAST_BOOST_IS_AVAILABLE
#define BEAST_USE_BOOST 0 #define BEAST_BOOST_IS_AVAILABLE 0
#endif #endif
// Choose one to override default for platform // Choose one to override default for platform
@@ -50,7 +106,7 @@
//#define BEAST_BIND_USES_BOOST 1 //#define BEAST_BIND_USES_BOOST 1
#ifndef BEAST_USE_LEAKCHECKED #ifndef BEAST_USE_LEAKCHECKED
#define BEAST_USE_LEAKCHECKED BEAST_CHECK_MEMORY_LEAKS #define BEAST_USE_LEAKCHECKED 1
#endif #endif
#endif #endif

View File

@@ -5,10 +5,18 @@
<Configuration>Debug</Configuration> <Configuration>Debug</Configuration>
<Platform>Win32</Platform> <Platform>Win32</Platform>
</ProjectConfiguration> </ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32"> <ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration> <Configuration>Release</Configuration>
<Platform>Win32</Platform> <Platform>Win32</Platform>
</ProjectConfiguration> </ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="..\..\.gitattributes" /> <None Include="..\..\.gitattributes" />
@@ -18,68 +26,59 @@
<None Include="..\..\modules\beast_core\beast_core.mm" /> <None Include="..\..\modules\beast_core\beast_core.mm" />
<None Include="..\..\modules\beast_core\native\beast_mac_Files.mm"> <None Include="..\..\modules\beast_core\native\beast_mac_Files.mm">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</None> </None>
<None Include="..\..\modules\beast_core\native\beast_mac_Network.mm"> <None Include="..\..\modules\beast_core\native\beast_mac_Network.mm">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</None> </None>
<None Include="..\..\modules\beast_core\native\beast_mac_Strings.mm"> <None Include="..\..\modules\beast_core\native\beast_mac_Strings.mm">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</None> </None>
<None Include="..\..\modules\beast_core\native\beast_mac_SystemStats.mm"> <None Include="..\..\modules\beast_core\native\beast_mac_SystemStats.mm">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</None> </None>
<None Include="..\..\modules\beast_core\native\beast_mac_Threads.mm"> <None Include="..\..\modules\beast_core\native\beast_mac_Threads.mm">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</None> </None>
<None Include="..\..\modules\beast_core\native\java\BeastAppActivity.java"> <None Include="..\..\modules\beast_core\native\java\BeastAppActivity.java">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</None> </None>
<None Include="..\..\modules\beast_core\zip\zlib\README" /> <None Include="..\..\modules\beast_core\zip\zlib\README" />
<None Include="..\..\README.md" /> <None Include="..\..\README.md" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ClInclude Include="..\..\modules\beast_basics\beast_basics.h" /> <ClInclude Include="..\..\modules\beast_basics\beast_basics.h" />
<ClInclude Include="..\..\modules\beast_basics\containers\beast_List.h" />
<ClInclude Include="..\..\modules\beast_basics\containers\beast_LockFreeQueue.h" />
<ClInclude Include="..\..\modules\beast_basics\containers\beast_LockFreeStack.h" />
<ClInclude Include="..\..\modules\beast_basics\containers\beast_SharedTable.h" />
<ClInclude Include="..\..\modules\beast_basics\containers\beast_SortedLookupTable.h" />
<ClInclude Include="..\..\modules\beast_basics\diagnostic\beast_CatchAny.h" /> <ClInclude Include="..\..\modules\beast_basics\diagnostic\beast_CatchAny.h" />
<ClInclude Include="..\..\modules\beast_basics\diagnostic\beast_Debug.h" />
<ClInclude Include="..\..\modules\beast_basics\diagnostic\beast_Error.h" />
<ClInclude Include="..\..\modules\beast_basics\diagnostic\beast_FPUFlags.h" />
<ClInclude Include="..\..\modules\beast_basics\diagnostic\beast_LeakChecked.h" />
<ClInclude Include="..\..\modules\beast_basics\diagnostic\beast_SafeBool.h" />
<ClInclude Include="..\..\modules\beast_basics\diagnostic\beast_Throw.h" />
<ClInclude Include="..\..\modules\beast_basics\events\beast_OncePerSecond.h" /> <ClInclude Include="..\..\modules\beast_basics\events\beast_OncePerSecond.h" />
<ClInclude Include="..\..\modules\beast_basics\events\beast_PerformedAtExit.h" />
<ClInclude Include="..\..\modules\beast_basics\functor\beast_Bind.h" />
<ClInclude Include="..\..\modules\beast_basics\functor\beast_Function.h" /> <ClInclude Include="..\..\modules\beast_basics\functor\beast_Function.h" />
<ClInclude Include="..\..\modules\beast_basics\math\beast_Interval.h" /> <ClInclude Include="..\..\modules\beast_basics\math\beast_Interval.h" />
<ClInclude Include="..\..\modules\beast_basics\math\beast_Math.h" /> <ClInclude Include="..\..\modules\beast_basics\math\beast_Math.h" />
<ClInclude Include="..\..\modules\beast_basics\math\beast_MurmurHash.h" /> <ClInclude Include="..\..\modules\beast_basics\math\beast_MurmurHash.h" />
<ClInclude Include="..\..\modules\beast_basics\memory\beast_AllocatedBy.h" /> <ClInclude Include="..\..\modules\beast_basics\memory\beast_AllocatedBy.h" />
<ClInclude Include="..\..\modules\beast_basics\memory\beast_AtomicCounter.h" />
<ClInclude Include="..\..\modules\beast_basics\memory\beast_AtomicFlag.h" />
<ClInclude Include="..\..\modules\beast_basics\memory\beast_AtomicPointer.h" />
<ClInclude Include="..\..\modules\beast_basics\memory\beast_AtomicState.h" />
<ClInclude Include="..\..\modules\beast_basics\memory\beast_CacheLine.h" />
<ClInclude Include="..\..\modules\beast_basics\memory\beast_FifoFreeStore.h" /> <ClInclude Include="..\..\modules\beast_basics\memory\beast_FifoFreeStore.h" />
<ClInclude Include="..\..\modules\beast_basics\memory\beast_FifoFreeStoreWithoutTLS.h" /> <ClInclude Include="..\..\modules\beast_basics\memory\beast_FifoFreeStoreWithoutTLS.h" />
<ClInclude Include="..\..\modules\beast_basics\memory\beast_FifoFreeStoreWithTLS.h" /> <ClInclude Include="..\..\modules\beast_basics\memory\beast_FifoFreeStoreWithTLS.h" />
<ClInclude Include="..\..\modules\beast_basics\memory\beast_GlobalFifoFreeStore.h" /> <ClInclude Include="..\..\modules\beast_basics\memory\beast_GlobalFifoFreeStore.h" />
<ClInclude Include="..\..\modules\beast_basics\memory\beast_GlobalPagedFreeStore.h" /> <ClInclude Include="..\..\modules\beast_basics\memory\beast_GlobalPagedFreeStore.h" />
<ClInclude Include="..\..\modules\beast_basics\memory\beast_MemoryAlignment.h" />
<ClInclude Include="..\..\modules\beast_basics\memory\beast_PagedFreeStore.h" /> <ClInclude Include="..\..\modules\beast_basics\memory\beast_PagedFreeStore.h" />
<ClInclude Include="..\..\modules\beast_basics\memory\beast_RefCountedSingleton.h" /> <ClInclude Include="..\..\modules\beast_basics\memory\beast_RefCountedSingleton.h" />
<ClInclude Include="..\..\modules\beast_basics\memory\beast_StaticObject.h" />
<ClInclude Include="..\..\modules\beast_basics\memory\beast_Uncopyable.h" />
<ClInclude Include="..\..\modules\beast_basics\threads\beast_CallQueue.h" /> <ClInclude Include="..\..\modules\beast_basics\threads\beast_CallQueue.h" />
<ClInclude Include="..\..\modules\beast_basics\threads\beast_ConcurrentObject.h" /> <ClInclude Include="..\..\modules\beast_basics\threads\beast_ConcurrentObject.h" />
<ClInclude Include="..\..\modules\beast_basics\threads\beast_ConcurrentState.h" /> <ClInclude Include="..\..\modules\beast_basics\threads\beast_ConcurrentState.h" />
@@ -91,7 +90,6 @@
<ClInclude Include="..\..\modules\beast_basics\threads\beast_Semaphore.h" /> <ClInclude Include="..\..\modules\beast_basics\threads\beast_Semaphore.h" />
<ClInclude Include="..\..\modules\beast_basics\threads\beast_SerialFor.h" /> <ClInclude Include="..\..\modules\beast_basics\threads\beast_SerialFor.h" />
<ClInclude Include="..\..\modules\beast_basics\threads\beast_SharedObject.h" /> <ClInclude Include="..\..\modules\beast_basics\threads\beast_SharedObject.h" />
<ClInclude Include="..\..\modules\beast_basics\threads\beast_SpinDelay.h" />
<ClInclude Include="..\..\modules\beast_basics\threads\beast_ThreadGroup.h" /> <ClInclude Include="..\..\modules\beast_basics\threads\beast_ThreadGroup.h" />
<ClInclude Include="..\..\modules\beast_basics\threads\beast_ThreadWithCallQueue.h" /> <ClInclude Include="..\..\modules\beast_basics\threads\beast_ThreadWithCallQueue.h" />
<ClInclude Include="..\..\modules\beast_core\beast_core.h" /> <ClInclude Include="..\..\modules\beast_core\beast_core.h" />
@@ -102,14 +100,25 @@
<ClInclude Include="..\..\modules\beast_core\containers\beast_ElementComparator.h" /> <ClInclude Include="..\..\modules\beast_core\containers\beast_ElementComparator.h" />
<ClInclude Include="..\..\modules\beast_core\containers\beast_HashMap.h" /> <ClInclude Include="..\..\modules\beast_core\containers\beast_HashMap.h" />
<ClInclude Include="..\..\modules\beast_core\containers\beast_LinkedListPointer.h" /> <ClInclude Include="..\..\modules\beast_core\containers\beast_LinkedListPointer.h" />
<ClInclude Include="..\..\modules\beast_core\containers\beast_List.h" />
<ClInclude Include="..\..\modules\beast_core\containers\beast_LockFreeQueue.h" />
<ClInclude Include="..\..\modules\beast_core\containers\beast_LockFreeStack.h" />
<ClInclude Include="..\..\modules\beast_core\containers\beast_NamedValueSet.h" /> <ClInclude Include="..\..\modules\beast_core\containers\beast_NamedValueSet.h" />
<ClInclude Include="..\..\modules\beast_core\containers\beast_OwnedArray.h" /> <ClInclude Include="..\..\modules\beast_core\containers\beast_OwnedArray.h" />
<ClInclude Include="..\..\modules\beast_core\containers\beast_PropertySet.h" /> <ClInclude Include="..\..\modules\beast_core\containers\beast_PropertySet.h" />
<ClInclude Include="..\..\modules\beast_core\containers\beast_ReferenceCountedArray.h" /> <ClInclude Include="..\..\modules\beast_core\containers\beast_ReferenceCountedArray.h" />
<ClInclude Include="..\..\modules\beast_core\containers\beast_ScopedValueSetter.h" /> <ClInclude Include="..\..\modules\beast_core\containers\beast_ScopedValueSetter.h" />
<ClInclude Include="..\..\modules\beast_core\containers\beast_SharedTable.h" />
<ClInclude Include="..\..\modules\beast_core\containers\beast_SortedLookupTable.h" />
<ClInclude Include="..\..\modules\beast_core\containers\beast_SortedSet.h" /> <ClInclude Include="..\..\modules\beast_core\containers\beast_SortedSet.h" />
<ClInclude Include="..\..\modules\beast_core\containers\beast_SparseSet.h" /> <ClInclude Include="..\..\modules\beast_core\containers\beast_SparseSet.h" />
<ClInclude Include="..\..\modules\beast_core\containers\beast_Variant.h" /> <ClInclude Include="..\..\modules\beast_core\containers\beast_Variant.h" />
<ClInclude Include="..\..\modules\beast_core\diagnostic\beast_Debug.h" />
<ClInclude Include="..\..\modules\beast_core\diagnostic\beast_Error.h" />
<ClInclude Include="..\..\modules\beast_core\diagnostic\beast_FPUFlags.h" />
<ClInclude Include="..\..\modules\beast_core\diagnostic\beast_LeakChecked.h" />
<ClInclude Include="..\..\modules\beast_core\diagnostic\beast_SafeBool.h" />
<ClInclude Include="..\..\modules\beast_core\diagnostic\beast_Throw.h" />
<ClInclude Include="..\..\modules\beast_core\files\beast_DirectoryIterator.h" /> <ClInclude Include="..\..\modules\beast_core\files\beast_DirectoryIterator.h" />
<ClInclude Include="..\..\modules\beast_core\files\beast_File.h" /> <ClInclude Include="..\..\modules\beast_core\files\beast_File.h" />
<ClInclude Include="..\..\modules\beast_core\files\beast_FileInputStream.h" /> <ClInclude Include="..\..\modules\beast_core\files\beast_FileInputStream.h" />
@@ -117,6 +126,7 @@
<ClInclude Include="..\..\modules\beast_core\files\beast_FileSearchPath.h" /> <ClInclude Include="..\..\modules\beast_core\files\beast_FileSearchPath.h" />
<ClInclude Include="..\..\modules\beast_core\files\beast_MemoryMappedFile.h" /> <ClInclude Include="..\..\modules\beast_core\files\beast_MemoryMappedFile.h" />
<ClInclude Include="..\..\modules\beast_core\files\beast_TemporaryFile.h" /> <ClInclude Include="..\..\modules\beast_core\files\beast_TemporaryFile.h" />
<ClInclude Include="..\..\modules\beast_core\functional\beast_Bind.h" />
<ClInclude Include="..\..\modules\beast_core\json\beast_JSON.h" /> <ClInclude Include="..\..\modules\beast_core\json\beast_JSON.h" />
<ClInclude Include="..\..\modules\beast_core\logging\beast_FileLogger.h" /> <ClInclude Include="..\..\modules\beast_core\logging\beast_FileLogger.h" />
<ClInclude Include="..\..\modules\beast_core\logging\beast_Logger.h" /> <ClInclude Include="..\..\modules\beast_core\logging\beast_Logger.h" />
@@ -126,15 +136,22 @@
<ClInclude Include="..\..\modules\beast_core\maths\beast_Random.h" /> <ClInclude Include="..\..\modules\beast_core\maths\beast_Random.h" />
<ClInclude Include="..\..\modules\beast_core\maths\beast_Range.h" /> <ClInclude Include="..\..\modules\beast_core\maths\beast_Range.h" />
<ClInclude Include="..\..\modules\beast_core\memory\beast_Atomic.h" /> <ClInclude Include="..\..\modules\beast_core\memory\beast_Atomic.h" />
<ClInclude Include="..\..\modules\beast_core\memory\beast_AtomicCounter.h" />
<ClInclude Include="..\..\modules\beast_core\memory\beast_AtomicFlag.h" />
<ClInclude Include="..\..\modules\beast_core\memory\beast_AtomicPointer.h" />
<ClInclude Include="..\..\modules\beast_core\memory\beast_AtomicState.h" />
<ClInclude Include="..\..\modules\beast_core\memory\beast_ByteOrder.h" /> <ClInclude Include="..\..\modules\beast_core\memory\beast_ByteOrder.h" />
<ClInclude Include="..\..\modules\beast_core\memory\beast_CacheLine.h" />
<ClInclude Include="..\..\modules\beast_core\memory\beast_HeapBlock.h" /> <ClInclude Include="..\..\modules\beast_core\memory\beast_HeapBlock.h" />
<ClInclude Include="..\..\modules\beast_core\memory\beast_LeakedObjectDetector.h" /> <ClInclude Include="..\..\modules\beast_core\memory\beast_LeakedObjectDetector.h" />
<ClInclude Include="..\..\modules\beast_core\memory\beast_Memory.h" /> <ClInclude Include="..\..\modules\beast_core\memory\beast_Memory.h" />
<ClInclude Include="..\..\modules\beast_core\memory\beast_MemoryAlignment.h" />
<ClInclude Include="..\..\modules\beast_core\memory\beast_MemoryBlock.h" /> <ClInclude Include="..\..\modules\beast_core\memory\beast_MemoryBlock.h" />
<ClInclude Include="..\..\modules\beast_core\memory\beast_OptionalScopedPointer.h" /> <ClInclude Include="..\..\modules\beast_core\memory\beast_OptionalScopedPointer.h" />
<ClInclude Include="..\..\modules\beast_core\memory\beast_ReferenceCountedObject.h" /> <ClInclude Include="..\..\modules\beast_core\memory\beast_ReferenceCountedObject.h" />
<ClInclude Include="..\..\modules\beast_core\memory\beast_ScopedPointer.h" /> <ClInclude Include="..\..\modules\beast_core\memory\beast_ScopedPointer.h" />
<ClInclude Include="..\..\modules\beast_core\memory\beast_Singleton.h" /> <ClInclude Include="..\..\modules\beast_core\memory\beast_Singleton.h" />
<ClInclude Include="..\..\modules\beast_core\memory\beast_StaticObject.h" />
<ClInclude Include="..\..\modules\beast_core\memory\beast_WeakReference.h" /> <ClInclude Include="..\..\modules\beast_core\memory\beast_WeakReference.h" />
<ClInclude Include="..\..\modules\beast_core\misc\beast_Result.h" /> <ClInclude Include="..\..\modules\beast_core\misc\beast_Result.h" />
<ClInclude Include="..\..\modules\beast_core\misc\beast_Uuid.h" /> <ClInclude Include="..\..\modules\beast_core\misc\beast_Uuid.h" />
@@ -184,6 +201,7 @@
<ClInclude Include="..\..\modules\beast_core\threads\beast_ScopedLock.h" /> <ClInclude Include="..\..\modules\beast_core\threads\beast_ScopedLock.h" />
<ClInclude Include="..\..\modules\beast_core\threads\beast_ScopedReadLock.h" /> <ClInclude Include="..\..\modules\beast_core\threads\beast_ScopedReadLock.h" />
<ClInclude Include="..\..\modules\beast_core\threads\beast_ScopedWriteLock.h" /> <ClInclude Include="..\..\modules\beast_core\threads\beast_ScopedWriteLock.h" />
<ClInclude Include="..\..\modules\beast_core\threads\beast_SpinDelay.h" />
<ClInclude Include="..\..\modules\beast_core\threads\beast_SpinLock.h" /> <ClInclude Include="..\..\modules\beast_core\threads\beast_SpinLock.h" />
<ClInclude Include="..\..\modules\beast_core\threads\beast_Thread.h" /> <ClInclude Include="..\..\modules\beast_core\threads\beast_Thread.h" />
<ClInclude Include="..\..\modules\beast_core\threads\beast_ThreadLocalValue.h" /> <ClInclude Include="..\..\modules\beast_core\threads\beast_ThreadLocalValue.h" />
@@ -216,452 +234,658 @@
<ClCompile Include="..\..\modules\beast_basics\beast_basics.cpp" /> <ClCompile Include="..\..\modules\beast_basics\beast_basics.cpp" />
<ClCompile Include="..\..\modules\beast_basics\diagnostic\beast_CatchAny.cpp"> <ClCompile Include="..\..\modules\beast_basics\diagnostic\beast_CatchAny.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
</ClCompile> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
<ClCompile Include="..\..\modules\beast_basics\diagnostic\beast_Debug.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\modules\beast_basics\diagnostic\beast_Error.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\modules\beast_basics\diagnostic\beast_FPUFlags.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\modules\beast_basics\diagnostic\beast_LeakChecked.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\events\beast_OncePerSecond.cpp"> <ClCompile Include="..\..\modules\beast_basics\events\beast_OncePerSecond.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
</ClCompile> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
<ClCompile Include="..\..\modules\beast_basics\events\beast_PerformedAtExit.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\math\beast_MurmurHash.cpp"> <ClCompile Include="..\..\modules\beast_basics\math\beast_MurmurHash.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\memory\beast_FifoFreeStoreWithoutTLS.cpp"> <ClCompile Include="..\..\modules\beast_basics\memory\beast_FifoFreeStoreWithoutTLS.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\memory\beast_FifoFreeStoreWithTLS.cpp"> <ClCompile Include="..\..\modules\beast_basics\memory\beast_FifoFreeStoreWithTLS.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\memory\beast_GlobalPagedFreeStore.cpp"> <ClCompile Include="..\..\modules\beast_basics\memory\beast_GlobalPagedFreeStore.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\memory\beast_PagedFreeStore.cpp"> <ClCompile Include="..\..\modules\beast_basics\memory\beast_PagedFreeStore.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\native\beast_posix_FPUFlags.cpp"> <ClCompile Include="..\..\modules\beast_basics\native\beast_posix_FPUFlags.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
</ClCompile> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
<ClCompile Include="..\..\modules\beast_basics\native\beast_posix_Threads.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\native\beast_win32_FPUFlags.cpp"> <ClCompile Include="..\..\modules\beast_basics\native\beast_win32_FPUFlags.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
</ClCompile> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
<ClCompile Include="..\..\modules\beast_basics\native\beast_win32_Threads.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\threads\beast_CallQueue.cpp"> <ClCompile Include="..\..\modules\beast_basics\threads\beast_CallQueue.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\threads\beast_ConcurrentObject.cpp"> <ClCompile Include="..\..\modules\beast_basics\threads\beast_ConcurrentObject.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\threads\beast_InterruptibleThread.cpp"> <ClCompile Include="..\..\modules\beast_basics\threads\beast_InterruptibleThread.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\threads\beast_Listeners.cpp"> <ClCompile Include="..\..\modules\beast_basics\threads\beast_Listeners.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\threads\beast_ParallelFor.cpp"> <ClCompile Include="..\..\modules\beast_basics\threads\beast_ParallelFor.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\threads\beast_ReadWriteMutex.cpp"> <ClCompile Include="..\..\modules\beast_basics\threads\beast_ReadWriteMutex.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\threads\beast_Semaphore.cpp"> <ClCompile Include="..\..\modules\beast_basics\threads\beast_Semaphore.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\threads\beast_SharedObject.cpp"> <ClCompile Include="..\..\modules\beast_basics\threads\beast_SharedObject.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\threads\beast_ThreadGroup.cpp"> <ClCompile Include="..\..\modules\beast_basics\threads\beast_ThreadGroup.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\threads\beast_ThreadWithCallQueue.cpp"> <ClCompile Include="..\..\modules\beast_basics\threads\beast_ThreadWithCallQueue.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\beast_core.cpp" /> <ClCompile Include="..\..\modules\beast_core\beast_core.cpp" />
<ClCompile Include="..\..\modules\beast_core\containers\beast_AbstractFifo.cpp"> <ClCompile Include="..\..\modules\beast_core\containers\beast_AbstractFifo.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\containers\beast_DynamicObject.cpp"> <ClCompile Include="..\..\modules\beast_core\containers\beast_DynamicObject.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\containers\beast_NamedValueSet.cpp"> <ClCompile Include="..\..\modules\beast_core\containers\beast_NamedValueSet.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\containers\beast_PropertySet.cpp"> <ClCompile Include="..\..\modules\beast_core\containers\beast_PropertySet.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\containers\beast_Variant.cpp"> <ClCompile Include="..\..\modules\beast_core\containers\beast_Variant.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\modules\beast_core\diagnostic\beast_Debug.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\modules\beast_core\diagnostic\beast_Error.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\modules\beast_core\diagnostic\beast_FPUFlags.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\modules\beast_core\diagnostic\beast_LeakChecked.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\files\beast_DirectoryIterator.cpp"> <ClCompile Include="..\..\modules\beast_core\files\beast_DirectoryIterator.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\files\beast_File.cpp"> <ClCompile Include="..\..\modules\beast_core\files\beast_File.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\files\beast_FileInputStream.cpp"> <ClCompile Include="..\..\modules\beast_core\files\beast_FileInputStream.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\files\beast_FileOutputStream.cpp"> <ClCompile Include="..\..\modules\beast_core\files\beast_FileOutputStream.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\files\beast_FileSearchPath.cpp"> <ClCompile Include="..\..\modules\beast_core\files\beast_FileSearchPath.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\files\beast_TemporaryFile.cpp"> <ClCompile Include="..\..\modules\beast_core\files\beast_TemporaryFile.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\json\beast_JSON.cpp"> <ClCompile Include="..\..\modules\beast_core\json\beast_JSON.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\logging\beast_FileLogger.cpp"> <ClCompile Include="..\..\modules\beast_core\logging\beast_FileLogger.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\logging\beast_Logger.cpp"> <ClCompile Include="..\..\modules\beast_core\logging\beast_Logger.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\maths\beast_BigInteger.cpp"> <ClCompile Include="..\..\modules\beast_core\maths\beast_BigInteger.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\maths\beast_Expression.cpp"> <ClCompile Include="..\..\modules\beast_core\maths\beast_Expression.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\maths\beast_Random.cpp"> <ClCompile Include="..\..\modules\beast_core\maths\beast_Random.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\memory\beast_MemoryBlock.cpp"> <ClCompile Include="..\..\modules\beast_core\memory\beast_MemoryBlock.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\misc\beast_Result.cpp"> <ClCompile Include="..\..\modules\beast_core\misc\beast_Result.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\misc\beast_Uuid.cpp"> <ClCompile Include="..\..\modules\beast_core\misc\beast_Uuid.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_android_Files.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_android_Files.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_android_Misc.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_android_Misc.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_android_Network.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_android_Network.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_android_SystemStats.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_android_SystemStats.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_android_Threads.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_android_Threads.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_bsd_Files.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_bsd_Files.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_bsd_Network.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_bsd_Network.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_bsd_SystemStats.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_bsd_SystemStats.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_bsd_Threads.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_bsd_Threads.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_linux_Files.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_linux_Files.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_linux_Network.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_linux_Network.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_linux_SystemStats.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_linux_SystemStats.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_linux_Threads.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_linux_Threads.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_posix_NamedPipe.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_posix_NamedPipe.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_win32_Files.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_win32_Files.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_win32_Network.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_win32_Network.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_win32_Registry.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_win32_Registry.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_win32_SystemStats.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_win32_SystemStats.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\native\beast_win32_Threads.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_win32_Threads.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\network\beast_IPAddress.cpp"> <ClCompile Include="..\..\modules\beast_core\network\beast_IPAddress.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\network\beast_MACAddress.cpp"> <ClCompile Include="..\..\modules\beast_core\network\beast_MACAddress.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\network\beast_NamedPipe.cpp"> <ClCompile Include="..\..\modules\beast_core\network\beast_NamedPipe.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\network\beast_Socket.cpp"> <ClCompile Include="..\..\modules\beast_core\network\beast_Socket.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\network\beast_URL.cpp"> <ClCompile Include="..\..\modules\beast_core\network\beast_URL.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\streams\beast_BufferedInputStream.cpp"> <ClCompile Include="..\..\modules\beast_core\streams\beast_BufferedInputStream.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\streams\beast_FileInputSource.cpp"> <ClCompile Include="..\..\modules\beast_core\streams\beast_FileInputSource.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\streams\beast_InputStream.cpp"> <ClCompile Include="..\..\modules\beast_core\streams\beast_InputStream.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\streams\beast_MemoryInputStream.cpp"> <ClCompile Include="..\..\modules\beast_core\streams\beast_MemoryInputStream.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\streams\beast_MemoryOutputStream.cpp"> <ClCompile Include="..\..\modules\beast_core\streams\beast_MemoryOutputStream.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\streams\beast_OutputStream.cpp"> <ClCompile Include="..\..\modules\beast_core\streams\beast_OutputStream.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\streams\beast_SubregionStream.cpp"> <ClCompile Include="..\..\modules\beast_core\streams\beast_SubregionStream.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\system\beast_SystemStats.cpp"> <ClCompile Include="..\..\modules\beast_core\system\beast_SystemStats.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\text\beast_CharacterFunctions.cpp"> <ClCompile Include="..\..\modules\beast_core\text\beast_CharacterFunctions.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\text\beast_Identifier.cpp"> <ClCompile Include="..\..\modules\beast_core\text\beast_Identifier.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\text\beast_LocalisedStrings.cpp"> <ClCompile Include="..\..\modules\beast_core\text\beast_LocalisedStrings.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\text\beast_String.cpp"> <ClCompile Include="..\..\modules\beast_core\text\beast_String.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\text\beast_StringArray.cpp"> <ClCompile Include="..\..\modules\beast_core\text\beast_StringArray.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\text\beast_StringPairArray.cpp"> <ClCompile Include="..\..\modules\beast_core\text\beast_StringPairArray.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\text\beast_StringPool.cpp"> <ClCompile Include="..\..\modules\beast_core\text\beast_StringPool.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\text\beast_TextDiff.cpp"> <ClCompile Include="..\..\modules\beast_core\text\beast_TextDiff.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\threads\beast_ChildProcess.cpp"> <ClCompile Include="..\..\modules\beast_core\threads\beast_ChildProcess.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\threads\beast_HighResolutionTimer.cpp"> <ClCompile Include="..\..\modules\beast_core\threads\beast_HighResolutionTimer.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\threads\beast_ReadWriteLock.cpp"> <ClCompile Include="..\..\modules\beast_core\threads\beast_ReadWriteLock.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\threads\beast_Thread.cpp"> <ClCompile Include="..\..\modules\beast_core\threads\beast_Thread.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\threads\beast_ThreadPool.cpp"> <ClCompile Include="..\..\modules\beast_core\threads\beast_ThreadPool.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\threads\beast_TimeSliceThread.cpp"> <ClCompile Include="..\..\modules\beast_core\threads\beast_TimeSliceThread.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\time\beast_PerformanceCounter.cpp"> <ClCompile Include="..\..\modules\beast_core\time\beast_PerformanceCounter.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\time\beast_RelativeTime.cpp"> <ClCompile Include="..\..\modules\beast_core\time\beast_RelativeTime.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\time\beast_Time.cpp"> <ClCompile Include="..\..\modules\beast_core\time\beast_Time.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\unit_tests\beast_UnitTest.cpp"> <ClCompile Include="..\..\modules\beast_core\unit_tests\beast_UnitTest.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\xml\beast_XmlDocument.cpp"> <ClCompile Include="..\..\modules\beast_core\xml\beast_XmlDocument.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\xml\beast_XmlElement.cpp"> <ClCompile Include="..\..\modules\beast_core\xml\beast_XmlElement.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\zip\beast_GZIPCompressorOutputStream.cpp"> <ClCompile Include="..\..\modules\beast_core\zip\beast_GZIPCompressorOutputStream.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\zip\beast_GZIPDecompressorInputStream.cpp"> <ClCompile Include="..\..\modules\beast_core\zip\beast_GZIPDecompressorInputStream.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\zip\beast_ZipFile.cpp"> <ClCompile Include="..\..\modules\beast_core\zip\beast_ZipFile.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\zip\zlib\adler32.c"> <ClCompile Include="..\..\modules\beast_core\zip\zlib\adler32.c">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\zip\zlib\compress.c"> <ClCompile Include="..\..\modules\beast_core\zip\zlib\compress.c">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\zip\zlib\crc32.c"> <ClCompile Include="..\..\modules\beast_core\zip\zlib\crc32.c">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\zip\zlib\deflate.c"> <ClCompile Include="..\..\modules\beast_core\zip\zlib\deflate.c">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\zip\zlib\infback.c"> <ClCompile Include="..\..\modules\beast_core\zip\zlib\infback.c">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\zip\zlib\inffast.c"> <ClCompile Include="..\..\modules\beast_core\zip\zlib\inffast.c">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\zip\zlib\inflate.c"> <ClCompile Include="..\..\modules\beast_core\zip\zlib\inflate.c">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\zip\zlib\inftrees.c"> <ClCompile Include="..\..\modules\beast_core\zip\zlib\inftrees.c">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\zip\zlib\trees.c"> <ClCompile Include="..\..\modules\beast_core\zip\zlib\trees.c">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\zip\zlib\uncompr.c"> <ClCompile Include="..\..\modules\beast_core\zip\zlib\uncompr.c">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\zip\zlib\zutil.c"> <ClCompile Include="..\..\modules\beast_core\zip\zlib\zutil.c">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile> </ClCompile>
</ItemGroup> </ItemGroup>
<PropertyGroup Label="Globals"> <PropertyGroup Label="Globals">
@@ -676,6 +900,12 @@
<PlatformToolset>v110</PlatformToolset> <PlatformToolset>v110</PlatformToolset>
<CharacterSet>Unicode</CharacterSet> <CharacterSet>Unicode</CharacterSet>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v110</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType> <ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries> <UseDebugLibraries>false</UseDebugLibraries>
@@ -683,14 +913,31 @@
<WholeProgramOptimization>true</WholeProgramOptimization> <WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet> <CharacterSet>Unicode</CharacterSet>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v110</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings"> <ImportGroup Label="ExtensionSettings">
</ImportGroup> </ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="Beast.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="Beast.props" />
</ImportGroup> </ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="Beast.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="Beast.props" />
</ImportGroup> </ImportGroup>
<PropertyGroup Label="UserMacros" /> <PropertyGroup Label="UserMacros" />
<PropertyGroup /> <PropertyGroup />
@@ -698,7 +945,19 @@
<ClCompile> <ClCompile>
<PrecompiledHeader> <PrecompiledHeader>
</PrecompiledHeader> </PrecompiledHeader>
<WarningLevel>Level3</WarningLevel> <Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(ProjectDir)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(ProjectDir)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>$(ProjectDir)</AdditionalIncludeDirectories>
@@ -710,7 +969,23 @@
</ItemDefinitionGroup> </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile> <ClCompile>
<WarningLevel>Level3</WarningLevel> <PrecompiledHeader>
</PrecompiledHeader>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(ProjectDir)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<PrecompiledHeader> <PrecompiledHeader>
</PrecompiledHeader> </PrecompiledHeader>
<Optimization>MaxSpeed</Optimization> <Optimization>MaxSpeed</Optimization>

View File

@@ -95,9 +95,6 @@
<Filter Include="beast_basics"> <Filter Include="beast_basics">
<UniqueIdentifier>{e3a8f3eb-7f0f-4b81-b978-0dd0823f583b}</UniqueIdentifier> <UniqueIdentifier>{e3a8f3eb-7f0f-4b81-b978-0dd0823f583b}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="beast_basics\containers">
<UniqueIdentifier>{3e9389c0-c8f0-4657-ab11-cbbea889d3be}</UniqueIdentifier>
</Filter>
<Filter Include="beast_basics\diagnostic"> <Filter Include="beast_basics\diagnostic">
<UniqueIdentifier>{ba11b980-76dd-49a4-b2c7-878e9f08f8ce}</UniqueIdentifier> <UniqueIdentifier>{ba11b980-76dd-49a4-b2c7-878e9f08f8ce}</UniqueIdentifier>
</Filter> </Filter>
@@ -119,6 +116,12 @@
<Filter Include="beast_basics\threads"> <Filter Include="beast_basics\threads">
<UniqueIdentifier>{f58dddf7-fe43-49a2-8e57-91feba586119}</UniqueIdentifier> <UniqueIdentifier>{f58dddf7-fe43-49a2-8e57-91feba586119}</UniqueIdentifier>
</Filter> </Filter>
<Filter Include="beast_core\functional">
<UniqueIdentifier>{b70d6403-2d7a-4377-81ff-390830ab0276}</UniqueIdentifier>
</Filter>
<Filter Include="beast_core\diagnostic">
<UniqueIdentifier>{69e28551-92ea-420b-a465-75ed248e3b59}</UniqueIdentifier>
</Filter>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ClInclude Include="..\..\modules\beast_core\beast_core.h"> <ClInclude Include="..\..\modules\beast_core\beast_core.h">
@@ -473,51 +476,12 @@
<ClInclude Include="..\..\modules\beast_basics\beast_basics.h"> <ClInclude Include="..\..\modules\beast_basics\beast_basics.h">
<Filter>beast_basics</Filter> <Filter>beast_basics</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\modules\beast_basics\containers\beast_List.h">
<Filter>beast_basics\containers</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\containers\beast_LockFreeQueue.h">
<Filter>beast_basics\containers</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\containers\beast_LockFreeStack.h">
<Filter>beast_basics\containers</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\containers\beast_SharedTable.h">
<Filter>beast_basics\containers</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\containers\beast_SortedLookupTable.h">
<Filter>beast_basics\containers</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\diagnostic\beast_CatchAny.h"> <ClInclude Include="..\..\modules\beast_basics\diagnostic\beast_CatchAny.h">
<Filter>beast_basics\diagnostic</Filter> <Filter>beast_basics\diagnostic</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\modules\beast_basics\diagnostic\beast_Debug.h">
<Filter>beast_basics\diagnostic</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\diagnostic\beast_Error.h">
<Filter>beast_basics\diagnostic</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\diagnostic\beast_FPUFlags.h">
<Filter>beast_basics\diagnostic</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\diagnostic\beast_LeakChecked.h">
<Filter>beast_basics\diagnostic</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\diagnostic\beast_SafeBool.h">
<Filter>beast_basics\diagnostic</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\diagnostic\beast_Throw.h">
<Filter>beast_basics\diagnostic</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\events\beast_OncePerSecond.h"> <ClInclude Include="..\..\modules\beast_basics\events\beast_OncePerSecond.h">
<Filter>beast_basics\events</Filter> <Filter>beast_basics\events</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\modules\beast_basics\events\beast_PerformedAtExit.h">
<Filter>beast_basics\events</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\functor\beast_Bind.h">
<Filter>beast_basics\functor</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\functor\beast_Function.h"> <ClInclude Include="..\..\modules\beast_basics\functor\beast_Function.h">
<Filter>beast_basics\functor</Filter> <Filter>beast_basics\functor</Filter>
</ClInclude> </ClInclude>
@@ -533,21 +497,6 @@
<ClInclude Include="..\..\modules\beast_basics\memory\beast_AllocatedBy.h"> <ClInclude Include="..\..\modules\beast_basics\memory\beast_AllocatedBy.h">
<Filter>beast_basics\memory</Filter> <Filter>beast_basics\memory</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\modules\beast_basics\memory\beast_AtomicCounter.h">
<Filter>beast_basics\memory</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\memory\beast_AtomicFlag.h">
<Filter>beast_basics\memory</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\memory\beast_AtomicPointer.h">
<Filter>beast_basics\memory</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\memory\beast_AtomicState.h">
<Filter>beast_basics\memory</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\memory\beast_CacheLine.h">
<Filter>beast_basics\memory</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\memory\beast_FifoFreeStore.h"> <ClInclude Include="..\..\modules\beast_basics\memory\beast_FifoFreeStore.h">
<Filter>beast_basics\memory</Filter> <Filter>beast_basics\memory</Filter>
</ClInclude> </ClInclude>
@@ -563,21 +512,12 @@
<ClInclude Include="..\..\modules\beast_basics\memory\beast_GlobalPagedFreeStore.h"> <ClInclude Include="..\..\modules\beast_basics\memory\beast_GlobalPagedFreeStore.h">
<Filter>beast_basics\memory</Filter> <Filter>beast_basics\memory</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\modules\beast_basics\memory\beast_MemoryAlignment.h">
<Filter>beast_basics\memory</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\memory\beast_PagedFreeStore.h"> <ClInclude Include="..\..\modules\beast_basics\memory\beast_PagedFreeStore.h">
<Filter>beast_basics\memory</Filter> <Filter>beast_basics\memory</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\modules\beast_basics\memory\beast_RefCountedSingleton.h"> <ClInclude Include="..\..\modules\beast_basics\memory\beast_RefCountedSingleton.h">
<Filter>beast_basics\memory</Filter> <Filter>beast_basics\memory</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\modules\beast_basics\memory\beast_StaticObject.h">
<Filter>beast_basics\memory</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\memory\beast_Uncopyable.h">
<Filter>beast_basics\memory</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\threads\beast_CallQueue.h"> <ClInclude Include="..\..\modules\beast_basics\threads\beast_CallQueue.h">
<Filter>beast_basics\threads</Filter> <Filter>beast_basics\threads</Filter>
</ClInclude> </ClInclude>
@@ -611,15 +551,72 @@
<ClInclude Include="..\..\modules\beast_basics\threads\beast_SharedObject.h"> <ClInclude Include="..\..\modules\beast_basics\threads\beast_SharedObject.h">
<Filter>beast_basics\threads</Filter> <Filter>beast_basics\threads</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\modules\beast_basics\threads\beast_SpinDelay.h">
<Filter>beast_basics\threads</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_basics\threads\beast_ThreadGroup.h"> <ClInclude Include="..\..\modules\beast_basics\threads\beast_ThreadGroup.h">
<Filter>beast_basics\threads</Filter> <Filter>beast_basics\threads</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\modules\beast_basics\threads\beast_ThreadWithCallQueue.h"> <ClInclude Include="..\..\modules\beast_basics\threads\beast_ThreadWithCallQueue.h">
<Filter>beast_basics\threads</Filter> <Filter>beast_basics\threads</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\modules\beast_core\containers\beast_List.h">
<Filter>beast_core\containers</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\functional\beast_Bind.h">
<Filter>beast_core\functional</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\memory\beast_CacheLine.h">
<Filter>beast_core\memory</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\memory\beast_MemoryAlignment.h">
<Filter>beast_core\memory</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\memory\beast_AtomicCounter.h">
<Filter>beast_core\memory</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\memory\beast_AtomicFlag.h">
<Filter>beast_core\memory</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\memory\beast_AtomicPointer.h">
<Filter>beast_core\memory</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\memory\beast_AtomicState.h">
<Filter>beast_core\memory</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\containers\beast_LockFreeQueue.h">
<Filter>beast_core\containers</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\containers\beast_LockFreeStack.h">
<Filter>beast_core\containers</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\threads\beast_SpinDelay.h">
<Filter>beast_core\threads</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\memory\beast_StaticObject.h">
<Filter>beast_core\memory</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\containers\beast_SharedTable.h">
<Filter>beast_core\containers</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\containers\beast_SortedLookupTable.h">
<Filter>beast_core\containers</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\diagnostic\beast_Debug.h">
<Filter>beast_core\diagnostic</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\diagnostic\beast_Error.h">
<Filter>beast_core\diagnostic</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\diagnostic\beast_FPUFlags.h">
<Filter>beast_core\diagnostic</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\diagnostic\beast_LeakChecked.h">
<Filter>beast_core\diagnostic</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\diagnostic\beast_SafeBool.h">
<Filter>beast_core\diagnostic</Filter>
</ClInclude>
<ClInclude Include="..\..\modules\beast_core\diagnostic\beast_Throw.h">
<Filter>beast_core\diagnostic</Filter>
</ClInclude>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ClCompile Include="..\..\modules\beast_core\beast_core.cpp"> <ClCompile Include="..\..\modules\beast_core\beast_core.cpp">
@@ -877,24 +874,9 @@
<ClCompile Include="..\..\modules\beast_basics\diagnostic\beast_CatchAny.cpp"> <ClCompile Include="..\..\modules\beast_basics\diagnostic\beast_CatchAny.cpp">
<Filter>beast_basics\diagnostic</Filter> <Filter>beast_basics\diagnostic</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\diagnostic\beast_Debug.cpp">
<Filter>beast_basics\diagnostic</Filter>
</ClCompile>
<ClCompile Include="..\..\modules\beast_basics\diagnostic\beast_Error.cpp">
<Filter>beast_basics\diagnostic</Filter>
</ClCompile>
<ClCompile Include="..\..\modules\beast_basics\diagnostic\beast_FPUFlags.cpp">
<Filter>beast_basics\diagnostic</Filter>
</ClCompile>
<ClCompile Include="..\..\modules\beast_basics\diagnostic\beast_LeakChecked.cpp">
<Filter>beast_basics\diagnostic</Filter>
</ClCompile>
<ClCompile Include="..\..\modules\beast_basics\events\beast_OncePerSecond.cpp"> <ClCompile Include="..\..\modules\beast_basics\events\beast_OncePerSecond.cpp">
<Filter>beast_basics\events</Filter> <Filter>beast_basics\events</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\events\beast_PerformedAtExit.cpp">
<Filter>beast_basics\events</Filter>
</ClCompile>
<ClCompile Include="..\..\modules\beast_basics\math\beast_MurmurHash.cpp"> <ClCompile Include="..\..\modules\beast_basics\math\beast_MurmurHash.cpp">
<Filter>beast_basics\math</Filter> <Filter>beast_basics\math</Filter>
</ClCompile> </ClCompile>
@@ -913,15 +895,9 @@
<ClCompile Include="..\..\modules\beast_basics\native\beast_posix_FPUFlags.cpp"> <ClCompile Include="..\..\modules\beast_basics\native\beast_posix_FPUFlags.cpp">
<Filter>beast_basics\native</Filter> <Filter>beast_basics\native</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\native\beast_posix_Threads.cpp">
<Filter>beast_basics\native</Filter>
</ClCompile>
<ClCompile Include="..\..\modules\beast_basics\native\beast_win32_FPUFlags.cpp"> <ClCompile Include="..\..\modules\beast_basics\native\beast_win32_FPUFlags.cpp">
<Filter>beast_basics\native</Filter> <Filter>beast_basics\native</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_basics\native\beast_win32_Threads.cpp">
<Filter>beast_basics\native</Filter>
</ClCompile>
<ClCompile Include="..\..\modules\beast_basics\threads\beast_CallQueue.cpp"> <ClCompile Include="..\..\modules\beast_basics\threads\beast_CallQueue.cpp">
<Filter>beast_basics\threads</Filter> <Filter>beast_basics\threads</Filter>
</ClCompile> </ClCompile>
@@ -964,5 +940,17 @@
<ClCompile Include="..\..\modules\beast_core\native\beast_bsd_Threads.cpp"> <ClCompile Include="..\..\modules\beast_core\native\beast_bsd_Threads.cpp">
<Filter>beast_core\native</Filter> <Filter>beast_core\native</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\modules\beast_core\diagnostic\beast_Debug.cpp">
<Filter>beast_core\diagnostic</Filter>
</ClCompile>
<ClCompile Include="..\..\modules\beast_core\diagnostic\beast_Error.cpp">
<Filter>beast_core\diagnostic</Filter>
</ClCompile>
<ClCompile Include="..\..\modules\beast_core\diagnostic\beast_FPUFlags.cpp">
<Filter>beast_core\diagnostic</Filter>
</ClCompile>
<ClCompile Include="..\..\modules\beast_core\diagnostic\beast_LeakChecked.cpp">
<Filter>beast_core\diagnostic</Filter>
</ClCompile>
</ItemGroup> </ItemGroup>
</Project> </Project>

View File

@@ -41,27 +41,17 @@ namespace beast
{ {
#include "diagnostic/beast_CatchAny.cpp" #include "diagnostic/beast_CatchAny.cpp"
#include "diagnostic/beast_Debug.cpp"
#include "diagnostic/beast_Error.cpp"
#include "diagnostic/beast_FPUFlags.cpp"
#include "diagnostic/beast_LeakChecked.cpp"
#include "events/beast_OncePerSecond.cpp" #include "events/beast_OncePerSecond.cpp"
#include "events/beast_PerformedAtExit.cpp"
#include "math/beast_MurmurHash.cpp" #include "math/beast_MurmurHash.cpp"
#include "threads/beast_InterruptibleThread.cpp" #include "threads/beast_InterruptibleThread.cpp"
#include "threads/beast_Semaphore.cpp" #include "threads/beast_Semaphore.cpp"
#if BEAST_USE_BOOST
#include "memory/beast_FifoFreeStoreWithTLS.cpp" #include "memory/beast_FifoFreeStoreWithTLS.cpp"
#else
#include "memory/beast_FifoFreeStoreWithoutTLS.cpp" #include "memory/beast_FifoFreeStoreWithoutTLS.cpp"
#endif
#include "memory/beast_GlobalPagedFreeStore.cpp" #include "memory/beast_GlobalPagedFreeStore.cpp"
#include "memory/beast_PagedFreeStore.cpp" #include "memory/beast_PagedFreeStore.cpp"
#include "threads/beast_CallQueue.cpp" #include "threads/beast_CallQueue.cpp"
#include "threads/beast_ConcurrentObject.cpp" #include "threads/beast_ConcurrentObject.cpp"
#include "threads/beast_Listeners.cpp" #include "threads/beast_Listeners.cpp"
@@ -74,11 +64,9 @@ namespace beast
#if BEAST_WINDOWS #if BEAST_WINDOWS
#include "native/beast_win32_FPUFlags.cpp" #include "native/beast_win32_FPUFlags.cpp"
#include "native/beast_win32_Threads.cpp"
#else #else
#include "native/beast_posix_FPUFlags.cpp" #include "native/beast_posix_FPUFlags.cpp"
#include "native/beast_posix_Threads.cpp"
#endif #endif
} }
@@ -86,21 +74,3 @@ namespace beast
#if BEAST_MSVC #if BEAST_MSVC
#pragma warning (pop) #pragma warning (pop)
#endif #endif
//------------------------------------------------------------------------------
#if BEAST_USE_BOOST
namespace boost {
namespace placeholders {
boost::arg<1> _1;
boost::arg<2> _2;
boost::arg<3> _3;
boost::arg<4> _4;
boost::arg<5> _5;
boost::arg<6> _6;
boost::arg<7> _7;
boost::arg<8> _8;
boost::arg<9> _9;
}
}
#endif

View File

@@ -23,330 +23,214 @@
@ingroup beast_basics @ingroup beast_basics
*/ */
#ifndef BEAST_BASICS_BEASTHEADER #ifndef BEAST_BASICS_H_INCLUDED
#define BEAST_BASICS_BEASTHEADER #define BEAST_BASICS_H_INCLUDED
//============================================================================== //------------------------------------------------------------------------------
/* If you fail to make sure that all your compile units are building Beast with
the same set of option flags, then there's a risk that different compile
units will treat the classes as having different memory layouts, leading to
very nasty memory corruption errors when they all get linked together.
That's why it's best to always include the BeastConfig.h file before any
beast headers.
*/
#ifndef BEAST_BEASTCONFIG_H_INCLUDED
# ifdef _MSC_VER
# pragma message ("Have you included your BeastConfig.h file before including the Beast headers?")
# else
# warning "Have you included your BeastConfig.h file before including the Beast headers?"
# endif
#endif
//------------------------------------------------------------------------------
/** /**
@mainpage Beast: A multipurpose library using parts of JUCE.
### Version 1.1 @mainpage Beast: A C++ library for server development.
Copyright (C) 2008 by Vinnie Falco \<vinnie.falco@gmail.com\> ([e-mail][0]) ### Version 1.0
Beast is a source code collection of individual modules containing Copyright 2008, 2013 by Vinnie Falco \<vinnie.falco@gmail.com\> ([e-mail][0])
functionality for a variety of applications, with an emphasis on building
concurrent systems. Beast requires [JUCE][3] (Jules' Utility Class
Extensions), available from [Raw Material Software][4]. JUCE is available
under both the [GNU General Public License][5] and a [commercial license][6].
Other than JUCE, Beast has no external dependencies.
Beast is hosted on Github at [https://github.com/vinniefalco/Beast][1] Beast is a source code collection of individual modules containing
functionality for a variety of applications, with an emphasis on building
concurrent systems. Beast incorporates parts of [JUCE][3] (Jules' Utility
Class Extensions), available from [Raw Material Software][4]. Beast has no
external dependencies
The online documentation is at [http://vinniefalco.github.com/Beast][2] Beast is hosted on Github at [https://github.com/vinniefalco/Beast][1]
## Platforms The online documentation is at [http://vinniefalco.github.com/Beast][2]
All platforms supported by JUCE are also supported by Beast. Currently these ## Platforms
platforms include:
- **Windows**: Applications and VST/RTAS/NPAPI/ActiveX plugins can be built All platforms supported by JUCE are also supported by Beast. Currently these
using MS Visual Studio. The results are all fully compatible with Windows platforms include:
XP, Vista or Windows 7.
- **Mac OS X**: Applications and VST/AudioUnit/RTAS/NPAPI plugins with Xcode. - **Windows**: Applications and VST/RTAS/NPAPI/ActiveX plugins can be built
using MS Visual Studio. The results are all fully compatible with Windows
XP, Vista or Windows 7.
- **GNU/Linux**: Applications and plugins can be built for any kernel 2.6 or - **Mac OS X**: Applications and VST/AudioUnit/RTAS/NPAPI plugins with Xcode.
later.
- **iOS**: Native iPhone and iPad apps. - **GNU/Linux**: Applications and plugins can be built for any kernel 2.6 or
later.
- **Android**: Supported. - **FreeBSD**: Kernel version 8.4 or higher required.
## Prerequisites - **iOS**: Native iPhone and iPad apps.
This documentation assumes that the reader has a working knowledge of JUCE. - **Android**: Supported.
Some modules built on external libraries assume that the reader understands
the operation of those external libraries. Certain modules assume that the
reader understands additional domain-specific information. Modules with
additional prerequisites are marked in the documentation.
## External Modules ## Prerequisites
Some modules bring in functionality provided by external libraries. For This documentation assumes that the reader has a working knowledge of JUCE.
example, the @ref beast_bzip2 module provides the compression and decompression Some modules built on external libraries assume that the reader understands
algorithms in [bZip2][7]. Usage of these external library modules is optional. the operation of those external libraries. Certain modules assume that the
They come with complete source code, as well as options for using either reader understands additional domain-specific information. Modules with
system or user provided variants of the external libraries: it is not additional prerequisites are marked in the documentation.
necessary to download additional source code packages to use these modules.
External code incorporated into Beast is covered by separate licenses. See ## External Modules
the licensing information and notes in the corresponding source files for
copyright information and terms of use.
## Integration Some modules bring in functionality provided by external libraries. For
example, the @ref beast_bzip2 module provides the compression and decompression
algorithms in [bZip2][7]. Usage of these external library modules is optional.
They come with complete source code, as well as options for using either
system or user provided variants of the external libraries: it is not
necessary to download additional source code packages to use these modules.
Beast requires recent versions of JUCE. It won't work with versions 1.53 or External code incorporated into Beast is covered by separate licenses. See
earlier. To use the library it is necessary to first download JUCE to a the licensing information and notes in the corresponding source files for
location where your development environment can find it. Or, you can use your copyright information and terms of use.
existing installation of JUCE.
This library uses the same modularized organizational structure as JUCE. To ## Integration
use a module, first add a path to the list of includes searched by your
development environment or project, which points to the Beast directory. Then,
add the single corresponding .c or .cpp file to your existing project which
already uses JUCE. For example, to use the @ref beast_core module, add the file
beast_core.cpp to your project. Some modules depend on other modules.
To use a module, include the appropriate header from within your source code. Beast requires recent versions of JUCE. It won't work with versions 1.53 or
For example, to access classes in the @ref beast_concurrent module, use this: earlier. To use the library it is necessary to first download JUCE to a
location where your development environment can find it. Or, you can use your
existing installation of JUCE.
@code This library uses the same modularized organizational structure as JUCE. To
use a module, first add a path to the list of includes searched by your
development environment or project, which points to the Beast directory. Then,
add the single corresponding .c or .cpp file to your existing project which
already uses JUCE. For example, to use the @ref beast_core module, add the file
beast_core.cpp to your project. Some modules depend on other modules.
#include "modules/beast_concurrent/beast_concurrent.h" To use a module, include the appropriate header from within your source code.
For example, to access classes in the @ref beast_concurrent module, use this:
@endcode @code
Then add the corresponding file beast_concurrent.cpp to your build. #include "modules/beast_concurrent/beast_concurrent.h"
## AppConfig @endcode
Some Beast features can be controlled at compilation time through Then add the corresponding file beast_concurrent.cpp to your build.
preprocessor directives. The available choices of compilation options are
described in AppConfig.h, located in the AppConfigTemplate directory. Copy
the provided settings into your existing AppConfig.h (a file used by JUCE
convention).
## License ## AppConfig
This library contains portions of other open source products covered by Some Beast features can be controlled at compilation time through
separate licenses. Please see the corresponding source files for specific preprocessor directives. The available choices of compilation options are
terms. described in AppConfig.h, located in the AppConfigTemplate directory. Copy
the provided settings into your existing AppConfig.h (a file used by JUCE
convention).
Beast is provided under the terms of The MIT License (MIT): ## License
Permission is hereby granted, free of charge, to any person obtaining a copy This library contains portions of other open source products covered by
of this software and associated documentation files (the "Software"), to deal separate licenses. Please see the corresponding source files for specific
in the Software without restriction, including without limitation the rights terms.
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in Beast is provided under the terms of The ISC License:
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR Permission to use, copy, modify, and/or distribute this software for any
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, purpose with or without fee is hereby granted, provided that the above
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE copyright notice and this permission notice appear in all copies.
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE SOFTWARE.
Some files contain portions of these external projects, licensed separately: THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL , DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- [bZip2][7] is Copyright (C) 1996-2010 Julian R Seward. All rights Some files contain portions of these external projects, licensed separately:
- [bZip2][7] is Copyright (C) 1996-2010 Julian R Seward. All rights
reserved. See the corresponding file LICENSE for licensing terms. reserved. See the corresponding file LICENSE for licensing terms.
- Portions of the software are Copyright (C) 1996-2001, 2006 by [The FreeType - [Soci][13] is Copyright (C) 2004-2008 Maciej Sobczak, Stephen Hutton, and
Project][8]. All rights reserved. [FreeType][8] is distributed
under both the [GNU General Public License][5], or the
[FreeType License][9].
- Portions of this software are Copyright (C) 1994-2012 [Lua.org][10], PUC-Rio.
Lua is distributed under the terms of the [MIT License][11].
- [Luabridge][12] is Copyright (C) 2012 by Vinnie Falco and Copyrighted (C)
2007 by Nathan Reed. [Luabridge][12] is distributed under the terms of the
[MIT License][11].
- [Soci][13] is Copyright (C) 2004-2008 Maciej Sobczak, Stephen Hutton, and
various others noted in the corresponding source files. Soci is distributed various others noted in the corresponding source files. Soci is distributed
under the [Boost Software License, Version 1.0][14]. under the [Boost Software License, Version 1.0][14].
- [SQLite][15], placed in the public domain. - [SQLite][15], placed in the public domain.
- [TagLib][16] is distributed under both the [GNU Lesser General Public License, [0]: mailto:vinnie.falco@gmail.com "Vinnie Falco (Email)"
Version 2.1][17] and the [Mozilla Public License][18]. [1]: https://github.com/vinniefalco/Beast "Beast Project"
[2]: http://vinniefalco.github.com/Beast/ "Beast Documentation"
[3]: http://rawmaterialsoftware.com/juce.php "JUCE"
[4]: http://rawmaterialsoftware.com/ "Raw Material Software"
[5]: http://www.gnu.org/licenses/gpl-2.0.html "GNU General Public License, version 2"
[6]: http://rawmaterialsoftware.com/jucelicense.php "JUCE Licenses"
[7]: http://www.bzip.org/ "bZip2: Home"
[8]: http://freetype.org/ "The FreeType Project"
[9]: http://www.freetype.org/FTL.TXT "The FreeType Project License"
[10]: http://www.lua.org/ "The Programming Language Lua"
[11]: http://opensource.org/licenses/ISC "The ISC License"
[12]: https://github.com/vinniefalco/LuaBridge
[13]: http://soci.sourceforge.net/ "SOCI"
[14]: http://www.boost.org/LICENSE_1_0.txt "Boost Software License, Version 1.0"
[15]: http://sqlite.org/ "SQLite Home Page"
[16]: http://developer.kde.org/~wheeler/taglib.html "TagLib"
[17]: http://www.gnu.org/licenses/lgpl-2.1.html "Gnu Lesser General Public License, version 2.1"
[18]: http://www.mozilla.org/MPL/1.1/ "Mozilla Public License"
[0]: mailto:vinnie.falco@gmail.com "Vinnie Falco (Email)" @copyright Copyright 2008-2013 by Vinnie Falco \<vinnie.falco@gmail.com\> ([e-mail][0])
[1]: https://github.com/vinniefalco/Beast "Beast Project" @copyright Provided under the [ISC LIcense][11]
[2]: http://vinniefalco.github.com/Beast/ "Beast Documentation"
[3]: http://rawmaterialsoftware.com/juce.php "JUCE"
[4]: http://rawmaterialsoftware.com/ "Raw Material Software"
[5]: http://www.gnu.org/licenses/gpl-2.0.html "GNU General Public License, version 2"
[6]: http://rawmaterialsoftware.com/jucelicense.php "JUCE Licenses"
[7]: http://www.bzip.org/ "bZip2: Home"
[8]: http://freetype.org/ "The FreeType Project"
[9]: http://www.freetype.org/FTL.TXT "The FreeType Project License"
[10]: http://www.lua.org/ "The Programming Language Lua"
[11]: http://www.opensource.org/licenses/mit-license.html "The MIT License"
[12]: https://github.com/vinniefalco/LuaBridge
[13]: http://soci.sourceforge.net/ "SOCI"
[14]: http://www.boost.org/LICENSE_1_0.txt "Boost Software License, Version 1.0"
[15]: http://sqlite.org/ "SQLite Home Page"
[16]: http://developer.kde.org/~wheeler/taglib.html "TagLib"
[17]: http://www.gnu.org/licenses/lgpl-2.1.html "Gnu Lesser General Public License, version 2.1"
[18]: http://www.mozilla.org/MPL/1.1/ "Mozilla Public License"
@copyright Copyright (C) 2008 by Vinnie Falco \<vinnie.falco@gmail.com\> ([e-mail][0])
@copyright Provided under the [MIT License][11]
*/ */
/*============================================================================*/ //------------------------------------------------------------------------------
/**
@internal
Implementation classes. /** Implementation classes.
Thase classes are used internally. Thase classes are used internally.
@defgroup internal internal @defgroup internal internal
@internal
*/ */
/*============================================================================*/ //------------------------------------------------------------------------------
/**
External modules.
These modules bring in functionality from third party or system libraries. /** External modules.
@defgroup external external These modules bring in functionality from third party or system libraries.
@defgroup external external
*/ */
/*============================================================================*/ //------------------------------------------------------------------------------
/**
Core classes.
This module provides core required functionality, and classes useful for /** Core classes.
general development. All other modules require this module.
@todo Discuss the treatment of exceptions versus Error objects in the library. This module provides core required functionality, and classes useful for
general development. All other modules require this module.
@todo Discuss the additions to BeastConfig.h @todo Discuss the treatment of exceptions versus Error objects in the
library.
@defgroup beast_core beast_core @todo Discuss the additions to BeastConfig.h
@defgroup beast_core beast_core
*/ */
/* See the JUCE notes regarding BeastConfig.h
This file must always be included before any Juce headers.
There are some Beast specific build options that may be placed
into this file. See the AppConfig.h provided with Beast.
*/
/* BeastConfig.h must be included before this file */
/* Use sensible default configurations if they forgot
to append the necessary macros into their BeastConfig.h.
*/
#ifndef BEAST_USE_BOOST
#define BEAST_USE_BOOST 0
#endif
#ifndef BEAST_USE_LEAKCHECKED
#define BEAST_USE_LEAKCHECKED BEAST_CHECK_MEMORY_LEAKS
#endif
#include <algorithm>
#include <cfloat>
#include <cmath>
#include <cstdarg>
#include <cstddef>
#include <exception>
#include <istream>
#include <iterator>
#include <limits>
#include <list>
#include <map>
#include <new>
#include <numeric>
#include <ostream>
#include <sstream>
#include <stdexcept>
#include <string>
#include <typeinfo>
#include <vector>
#include <assert.h>
#include <ctype.h>
#include <errno.h>
#include <float.h>
#include <locale.h>
#include <math.h>
#include <memory.h>
#include <stdarg.h>
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
/* Get this early so we can use it. */ /* Get this early so we can use it. */
#include "../beast_core/system/beast_TargetPlatform.h" #include "../beast_core/system/beast_TargetPlatform.h"
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// This is a hack to fix boost's goofy placeholders #if BEAST_BOOST_IS_AVAILABLE
#if BEAST_USE_BOOST
#ifdef BOOST_BIND_PLACEHOLDERS_HPP_INCLUDED
#error <boost/bind.hpp> must not be included before this file
#endif
// Prevent <boost/bind/placeholders.hpp> from being included
#define BOOST_BIND_PLACEHOLDERS_HPP_INCLUDED
#include <boost/bind/arg.hpp>
#include <boost/config.hpp>
// This based on <boost/bind/placeholders.cpp>
namespace boost {
namespace placeholders {
extern boost::arg<1> _1;
extern boost::arg<2> _2;
extern boost::arg<3> _3;
extern boost::arg<4> _4;
extern boost::arg<5> _5;
extern boost::arg<6> _6;
extern boost::arg<7> _7;
extern boost::arg<8> _8;
extern boost::arg<9> _9;
}
using namespace placeholders;
}
#endif
//------------------------------------------------------------------------------
// Choose a source of bind, placeholders, and function
#if !BEAST_BIND_USES_STD && !BEAST_BIND_USES_TR1 && !BEAST_BIND_USES_BOOST
# if BEAST_MSVC
# define BEAST_BIND_USES_STD 1
# elif BEAST_IOS || BEAST_MAC
# include <ciso646> // detect version of std::lib
# if BEAST_IOS && BEAST_USE_BOOST // Work-around for iOS bugs with bind.
# define BEAST_BIND_USES_BOOST 1
# elif _LIBCPP_VERSION // libc++
# define BEAST_BIND_USES_STD 1
# else // libstdc++ (GNU)
# define BEAST_BIND_USES_TR1 1
# endif
# elif BEAST_LINUX || BEAST_BSD
# define BEAST_BIND_USES_TR1 1
# else
# define BEAST_BIND_USES_STD 1
# endif
#endif
#if BEAST_BIND_USES_STD
# include <functional>
#elif BEAST_BIND_USES_TR1
# include <tr1/functional>
#elif BEAST_BIND_USES_BOOST
# include <boost/bind.hpp>
# include <boost/function.hpp>
#endif
//------------------------------------------------------------------------------
#if BEAST_USE_BOOST
#include <boost/thread/tss.hpp> #include <boost/thread/tss.hpp>
#endif #endif
@@ -415,63 +299,24 @@ using namespace placeholders;
namespace beast namespace beast
{ {
// This group must come first since other files need it // Order matters
#include "memory/beast_Uncopyable.h"
#include "diagnostic/beast_CatchAny.h"
#include "diagnostic/beast_Debug.h"
#include "diagnostic/beast_Error.h"
#include "diagnostic/beast_FPUFlags.h"
#include "diagnostic/beast_LeakChecked.h"
#include "diagnostic/beast_SafeBool.h"
#include "diagnostic/beast_Throw.h"
#include "containers/beast_List.h"
#include "containers/beast_LockFreeStack.h"
#include "containers/beast_LockFreeQueue.h"
#include "containers/beast_SharedTable.h"
#include "containers/beast_SortedLookupTable.h"
#include "events/beast_OncePerSecond.h"
#include "events/beast_PerformedAtExit.h"
#include "functor/beast_Bind.h"
#include "functor/beast_Function.h" #include "functor/beast_Function.h"
#include "diagnostic/beast_CatchAny.h"
#include "events/beast_OncePerSecond.h"
#include "math/beast_Interval.h" #include "math/beast_Interval.h"
#include "math/beast_Math.h" #include "math/beast_Math.h"
#include "math/beast_MurmurHash.h" #include "math/beast_MurmurHash.h"
#include "memory/beast_MemoryAlignment.h"
#include "memory/beast_StaticObject.h"
#include "memory/beast_AtomicCounter.h"
#include "memory/beast_AtomicFlag.h"
#include "memory/beast_AtomicPointer.h"
#include "memory/beast_AtomicState.h"
#include "memory/beast_AllocatedBy.h" #include "memory/beast_AllocatedBy.h"
#include "memory/beast_RefCountedSingleton.h" #include "memory/beast_RefCountedSingleton.h"
#include "memory/beast_FifoFreeStore.h"
#if BEAST_USE_BOOST
#include "memory/beast_FifoFreeStoreWithTLS.h"
#else
#include "memory/beast_FifoFreeStoreWithoutTLS.h"
#endif
#include "memory/beast_GlobalFifoFreeStore.h"
#include "memory/beast_GlobalPagedFreeStore.h"
#include "memory/beast_PagedFreeStore.h" #include "memory/beast_PagedFreeStore.h"
#include "memory/beast_GlobalPagedFreeStore.h"
#if BEAST_MSVC #include "memory/beast_FifoFreeStoreWithTLS.h"
#pragma warning (push) #include "memory/beast_FifoFreeStoreWithoutTLS.h"
#pragma warning (disable: 4100) // unreferenced formal parmaeter #include "memory/beast_FifoFreeStore.h"
#pragma warning (disable: 4355) // 'this' used in base member #include "memory/beast_GlobalFifoFreeStore.h"
#endif
#include "memory/beast_CacheLine.h"
#if BEAST_MSVC
#pragma warning (pop)
#endif
#include "threads/beast_Semaphore.h" #include "threads/beast_Semaphore.h"
#include "threads/beast_SerialFor.h" #include "threads/beast_SerialFor.h"
#include "threads/beast_SpinDelay.h"
#include "threads/beast_InterruptibleThread.h" #include "threads/beast_InterruptibleThread.h"
#include "threads/beast_ReadWriteMutex.h" #include "threads/beast_ReadWriteMutex.h"
#include "threads/beast_ThreadGroup.h" #include "threads/beast_ThreadGroup.h"

View File

@@ -20,8 +20,6 @@
#ifndef BEAST_CATCHANY_BEASTHEADER #ifndef BEAST_CATCHANY_BEASTHEADER
#define BEAST_CATCHANY_BEASTHEADER #define BEAST_CATCHANY_BEASTHEADER
#include "../functor/beast_Function.h"
/** /**
Exception catcher. Exception catcher.

View File

@@ -20,8 +20,6 @@
#ifndef BEAST_ONCEPERSECOND_BEASTHEADER #ifndef BEAST_ONCEPERSECOND_BEASTHEADER
#define BEAST_ONCEPERSECOND_BEASTHEADER #define BEAST_ONCEPERSECOND_BEASTHEADER
#include "../containers/beast_List.h"
/*============================================================================*/ /*============================================================================*/
/** /**
Provides a once per second notification. Provides a once per second notification.
@@ -32,7 +30,7 @@
@ingroup beast_core @ingroup beast_core
*/ */
class OncePerSecond : Uncopyable class BEAST_API OncePerSecond : Uncopyable
{ {
public: public:
OncePerSecond (); OncePerSecond ();

View File

@@ -31,7 +31,7 @@ extern void MurmurHash3_x86_32 (const void* key, int len, uint32 seed, void* ou
extern void MurmurHash3_x86_128 (const void* key, int len, uint32 seed, void* out); extern void MurmurHash3_x86_128 (const void* key, int len, uint32 seed, void* out);
extern void MurmurHash3_x64_128 (const void* key, int len, uint32 seed, void* out); extern void MurmurHash3_x64_128 (const void* key, int len, uint32 seed, void* out);
// Uses Juce to choose an appropriate routine // Uses Beast to choose an appropriate routine
// This handy template deduces which size hash is desired // This handy template deduces which size hash is desired
template <typename HashType> template <typename HashType>
@@ -44,15 +44,15 @@ inline void Hash (const void* key, int len, uint32 seed, HashType* out)
break; break;
#if BEAST_64BIT #if BEAST_64BIT
case 128: case 128:
MurmurHash3_x64_128 (key, len, seed, out); MurmurHash3_x64_128 (key, len, seed, out);
break; break;
#else
#else
case 128: case 128:
MurmurHash3_x86_128 (key, len, seed, out); MurmurHash3_x86_128 (key, len, seed, out);
break; break;
#endif #endif
default: default:

View File

@@ -20,19 +20,11 @@
#ifndef BEAST_FIFOFREESTORE_BEASTHEADER #ifndef BEAST_FIFOFREESTORE_BEASTHEADER
#define BEAST_FIFOFREESTORE_BEASTHEADER #define BEAST_FIFOFREESTORE_BEASTHEADER
#if BEAST_USE_BOOST
#include "beast_FifoFreeStoreWithTLS.h"
#else
#include "beast_FifoFreeStoreWithoutTLS.h"
#endif
/** Selected free store based on compilation settings. /** Selected free store based on compilation settings.
@ingroup beast_concurrent @ingroup beast_concurrent
*/ */
#if BEAST_USE_BOOST #if BEAST_BOOST_IS_AVAILABLE
typedef FifoFreeStoreWithTLS FifoFreeStoreType; typedef FifoFreeStoreWithTLS FifoFreeStoreType;
#else #else
typedef FifoFreeStoreWithoutTLS FifoFreeStoreType; typedef FifoFreeStoreWithoutTLS FifoFreeStoreType;

View File

@@ -32,6 +32,8 @@
// affecting performance. // affecting performance.
// //
#if BEAST_BOOST_IS_AVAILABLE
// This precedes every allocation // This precedes every allocation
// //
struct FifoFreeStoreWithTLS::Header struct FifoFreeStoreWithTLS::Header
@@ -192,3 +194,5 @@ void FifoFreeStoreWithTLS::deallocate (void* p)
if (page->release ()) if (page->release ())
deletePage (page); deletePage (page);
} }
#endif

View File

@@ -20,7 +20,7 @@
#ifndef BEAST_FIFOFREESTOREWITHTLS_BEASTHEADER #ifndef BEAST_FIFOFREESTOREWITHTLS_BEASTHEADER
#define BEAST_FIFOFREESTOREWITHTLS_BEASTHEADER #define BEAST_FIFOFREESTOREWITHTLS_BEASTHEADER
#include "beast_GlobalPagedFreeStore.h" #if BEAST_BOOST_IS_AVAILABLE
/*============================================================================*/ /*============================================================================*/
/** /**
@@ -39,7 +39,7 @@
@ingroup beast_concurrent @ingroup beast_concurrent
*/ */
class FifoFreeStoreWithTLS class BEAST_API FifoFreeStoreWithTLS
{ {
public: public:
FifoFreeStoreWithTLS (); FifoFreeStoreWithTLS ();
@@ -65,3 +65,5 @@ private:
}; };
#endif #endif
#endif

View File

@@ -20,8 +20,6 @@
#ifndef BEAST_FIFOFREESTOREWITHOUTTLS_BEASTHEADER #ifndef BEAST_FIFOFREESTOREWITHOUTTLS_BEASTHEADER
#define BEAST_FIFOFREESTOREWITHOUTTLS_BEASTHEADER #define BEAST_FIFOFREESTOREWITHOUTTLS_BEASTHEADER
#include "beast_GlobalPagedFreeStore.h"
/*============================================================================*/ /*============================================================================*/
/** /**
Lock-free FIFO memory allocator. Lock-free FIFO memory allocator.
@@ -40,7 +38,7 @@
@ingroup beast_concurrent @ingroup beast_concurrent
*/ */
class FifoFreeStoreWithoutTLS class BEAST_API FifoFreeStoreWithoutTLS
{ {
public: public:
explicit FifoFreeStoreWithoutTLS (); explicit FifoFreeStoreWithoutTLS ();

View File

@@ -20,8 +20,6 @@
#ifndef BEAST_GLOBALFIFOFREESTORE_BEASTHEADER #ifndef BEAST_GLOBALFIFOFREESTORE_BEASTHEADER
#define BEAST_GLOBALFIFOFREESTORE_BEASTHEADER #define BEAST_GLOBALFIFOFREESTORE_BEASTHEADER
#include "beast_FifoFreeStore.h"
/*============================================================================*/ /*============================================================================*/
/** /**
A @ref FifoFreeStoreType singleton. A @ref FifoFreeStoreType singleton.

View File

@@ -20,15 +20,13 @@
#ifndef BEAST_GLOBALPAGEDFREESTORE_BEASTHEADER #ifndef BEAST_GLOBALPAGEDFREESTORE_BEASTHEADER
#define BEAST_GLOBALPAGEDFREESTORE_BEASTHEADER #define BEAST_GLOBALPAGEDFREESTORE_BEASTHEADER
#include "beast_PagedFreeStore.h"
/*============================================================================*/ /*============================================================================*/
/** /**
A PagedFreeStore singleton. A PagedFreeStore singleton.
@ingroup beast_concurrent @ingroup beast_concurrent
*/ */
class GlobalPagedFreeStore class BEAST_API GlobalPagedFreeStore
: public RefCountedSingleton <GlobalPagedFreeStore> : public RefCountedSingleton <GlobalPagedFreeStore>
, LeakChecked <GlobalPagedFreeStore> , LeakChecked <GlobalPagedFreeStore>
{ {

View File

@@ -29,7 +29,7 @@
@ingroup beast_concurrent @ingroup beast_concurrent
*/ */
class PagedFreeStore : private OncePerSecond class BEAST_API PagedFreeStore : private OncePerSecond
{ {
public: public:
explicit PagedFreeStore (const size_t pageBytes); explicit PagedFreeStore (const size_t pageBytes);

View File

@@ -20,9 +20,6 @@
#ifndef BEAST_REFERENCECOUNTEDSINGLETON_BEASTHEADER #ifndef BEAST_REFERENCECOUNTEDSINGLETON_BEASTHEADER
#define BEAST_REFERENCECOUNTEDSINGLETON_BEASTHEADER #define BEAST_REFERENCECOUNTEDSINGLETON_BEASTHEADER
#include "../events/beast_PerformedAtExit.h"
#include "../memory/beast_StaticObject.h"
/** /**
Thread-safe singleton which comes into existence on first use. Use this Thread-safe singleton which comes into existence on first use. Use this
instead of creating objects with static storage duration. These singletons instead of creating objects with static storage duration. These singletons
@@ -36,20 +33,18 @@
@ingroup beast_core @ingroup beast_core
*/ */
/** @{ */ /** @{ */
class SingletonLifetime class BEAST_API SingletonLifetime
{ {
// "base classes dependent on a template parameter // "base classes dependent on a template parameter
// aren't part of lookup." - ville // aren't part of lookup." - ville
public: public:
/** /** Construction options for RefCountedSingleton
Construction options for RefCountedSingleton
@ingroup beast_core @ingroup beast_core
*/ */
enum Lifetime enum Lifetime
{ {
/** Singleton is created on first use and destroyed when /** Created on first use, destroyed when the last reference is removed.
the last reference is removed.
*/ */
createOnDemand, createOnDemand,

View File

@@ -1,18 +0,0 @@
//------------------------------------------------------------------------------
/*
This file is part of Beast: https://github.com/vinniefalco/Beast
Copyright 2013, Vinnie Falco <vinnie.falco@gmail.com>
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL , DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
//==============================================================================

View File

@@ -1,18 +0,0 @@
//------------------------------------------------------------------------------
/*
This file is part of Beast: https://github.com/vinniefalco/Beast
Copyright 2013, Vinnie Falco <vinnie.falco@gmail.com>
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL , DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
//==============================================================================

View File

@@ -131,7 +131,7 @@
@ingroup beast_concurrent @ingroup beast_concurrent
*/ */
class CallQueue class BEAST_API CallQueue
{ {
public: public:
//============================================================================ //============================================================================

View File

@@ -41,7 +41,7 @@
@ingroup beast_concurrent @ingroup beast_concurrent
*/ */
class ConcurrentObject : Uncopyable class BEAST_API ConcurrentObject : Uncopyable
{ {
public: public:
inline void incReferenceCount () noexcept inline void incReferenceCount () noexcept

View File

@@ -28,7 +28,7 @@
@ingroup beast_concurrent @ingroup beast_concurrent
*/ */
class GlobalThreadGroup : public ThreadGroup, class BEAST_API GlobalThreadGroup : public ThreadGroup,
public RefCountedSingleton <GlobalThreadGroup> public RefCountedSingleton <GlobalThreadGroup>
{ {
private: private:

View File

@@ -20,9 +20,6 @@
#ifndef BEAST_INTERRUPTIBLETHREAD_BEASTHEADER #ifndef BEAST_INTERRUPTIBLETHREAD_BEASTHEADER
#define BEAST_INTERRUPTIBLETHREAD_BEASTHEADER #define BEAST_INTERRUPTIBLETHREAD_BEASTHEADER
#include "../diagnostic/beast_SafeBool.h"
#include "../functor/beast_Function.h"
//============================================================================== //==============================================================================
/** /**
A thread with soft interruption support. A thread with soft interruption support.
@@ -36,7 +33,7 @@
@ingroup beast_core @ingroup beast_core
*/ */
class InterruptibleThread class BEAST_API InterruptibleThread
{ {
public: public:
/** InterruptibleThread entry point. /** InterruptibleThread entry point.

View File

@@ -205,7 +205,7 @@
@class Listeners @class Listeners
@ingroup beast_concurrent @ingroup beast_concurrent
*/ */
class ListenersBase class BEAST_API ListenersBase
{ {
public: public:
struct ListenersStructureTag { }; struct ListenersStructureTag { };

View File

@@ -52,7 +52,7 @@
@ingroup beast_concurrent @ingroup beast_concurrent
*/ */
class ParallelFor : Uncopyable class BEAST_API ParallelFor : Uncopyable
{ {
public: public:
/** Create a parallel for loop. /** Create a parallel for loop.

View File

@@ -47,7 +47,8 @@
@ingroup beast_concurrent @ingroup beast_concurrent
*/ */
/*============================================================================*/ //------------------------------------------------------------------------------
/** /**
Scoped read lock for ReadWriteMutex. Scoped read lock for ReadWriteMutex.
@@ -72,7 +73,8 @@ private:
LockType const& m_lock; LockType const& m_lock;
}; };
/*============================================================================*/ //------------------------------------------------------------------------------
/** /**
Scoped write lock for ReadWriteMutex. Scoped write lock for ReadWriteMutex.
@@ -97,7 +99,9 @@ private:
LockType const& m_lock; LockType const& m_lock;
}; };
class ReadWriteMutex //------------------------------------------------------------------------------
class BEAST_API ReadWriteMutex
{ {
public: public:
/** Provides the type of scoped read lock to use with a ReadWriteMutex. */ /** Provides the type of scoped read lock to use with a ReadWriteMutex. */

View File

@@ -31,7 +31,7 @@
@ingroup beast_core @ingroup beast_core
*/ */
class Semaphore class BEAST_API Semaphore
{ {
public: public:
/** Create a semaphore with the specified number of resources. /** Create a semaphore with the specified number of resources.

View File

@@ -31,7 +31,7 @@
@ingroup beast_core @ingroup beast_core
*/ */
class SerialFor : Uncopyable class BEAST_API SerialFor : Uncopyable
{ {
public: public:
/** Create a serial for loop. /** Create a serial for loop.

View File

@@ -32,7 +32,7 @@
@ingroup beast_concurrent @ingroup beast_concurrent
*/ */
class SharedObject : Uncopyable class BEAST_API SharedObject : Uncopyable
{ {
public: public:
/** Abstract SharedObject scope. /** Abstract SharedObject scope.

View File

@@ -28,7 +28,7 @@
@see ParallelFor @see ParallelFor
*/ */
class ThreadGroup class BEAST_API ThreadGroup
{ {
public: public:
typedef FifoFreeStoreType AllocatorType; typedef FifoFreeStoreType AllocatorType;

View File

@@ -40,7 +40,7 @@
@ingroup beast_concurrent @ingroup beast_concurrent
*/ */
class ThreadWithCallQueue class BEAST_API ThreadWithCallQueue
: public CallQueue : public CallQueue
, private InterruptibleThread::EntryPoint , private InterruptibleThread::EntryPoint
{ {

View File

@@ -112,26 +112,39 @@ namespace beast
#include "containers/beast_NamedValueSet.cpp" #include "containers/beast_NamedValueSet.cpp"
#include "containers/beast_PropertySet.cpp" #include "containers/beast_PropertySet.cpp"
#include "containers/beast_Variant.cpp" #include "containers/beast_Variant.cpp"
#include "diagnostic/beast_Debug.cpp"
#include "diagnostic/beast_Error.cpp"
#include "diagnostic/beast_FPUFlags.cpp"
#include "diagnostic/beast_LeakChecked.cpp"
#include "files/beast_DirectoryIterator.cpp" #include "files/beast_DirectoryIterator.cpp"
#include "files/beast_File.cpp" #include "files/beast_File.cpp"
#include "files/beast_FileInputStream.cpp" #include "files/beast_FileInputStream.cpp"
#include "files/beast_FileOutputStream.cpp" #include "files/beast_FileOutputStream.cpp"
#include "files/beast_FileSearchPath.cpp" #include "files/beast_FileSearchPath.cpp"
#include "files/beast_TemporaryFile.cpp" #include "files/beast_TemporaryFile.cpp"
#include "json/beast_JSON.cpp" #include "json/beast_JSON.cpp"
#include "logging/beast_FileLogger.cpp" #include "logging/beast_FileLogger.cpp"
#include "logging/beast_Logger.cpp" #include "logging/beast_Logger.cpp"
#include "maths/beast_BigInteger.cpp" #include "maths/beast_BigInteger.cpp"
#include "maths/beast_Expression.cpp" #include "maths/beast_Expression.cpp"
#include "maths/beast_Random.cpp" #include "maths/beast_Random.cpp"
#include "memory/beast_MemoryBlock.cpp" #include "memory/beast_MemoryBlock.cpp"
#include "misc/beast_Result.cpp" #include "misc/beast_Result.cpp"
#include "misc/beast_Uuid.cpp" #include "misc/beast_Uuid.cpp"
#include "network/beast_MACAddress.cpp" #include "network/beast_MACAddress.cpp"
#include "network/beast_NamedPipe.cpp" #include "network/beast_NamedPipe.cpp"
#include "network/beast_Socket.cpp" #include "network/beast_Socket.cpp"
#include "network/beast_URL.cpp" #include "network/beast_URL.cpp"
#include "network/beast_IPAddress.cpp" #include "network/beast_IPAddress.cpp"
#include "streams/beast_BufferedInputStream.cpp" #include "streams/beast_BufferedInputStream.cpp"
#include "streams/beast_FileInputSource.cpp" #include "streams/beast_FileInputSource.cpp"
#include "streams/beast_InputStream.cpp" #include "streams/beast_InputStream.cpp"
@@ -140,7 +153,9 @@ namespace beast
#include "streams/beast_OutputStream.cpp" #include "streams/beast_OutputStream.cpp"
#include "streams/beast_SubregionStream.cpp" #include "streams/beast_SubregionStream.cpp"
#include "system/beast_SystemStats.cpp" #include "system/beast_SystemStats.cpp"
#include "text/beast_CharacterFunctions.cpp" #include "text/beast_CharacterFunctions.cpp"
#include "text/beast_Identifier.cpp" #include "text/beast_Identifier.cpp"
#include "text/beast_LocalisedStrings.cpp" #include "text/beast_LocalisedStrings.cpp"
#include "text/beast_String.cpp" #include "text/beast_String.cpp"
@@ -148,17 +163,23 @@ namespace beast
#include "text/beast_StringPairArray.cpp" #include "text/beast_StringPairArray.cpp"
#include "text/beast_StringPool.cpp" #include "text/beast_StringPool.cpp"
#include "text/beast_TextDiff.cpp" #include "text/beast_TextDiff.cpp"
#include "threads/beast_ChildProcess.cpp" #include "threads/beast_ChildProcess.cpp"
#include "threads/beast_ReadWriteLock.cpp" #include "threads/beast_ReadWriteLock.cpp"
#include "threads/beast_Thread.cpp" #include "threads/beast_Thread.cpp"
#include "threads/beast_ThreadPool.cpp" #include "threads/beast_ThreadPool.cpp"
#include "threads/beast_TimeSliceThread.cpp" #include "threads/beast_TimeSliceThread.cpp"
#include "time/beast_PerformanceCounter.cpp" #include "time/beast_PerformanceCounter.cpp"
#include "time/beast_PerformedAtExit.cpp"
#include "time/beast_RelativeTime.cpp" #include "time/beast_RelativeTime.cpp"
#include "time/beast_Time.cpp" #include "time/beast_Time.cpp"
#include "unit_tests/beast_UnitTest.cpp" #include "unit_tests/beast_UnitTest.cpp"
#include "xml/beast_XmlDocument.cpp" #include "xml/beast_XmlDocument.cpp"
#include "xml/beast_XmlElement.cpp" #include "xml/beast_XmlElement.cpp"
#include "zip/beast_GZIPDecompressorInputStream.cpp" #include "zip/beast_GZIPDecompressorInputStream.cpp"
#include "zip/beast_GZIPCompressorOutputStream.cpp" #include "zip/beast_GZIPCompressorOutputStream.cpp"
#include "zip/beast_ZipFile.cpp" #include "zip/beast_ZipFile.cpp"
@@ -221,3 +242,22 @@ namespace beast
#include "threads/beast_HighResolutionTimer.cpp" #include "threads/beast_HighResolutionTimer.cpp"
} }
//------------------------------------------------------------------------------
#if BEAST_BOOST_IS_AVAILABLE
namespace boost {
namespace placeholders {
boost::arg<1> _1;
boost::arg<2> _2;
boost::arg<3> _3;
boost::arg<4> _4;
boost::arg<5> _5;
boost::arg<6> _6;
boost::arg<7> _7;
boost::arg<8> _8;
boost::arg<9> _9;
}
}
#endif

View File

@@ -21,89 +21,52 @@
*/ */
//============================================================================== //==============================================================================
#ifndef BEAST_CORE_BEASTHEADER #ifndef BEAST_CORE_H_INCLUDED
#define BEAST_CORE_BEASTHEADER #define BEAST_CORE_H_INCLUDED
#ifndef BEAST_BEASTCONFIG_HEADER //------------------------------------------------------------------------------
/* If you fail to make sure that all your compile units are building Beast with the same set of
option flags, then there's a risk that different compile units will treat the classes as having /* If you fail to make sure that all your compile units are building Beast with
different memory layouts, leading to very nasty memory corruption errors when they all get the same set of option flags, then there's a risk that different compile
linked together. That's why it's best to always include the BeastConfig.h file before any beast headers. units will treat the classes as having different memory layouts, leading to
*/ very nasty memory corruption errors when they all get linked together.
#ifdef _MSC_VER That's why it's best to always include the BeastConfig.h file before any
#pragma message ("Have you included your BeastConfig.h file before including the Beast headers?") beast headers.
#else */
#warning "Have you included your BeastConfig.h file before including the Beast headers?" #ifndef BEAST_BEASTCONFIG_H_INCLUDED
#endif # ifdef _MSC_VER
# pragma message ("Have you included your BeastConfig.h file before including the Beast headers?")
# else
# warning "Have you included your BeastConfig.h file before including the Beast headers?"
# endif
#endif #endif
//============================================================================== //------------------------------------------------------------------------------
#include "system/beast_TargetPlatform.h" #include "system/beast_TargetPlatform.h"
//============================================================================= //
/** Config: BEAST_FORCE_DEBUG // Apply sensible defaults for the configuration settings
//
Normally, BEAST_DEBUG is set to 1 or 0 based on compiler and project settings,
but if you define this value, you can override this to force it to be true or false.
*/
#ifndef BEAST_FORCE_DEBUG
//#define BEAST_FORCE_DEBUG 0
#endif
//=============================================================================
/** Config: BEAST_LOG_ASSERTIONS
If this flag is enabled, the the bassert and bassertfalse macros will always use Logger::writeToLog()
to write a message when an assertion happens.
Enabling it will also leave this turned on in release builds. When it's disabled,
however, the bassert and bassertfalse macros will not be compiled in a
release build.
@see bassert, bassertfalse, Logger
*/
#ifndef BEAST_LOG_ASSERTIONS #ifndef BEAST_LOG_ASSERTIONS
#if BEAST_ANDROID # if BEAST_ANDROID
#define BEAST_LOG_ASSERTIONS 1 # define BEAST_LOG_ASSERTIONS 1
#else # else
#define BEAST_LOG_ASSERTIONS 0 # define BEAST_LOG_ASSERTIONS 0
#endif # endif
#endif #endif
//=============================================================================
/** Config: BEAST_CHECK_MEMORY_LEAKS
Enables a memory-leak check for certain objects when the app terminates. See the LeakedObjectDetector
class and the BEAST_LEAK_DETECTOR macro for more details about enabling leak checking for specific classes.
*/
#if BEAST_DEBUG && ! defined (BEAST_CHECK_MEMORY_LEAKS) #if BEAST_DEBUG && ! defined (BEAST_CHECK_MEMORY_LEAKS)
#define BEAST_CHECK_MEMORY_LEAKS 1 #define BEAST_CHECK_MEMORY_LEAKS 1
#endif #endif
//=============================================================================
/** Config: BEAST_DONT_AUTOLINK_TO_WIN32_LIBRARIES
In a Visual C++ build, this can be used to stop the required system libs being
automatically added to the link stage.
*/
#ifndef BEAST_DONT_AUTOLINK_TO_WIN32_LIBRARIES
#define BEAST_DONT_AUTOLINK_TO_WIN32_LIBRARIES 0
#endif
/* Config: BEAST_INCLUDE_ZLIB_CODE
This can be used to disable Beast's embedded 3rd-party zlib code.
You might need to tweak this if you're linking to an external zlib library in your app,
but for normal apps, this option should be left alone.
If you disable this, you might also want to set a value for BEAST_ZLIB_INCLUDE_PATH, to
specify the path where your zlib headers live.
*/
#ifndef BEAST_INCLUDE_ZLIB_CODE #ifndef BEAST_INCLUDE_ZLIB_CODE
#define BEAST_INCLUDE_ZLIB_CODE 1 #define BEAST_INCLUDE_ZLIB_CODE 1
#endif #endif
#ifndef BEAST_ZLIB_INCLUDE_PATH #ifndef BEAST_ZLIB_INCLUDE_PATH
#define BEAST_ZLIB_INCLUDE_PATH <zlib.h> #define BEAST_ZLIB_INCLUDE_PATH <zlib.h>
#endif #endif
/* Config: BEAST_CATCH_UNHANDLED_EXCEPTIONS /* Config: BEAST_CATCH_UNHANDLED_EXCEPTIONS
@@ -111,18 +74,89 @@
to your BEASTApplication::unhandledException() callback. to your BEASTApplication::unhandledException() callback.
*/ */
#ifndef BEAST_CATCH_UNHANDLED_EXCEPTIONS #ifndef BEAST_CATCH_UNHANDLED_EXCEPTIONS
//#define BEAST_CATCH_UNHANDLED_EXCEPTIONS 1 //#define BEAST_CATCH_UNHANDLED_EXCEPTIONS 1
#endif #endif
//============================================================================= #ifndef BEAST_BOOST_IS_AVAILABLE
//============================================================================= #define BEAST_BOOST_IS_AVAILABLE 0
#endif
#ifndef BEAST_USE_LEAKCHECKED
#define BEAST_USE_LEAKCHECKED BEAST_CHECK_MEMORY_LEAKS
#endif
//------------------------------------------------------------------------------
//
// This is a hack to fix boost's goofy placeholders
//
#if BEAST_BOOST_IS_AVAILABLE
#ifdef BOOST_BIND_PLACEHOLDERS_HPP_INCLUDED
#error <boost/bind.hpp> must not be included before this file
#endif
// Prevent <boost/bind/placeholders.hpp> from being included
#define BOOST_BIND_PLACEHOLDERS_HPP_INCLUDED
#include <boost/bind/arg.hpp>
#include <boost/config.hpp>
// This based on <boost/bind/placeholders.cpp>
namespace boost {
namespace placeholders {
extern boost::arg<1> _1;
extern boost::arg<2> _2;
extern boost::arg<3> _3;
extern boost::arg<4> _4;
extern boost::arg<5> _5;
extern boost::arg<6> _6;
extern boost::arg<7> _7;
extern boost::arg<8> _8;
extern boost::arg<9> _9;
}
using namespace placeholders;
}
#endif
//------------------------------------------------------------------------------
//
// Choose a source of bind, placeholders, and function
//
#if !BEAST_BIND_USES_STD && !BEAST_BIND_USES_TR1 && !BEAST_BIND_USES_BOOST
# if BEAST_MSVC
# define BEAST_BIND_USES_STD 1
# elif BEAST_IOS || BEAST_MAC
# include <ciso646> // detect version of std::lib
# if BEAST_IOS && BEAST_BOOST_IS_AVAILABLE // Work-around for iOS bugs with bind.
# define BEAST_BIND_USES_BOOST 1
# elif _LIBCPP_VERSION // libc++
# define BEAST_BIND_USES_STD 1
# else // libstdc++ (GNU)
# define BEAST_BIND_USES_TR1 1
# endif
# elif BEAST_LINUX || BEAST_BSD
# define BEAST_BIND_USES_TR1 1
# else
# define BEAST_BIND_USES_STD 1
# endif
#endif
#if BEAST_BIND_USES_STD
# include <functional>
#elif BEAST_BIND_USES_TR1
# include <tr1/functional>
#elif BEAST_BIND_USES_BOOST
# include <boost/bind.hpp>
# include <boost/function.hpp>
#endif
//------------------------------------------------------------------------------
#if BEAST_MSVC #if BEAST_MSVC
#pragma warning (disable: 4251) // (DLL build warning, must be disabled before pushing the warning state) # pragma warning (disable: 4251) // (DLL build warning, must be disabled before pushing the warning state)
#pragma warning (push) # pragma warning (push)
#pragma warning (disable: 4786) // (long class name warning) # pragma warning (disable: 4786) // (long class name warning)
#ifdef __INTEL_COMPILER # ifdef __INTEL_COMPILER
#pragma warning (disable: 1125) # pragma warning (disable: 1125)
#endif # endif
#endif #endif
#include "system/beast_StandardHeader.h" #include "system/beast_StandardHeader.h"
@@ -130,311 +164,135 @@
namespace beast namespace beast
{ {
// START_AUTOINCLUDE containers, files, json, logging, maths, memory, misc, network, // Order matters, since headers don't have their own #include lines.
// streams, system, text, threads, time, unit_tests, xml, zip // Add new includes to the bottom.
#ifndef BEAST_ABSTRACTFIFO_BEASTHEADER
#include "containers/beast_AbstractFifo.h" #include "threads/beast_Thread.h"
#endif #include "threads/beast_SpinDelay.h"
#ifndef BEAST_ARRAY_BEASTHEADER #include "memory/beast_Atomic.h"
#include "containers/beast_Array.h" #include "memory/beast_AtomicCounter.h"
#endif #include "memory/beast_AtomicFlag.h"
#ifndef BEAST_ARRAYALLOCATIONBASE_BEASTHEADER #include "memory/beast_AtomicPointer.h"
#include "containers/beast_ArrayAllocationBase.h" #include "memory/beast_AtomicState.h"
#endif #include "containers/beast_LockFreeStack.h"
#ifndef BEAST_DYNAMICOBJECT_BEASTHEADER #include "memory/beast_StaticObject.h"
#include "containers/beast_DynamicObject.h" #include "diagnostic/beast_LeakChecked.h"
#endif
#ifndef BEAST_ELEMENTCOMPARATOR_BEASTHEADER #include "diagnostic/beast_Debug.h"
#include "containers/beast_ElementComparator.h" #include "diagnostic/beast_SafeBool.h"
#endif #include "diagnostic/beast_Error.h"
#ifndef BEAST_HASHMAP_BEASTHEADER #include "diagnostic/beast_FPUFlags.h"
#include "containers/beast_HashMap.h" #include "diagnostic/beast_Throw.h"
#endif #include "containers/beast_AbstractFifo.h"
#ifndef BEAST_LINKEDLISTPOINTER_BEASTHEADER #include "containers/beast_Array.h"
#include "containers/beast_LinkedListPointer.h" #include "containers/beast_ArrayAllocationBase.h"
#endif #include "containers/beast_DynamicObject.h"
#ifndef BEAST_NAMEDVALUESET_BEASTHEADER #include "containers/beast_ElementComparator.h"
#include "containers/beast_NamedValueSet.h" #include "containers/beast_HashMap.h"
#endif #include "containers/beast_List.h"
#ifndef BEAST_OWNEDARRAY_BEASTHEADER #include "containers/beast_LinkedListPointer.h"
#include "containers/beast_OwnedArray.h" #include "containers/beast_LockFreeQueue.h"
#endif #include "containers/beast_NamedValueSet.h"
#ifndef BEAST_PROPERTYSET_BEASTHEADER #include "containers/beast_OwnedArray.h"
#include "containers/beast_PropertySet.h" #include "containers/beast_PropertySet.h"
#endif #include "containers/beast_ReferenceCountedArray.h"
#ifndef BEAST_REFERENCECOUNTEDARRAY_BEASTHEADER #include "containers/beast_ScopedValueSetter.h"
#include "containers/beast_ReferenceCountedArray.h" #include "containers/beast_SharedTable.h"
#endif #include "containers/beast_SortedLookupTable.h"
#ifndef BEAST_SCOPEDVALUESETTER_BEASTHEADER #include "containers/beast_SortedSet.h"
#include "containers/beast_ScopedValueSetter.h" #include "containers/beast_SparseSet.h"
#endif #include "containers/beast_Variant.h"
#ifndef BEAST_SORTEDSET_BEASTHEADER #include "files/beast_DirectoryIterator.h"
#include "containers/beast_SortedSet.h" #include "files/beast_File.h"
#endif #include "files/beast_FileInputStream.h"
#ifndef BEAST_SPARSESET_BEASTHEADER #include "files/beast_FileOutputStream.h"
#include "containers/beast_SparseSet.h" #include "files/beast_FileSearchPath.h"
#endif #include "files/beast_MemoryMappedFile.h"
#ifndef BEAST_VARIANT_BEASTHEADER #include "files/beast_TemporaryFile.h"
#include "containers/beast_Variant.h" #include "functional/beast_Bind.h"
#endif #include "json/beast_JSON.h"
#ifndef BEAST_DIRECTORYITERATOR_BEASTHEADER #include "logging/beast_FileLogger.h"
#include "files/beast_DirectoryIterator.h" #include "logging/beast_Logger.h"
#endif #include "maths/beast_BigInteger.h"
#ifndef BEAST_FILE_BEASTHEADER #include "maths/beast_Expression.h"
#include "files/beast_File.h" #include "maths/beast_MathsFunctions.h"
#endif #include "maths/beast_Random.h"
#ifndef BEAST_FILEINPUTSTREAM_BEASTHEADER #include "maths/beast_Range.h"
#include "files/beast_FileInputStream.h" #include "memory/beast_ByteOrder.h"
#endif #include "memory/beast_HeapBlock.h"
#ifndef BEAST_FILEOUTPUTSTREAM_BEASTHEADER #include "memory/beast_LeakedObjectDetector.h"
#include "files/beast_FileOutputStream.h" #include "memory/beast_Memory.h"
#endif #include "memory/beast_MemoryBlock.h"
#ifndef BEAST_FILESEARCHPATH_BEASTHEADER #include "memory/beast_OptionalScopedPointer.h"
#include "files/beast_FileSearchPath.h" #include "memory/beast_ReferenceCountedObject.h"
#endif #include "memory/beast_ScopedPointer.h"
#ifndef BEAST_MEMORYMAPPEDFILE_BEASTHEADER #include "memory/beast_Singleton.h"
#include "files/beast_MemoryMappedFile.h" #include "memory/beast_WeakReference.h"
#endif #include "memory/beast_MemoryAlignment.h"
#ifndef BEAST_TEMPORARYFILE_BEASTHEADER #include "memory/beast_CacheLine.h"
#include "files/beast_TemporaryFile.h" #include "misc/beast_Result.h"
#endif #include "misc/beast_Uuid.h"
#ifndef BEAST_JSON_BEASTHEADER #include "misc/beast_WindowsRegistry.h"
#include "json/beast_JSON.h" #include "network/beast_IPAddress.h"
#endif #include "network/beast_MACAddress.h"
#ifndef BEAST_FILELOGGER_BEASTHEADER #include "network/beast_NamedPipe.h"
#include "logging/beast_FileLogger.h" #include "network/beast_Socket.h"
#endif #include "network/beast_URL.h"
#ifndef BEAST_LOGGER_BEASTHEADER #include "streams/beast_BufferedInputStream.h"
#include "logging/beast_Logger.h" #include "streams/beast_FileInputSource.h"
#endif #include "streams/beast_InputSource.h"
#ifndef BEAST_BIGINTEGER_BEASTHEADER #include "streams/beast_InputStream.h"
#include "maths/beast_BigInteger.h" #include "streams/beast_MemoryInputStream.h"
#endif #include "streams/beast_MemoryOutputStream.h"
#ifndef BEAST_EXPRESSION_BEASTHEADER #include "streams/beast_OutputStream.h"
#include "maths/beast_Expression.h" #include "streams/beast_SubregionStream.h"
#endif #include "system/beast_PlatformDefs.h"
#ifndef BEAST_MATHSFUNCTIONS_BEASTHEADER #include "system/beast_StandardHeader.h"
#include "maths/beast_MathsFunctions.h" #include "system/beast_SystemStats.h"
#endif #include "system/beast_TargetPlatform.h"
#ifndef BEAST_RANDOM_BEASTHEADER #include "text/beast_CharacterFunctions.h"
#include "maths/beast_Random.h" #include "text/beast_CharPointer_ASCII.h"
#endif #include "text/beast_CharPointer_UTF16.h"
#ifndef BEAST_RANGE_BEASTHEADER #include "text/beast_CharPointer_UTF32.h"
#include "maths/beast_Range.h" #include "text/beast_CharPointer_UTF8.h"
#endif #include "text/beast_Identifier.h"
#ifndef BEAST_ATOMIC_BEASTHEADER #include "text/beast_LocalisedStrings.h"
#include "memory/beast_Atomic.h" #include "text/beast_NewLine.h"
#endif #include "text/beast_String.h"
#ifndef BEAST_BYTEORDER_BEASTHEADER #include "text/beast_StringArray.h"
#include "memory/beast_ByteOrder.h" #include "text/beast_StringPairArray.h"
#endif #include "text/beast_StringPool.h"
#ifndef BEAST_HEAPBLOCK_BEASTHEADER #include "text/beast_TextDiff.h"
#include "memory/beast_HeapBlock.h" #include "threads/beast_ChildProcess.h"
#endif #include "threads/beast_CriticalSection.h"
#ifndef BEAST_LEAKEDOBJECTDETECTOR_BEASTHEADER #include "threads/beast_DynamicLibrary.h"
#include "memory/beast_LeakedObjectDetector.h" #include "threads/beast_HighResolutionTimer.h"
#endif #include "threads/beast_InterProcessLock.h"
#ifndef BEAST_MEMORY_BEASTHEADER #include "threads/beast_Process.h"
#include "memory/beast_Memory.h" #include "threads/beast_ReadWriteLock.h"
#endif #include "threads/beast_ScopedLock.h"
#ifndef BEAST_MEMORYBLOCK_BEASTHEADER #include "threads/beast_ScopedReadLock.h"
#include "memory/beast_MemoryBlock.h" #include "threads/beast_ScopedWriteLock.h"
#endif #include "threads/beast_SpinLock.h"
#ifndef BEAST_OPTIONALSCOPEDPOINTER_BEASTHEADER #include "threads/beast_ThreadLocalValue.h"
#include "memory/beast_OptionalScopedPointer.h" #include "threads/beast_ThreadPool.h"
#endif #include "threads/beast_TimeSliceThread.h"
#ifndef BEAST_REFERENCECOUNTEDOBJECT_BEASTHEADER #include "threads/beast_WaitableEvent.h"
#include "memory/beast_ReferenceCountedObject.h" #include "time/beast_PerformanceCounter.h"
#endif #include "time/beast_PerformedAtExit.h"
#ifndef BEAST_SCOPEDPOINTER_BEASTHEADER #include "time/beast_RelativeTime.h"
#include "memory/beast_ScopedPointer.h" #include "time/beast_Time.h"
#endif #include "unit_tests/beast_UnitTest.h"
#ifndef BEAST_SINGLETON_BEASTHEADER #include "xml/beast_XmlDocument.h"
#include "memory/beast_Singleton.h" #include "xml/beast_XmlElement.h"
#endif #include "zip/beast_GZIPCompressorOutputStream.h"
#ifndef BEAST_WEAKREFERENCE_BEASTHEADER #include "zip/beast_GZIPDecompressorInputStream.h"
#include "memory/beast_WeakReference.h" #include "zip/beast_ZipFile.h"
#endif
#ifndef BEAST_RESULT_BEASTHEADER
#include "misc/beast_Result.h"
#endif
#ifndef BEAST_UUID_BEASTHEADER
#include "misc/beast_Uuid.h"
#endif
#ifndef BEAST_WINDOWSREGISTRY_BEASTHEADER
#include "misc/beast_WindowsRegistry.h"
#endif
#ifndef BEAST_IPADDRESS_BEASTHEADER
#include "network/beast_IPAddress.h"
#endif
#ifndef BEAST_MACADDRESS_BEASTHEADER
#include "network/beast_MACAddress.h"
#endif
#ifndef BEAST_NAMEDPIPE_BEASTHEADER
#include "network/beast_NamedPipe.h"
#endif
#ifndef BEAST_SOCKET_BEASTHEADER
#include "network/beast_Socket.h"
#endif
#ifndef BEAST_URL_BEASTHEADER
#include "network/beast_URL.h"
#endif
#ifndef BEAST_BUFFEREDINPUTSTREAM_BEASTHEADER
#include "streams/beast_BufferedInputStream.h"
#endif
#ifndef BEAST_FILEINPUTSOURCE_BEASTHEADER
#include "streams/beast_FileInputSource.h"
#endif
#ifndef BEAST_INPUTSOURCE_BEASTHEADER
#include "streams/beast_InputSource.h"
#endif
#ifndef BEAST_INPUTSTREAM_BEASTHEADER
#include "streams/beast_InputStream.h"
#endif
#ifndef BEAST_MEMORYINPUTSTREAM_BEASTHEADER
#include "streams/beast_MemoryInputStream.h"
#endif
#ifndef BEAST_MEMORYOUTPUTSTREAM_BEASTHEADER
#include "streams/beast_MemoryOutputStream.h"
#endif
#ifndef BEAST_OUTPUTSTREAM_BEASTHEADER
#include "streams/beast_OutputStream.h"
#endif
#ifndef BEAST_SUBREGIONSTREAM_BEASTHEADER
#include "streams/beast_SubregionStream.h"
#endif
#ifndef BEAST_PLATFORMDEFS_BEASTHEADER
#include "system/beast_PlatformDefs.h"
#endif
#ifndef BEAST_STANDARDHEADER_BEASTHEADER
#include "system/beast_StandardHeader.h"
#endif
#ifndef BEAST_SYSTEMSTATS_BEASTHEADER
#include "system/beast_SystemStats.h"
#endif
#ifndef BEAST_TARGETPLATFORM_BEASTHEADER
#include "system/beast_TargetPlatform.h"
#endif
#ifndef BEAST_CHARACTERFUNCTIONS_BEASTHEADER
#include "text/beast_CharacterFunctions.h"
#endif
#ifndef BEAST_CHARPOINTER_ASCII_BEASTHEADER
#include "text/beast_CharPointer_ASCII.h"
#endif
#ifndef BEAST_CHARPOINTER_UTF16_BEASTHEADER
#include "text/beast_CharPointer_UTF16.h"
#endif
#ifndef BEAST_CHARPOINTER_UTF32_BEASTHEADER
#include "text/beast_CharPointer_UTF32.h"
#endif
#ifndef BEAST_CHARPOINTER_UTF8_BEASTHEADER
#include "text/beast_CharPointer_UTF8.h"
#endif
#ifndef BEAST_IDENTIFIER_BEASTHEADER
#include "text/beast_Identifier.h"
#endif
#ifndef BEAST_LOCALISEDSTRINGS_BEASTHEADER
#include "text/beast_LocalisedStrings.h"
#endif
#ifndef BEAST_NEWLINE_BEASTHEADER
#include "text/beast_NewLine.h"
#endif
#ifndef BEAST_STRING_BEASTHEADER
#include "text/beast_String.h"
#endif
#ifndef BEAST_STRINGARRAY_BEASTHEADER
#include "text/beast_StringArray.h"
#endif
#ifndef BEAST_STRINGPAIRARRAY_BEASTHEADER
#include "text/beast_StringPairArray.h"
#endif
#ifndef BEAST_STRINGPOOL_BEASTHEADER
#include "text/beast_StringPool.h"
#endif
#ifndef BEAST_TEXTDIFF_BEASTHEADER
#include "text/beast_TextDiff.h"
#endif
#ifndef BEAST_CHILDPROCESS_BEASTHEADER
#include "threads/beast_ChildProcess.h"
#endif
#ifndef BEAST_CRITICALSECTION_BEASTHEADER
#include "threads/beast_CriticalSection.h"
#endif
#ifndef BEAST_DYNAMICLIBRARY_BEASTHEADER
#include "threads/beast_DynamicLibrary.h"
#endif
#ifndef BEAST_HIGHRESOLUTIONTIMER_BEASTHEADER
#include "threads/beast_HighResolutionTimer.h"
#endif
#ifndef BEAST_INTERPROCESSLOCK_BEASTHEADER
#include "threads/beast_InterProcessLock.h"
#endif
#ifndef BEAST_PROCESS_BEASTHEADER
#include "threads/beast_Process.h"
#endif
#ifndef BEAST_READWRITELOCK_BEASTHEADER
#include "threads/beast_ReadWriteLock.h"
#endif
#ifndef BEAST_SCOPEDLOCK_BEASTHEADER
#include "threads/beast_ScopedLock.h"
#endif
#ifndef BEAST_SCOPEDREADLOCK_BEASTHEADER
#include "threads/beast_ScopedReadLock.h"
#endif
#ifndef BEAST_SCOPEDWRITELOCK_BEASTHEADER
#include "threads/beast_ScopedWriteLock.h"
#endif
#ifndef BEAST_SPINLOCK_BEASTHEADER
#include "threads/beast_SpinLock.h"
#endif
#ifndef BEAST_THREAD_BEASTHEADER
#include "threads/beast_Thread.h"
#endif
#ifndef BEAST_THREADLOCALVALUE_BEASTHEADER
#include "threads/beast_ThreadLocalValue.h"
#endif
#ifndef BEAST_THREADPOOL_BEASTHEADER
#include "threads/beast_ThreadPool.h"
#endif
#ifndef BEAST_TIMESLICETHREAD_BEASTHEADER
#include "threads/beast_TimeSliceThread.h"
#endif
#ifndef BEAST_WAITABLEEVENT_BEASTHEADER
#include "threads/beast_WaitableEvent.h"
#endif
#ifndef BEAST_PERFORMANCECOUNTER_BEASTHEADER
#include "time/beast_PerformanceCounter.h"
#endif
#ifndef BEAST_RELATIVETIME_BEASTHEADER
#include "time/beast_RelativeTime.h"
#endif
#ifndef BEAST_TIME_BEASTHEADER
#include "time/beast_Time.h"
#endif
#ifndef BEAST_UNITTEST_BEASTHEADER
#include "unit_tests/beast_UnitTest.h"
#endif
#ifndef BEAST_XMLDOCUMENT_BEASTHEADER
#include "xml/beast_XmlDocument.h"
#endif
#ifndef BEAST_XMLELEMENT_BEASTHEADER
#include "xml/beast_XmlElement.h"
#endif
#ifndef BEAST_GZIPCOMPRESSOROUTPUTSTREAM_BEASTHEADER
#include "zip/beast_GZIPCompressorOutputStream.h"
#endif
#ifndef BEAST_GZIPDECOMPRESSORINPUTSTREAM_BEASTHEADER
#include "zip/beast_GZIPDecompressorInputStream.h"
#endif
#ifndef BEAST_ZIPFILE_BEASTHEADER
#include "zip/beast_ZipFile.h"
#endif
// END_AUTOINCLUDE
} }
#if BEAST_MSVC #if BEAST_MSVC
#pragma warning (pop) # pragma warning (pop)
#endif #endif
#endif // BEAST_CORE_BEASTHEADER #endif

View File

@@ -24,21 +24,19 @@
#ifndef BEAST_ABSTRACTFIFO_BEASTHEADER #ifndef BEAST_ABSTRACTFIFO_BEASTHEADER
#define BEAST_ABSTRACTFIFO_BEASTHEADER #define BEAST_ABSTRACTFIFO_BEASTHEADER
#include "../memory/beast_Atomic.h"
//============================================================================== //==============================================================================
/** /**
Encapsulates the logic required to implement a lock-free FIFO. Encapsulates the logic required to implement a lock-free FIFO.
This class handles the logic needed when building a single-reader, single-writer FIFO. This class handles the logic needed when building a single-reader,
single-writer FIFO.
It doesn't actually hold any data itself, but your FIFO class can use one of these to manage It doesn't actually hold any data itself, but your FIFO class can use one of
its position and status when reading or writing to it. these to manage its position and status when reading or writing to it.
To use it, you can call prepareToWrite() to determine the position within your own buffer that To use it, you can call prepareToWrite() to determine the position within
an incoming block of data should be stored, and prepareToRead() to find out when the next your own buffer that an incoming block of data should be stored, and
outgoing block should be read from. prepareToRead() to find out when the next outgoing block should be read from.
e.g. e.g.
@code @code
@@ -204,7 +202,6 @@ public:
*/ */
void finishedRead (int numRead) noexcept; void finishedRead (int numRead) noexcept;
private: private:
//============================================================================== //==============================================================================
int bufferSize; int bufferSize;
@@ -213,5 +210,5 @@ private:
BEAST_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (AbstractFifo) BEAST_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (AbstractFifo)
}; };
#endif
#endif // BEAST_ABSTRACTFIFO_BEASTHEADER

View File

@@ -20,33 +20,31 @@
#ifndef BEAST_LOCKFREEQUEUE_BEASTHEADER #ifndef BEAST_LOCKFREEQUEUE_BEASTHEADER
#define BEAST_LOCKFREEQUEUE_BEASTHEADER #define BEAST_LOCKFREEQUEUE_BEASTHEADER
#include "../memory/beast_CacheLine.h" /** Default tag for LockFreeQueue
#include "../memory/beast_AtomicPointer.h"
#include "../threads/beast_SpinDelay.h"
struct LockFreeQueueDefaultTag; @ingroup beast_core intrusive
*/
struct LockFreeQueueDefaultTag { };
/*============================================================================*/ /** Multiple Producer, Single Consumer (MPSC) intrusive FIFO.
/**
Multiple Producer, Single Consumer (MPSC) intrusive FIFO.
This container uses the same intrusive interface as List. It is wait-free This container uses the same intrusive interface as List. It is wait-free
for producers and lock-free for consumers. The caller is responsible for for producers and lock-free for consumers. The caller is responsible for
preventing the ABA problem (http://en.wikipedia.org/wiki/ABA_problem) preventing the ABA problem (http://en.wikipedia.org/wiki/ABA_problem)
Invariants: Invariants:
- Any thread may call push_back() at any time (Multiple Producer). - Any thread may call push_back() at any time (Multiple Producer).
- Only one thread may call try_pop_front() at a time (Single Consumer) - Only one thread may call try_pop_front() at a time (Single Consumer)
- The queue is signaled if there are one or more elements. - The queue is signaled if there are one or more elements.
@param Tag A type name used to distinguish lists and nodes, for @param Tag A type name used to distinguish lists and nodes, for
putting objects in multiple lists. If this parameter is putting objects in multiple lists. If this parameter is
omitted, the default tag is used. omitted, the default tag is used.
@ingroup beast_core intrusive @ingroup beast_core intrusive
*/ */
template <class Element, class Tag = LockFreeQueueDefaultTag> template <class Element, class Tag = LockFreeQueueDefaultTag>
class LockFreeQueue class LockFreeQueue
@@ -216,11 +214,4 @@ private:
Node m_null; Node m_null;
}; };
/*============================================================================*/
/** Default tag for LockFreeQueue
@ingroup beast_core intrusive
*/
struct LockFreeQueueDefaultTag { };
#endif #endif

View File

@@ -20,8 +20,6 @@
#ifndef BEAST_LOCKFREESTACK_BEASTHEADER #ifndef BEAST_LOCKFREESTACK_BEASTHEADER
#define BEAST_LOCKFREESTACK_BEASTHEADER #define BEAST_LOCKFREESTACK_BEASTHEADER
#include "../memory/beast_AtomicPointer.h"
struct LockFreeStackDefaultTag; struct LockFreeStackDefaultTag;
/*============================================================================*/ /*============================================================================*/
@@ -58,6 +56,7 @@ public:
private: private:
friend class LockFreeStack; friend class LockFreeStack;
// VFALCO TODO Use regular Atomic<>
AtomicPointer <Node> m_next; AtomicPointer <Node> m_next;
}; };

View File

@@ -26,7 +26,7 @@
@tparam ElementType The type of element. @tparam ElementType The type of element.
@ingroup beast_gui @ingroup beast_basics
*/ */
template <class ElementType> template <class ElementType>
class SharedTable class SharedTable
@@ -72,8 +72,7 @@ public:
#if BEAST_COMPILER_SUPPORTS_MOVE_SEMANTICS #if BEAST_COMPILER_SUPPORTS_MOVE_SEMANTICS
SharedTable (SharedTable&& other) noexcept SharedTable (SharedTable&& other) noexcept
: : m_data (static_cast < typename Data::Ptr&& > (other.m_data))
m_data (static_cast < typename Data::Ptr&& > (other.m_data))
{ {
} }

View File

@@ -20,30 +20,28 @@
#ifndef BEAST_SORTEDLOOKUPTABLE_BEASTHEADER #ifndef BEAST_SORTEDLOOKUPTABLE_BEASTHEADER
#define BEAST_SORTEDLOOKUPTABLE_BEASTHEADER #define BEAST_SORTEDLOOKUPTABLE_BEASTHEADER
//============================================================================== /** Sorted map for fast lookups.
/**
Sorted map for fast lookups.
This container is optimized for a data set with fixed elements. This container is optimized for a data set with fixed elements.
SchemaType obeys this concept: SchemaType obeys this concept:
@code @code
struct SchemaType struct SchemaType
{ {
typename KeyType; typename KeyType;
typename ValueType; typename ValueType;
// Retrieve the key for a specified value. // Retrieve the key for a specified value.
KeyType getKey (Value const& value); KeyType getKey (Value const& value);
}; };
@endcode @endcode
To use the table, reserve space with reserveSpaceForValues() if the number To use the table, reserve space with reserveSpaceForValues() if the number
of elements is known ahead of time. Then, call insert() for all the your of elements is known ahead of time. Then, call insert() for all the your
elements. Call prepareForLookups() once then call lookupValueByKey () elements. Call prepareForLookups() once then call lookupValueByKey ()
*/ */
template <class SchemaType> template <class SchemaType>
class SortedLookupTable class SortedLookupTable
@@ -51,11 +49,8 @@ class SortedLookupTable
private: private:
typedef typename SchemaType::KeyType KeyType; typedef typename SchemaType::KeyType KeyType;
typedef typename SchemaType::ValueType ValueType; typedef typename SchemaType::ValueType ValueType;
typedef std::vector <ValueType> values_t; typedef std::vector <ValueType> values_t;
values_t m_values;
private: private:
struct SortCompare struct SortCompare
{ {
@@ -151,6 +146,9 @@ public:
return found; return found;
} }
private:
values_t m_values;
}; };
#endif #endif

View File

@@ -31,8 +31,8 @@ extern bool isDebuggerAttached ();
// Breaks to the debugger if a debugger is attached. // Breaks to the debugger if a debugger is attached.
extern void breakPoint (); extern void breakPoint ();
// VF: IS THIS REALLY THE RIGHT PLACE FOR THESE?? // VFALCO NOTE IS THIS REALLY THE RIGHT PLACE FOR THESE??
//
// Return only the filename portion of sourceFileName // Return only the filename portion of sourceFileName
// This hides the programmer's directory structure from end-users. // This hides the programmer's directory structure from end-users.
const String getFileNameFromPath (const char* sourceFileName); const String getFileNameFromPath (const char* sourceFileName);

View File

@@ -25,7 +25,7 @@ Error::Error ()
{ {
} }
Error::Error (const Error& other) Error::Error (Error const& other)
: m_code (other.m_code) : m_code (other.m_code)
, m_reasonText (other.m_reasonText) , m_reasonText (other.m_reasonText)
, m_sourceFileName (other.m_sourceFileName) , m_sourceFileName (other.m_sourceFileName)
@@ -42,7 +42,7 @@ Error::~Error () noexcept
bassert (!m_needsToBeChecked); bassert (!m_needsToBeChecked);
} }
Error& Error::operator= (const Error& other) Error& Error::operator= (Error const& other)
{ {
m_code = other.m_code; m_code = other.m_code;
m_reasonText = other.m_reasonText; m_reasonText = other.m_reasonText;
@@ -73,12 +73,12 @@ bool Error::asBoolean () const
return code () != success; return code () != success;
} }
const String Error::getReasonText () const String const Error::getReasonText () const
{ {
return m_reasonText; return m_reasonText;
} }
const String Error::getSourceFilename () const String const Error::getSourceFilename () const
{ {
return m_sourceFileName; return m_sourceFileName;
} }
@@ -88,9 +88,9 @@ int Error::getLineNumber () const
return m_lineNumber; return m_lineNumber;
} }
Error& Error::fail (const char* sourceFileName, Error& Error::fail (char const* sourceFileName,
int lineNumber, int lineNumber,
const String reasonText, String const reasonText,
Code errorCode) Code errorCode)
{ {
bassert (m_code == success); bassert (m_code == success);
@@ -105,7 +105,7 @@ Error& Error::fail (const char* sourceFileName,
return *this; return *this;
} }
Error& Error::fail (const char* sourceFileName, Error& Error::fail (char const* sourceFileName,
int lineNumber, int lineNumber,
Code errorCode) Code errorCode)
{ {
@@ -131,9 +131,9 @@ void Error::willBeReported () const
m_needsToBeChecked = false; m_needsToBeChecked = false;
} }
const char* Error::what () const noexcept char const* Error::what () const noexcept
{ {
if (!m_szWhat) if (! m_szWhat)
{ {
// The application could not be initialized because sqlite was denied access permission // The application could not be initialized because sqlite was denied access permission
// The application unexpectedly quit because the exception 'sqlite was denied access permission at file ' was thrown // The application unexpectedly quit because the exception 'sqlite was denied access permission at file ' was thrown
@@ -152,7 +152,7 @@ const char* Error::what () const noexcept
return m_szWhat; return m_szWhat;
} }
const String Error::getReasonTextForCode (Code code) String const Error::getReasonTextForCode (Code code)
{ {
String s; String s;

View File

@@ -20,31 +20,28 @@
#ifndef BEAST_ERROR_BEASTHEADER #ifndef BEAST_ERROR_BEASTHEADER
#define BEAST_ERROR_BEASTHEADER #define BEAST_ERROR_BEASTHEADER
#include "beast_SafeBool.h" /** A concise error report.
/** This lightweight but flexible class records lets you record the file and
A concise error report. line where a recoverable error occurred, along with some optional human
readable text.
This lightweight but flexible class records lets you record the file and A recoverable error can be passed along and turned into a non recoverable
line where a recoverable error occurred, along with some optional human error by throwing the object: it's derivation from std::exception is
readable text. fully compliant with the C++ exception interface.
A recoverable error can be passed along and turned into a non recoverable @ingroup beast_core
error by throwing the object: it's derivation from std::exception is
fully compliant with the C++ exception interface.
@ingroup beast_core
*/ */
class Error class BEAST_API Error
: public std::exception : public std::exception
, public SafeBool <Error> , public SafeBool <Error>
{ {
public: public:
/** Numeric code. /** Numeric code.
This enumeration is useful when the caller needs to take different This enumeration is useful when the caller needs to take different
actions depending on the failure. For example, trying again later if actions depending on the failure. For example, trying again later if
a file is locked. a file is locked.
*/ */
enum Code enum Code
{ {
@@ -74,8 +71,8 @@ public:
}; };
Error (); Error ();
Error (const Error& other); Error (Error const& other);
Error& operator= (const Error& other); Error& operator= (Error const& other);
virtual ~Error () noexcept; virtual ~Error () noexcept;
@@ -84,16 +81,16 @@ public:
bool asBoolean () const; bool asBoolean () const;
const String getReasonText () const; String const getReasonText () const;
const String getSourceFilename () const; String const getSourceFilename () const;
int getLineNumber () const; int getLineNumber () const;
Error& fail (const char* sourceFileName, Error& fail (char const* sourceFileName,
int lineNumber, int lineNumber,
const String reasonText, String const reasonText,
Code errorCode = general); Code errorCode = general);
Error& fail (const char* sourceFileName, Error& fail (char const* sourceFileName,
int lineNumber, int lineNumber,
Code errorCode = general); Code errorCode = general);
@@ -108,9 +105,9 @@ public:
// for std::exception. This lets you throw an Error that should // for std::exception. This lets you throw an Error that should
// terminate the application. The what() message will be less // terminate the application. The what() message will be less
// descriptive so ideally you should catch the Error object instead. // descriptive so ideally you should catch the Error object instead.
const char* what () const noexcept; char const* what () const noexcept;
static const String getReasonTextForCode (Code code); static String const getReasonTextForCode (Code code);
private: private:
Code m_code; Code m_code;
@@ -118,9 +115,8 @@ private:
String m_sourceFileName; String m_sourceFileName;
int m_lineNumber; int m_lineNumber;
mutable bool m_needsToBeChecked; mutable bool m_needsToBeChecked;
mutable String m_what; // created on demand mutable String m_what; // created on demand
mutable const char* m_szWhat; mutable char const* m_szWhat;
}; };
#endif #endif

View File

@@ -28,7 +28,7 @@
@ingroup beast_core @ingroup beast_core
*/ */
class FPUFlags class BEAST_API FPUFlags
{ {
public: public:
/** An individual FPU flag */ /** An individual FPU flag */

View File

@@ -20,18 +20,13 @@
#ifndef BEAST_LEAKCHECKED_BEASTHEADER #ifndef BEAST_LEAKCHECKED_BEASTHEADER
#define BEAST_LEAKCHECKED_BEASTHEADER #define BEAST_LEAKCHECKED_BEASTHEADER
#include "beast_Error.h"
#include "beast_Throw.h"
#include "../memory/beast_StaticObject.h"
#include "../containers/beast_LockFreeStack.h"
// //
// Derived classes are automatically leak-checked on exit // Derived classes are automatically leak-checked on exit
// //
#if BEAST_USE_LEAKCHECKED #if BEAST_USE_LEAKCHECKED
class LeakCheckedBase class BEAST_API LeakCheckedBase
{ {
public: public:
static void detectAllLeaks (); static void detectAllLeaks ();
@@ -153,7 +148,7 @@ private:
#else #else
class LeakCheckedBase class BEAST_API LeakCheckedBase
{ {
private: private:
friend class PerformedAtExit; friend class PerformedAtExit;

View File

@@ -40,7 +40,7 @@
@ingroup beast_core @ingroup beast_core
*/ */
class SafeBoolBase class BEAST_API SafeBoolBase
{ {
private: private:
void disallowed () const { } void disallowed () const { }

View File

@@ -22,14 +22,15 @@
#include "beast_Debug.h" #include "beast_Debug.h"
// /** Throw an exception, with a debugger hook.
// Throw an exception, with the opportunity to get a
// breakpoint with the call stack before the throw.
//
This provides an opportunity to utilize the debugger before
the stack is unwound.
*/
template <class Exception> template <class Exception>
inline void Throw (Exception const& e) inline void Throw (Exception const& e)
{ {
// VFALCO TODO Replace with straight JUCE equivalent
Debug::breakPoint (); Debug::breakPoint ();
throw e; throw e;

View File

@@ -30,7 +30,7 @@
@ingroup beast_core @ingroup beast_core
*/ */
class AtomicCounter class BEAST_API AtomicCounter
{ {
public: public:
/** Create a new counter. /** Create a new counter.

View File

@@ -30,7 +30,7 @@
@ingroup beast_core @ingroup beast_core
*/ */
class AtomicFlag class BEAST_API AtomicFlag
{ {
public: public:
/** Create an AtomicFlag in the reset state. */ /** Create an AtomicFlag in the reset state. */

View File

@@ -29,7 +29,7 @@
@ingroup beast_core @ingroup beast_core
*/ */
class AtomicState class BEAST_API AtomicState
{ {
public: public:
/** Create a new state with an optional starting value. /** Create a new state with an optional starting value.

View File

@@ -20,8 +20,6 @@
#ifndef BEAST_CACHELINE_BEASTHEADER #ifndef BEAST_CACHELINE_BEASTHEADER
#define BEAST_CACHELINE_BEASTHEADER #define BEAST_CACHELINE_BEASTHEADER
#include "beast_MemoryAlignment.h"
// Allows turning off of all padding, // Allows turning off of all padding,
// e.g. for memory-constrained systems or testing. // e.g. for memory-constrained systems or testing.
// //

View File

@@ -23,7 +23,12 @@
namespace Memory namespace Memory
{ {
//------------------------------------------------------------------------------
// Constants // Constants
//
// These need to be set based on the target CPU
//
const int cacheLineAlignBits = 6; // 64 bytes const int cacheLineAlignBits = 6; // 64 bytes
const int cacheLineAlignBytes = 1 << cacheLineAlignBits; const int cacheLineAlignBytes = 1 << cacheLineAlignBits;
@@ -33,6 +38,8 @@ const int allocAlignBits = 3; // 8 bytes
const int allocAlignBytes = 1 << allocAlignBits; const int allocAlignBytes = 1 << allocAlignBits;
const int allocAlignMask = allocAlignBytes - 1; const int allocAlignMask = allocAlignBytes - 1;
//------------------------------------------------------------------------------
// Returns the number of bytes needed to advance p to the correct alignment // Returns the number of bytes needed to advance p to the correct alignment
template <typename P> template <typename P>
inline size_t bytesNeededForAlignment (P const* const p) inline size_t bytesNeededForAlignment (P const* const p)

View File

@@ -20,8 +20,6 @@
#ifndef BEAST_STATICOBJECT_BEASTHEADER #ifndef BEAST_STATICOBJECT_BEASTHEADER
#define BEAST_STATICOBJECT_BEASTHEADER #define BEAST_STATICOBJECT_BEASTHEADER
#include "../threads/beast_SpinDelay.h"
// //
// A full suite of thread-safe objects designed for static storage duration. // A full suite of thread-safe objects designed for static storage duration.
// //

View File

@@ -81,7 +81,7 @@ namespace SocketHelpers
servTmpAddr.sin_addr.s_addr = htonl (INADDR_ANY); servTmpAddr.sin_addr.s_addr = htonl (INADDR_ANY);
servTmpAddr.sin_port = htons ((uint16) port); servTmpAddr.sin_port = htons ((uint16) port);
return bind (handle, (struct sockaddr*) &servTmpAddr, sizeof (struct sockaddr_in)) >= 0; return ::bind (handle, (struct sockaddr*) &servTmpAddr, sizeof (struct sockaddr_in)) >= 0;
} }
static int readSocket (const SocketHandle handle, static int readSocket (const SocketHandle handle,
@@ -415,7 +415,7 @@ bool StreamingSocket::createListener (const int newPortNumber, const String& loc
const int reuse = 1; const int reuse = 1;
setsockopt (handle, SOL_SOCKET, SO_REUSEADDR, (const char*) &reuse, sizeof (reuse)); setsockopt (handle, SOL_SOCKET, SO_REUSEADDR, (const char*) &reuse, sizeof (reuse));
if (bind (handle, (struct sockaddr*) &servTmpAddr, sizeof (struct sockaddr_in)) < 0 if (::bind (handle, (struct sockaddr*) &servTmpAddr, sizeof (struct sockaddr_in)) < 0
|| listen (handle, SOMAXCONN) < 0) || listen (handle, SOMAXCONN) < 0)
{ {
close(); close();

View File

@@ -24,7 +24,8 @@
#ifndef BEAST_STANDARDHEADER_BEASTHEADER #ifndef BEAST_STANDARDHEADER_BEASTHEADER
#define BEAST_STANDARDHEADER_BEASTHEADER #define BEAST_STANDARDHEADER_BEASTHEADER
//============================================================================== //------------------------------------------------------------------------------
/** Current BEAST version number. /** Current BEAST version number.
See also SystemStats::getBeastVersion() for a string version. See also SystemStats::getBeastVersion() for a string version.
@@ -43,57 +44,80 @@
*/ */
#define BEAST_VERSION ((BEAST_MAJOR_VERSION << 16) + (BEAST_MINOR_VERSION << 8) + BEAST_BUILDNUMBER) #define BEAST_VERSION ((BEAST_MAJOR_VERSION << 16) + (BEAST_MINOR_VERSION << 8) + BEAST_BUILDNUMBER)
//------------------------------------------------------------------------------
//==============================================================================
#include "beast_TargetPlatform.h" // (sets up the various BEAST_WINDOWS, BEAST_MAC, etc flags) #include "beast_TargetPlatform.h" // (sets up the various BEAST_WINDOWS, BEAST_MAC, etc flags)
#include "beast_PlatformDefs.h" #include "beast_PlatformDefs.h"
//==============================================================================
// Now we'll include some common OS headers.. // Now we'll include some common OS headers..
#if BEAST_MSVC #if BEAST_MSVC
#pragma warning (push) #pragma warning (push)
#pragma warning (disable: 4514 4245 4100) #pragma warning (disable: 4514 4245 4100)
#endif #endif
#include <cstdlib> #include <algorithm>
#include <cstdarg> #include <cfloat>
#include <climits> #include <climits>
#include <limits> #include <cstdarg>
#include <cmath> #include <cstddef>
#include <cwchar>
#include <stdexcept>
#include <typeinfo>
#include <cstring>
#include <cstdio> #include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cwchar>
#include <exception>
#include <iostream> #include <iostream>
#include <istream>
#include <iterator>
#include <limits>
#include <list>
#include <map>
#include <new>
#include <numeric>
#include <ostream>
#include <sstream>
#include <stdexcept>
#include <string>
#include <typeinfo>
#include <vector> #include <vector>
#include <assert.h>
#include <ctype.h>
#include <errno.h>
#include <float.h>
#include <locale.h>
#include <math.h>
#include <memory.h>
#include <stdarg.h>
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#if BEAST_USE_INTRINSICS #if BEAST_USE_INTRINSICS
#include <intrin.h> # include <intrin.h>
#endif #endif
#if BEAST_MAC || BEAST_IOS #if BEAST_MAC || BEAST_IOS
#include <libkern/OSAtomic.h> # include <libkern/OSAtomic.h>
#endif #endif
#if BEAST_LINUX #if BEAST_LINUX
#include <signal.h> # include <signal.h>
# if __INTEL_COMPILER
#if __INTEL_COMPILER # if __ia64__
#if __ia64__ # include <ia64intrin.h>
#include <ia64intrin.h> # else
#else # include <ia32intrin.h>
#include <ia32intrin.h> # endif
#endif # endif
#endif
#endif #endif
#if BEAST_MSVC && BEAST_DEBUG #if BEAST_MSVC && BEAST_DEBUG
#include <crtdbg.h> # include <crtdbg.h>
#endif #endif
#if BEAST_MSVC #if BEAST_MSVC
#pragma warning (pop) #pragma warning (pop)
#endif #endif
#if BEAST_ANDROID #if BEAST_ANDROID
@@ -107,8 +131,12 @@
#undef max #undef max
#undef min #undef min
//============================================================================== //------------------------------------------------------------------------------
// DLL building settings on Windows // DLL building settings on Windows
//
// VFALCO TODO Deprecate this
//
#if BEAST_MSVC #if BEAST_MSVC
#ifdef BEAST_DLL_BUILD #ifdef BEAST_DLL_BUILD
#define BEAST_API __declspec (dllexport) #define BEAST_API __declspec (dllexport)
@@ -124,43 +152,38 @@
#define BEAST_API __attribute__ ((visibility("default"))) #define BEAST_API __attribute__ ((visibility("default")))
#endif #endif
//============================================================================== //------------------------------------------------------------------------------
#ifndef BEAST_API #ifndef BEAST_API
#define BEAST_API /**< This macro is added to all beast public class declarations. */ #define BEAST_API /**< This macro is added to all beast public class declarations. */
#endif #endif
#if BEAST_MSVC && BEAST_DLL_BUILD #if BEAST_MSVC && BEAST_DLL_BUILD
#define BEAST_PUBLIC_IN_DLL_BUILD(declaration) public: declaration; private: #define BEAST_PUBLIC_IN_DLL_BUILD(decl) public: decl; private:
#else #else
#define BEAST_PUBLIC_IN_DLL_BUILD(declaration) declaration; #define BEAST_PUBLIC_IN_DLL_BUILD(decl) decl;
#endif #endif
/** This macro is added to all beast public function declarations. */ /** This macro is added to all beast public function declarations. */
#define BEAST_PUBLIC_FUNCTION BEAST_API BEAST_CALLTYPE #define BEAST_PUBLIC_FUNCTION BEAST_API BEAST_CALLTYPE
#if (! defined (BEAST_CATCH_DEPRECATED_CODE_MISUSE)) && BEAST_DEBUG && ! DOXYGEN //------------------------------------------------------------------------------
/** This turns on some non-essential bits of code that should prevent old code from compiling
in cases where method signatures have changed, etc.
*/
#define BEAST_CATCH_DEPRECATED_CODE_MISUSE 1
#endif
#ifndef DOXYGEN
#define BEAST_NAMESPACE beast // This old macro is deprecated: you should just use the beast namespace directly.
#endif
//==============================================================================
// Now include some common headers...
namespace beast namespace beast
{ {
extern BEAST_API bool BEAST_CALLTYPE beast_isRunningUnderDebugger();
extern BEAST_API void BEAST_CALLTYPE logAssertion (const char* file, int line) noexcept;
#include "../memory/beast_Memory.h" extern BEAST_API bool BEAST_CALLTYPE beast_isRunningUnderDebugger();
#include "../maths/beast_MathsFunctions.h" extern BEAST_API void BEAST_CALLTYPE logAssertion (char const* file, int line) noexcept;
#include "../memory/beast_ByteOrder.h"
#include "../logging/beast_Logger.h" // These are so common that we include them early
#include "../memory/beast_LeakedObjectDetector.h"
#include "../memory/beast_Uncopyable.h"
#include "../memory/beast_Memory.h"
#include "../maths/beast_MathsFunctions.h"
#include "../memory/beast_ByteOrder.h"
#include "../logging/beast_Logger.h"
#include "../memory/beast_LeakedObjectDetector.h"
} }
#endif // BEAST_STANDARDHEADER_BEASTHEADER #endif

View File

@@ -24,7 +24,7 @@
// Synchronization element // Synchronization element
// //
class SpinDelay class BEAST_API SpinDelay
{ {
public: public:
SpinDelay () : m_count (0) SpinDelay () : m_count (0)

View File

@@ -17,13 +17,13 @@
*/ */
//============================================================================== //==============================================================================
class PerformedAtExit::Performer class PerformedAtExit::ExitHook
{ {
public: public:
typedef Static::Storage <LockFreeStack <PerformedAtExit>, PerformedAtExit> StackType; typedef Static::Storage <LockFreeStack <PerformedAtExit>, PerformedAtExit> StackType;
private: private:
~Performer () ~ExitHook ()
{ {
PerformedAtExit* object = s_list->pop_front (); PerformedAtExit* object = s_list->pop_front ();
@@ -48,19 +48,23 @@ private:
static StackType s_list; static StackType s_list;
static Performer s_performer; static ExitHook s_performer;
}; };
PerformedAtExit::Performer PerformedAtExit::Performer::s_performer; PerformedAtExit::ExitHook PerformedAtExit::ExitHook::s_performer;
PerformedAtExit::Performer::StackType PerformedAtExit::Performer::s_list; PerformedAtExit::ExitHook::StackType PerformedAtExit::ExitHook::s_list;
PerformedAtExit::PerformedAtExit () PerformedAtExit::PerformedAtExit ()
{ {
#if BEAST_IOS #if BEAST_IOS
// TODO: PerformedAtExit::Performer::push_front crashes on iOS if s_storage is not accessed before used // Patrick Dehne:
char* hack = PerformedAtExit::Performer::s_list.s_storage; // PerformedAtExit::ExitHook::push_front crashes on iOS
// if s_storage is not accessed before used
//
// VFALCO TODO Figure out why and fix it cleanly if needed.
//
char* hack = PerformedAtExit::ExitHook::s_list.s_storage;
#endif #endif
Performer::push_front (this); ExitHook::push_front (this);
} }

View File

@@ -20,8 +20,6 @@
#ifndef BEAST_PERFORMEDATEXIT_BEASTHEADER #ifndef BEAST_PERFORMEDATEXIT_BEASTHEADER
#define BEAST_PERFORMEDATEXIT_BEASTHEADER #define BEAST_PERFORMEDATEXIT_BEASTHEADER
#include "../containers/beast_LockFreeStack.h"
/*============================================================================*/ /*============================================================================*/
/** /**
Perform an action at program exit Perform an action at program exit
@@ -32,7 +30,11 @@
@ingroup beast_core @ingroup beast_core
*/ */
class PerformedAtExit : public LockFreeStack <PerformedAtExit>::Node // VFALCO TODO Make the linked list element a private type and use composition
// instead of inheritance, so that PerformedAtExit doesn't expose
// lock free stack node interfaces.
//
class BEAST_API PerformedAtExit : public LockFreeStack <PerformedAtExit>::Node
{ {
protected: protected:
PerformedAtExit (); PerformedAtExit ();
@@ -44,7 +46,7 @@ protected:
virtual void performAtExit () = 0; virtual void performAtExit () = 0;
private: private:
class Performer; class ExitHook;
}; };
#endif #endif

View File

@@ -1,19 +1,61 @@
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
TODO BEAST TODO
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
- Decide if headers should just include BeastConfig.h instead of making the
host program do it.
- Rename malloc/calloc JUCE members that conflict with the debug CRT from MSVC
- Make beast::HashMap support assignment via operator[]
- Reformat every Doxygen comment
- Fix Doxygen metatags
- update Beast Doxyfile
- Rename include guards to boost style, e.g. BEAST_THROW_H_INCLUDED
- Decide if we should get rid of AtomicCounter, AtomicFlag, AtomicPointer, AtomicState
- Clean up CacheLine, StaticObject
- Clean up ConcurrentObject
- Rename ConcurrentState to SharedState or something?
- Figure out what to do with ReadWriteLock, and NamedPipe which uses it?
- Put BEAST_PUBLIC_FUNCTION in front of all loose functions
- restructure the repo sources to look like this:
/Source/beast/beast_core/beast_core.h
etc...
- Put the BeastConfig.h at the root of the repo.
- Make sure the template BeastConfig.h is included in the Doxyfile
- Implement robust key/value database with bulk write
--------------------------------------------------------------------------------
RIPPLE TODO
--------------------------------------------------------------------------------
- Restructure the ripple sources to have this directory structure:
/Source/ripple/ripple_core/ripple_core.h
etc...
- Turn on MSVC debug CRT heap checking with file and line reporting <crtdbg>
- Replace all NULL with nullptr - Replace all NULL with nullptr
- Make beast::HashMap support assignment via operator[]
- Rewrite TxFormats to use beast containers and RAII, and not leak - Rewrite TxFormats to use beast containers and RAII, and not leak
- Add ICore interface - Add ICore interface
- Make TxFormats a member of ICore instead of a singleton. - Make TxFormats a member of ICore instead of a singleton.
- Rename LoadMonitor to LoadMeter, change LoadEvent to LoadMeter::ScopedSample - Rename LoadMonitor to LoadMeter, change LoadEvent to LoadMeter::ScopedSample
- Rewrite every beast Doxygen comment, update Beast Doxyfile - Rename include guards to boost style, e.g. RIPPLE_LOG_H_INCLUDED
- Rename ripple/beast include guards to boost style, e.g. RIPPLE_LOG_H_INCLUDED - Replace C11X with BEAST_COMPILER_SUPPORTS_MOVE_SEMANTICS
- Fix all leaks on exit (!) - Fix all leaks on exit (!)