$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r68962 - in sandbox/icl: boost/icl/type_traits boost/validate/driver libs/icl/test libs/icl/test/fastest_split_interval_map_ libs/icl/test/fix_include_after_thread_ libs/icl/test/test_casual_ libs/icl_xt/example/casual_sample_ libs/validate/example/labat_multi_
From: afojgo_at_[hidden]
Date: 2011-02-16 16:19:52
Author: jofaber
Date: 2011-02-16 16:19:45 EST (Wed, 16 Feb 2011)
New Revision: 68962
URL: http://svn.boost.org/trac/boost/changeset/68962
Log:
Some improvements for is_numeric predicate. Added experiments for multi threaded execution of law validation.
Added:
   sandbox/icl/libs/validate/example/labat_multi_/
   sandbox/icl/libs/validate/example/labat_multi_/labat_multi.cpp   (contents, props changed)
   sandbox/icl/libs/validate/example/labat_multi_/vc9_labat_multi.vcproj   (contents, props changed)
Text files modified: 
   sandbox/icl/boost/icl/type_traits/is_numeric.hpp                                            |     9 ++++++                                  
   sandbox/icl/boost/validate/driver/icl_driver.hpp                                            |    10 ++++++--                                
   sandbox/icl/libs/icl/test/fastest_split_interval_map_/vc9_fastest_split_interval_map.vcproj |     4 +++                                     
   sandbox/icl/libs/icl/test/fix_include_after_thread_/fix_include_after_thread.cpp            |     4 +-                                      
   sandbox/icl/libs/icl/test/test_casual_/test_casual.cpp                                      |    46 +++++++++++++++++++++++++++++++++++++++ 
   sandbox/icl/libs/icl/test/test_type_lists.hpp                                               |    34 +++++++++++++++++++++++++++++           
   sandbox/icl/libs/icl/test/vc9_icl_fast_tests.sln                                            |     6 +++++                                   
   sandbox/icl/libs/icl/test/vc9_icl_slow_tests.sln                                            |     6 +++++                                   
   sandbox/icl/libs/icl_xt/example/casual_sample_/casual_sample.cpp                            |    10 ++++++++                                
   9 files changed, 122 insertions(+), 7 deletions(-)
