mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-19 13:40:49 +03:00
0024157: Parallelization of assembly part of BO
Patch 06 I.1. class Bnd_Box2d - method: inline Standard_Real Bnd_Box2d::SquareExtent() const has been added. Purpose : The method returns the squared diagonal of the bounding box. I.3. class BOPCol_BoxBndTree has been added. Purpose : The class is the instantiation of the algorithm of unbalanced binary tree of overlapped bounding boxes 3D. I.4. class BOPCol_Box2DBndTree has been added. Purpose : The class is the instantiation of the algorithm of unbalanced binary tree of overlapped bounding boxes 2D. I.5. class BOPAlgo_Algo - method: void BOPAlgo_Algo::SetRunParallel(const Standard_Boolean theFlag) has been added. Purpose: Set the flag of parallel processing if <theFlag> is true the parallel processing is switched on if <theFlag> is false the parallel processing is switched off - method: Standard_Boolean BOPAlgo_Algo::RunParallel()const has been added Purpose: Returns the flag of parallel processing II.1. class BOPAlgo_Builder - method: void BOPAlgo_Builder::SetRunParallel(const Standard_Boolean theFlag) has been removed due to I.5. - method: Standard_Boolean BOPAlgo_Builder::RunParallel()const has been removed due to I.5 II.2. class BOPDS_BoxBndTree has been removed due to I.3 II.3. classes BOPDS_Iterator, BOPDS_IteratorSI, BOPDS_SubIterator BOPAlgo_PaveFiller, BOPAlgo_Builder the calls to BOPDS_BoxBndTree have been changed to the calls to BOPCol_BoxBndTree due to I.3 II.4. class BOPAlgo_BuilderFace - method: void BOPAlgo_BuilderFace::PerformLoops() the changes that provide parallel run the WireSplitter algorithm have been done. - method: void BOPAlgo_BuilderFace::PerformAreas() the classification the grows and holes has been done using the algorithm of unbalanced binary tree of overlapped bounding boxes II.5. class BOPAlgo_WireSplitter - method: void BOPAlgo_WireSplitter::SplitBlock(const TopoDS_Face& myFace, BOPTools_ConnexityBlock& aCB) the method is transferred to the static, the signature of the method have been changed - method: void BOPAlgo_WireSplitter::MakeWires() the changes to provide parallel run the SplitBlock algorithm have been done
This commit is contained in:
@@ -23,35 +23,38 @@
|
||||
// function:
|
||||
// purpose:
|
||||
//=======================================================================
|
||||
BOPAlgo_Algo::BOPAlgo_Algo()
|
||||
BOPAlgo_Algo::BOPAlgo_Algo()
|
||||
:
|
||||
myAllocator(NCollection_BaseAllocator::CommonBaseAllocator()),
|
||||
myErrorStatus(1),
|
||||
myWarningStatus(0)
|
||||
myWarningStatus(0),
|
||||
myRunParallel(Standard_False)
|
||||
{}
|
||||
//=======================================================================
|
||||
// function:
|
||||
// purpose:
|
||||
//=======================================================================
|
||||
BOPAlgo_Algo::BOPAlgo_Algo(const Handle(NCollection_BaseAllocator)& theAllocator)
|
||||
BOPAlgo_Algo::BOPAlgo_Algo
|
||||
(const Handle(NCollection_BaseAllocator)& theAllocator)
|
||||
:
|
||||
myAllocator(theAllocator),
|
||||
myErrorStatus(1),
|
||||
myWarningStatus(0)
|
||||
myWarningStatus(0),
|
||||
myRunParallel(Standard_False)
|
||||
{}
|
||||
|
||||
//=======================================================================
|
||||
// function: ~
|
||||
// purpose:
|
||||
//=======================================================================
|
||||
BOPAlgo_Algo::~BOPAlgo_Algo()
|
||||
BOPAlgo_Algo::~BOPAlgo_Algo()
|
||||
{
|
||||
}
|
||||
//=======================================================================
|
||||
//function : Allocator
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
const Handle(NCollection_BaseAllocator)& BOPAlgo_Algo::Allocator()const
|
||||
const Handle(NCollection_BaseAllocator)& BOPAlgo_Algo::Allocator()const
|
||||
{
|
||||
return myAllocator;
|
||||
}
|
||||
@@ -59,7 +62,7 @@
|
||||
// function: CheckData
|
||||
// purpose:
|
||||
//=======================================================================
|
||||
void BOPAlgo_Algo::CheckData()
|
||||
void BOPAlgo_Algo::CheckData()
|
||||
{
|
||||
myErrorStatus=0;
|
||||
}
|
||||
@@ -67,7 +70,7 @@
|
||||
// function: CheckResult
|
||||
// purpose:
|
||||
//=======================================================================
|
||||
void BOPAlgo_Algo::CheckResult()
|
||||
void BOPAlgo_Algo::CheckResult()
|
||||
{
|
||||
myErrorStatus=0;
|
||||
}
|
||||
@@ -75,7 +78,7 @@
|
||||
// function: ErrorStatus
|
||||
// purpose:
|
||||
//=======================================================================
|
||||
Standard_Integer BOPAlgo_Algo::ErrorStatus()const
|
||||
Standard_Integer BOPAlgo_Algo::ErrorStatus()const
|
||||
{
|
||||
return myErrorStatus;
|
||||
}
|
||||
@@ -83,10 +86,26 @@
|
||||
// function: WarningStatus
|
||||
// purpose:
|
||||
//=======================================================================
|
||||
Standard_Integer BOPAlgo_Algo::WarningStatus()const
|
||||
Standard_Integer BOPAlgo_Algo::WarningStatus()const
|
||||
{
|
||||
return myWarningStatus;
|
||||
}
|
||||
//=======================================================================
|
||||
//function : SetRunParallel
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
void BOPAlgo_Algo::SetRunParallel(const Standard_Boolean theFlag)
|
||||
{
|
||||
myRunParallel=theFlag;
|
||||
}
|
||||
//=======================================================================
|
||||
//function : RunParallel
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
Standard_Boolean BOPAlgo_Algo::RunParallel()const
|
||||
{
|
||||
return myRunParallel;
|
||||
}
|
||||
// myErrorStatus
|
||||
//
|
||||
// 1 - object is just initialized
|
||||
|
Reference in New Issue
Block a user