[Bf-blender-cvs] [c92be53] soc-2014-fluid: Not using disk setup file anymore
Roman Pogribnyi
noreply at git.blender.org
Tue Nov 11 23:43:02 CET 2014
Commit: c92be53d244548fbfacabab3ec77aae0ec9699ca
Author: Roman Pogribnyi
Date: Mon Oct 27 09:56:29 2014 +0100
Branches: soc-2014-fluid
https://developer.blender.org/rBc92be53d244548fbfacabab3ec77aae0ec9699ca
Not using disk setup file anymore
===================================================================
M intern/smoke/intern/MANTA.cpp
M intern/smoke/intern/MANTA.h
M source/blender/python/manta_pp/pwrapper/pymain.cpp
===================================================================
diff --git a/intern/smoke/intern/MANTA.cpp b/intern/smoke/intern/MANTA.cpp
index 7a7ba09..ecae53d 100644
--- a/intern/smoke/intern/MANTA.cpp
+++ b/intern/smoke/intern/MANTA.cpp
@@ -464,15 +464,15 @@ void Manta_API::generate_manta_sim_file(SmokeModifierData *smd)
/*constrcting final setup*/
string smoke_script = smoke_setup_low + ((wavelets)?smoke_setup_high:"") + smoke_step_low + ((wavelets)?smoke_step_high:"");
- ofstream manta_setup_file;
- manta_setup_file.open("manta_scene.py", std::fstream::trunc);
- manta_setup_file << smoke_script ;
- manta_setup_file.close();
+// ofstream manta_setup_file;
+// manta_setup_file.open("manta_scene.py", std::fstream::trunc);
+// manta_setup_file << smoke_script ;
+// manta_setup_file.close();
- parseFile(smoke_script, smd);
+ std::string final_script = parseScript(smoke_script, smd);
vector<string> a;
a.push_back("manta_scene.py");
- runMantaScript("",a);
+ runMantaScript(final_script,a);
updatePointers();
}
@@ -564,23 +564,26 @@ std::string Manta_API::parseLine(const string& line, SmokeModifierData *smd)
return res;
}
-void Manta_API::parseFile(const string & setup_string, SmokeModifierData *smd)
+std::string Manta_API::parseScript(const string & setup_string, SmokeModifierData *smd)
{
// ifstream f (file);
-std::istringstream f(setup_string);
- ofstream of;
- of.open("manta_scene.py", std::fstream::trunc);
+ std::istringstream f(setup_string);
+// ofstream of; /*PR: for Debug*/
+ ostringstream res;
+// of.open("manta_scene.py", std::fstream::trunc);
string line="";
// if (f.is_open()){
while(getline(f,line)){
- of << parseLine(line,smd) << "\n";
+// of << parseLine(line,smd) << "\n";
+ res << parseLine(line,smd) << "\n";
}
// f.close();
// }
// else{
// printf ("Error: No scenario file found");
// }
- of.close();
+// of.close();
+ return res.str();
}
string Manta_API::getGridPointer(std::string gridName, std::string solverName)
diff --git a/intern/smoke/intern/MANTA.h b/intern/smoke/intern/MANTA.h
index 6ea6f2b..e38fbfd 100644
--- a/intern/smoke/intern/MANTA.h
+++ b/intern/smoke/intern/MANTA.h
@@ -115,7 +115,7 @@ public:
std::string parseLine(const string& line, SmokeModifierData *sds);
- void parseFile(const string& setup_string, SmokeModifierData *sds);
+ std::string parseScript(const string& setup_string, SmokeModifierData *sds);
pthread_t manta_thread;
diff --git a/source/blender/python/manta_pp/pwrapper/pymain.cpp b/source/blender/python/manta_pp/pwrapper/pymain.cpp
index 611afe9..83bc587 100644
--- a/source/blender/python/manta_pp/pwrapper/pymain.cpp
+++ b/source/blender/python/manta_pp/pwrapper/pymain.cpp
@@ -193,12 +193,12 @@ void runMantaScript(const string& ss,vector<string>& args) {
PySys_SetArgv( args.size(), (pyChar**) cargs);
// Try to load python script
- FILE* fp = fopen(filename.c_str(),"rb");
- if (fp == NULL) {
- debMsg("Cannot open '" << filename << "'", 0);
- Pb::finalize();
- return;
- }
+// FILE* fp = fopen(filename.c_str(),"rb");
+// if (fp == NULL) {
+// debMsg("Cannot open '" << filename << "'", 0);
+// Pb::finalize();
+// return;
+// }
// Run the python script file
debMsg("Loading script '" << filename << "'", 0);
@@ -217,8 +217,8 @@ void runMantaScript(const string& ss,vector<string>& args) {
// for linux, use this as it produces nicer error messages
string toExec = "";
-// PyRun_SimpleString(ss.c_str());
- PyRun_SimpleFileEx(fp, filename.c_str(), 0);
+ PyRun_SimpleString(ss.c_str());
+// PyRun_SimpleFileEx(fp, filename.c_str(), 0);
// for (int frame=0; frame < 4; ++frame)
// {
// std::string frame_str = static_cast<ostringstream*>( &(ostringstream() << frame) )->str();
@@ -226,9 +226,9 @@ void runMantaScript(const string& ss,vector<string>& args) {
// std::string py_string_1 = py_string_0.append(")\0");
// PyRun_SimpleString(py_string_1.c_str());
// }
- if (fp != NULL){
- fclose(fp);
- }
+// if (fp != NULL){
+// fclose(fp);
+// }
#endif
debMsg("Script finished.", 0);
More information about the Bf-blender-cvs
mailing list