--
-- protected methods
--
+ --
+ PerformInternal(me:out;
+ theDSF: DSFiller from NMTTools)
+ ---Purpose: Performs calculations using prepared DSFiller
+ -- object theDSF
+ is protected;
+ --
PrepareHistory (me:out)
---Purpose: Prepare information for history support
is redefined protected;
mySameDomainShapes: IndexedDataMapOfShapeShape from TopTools is protected;
-- solids
myDraftSolids : IndexedDataMapOfShapeShape from TopTools is protected;
-
+ myEntryPoint : Integer from Standard is protected;
--
end Builder;
{
myNbTypes=9;
myDSFiller=NULL;
+ myEntryPoint=0; // Entry point through PerformWithFiller ()
}
//=======================================================================
//function : ~
//=======================================================================
GEOMAlgo_Builder::~GEOMAlgo_Builder()
{
+ if (myEntryPoint==1) {
+ if (myDSFiller) {
+ delete myDSFiller;
+ myDSFiller=NULL;
+ }
+ }
}
//=======================================================================
//function : AddCompound
aBB.Add(aCS, aS);
}
//
+ if (myDSFiller) {
+ delete myDSFiller;
+ myDSFiller=NULL;
+ }
NMTTools_DSFiller* pDSF=new NMTTools_DSFiller;
//
pDSF->SetCompositeShape(aCS);
pDSF->Perform();
//
- PerformWithFiller(*pDSF);
+ myEntryPoint=1;
+ PerformInternal(*pDSF);
}
//=======================================================================
//function : PerformWithFiller
//purpose :
//=======================================================================
void GEOMAlgo_Builder::PerformWithFiller(const NMTTools_DSFiller& theDSF)
+{
+ myEntryPoint=0;
+ //
+ PerformInternal(theDSF);
+}
+//=======================================================================
+//function : PerformInternal
+//purpose :
+//=======================================================================
+ void GEOMAlgo_Builder::PerformInternal(const NMTTools_DSFiller& theDSF)
{
myErrorStatus=0;
//
// Methods PROTECTED
//
+//! Performs calculations using prepared DSFiller <br>
+//! object theDSF <br>
+Standard_EXPORT void PerformInternal(const NMTTools_DSFiller& theDSF) ;
+
//! Prepare information for history support <br>
Standard_EXPORT virtual void PrepareHistory() ;
BRepAlgo_Image mySplitFaces;
TopTools_IndexedDataMapOfShapeShape mySameDomainShapes;
TopTools_IndexedDataMapOfShapeShape myDraftSolids;
+Standard_Integer myEntryPoint;
private: