mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2024-12-24 16:30:34 +05:00
Replace WIN32 by DISABLE_PSMESH
This commit is contained in:
parent
b5ad174931
commit
9afcd890f5
@ -40,7 +40,7 @@
|
||||
//Occ include
|
||||
#include <TopoDS.hxx>
|
||||
|
||||
#ifndef WIN32
|
||||
#ifndef DISABLE_PSMESH
|
||||
#include <boost/filesystem.hpp>
|
||||
#include <boost/algorithm/string.hpp>
|
||||
namespace fs = boost::filesystem;
|
||||
@ -148,7 +148,7 @@ int exportBREPShape(const std::string shape_file, const TopoDS_Shape& aShape){
|
||||
* @return error code
|
||||
*/
|
||||
int SMESH_DriverShape::importShape(const std::string shape_file, TopoDS_Shape& aShape){
|
||||
#ifndef WIN32
|
||||
#ifndef DISABLE_PSMESH
|
||||
std::string type = fs::path(shape_file).extension().string();
|
||||
boost::algorithm::to_lower(type);
|
||||
if (type == ".brep"){
|
||||
@ -172,7 +172,7 @@ int SMESH_DriverShape::importShape(const std::string shape_file, TopoDS_Shape& a
|
||||
* @return error code
|
||||
*/
|
||||
int SMESH_DriverShape::exportShape(const std::string shape_file, const TopoDS_Shape& aShape){
|
||||
#ifndef WIN32
|
||||
#ifndef DISABLE_PSMESH
|
||||
std::string type = fs::path(shape_file).extension().string();
|
||||
boost::algorithm::to_lower(type);
|
||||
if (type == ".brep"){
|
||||
|
@ -57,12 +57,12 @@
|
||||
|
||||
#include <Basics_Utils.hxx>
|
||||
|
||||
#ifndef WIN32
|
||||
#ifndef DISABLE_PSMESH
|
||||
#include <boost/asio.hpp>
|
||||
#endif
|
||||
|
||||
using namespace std;
|
||||
#ifndef WIN32
|
||||
#ifndef DISABLE_PSMESH
|
||||
#include <boost/filesystem.hpp>
|
||||
namespace fs = boost::filesystem;
|
||||
#endif
|
||||
@ -307,7 +307,7 @@ bool SMESH_Gen::parallelComputeSubMeshes(
|
||||
const bool complexShapeFirst,
|
||||
const bool aShapeOnly)
|
||||
{
|
||||
#ifdef WIN32
|
||||
#ifdef DISABLE_PSMESH
|
||||
throw SALOME_Exception("ParallelMesh is not working on Windows");
|
||||
#else
|
||||
|
||||
|
@ -49,7 +49,7 @@
|
||||
#include <vector>
|
||||
#include <ostream>
|
||||
|
||||
#ifndef WIN32
|
||||
#ifndef DISABLE_PSMESH
|
||||
#include <boost/filesystem.hpp>
|
||||
#include <boost/asio/thread_pool.hpp>
|
||||
#endif
|
||||
@ -404,8 +404,10 @@ class SMESH_EXPORT SMESH_Mesh
|
||||
|
||||
virtual bool IsParallel(){std::cout << "Should not pass here: IsParallel" << std::endl;return false;};
|
||||
|
||||
#ifndef DISABLE_PSMESH
|
||||
virtual boost::filesystem::path GetTmpFolder() {return "";};
|
||||
virtual boost::asio::thread_pool* GetPool() {return NULL;};
|
||||
#endif
|
||||
|
||||
virtual bool ComputeSubMeshes(
|
||||
SMESH_Gen* gen,
|
||||
@ -466,7 +468,7 @@ protected:
|
||||
TCallUp* _callUp;
|
||||
|
||||
// Mutex for multhitreading write in SMESH_Mesh
|
||||
#ifndef WIN32
|
||||
#ifndef DISABLE_PSMESH
|
||||
boost::mutex _my_lock;
|
||||
#endif
|
||||
int _NbThreads=-1;
|
||||
|
@ -32,12 +32,12 @@
|
||||
#include <windows.h>
|
||||
#endif
|
||||
|
||||
#ifndef WIN32
|
||||
#ifndef DISABLE_PSMESH
|
||||
#include <boost/filesystem.hpp>
|
||||
namespace fs=boost::filesystem;
|
||||
#endif
|
||||
|
||||
#ifndef WIN32
|
||||
#ifndef DISABLE_PSMESH
|
||||
#include <boost/asio.hpp>
|
||||
#endif
|
||||
|
||||
@ -58,7 +58,11 @@ SMESH_ParallelMesh::SMESH_ParallelMesh(int theLocalId,
|
||||
theDocument)
|
||||
{
|
||||
MESSAGE("SMESH_ParallelMesh::SMESH_ParallelMesh(int localId)");
|
||||
#ifndef DISABLE_PSMESH
|
||||
_NbThreads = std::thread::hardware_concurrency();
|
||||
#else
|
||||
_NbThreads = 0;
|
||||
#endif
|
||||
CreateTmpFolder();
|
||||
};
|
||||
|
||||
@ -78,7 +82,7 @@ SMESH_ParallelMesh::~SMESH_ParallelMesh()
|
||||
//=============================================================================
|
||||
void SMESH_ParallelMesh::CreateTmpFolder()
|
||||
{
|
||||
#ifndef WIN32
|
||||
#ifndef DISABLE_PSMESH
|
||||
// Temporary folder that will be used by parallel computation
|
||||
tmp_folder = fs::temp_directory_path()/fs::unique_path(fs::path("SMESH_%%%%-%%%%"));
|
||||
fs::create_directories(tmp_folder);
|
||||
@ -92,7 +96,7 @@ void SMESH_ParallelMesh::CreateTmpFolder()
|
||||
//=============================================================================
|
||||
void SMESH_ParallelMesh::DeleteTmpFolder()
|
||||
{
|
||||
#ifndef WIN32
|
||||
#ifndef DISABLE_PSMESH
|
||||
fs::remove_all(tmp_folder);
|
||||
#endif
|
||||
}
|
||||
|
@ -42,6 +42,7 @@ class SMESH_EXPORT SMESH_ParallelMesh: public SMESH_Mesh
|
||||
|
||||
virtual ~SMESH_ParallelMesh();
|
||||
|
||||
#ifndef DISABLE_PSMESH
|
||||
void Lock() override {_my_lock.lock();};
|
||||
void Unlock() override {_my_lock.unlock();};
|
||||
|
||||
@ -60,6 +61,22 @@ class SMESH_EXPORT SMESH_ParallelMesh: public SMESH_Mesh
|
||||
|
||||
boost::filesystem::path GetTmpFolder() override {return tmp_folder;};
|
||||
boost::asio::thread_pool* GetPool() override {return _pool;};
|
||||
#else
|
||||
void Lock() override {};
|
||||
void Unlock() override {};
|
||||
|
||||
int GetNbThreads() override {return 0;};
|
||||
void SetNbThreads(long nbThreads) {(void) nbThreads;};
|
||||
|
||||
void InitPoolThreads() override {};
|
||||
void DeletePoolThreads() override {};
|
||||
void wait() override {};
|
||||
|
||||
bool IsParallel() override {return false;};
|
||||
|
||||
void CreateTmpFolder();
|
||||
void DeleteTmpFolder();
|
||||
#endif
|
||||
|
||||
bool ComputeSubMeshes(
|
||||
SMESH_Gen* gen,
|
||||
@ -77,7 +94,9 @@ class SMESH_EXPORT SMESH_ParallelMesh: public SMESH_Mesh
|
||||
SMESH_ParallelMesh():SMESH_Mesh() {};
|
||||
SMESH_ParallelMesh(const SMESH_ParallelMesh& aMesh):SMESH_Mesh(aMesh) {};
|
||||
private:
|
||||
#ifndef DISABLE_PSMESH
|
||||
boost::filesystem::path tmp_folder;
|
||||
boost::asio::thread_pool * _pool = nullptr; //thread pool for computation
|
||||
#endif
|
||||
};
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user