diff --git a/RippleD.props b/RippleD.props
index 17597548c..4d5516806 100644
--- a/RippleD.props
+++ b/RippleD.props
@@ -15,7 +15,7 @@
USE_LEVELDB;_SCL_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)
true
Level3
- $(RepoDir);$(RepoDir)\src\cpp\leveldb;$(RepoDir)\src\cpp\leveldb\include;$(RepoDir)\src\cpp\protobuf\src;$(RepoDir)\src\cpp\protobuf\vsprojects;$(RepoDir)\build\proto;%(AdditionalIncludeDirectories)
+ $(RepoDir);$(RepoDir)\src\cpp\leveldb;$(RepoDir)\src\cpp\leveldb\include;$(RepoDir)\src\cpp\protobuf\src;$(RepoDir)\src\cpp\protobuf\vsprojects;$(RepoDir)\build\proto;$(RepoDir)\Subtrees\beast;%(AdditionalIncludeDirectories)
/bigobj %(AdditionalOptions)
diff --git a/SConstruct b/SConstruct
index fe051edb3..b5c26e003 100644
--- a/SConstruct
+++ b/SConstruct
@@ -110,6 +110,7 @@ env.Append(CXXFLAGS = ['-DUSE_LEVELDB'])
env.Append(CPPPATH = [ 'src/cpp/leveldb', 'src/cpp/leveldb/port', 'src/cpp/leveldb/include'])
env.Append(CPPPATH = [ 'build/proto'])
env.Append(CPPPATH = [ '.', 'src/cpp/ripple'])
+env.Append(CPPPATH = [ 'Subtrees/beast' ])
if (int(GCC_VERSION[0]) > 4 or (int(GCC_VERSION[0]) == 4 and int(GCC_VERSION[1]) >= 7)):
env.Append(CXXFLAGS = ['-std=c++11'])
@@ -123,16 +124,18 @@ RIPPLE_SRCS = [
'src/cpp/leveldb_core.cpp',
'src/cpp/websocket_core.cpp',
'modules/ripple_basics/ripple_basics.cpp',
- 'modules/ripple_client/ripple_client.cpp',
- 'modules/ripple_data/ripple_data.cpp',
+ 'modules/ripple_client/ripple_client.cpp',
+ 'modules/ripple_data/ripple_data.cpp',
'modules/ripple_db/ripple_db.cpp',
'modules/ripple_json/ripple_json.cpp',
'modules/ripple_ledger/ripple_ledger.cpp',
'modules/ripple_main/ripple_main.cpp',
'modules/ripple_mess/ripple_mess.cpp',
- 'modules/ripple_net/ripple_net.cpp'
+ 'modules/ripple_net/ripple_net.cpp',
+ 'Subtrees/beast/modules/beast_core/beast_core.cpp'
]
+# VFALCO: TODO, Remove these ugly loops and just extract the data from RIPPLE_SRCS for the call to VariantDir()
# Put objects files in their own directory.
for dir in ['.', 'ripple', 'database', 'json', 'leveldb/db', 'leveldb/port', 'leveldb/include', 'leveldb/table', 'leveldb/util', 'websocketpp']:
VariantDir('build/obj/'+dir, 'src/cpp/'+dir, duplicate=0)
@@ -150,6 +153,11 @@ for dir in [
]:
VariantDir('build/obj/'+dir, 'modules/'+dir, duplicate=0)
+for dir in [
+ 'beast_core'
+ ]:
+ VariantDir('build/obj/'+dir, 'Subtrees/beast/modules/'+dir, duplicate=0)
+
PROTO_SRCS = env.Protoc([], 'src/cpp/ripple/ripple.proto', PROTOCOUTDIR='build/proto', PROTOCPYTHONOUTDIR=None)
env.Clean(PROTO_SRCS, 'site_scons/site_tools/protoc.pyc')
# PROTO_SRCS = [ 'src/cpp/protobuf_core.cpp' ]
diff --git a/Subtrees/beast/Builds/VisualStudio2012/beast.vcxproj b/Subtrees/beast/Builds/VisualStudio2012/beast.vcxproj
index 7c01d0f2c..9fe1e1d3b 100644
--- a/Subtrees/beast/Builds/VisualStudio2012/beast.vcxproj
+++ b/Subtrees/beast/Builds/VisualStudio2012/beast.vcxproj
@@ -12,15 +12,15 @@
-
+
-
-
+
+
-
+
{73C5A0F0-7629-4DE7-9194-BE7AC6C19535}
diff --git a/Subtrees/beast/Builds/VisualStudio2012/beast.vcxproj.filters b/Subtrees/beast/Builds/VisualStudio2012/beast.vcxproj.filters
index 8641a2542..d690caaf4 100644
--- a/Subtrees/beast/Builds/VisualStudio2012/beast.vcxproj.filters
+++ b/Subtrees/beast/Builds/VisualStudio2012/beast.vcxproj.filters
@@ -3,7 +3,7 @@
-
+
beast_core
@@ -16,15 +16,15 @@
-
+
beast_core\memory
-
+
beast_core
-
+
beast_core
diff --git a/modules/ripple_basics/ripple_basics.h b/modules/ripple_basics/ripple_basics.h
index 80f88ac66..bc120b1bc 100644
--- a/modules/ripple_basics/ripple_basics.h
+++ b/modules/ripple_basics/ripple_basics.h
@@ -122,6 +122,7 @@ namespace boost {
#include // For HashUtilities
#include // For HashUtilities
+#include "modules/beast_core/beast_core.h"
#include "../ripple_json/ripple_json.h"
diff --git a/newcoin.sln b/newcoin.sln
index e4ca352a2..ee369eb98 100644
--- a/newcoin.sln
+++ b/newcoin.sln
@@ -3,6 +3,8 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Express 2012 for Windows Desktop
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "newcoin", "newcoin.vcxproj", "{19465545-42EE-42FA-9CC8-F8975F8F1CC7}"
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "beast", "Subtrees\beast\Builds\VisualStudio2012\beast.vcxproj", "{73C5A0F0-7629-4DE7-9194-BE7AC6C19535}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -18,6 +20,12 @@ Global
{19465545-42EE-42FA-9CC8-F8975F8F1CC7}.Release|Win32.ActiveCfg = Release|Win32
{19465545-42EE-42FA-9CC8-F8975F8F1CC7}.Release|Win32.Build.0 = Release|Win32
{19465545-42EE-42FA-9CC8-F8975F8F1CC7}.Release|x64.ActiveCfg = Release|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|x64.ActiveCfg = Debug|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|x64.ActiveCfg = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/newcoin.vcxproj.filters b/newcoin.vcxproj.filters
index ba1b56c5d..aa4fded31 100644
--- a/newcoin.vcxproj.filters
+++ b/newcoin.vcxproj.filters
@@ -4,6 +4,9 @@
{475c5b33-c9b5-415f-89df-fb9961f3b57c}
+
+ {290b7b39-a4e6-4b8b-b464-d1e458562fdd}
+
{60c3631e-8855-4a61-bdd3-9892d96242d5}
diff --git a/src/cpp/ripple/Application.cpp b/src/cpp/ripple/Application.cpp
index 96e0fcd9a..c06f56844 100644
--- a/src/cpp/ripple/Application.cpp
+++ b/src/cpp/ripple/Application.cpp
@@ -23,7 +23,7 @@ SETUP_LOG (Application)
LogPartition AutoSocketPartition("AutoSocket");
Application* theApp = NULL;
-Application::Application()
+Application::Application ()
: mIOService ((theConfig.NODE_SIZE >= 2) ? 2 : 1)
, mIOWork (mIOService)
, mAuxWork (mAuxService)
@@ -414,10 +414,6 @@ void Application::sweep()
Application::~Application()
{
- delete mValidations;
- delete mFeeTrack;
- delete mFeeVote;
-
delete mTxnDB;
delete mLedgerDB;
delete mWalletDB;
diff --git a/src/cpp/ripple/Application.h b/src/cpp/ripple/Application.h
index 3b775195c..a102f8820 100644
--- a/src/cpp/ripple/Application.h
+++ b/src/cpp/ripple/Application.h
@@ -64,9 +64,9 @@ class Application
OrderBookDB mOrderBookDB;
// VFALCO: Clean stuff
- IFeeVote* mFeeVote;
- ILoadFeeTrack* mFeeTrack;
- IValidations* mValidations;
+ beast::ScopedPointer mFeeVote;
+ beast::ScopedPointer mFeeTrack;
+ beast::ScopedPointer mValidations;
// VFALCO: End Clean stuff
FeatureTable mFeatureTable;