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);

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to