Modified: sandbox/icl/boost/icl/type_traits/is_numeric.hpp
==============================================================================
--- sandbox/icl/boost/icl/type_traits/is_numeric.hpp	(original)
+++ sandbox/icl/boost/icl/type_traits/is_numeric.hpp	2011-02-16 16:19:45 EST (Wed, 16 Feb 2011)
@@ -14,10 +14,17 @@
 namespace boost{ namespace icl
 {
 
+template <class Type> struct is_fixed_numeric
+{
+    typedef is_fixed_numeric type;
+    BOOST_STATIC_CONSTANT(bool, value = (0 < std::numeric_limits<Type>::digits));
+};
+
 template <class Type> struct is_numeric
 {
     typedef is_numeric type;
-    BOOST_STATIC_CONSTANT(bool, value = (0 < std::numeric_limits<Type>::digits));
+    BOOST_STATIC_CONSTANT(bool, value = 
+        (mpl::or_<is_fixed_numeric<Type>, is_integral<Type> >::value) );
 };
 
 template <class Type> 
Modified: sandbox/icl/boost/validate/driver/icl_driver.hpp
==============================================================================
--- sandbox/icl/boost/validate/driver/icl_driver.hpp	(original)
+++ sandbox/icl/boost/validate/driver/icl_driver.hpp	2011-02-16 16:19:45 EST (Wed, 16 Feb 2011)
@@ -13,6 +13,7 @@
 #include <iostream>
 #include <stdio.h>
 #include <time.h>
+#include <boost/thread.hpp>
 #include <boost/validate/validater/concept_validater.hpp>
 #include <boost/validate/utility.hpp>
 
@@ -93,9 +94,9 @@
 
         bool validate()
         {
-            //srand(static_cast<unsigned>(time(NULL))); //Different numbers each run
-            srand(static_cast<unsigned>(1)); //Same numbers each run (std)
-            //srand(static_cast<unsigned>(4711)); //Same numbers each run (varying)
+            srand(static_cast<unsigned>(time(NULL))); //seed time: different numbers each run 
+            //srand(static_cast<unsigned>(1)); //seed 1: same numbers each run (std)
+            //srand(static_cast<unsigned>(4711)); //seed var: same numbers every run (varying)
 
             for(int idx=0; !terminates(); idx++)
             {
@@ -137,6 +138,8 @@
 
         void reportFrequencies()
         {
+			extern boost::mutex g_Mutex; //JODO URG REV ...
+			g_Mutex.lock();
             std::cout << "------------------------------------------------------------------------------" << std::endl;
             std::cout << "--- Successfully tested law instantiation -------------------------runs---time" << std::endl;
             int valid_count = 1;
@@ -181,6 +184,7 @@
             }
             if(!icl::is_empty(_violations))
                 std::cout << "------------------------------------------------------------------------------" << std::endl;
+			g_Mutex.unlock();
         }
 
         void reportFrequencies(const std::string& filename)
Modified: sandbox/icl/libs/icl/test/fastest_split_interval_map_/vc9_fastest_split_interval_map.vcproj
==============================================================================
--- sandbox/icl/libs/icl/test/fastest_split_interval_map_/vc9_fastest_split_interval_map.vcproj	(original)
+++ sandbox/icl/libs/icl/test/fastest_split_interval_map_/vc9_fastest_split_interval_map.vcproj	2011-02-16 16:19:45 EST (Wed, 16 Feb 2011)
@@ -204,6 +204,10 @@
                         UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
 			>
                 </Filter>
+		<File
+			RelativePath="..\vc9_icl_fast_tests.sln"
+			>
+		</File>
         </Files>
         <Globals>
         </Globals>
Modified: sandbox/icl/libs/icl/test/fix_include_after_thread_/fix_include_after_thread.cpp
==============================================================================
--- sandbox/icl/libs/icl/test/fix_include_after_thread_/fix_include_after_thread.cpp	(original)
+++ sandbox/icl/libs/icl/test/fix_include_after_thread_/fix_include_after_thread.cpp	2011-02-16 16:19:45 EST (Wed, 16 Feb 2011)
@@ -26,8 +26,8 @@
 template <class Type> struct some_predicate
 { 
     BOOST_STATIC_CONSTANT(bool, 
-        value = ((some_attribute<Type>::value) < 0) 
-    //  value = ( some_attribute<Type>::value  < 0) 
+    //  value = ((some_attribute<Type>::value) < 0) 
+        value = ( some_attribute<Type>::value  < 0) 
                 //error C2059: syntax error : ')' ONLY
                 //IF <boost/thread.hpp> is included before
         ); 
Modified: sandbox/icl/libs/icl/test/test_casual_/test_casual.cpp
==============================================================================
--- sandbox/icl/libs/icl/test/test_casual_/test_casual.cpp	(original)
+++ sandbox/icl/libs/icl/test/test_casual_/test_casual.cpp	2011-02-16 16:19:45 EST (Wed, 16 Feb 2011)
@@ -19,6 +19,7 @@
 
 #include <boost/icl/gregorian.hpp>
 #include <boost/icl/ptime.hpp>
+#include <boost/icl/xint.hpp>
 
 #include <boost/icl/interval_map.hpp>
 #include <boost/icl/interval.hpp>
@@ -29,6 +30,7 @@
 using namespace boost::icl;
 using namespace boost::posix_time;
 using namespace boost::gregorian;
+using namespace boost::xint;
 
 BOOST_AUTO_TEST_CASE(casual)
 {
@@ -37,7 +39,49 @@
     //typedef interval_map<T,U, total_absorber> IntervalMapT;
     //typedef interval_set<T>                   IntervalSetT;
     //typedef IntervalMapT::interval_type       IntervalT;
+	namespace xopts = boost::xint::options;
 
-    BOOST_CHECK_EQUAL(true, true);
+	typedef boost::xint::integer_t<xopts::fixedlength<512>, xopts::secure, xopts::negative_modulus> uint512;
+	typedef boost::xint::detail::integer_t_data
+		<xopts::fixedlength<512>, xopts::secure, xopts::negative_modulus, 
+		 parameter::void_, parameter::void_, parameter::void_> uint512_d;
+
+	bool is_itg_xint = boost::is_integral<xint::integer>::value;
+
+	typedef integer_t<>::datatype base_type;
+
+
+	/*
+	uint512* p_ui = new uint512; 
+	(*p_ui) += 512;
+	cout << (*p_ui) << endl;
+
+	uint512_d* p_ui_d = p_ui;
+	delete p_ui_d;
+	*/
+
+	unsigned int k = 2;
+	k -= 3;
+	cout << k << endl;
+
+	//interval_set<int>* p_is = new interval_set<int>;
+	//interval_set<int>::base_type* p_bis = p_is;
+	//delete p_bis;
+
+	//integer* p_itg = new integer; 
+	//(*p_itg) += 42;
+	//cout << (*p_itg) << endl;
+
+	////boost::xint::detail::integer_t_data<>*
+	//integer_t<>* p_itg_td = p_itg;
+	//(*p_itg_td) += 1;
+	//cout << (*p_itg_td) << endl;
+
+	//delete p_itg_td;
+
+	cout << "is_specialized: " 
+		<< std::numeric_limits<boost::xint::integer>::is_specialized << endl;
+
+    BOOST_CHECK_EQUAL(true, is_itg_xint);
 }
 
Modified: sandbox/icl/libs/icl/test/test_type_lists.hpp
==============================================================================
--- sandbox/icl/libs/icl/test/test_type_lists.hpp	(original)
+++ sandbox/icl/libs/icl/test/test_type_lists.hpp	2011-02-16 16:19:45 EST (Wed, 16 Feb 2011)
@@ -8,13 +8,21 @@
 #ifndef BOOST_ICL_TEST_TYPE_LISTS_HPP_JOFA_080916
 #define BOOST_ICL_TEST_TYPE_LISTS_HPP_JOFA_080916
 
+//#define BOOST_ICL_TEST_XINT
+
 #include <boost/mpl/list.hpp>
 
 // interval instance types
 #include <boost/icl/gregorian.hpp> 
 #include <boost/icl/ptime.hpp> 
+
+#ifdef BOOST_ICL_TEST_XINT
+#include <boost/icl/xint.hpp>
+#endif
+
 #include <boost/icl/rational.hpp> 
 
+
 #if(_MSC_VER < 1500 && defined(_DEBUG) ) // 1500 = MSVC-9.0
 typedef int boost_posix_time_ptime;
 typedef int boost_posix_time_duration;
@@ -32,6 +40,10 @@
     ,short, int, long, long long
     ,float, double, long double
     ,boost::rational<int>
+#ifdef BOOST_ICL_TEST_XINT
+	,boost::xint::integer
+    ,boost::rational<boost::xint::integer>
+#endif
     ,boost_posix_time_ptime
     ,boost_posix_time_duration
     ,boost_gregorian_date
@@ -53,6 +65,10 @@
      short, int, long, long long
     ,float, double, long double
     ,boost::rational<int>
+#ifdef BOOST_ICL_TEST_XINT
+	,boost::xint::integer
+    ,boost::rational<boost::xint::integer>
+#endif
 > signed_bicremental_types;
 
 typedef          int             signed_bicremental_type_1;
@@ -69,6 +85,9 @@
 typedef ::boost::mpl::list<
     float, double, long double
     ,boost::rational<int>
+#ifdef BOOST_ICL_TEST_XINT
+    ,boost::rational<boost::xint::integer>
+#endif
 > bicremental_continuous_types;
 
 typedef float                bicremental_continuous_type_1;
@@ -80,6 +99,9 @@
     unsigned short, unsigned int
     ,unsigned long, unsigned long long  
     ,short, int, long, long long
+#ifdef BOOST_ICL_TEST_XINT
+	,boost::xint::integer
+#endif
 > integral_types;
 
 typedef int                integral_type_1;
@@ -93,6 +115,9 @@
     unsigned short, unsigned int
     ,unsigned long, unsigned long long  
     ,short, int, long
+#ifdef BOOST_ICL_TEST_XINT
+	,boost::xint::integer
+#endif
     ,boost_posix_time_ptime
     ,boost_posix_time_ptime
     ,boost_posix_time_duration
@@ -118,6 +143,9 @@
 typedef ::boost::mpl::list<
     float, double, long double
     ,boost::rational<int>
+#ifdef BOOST_ICL_TEST_XINT
+    ,boost::rational<boost::xint::integer>
+#endif
 > numeric_continuous_types;
 
 typedef double               numeric_continuous_type_1;
@@ -128,6 +156,9 @@
 typedef ::boost::mpl::list<
     float, double, long double
     ,boost::rational<int>
+#ifdef BOOST_ICL_TEST_XINT
+    ,boost::rational<boost::xint::integer>
+#endif
     ,std::string
 > continuous_types;
 
@@ -142,6 +173,9 @@
     ,short, int, long, long long
     ,float, double, long double
     ,boost::rational<int>
+#ifdef BOOST_ICL_TEST_XINT
+	,boost::xint::integer
+#endif
     ,std::string
     ,boost_posix_time_ptime
     ,boost_posix_time_duration
Modified: sandbox/icl/libs/icl/test/vc9_icl_fast_tests.sln
==============================================================================
--- sandbox/icl/libs/icl/test/vc9_icl_fast_tests.sln	(original)
+++ sandbox/icl/libs/icl/test/vc9_icl_fast_tests.sln	2011-02-16 16:19:45 EST (Wed, 16 Feb 2011)
@@ -57,6 +57,8 @@
 EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "vc9_fix_icl_after_thread", "fix_icl_after_thread_\vc9_fix_icl_after_thread.vcproj", "{EE61B7EF-EC45-4165-8B49-FD5B8D9A9FA0}"
 EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "vc9_fix_syntax_effect_thread", "fix_syntax_effect_thread_\vc9_fix_syntac_effect_thread.vcproj", "{EE61B7EF-EC45-4165-8B49-FD5B8D7A9FA1}"
+EndProject
 Global
         GlobalSection(SolutionConfigurationPlatforms) = preSolution
                 Debug|Win32 = Debug|Win32
@@ -175,6 +177,10 @@
                 {EE61B7EF-EC45-4165-8B49-FD5B8D9A9FA0}.Debug|Win32.Build.0 = Debug|Win32
                 {EE61B7EF-EC45-4165-8B49-FD5B8D9A9FA0}.Release|Win32.ActiveCfg = Release|Win32
                 {EE61B7EF-EC45-4165-8B49-FD5B8D9A9FA0}.Release|Win32.Build.0 = Release|Win32
+		{EE61B7EF-EC45-4165-8B49-FD5B8D7A9FA1}.Debug|Win32.ActiveCfg = Debug|Win32
+		{EE61B7EF-EC45-4165-8B49-FD5B8D7A9FA1}.Debug|Win32.Build.0 = Debug|Win32
+		{EE61B7EF-EC45-4165-8B49-FD5B8D7A9FA1}.Release|Win32.ActiveCfg = Release|Win32
+		{EE61B7EF-EC45-4165-8B49-FD5B8D7A9FA1}.Release|Win32.Build.0 = Release|Win32
         EndGlobalSection
         GlobalSection(SolutionProperties) = preSolution
                 HideSolutionNode = FALSE
Modified: sandbox/icl/libs/icl/test/vc9_icl_slow_tests.sln
==============================================================================
--- sandbox/icl/libs/icl/test/vc9_icl_slow_tests.sln	(original)
+++ sandbox/icl/libs/icl/test/vc9_icl_slow_tests.sln	2011-02-16 16:19:45 EST (Wed, 16 Feb 2011)
@@ -47,6 +47,8 @@
 EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "vc9_test_total_icl_quantifier", "test_total_icl_quantifier_\vc9_test_total_icl_quantifier.vcproj", "{EE61B7EF-EC45-4165-8B4B-FD5B7D5A9F9F}"
 EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "vc9_test_casual", "test_casual_\vc9_test_casual.vcproj", "{EE61B7EF-EC45-4165-8B49-FD5B8D3A9FA0}"
+EndProject
 Global
         GlobalSection(SolutionConfigurationPlatforms) = preSolution
                 Debug|Win32 = Debug|Win32
@@ -145,6 +147,10 @@
                 {EE61B7EF-EC45-4165-8B4B-FD5B7D5A9F9F}.Debug|Win32.Build.0 = Debug|Win32
                 {EE61B7EF-EC45-4165-8B4B-FD5B7D5A9F9F}.Release|Win32.ActiveCfg = Release|Win32
                 {EE61B7EF-EC45-4165-8B4B-FD5B7D5A9F9F}.Release|Win32.Build.0 = Release|Win32
+		{EE61B7EF-EC45-4165-8B49-FD5B8D3A9FA0}.Debug|Win32.ActiveCfg = Debug|Win32
+		{EE61B7EF-EC45-4165-8B49-FD5B8D3A9FA0}.Debug|Win32.Build.0 = Debug|Win32
+		{EE61B7EF-EC45-4165-8B49-FD5B8D3A9FA0}.Release|Win32.ActiveCfg = Release|Win32
+		{EE61B7EF-EC45-4165-8B49-FD5B8D3A9FA0}.Release|Win32.Build.0 = Release|Win32
         EndGlobalSection
         GlobalSection(SolutionProperties) = preSolution
                 HideSolutionNode = FALSE
Modified: sandbox/icl/libs/icl_xt/example/casual_sample_/casual_sample.cpp
==============================================================================
--- sandbox/icl/libs/icl_xt/example/casual_sample_/casual_sample.cpp	(original)
+++ sandbox/icl/libs/icl_xt/example/casual_sample_/casual_sample.cpp	2011-02-16 16:19:45 EST (Wed, 16 Feb 2011)
@@ -14,9 +14,19 @@
 //using namespace boost::posix_time;
 //using namespace boost::icl;
 
+int foo(int x)
+{
+	int bar(int x)
+	{
+		return x+x;
+	}
+
+	return bar(x);
+}
 
 int main()
 {
+	cout << foo(1) << endl;
     return 0;
 }
 
Added: sandbox/icl/libs/validate/example/labat_multi_/labat_multi.cpp
==============================================================================
--- (empty file)
+++ sandbox/icl/libs/validate/example/labat_multi_/labat_multi.cpp	2011-02-16 16:19:45 EST (Wed, 16 Feb 2011)
@@ -0,0 +1,95 @@
+/*-----------------------------------------------------------------------------+    
+A Law Based Test Automaton 'LaBatea'
+Author: Joachim Faulhaber
+Copyright (c) 2007-2009: Joachim Faulhaber
++------------------------------------------------------------------------------+
+   Distributed under the Boost Software License, Version 1.0.
+      (See accompanying file LICENCE.txt or copy at
+           http://www.boost.org/LICENSE_1_0.txt)
++-----------------------------------------------------------------------------*/
+#include <boost/config/warning_disable.hpp>
+#include <iostream>
+#include <stdio.h>
+#include <boost/thread.hpp> 
+#include <boost/validate/driver/abelian_monoid_driver.hpp>
+
+using namespace std;
+using namespace boost;
+using namespace boost::icl;
+
+
+void wait(int seconds) 
+{ 
+  boost::this_thread::sleep(boost::posix_time::seconds(seconds)); 
+} 
+
+boost::mutex g_Mutex; 
+
+void test_abelian_monoid(int size)
+{
+    abelian_monoid_driver model_tester;
+	g_Mutex.lock();
+    cout << 
+    ">> ------------------------------------------------------ <<\n"
+    ">> -------- Law based test automaton 'LaBatea' ---------- <<\n"
+    ">> Output will be generated in a few seconds\n"
+    ">> terminate by typing <CTRL>C\n"
+    ">> ------------------------------------------------------ <<\n";
+    GentorProfileSgl::it()->set_std_profile(size,1);
+    GentorProfileSgl::it()->report_profile();
+	g_Mutex.unlock();
+	wait(1);
+
+    model_tester.terminate_at_law_count(18, 100);
+
+    model_tester.validate();
+}
+
+void tread_abelian_monoid_1()
+{
+	test_abelian_monoid(16);
+}
+
+void tread_abelian_monoid_2()
+{
+	test_abelian_monoid(77);
+}
+
+void thread_() 
+{ 
+  for (int i = 0; i < 5; ++i) 
+  { 
+    wait(1); 
+    g_Mutex.lock(); 
+    std::cout << "Thread " << boost::this_thread::get_id() << ": " << i << std::endl; 
+    g_Mutex.unlock(); 
+  } 
+} 
+
+int main() 
+{ 
+  boost::thread t1(tread_abelian_monoid_1); 
+  wait(2);
+  boost::thread t2(tread_abelian_monoid_2); 
+  t1.join(); 
+  t2.join(); 
+} 
+
+
+/*CL
+int main()
+{
+    abelian_monoid_driver model_tester;
+    cout << 
+    ">> ------------------------------------------------------ <<\n"
+    ">> -------- Law based test automaton 'LaBatea' ---------- <<\n"
+    ">> Output will be generated in a few seconds\n"
+    ">> terminate by typing <CTRL>C\n"
+    ">> ------------------------------------------------------ <<\n";
+    GentorProfileSgl::it()->set_std_profile(16,1);
+    GentorProfileSgl::it()->report_profile();
+    model_tester.validate();
+    return 0;
+}
+*/
+
Added: sandbox/icl/libs/validate/example/labat_multi_/vc9_labat_multi.vcproj
==============================================================================
--- (empty file)
+++ sandbox/icl/libs/validate/example/labat_multi_/vc9_labat_multi.vcproj	2011-02-16 16:19:45 EST (Wed, 16 Feb 2011)
@@ -0,0 +1,252 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+	ProjectType="Visual C++"
+	Version="9,00"
+	Name="vc9_labat_multi"
+	ProjectGUID="{BF42574F-66E2-42DD-90D9-3A8FCE6F5733}"
+	RootNamespace="vc9_labat_multi"
+	Keyword="Win32Proj"
+	TargetFrameworkVersion="131072"
+	>
+	<Platforms>
+		<Platform
+			Name="Win32"
+		/>
+	</Platforms>
+	<ToolFiles>
+	</ToolFiles>
+	<Configurations>
+		<Configuration
+			Name="Debug|Win32"
+			OutputDirectory="../../../../bin/debug"
+			IntermediateDirectory="../../../../bin/obj/$(ProjectName)/debug"
+			ConfigurationType="1"
+			CharacterSet="1"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				AdditionalOptions="/bigobj"
+				Optimization="0"
+				AdditionalIncludeDirectories="../../../../; ../../../../boost_1_35_0"
+				PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+				MinimalRebuild="true"
+				BasicRuntimeChecks="3"
+				RuntimeLibrary="3"
+				UsePrecompiledHeader="0"
+				WarningLevel="3"
+				Detect64BitPortabilityProblems="false"
+				DebugInformationFormat="4"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+				LinkIncremental="2"
+				AdditionalLibraryDirectories="../../../../lib; ../../../../stage/lib"
+				GenerateDebugInformation="true"
+				SubSystem="1"
+				RandomizedBaseAddress="1"
+				DataExecutionPrevention="0"
+				TargetMachine="1"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+		<Configuration
+			Name="Release|Win32"
+			OutputDirectory="../../../../bin/release"
+			IntermediateDirectory="../../../../bin/obj/$(ProjectName)/release"
+			ConfigurationType="1"
+			CharacterSet="1"
+			WholeProgramOptimization="1"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				WholeProgramOptimization="true"
+				AdditionalIncludeDirectories="../../../../; ../../../../boost_1_35_0"
+				PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;ITL_USE_STATIC_INTERVAL_BORDER_DEFAULTS"
+				ExceptionHandling="1"
+				RuntimeLibrary="2"
+				UsePrecompiledHeader="0"
+				WarningLevel="4"
+				Detect64BitPortabilityProblems="false"
+				DebugInformationFormat="3"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+				LinkIncremental="1"
+				AdditionalLibraryDirectories="../../../../lib; ../../../../stage/lib"
+				GenerateDebugInformation="true"
+				SubSystem="1"
+				OptimizeReferences="2"
+				EnableCOMDATFolding="2"
+				LinkTimeCodeGeneration="1"
+				RandomizedBaseAddress="1"
+				DataExecutionPrevention="0"
+				TargetMachine="1"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+	</Configurations>
+	<References>
+	</References>
+	<Files>
+		<Filter
+			Name="Source Files"
+			Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
+			UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+			>
+			<File
+				RelativePath="..\labat_multi_\labat_multi.cpp"
+				>
+			</File>
+			<File
+				RelativePath="..\..\src\gentor\gentorprofile.cpp"
+				>
+			</File>
+		</Filter>
+		<Filter
+			Name="Header Files"
+			Filter="h;hpp;hxx;hm;inl;inc;xsd"
+			UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
+			>
+			<File
+				RelativePath="..\..\..\..\boost\validate\driver\icl_set_driver.hpp"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\..\boost\validate\law.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\..\boost\validate\lawvalidater.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\..\boost\validate\lawviolations.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\..\boost\validate\laws\monoid.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\..\boost\validate\laws\order.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\..\boost\validate\laws\pushouts.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\..\boost\validate\realmvalidater.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\..\boost\validate\laws\set_laws.h"
+				>
+			</File>
+			<File
+				RelativePath="..\..\..\..\boost\validate\typevalidater.h"
+				>
+			</File>
+		</Filter>
+		<Filter
+			Name="Resource Files"
+			Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
+			UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
+			>
+		</Filter>
+		<File
+			RelativePath=".\ReadMe.txt"
+			>
+		</File>
+	</Files>
+	<Globals>
+	</Globals>
+</VisualStudioProject>