Open CASCADE Technology  6.9.0
Public Member Functions | Protected Member Functions | Protected Attributes
BOPDS_Iterator Class Reference

The class BOPDS_Iterator is 1.to compute intersections between BRep sub-shapes of arguments of an operation (see the class BOPDS_DS) in terms of theirs bounding boxes 2.provides interface to iterare the pairs of intersected sub-shapes of given type. More...

#include <BOPDS_Iterator.hxx>

Inheritance diagram for BOPDS_Iterator:
Inheritance graph
[legend]

Public Member Functions

 BOPDS_Iterator ()
 Empty contructor. More...
 
virtual ~BOPDS_Iterator ()
 
 BOPDS_Iterator (const BOPCol_BaseAllocator &theAllocator)
 Contructor theAllocator - the allocator to manage the memory. More...
 
void SetDS (const BOPDS_PDS &pDS)
 Modifier Sets the data structure <pDS> to process. More...
 
const BOPDS_DSDS () const
 Selector Returns the data structure. More...
 
void Initialize (const TopAbs_ShapeEnum theType1, const TopAbs_ShapeEnum theType2)
 Initializes the iterator theType1 - the first type of shape theType2 - the second type of shape. More...
 
Standard_Boolean More () const
 Returns true if still there are pairs of intersected shapes. More...
 
void Next ()
 Moves iterations ahead. More...
 
void Value (Standard_Integer &theIndex1, Standard_Integer &theIndex2, Standard_Boolean &theWithSubShape) const
 Returns indices (DS) of intersected shapes theIndex1 - the index of the first shape theIndex2 - the index of the second shape theWithSubShape - flag. True if the sub-shapes of shapes are intersected. More...
 
virtual void Prepare ()
 Perform the intersection algorithm and prepare the results to be used. More...
 
Standard_Integer ExpectedLength () const
 Returns the number of intersections founded. More...
 
Standard_Integer BlockLength () const
 Returns the block length. More...
 
void SetRunParallel (const Standard_Boolean theFlag)
 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. More...
 
Standard_Boolean RunParallel () const
 Returns the flag of parallel processing. More...
 

Protected Member Functions

virtual void Intersect ()
 

Protected Attributes

BOPCol_BaseAllocator myAllocator
 
Standard_Integer myLength
 
BOPDS_PDS myDS
 
BOPDS_VectorOfListOfPassKeyBoolean myLists
 
BOPDS_ListIteratorOfListOfPassKeyBoolean myIterator
 
Standard_Boolean myRunParallel
 

Detailed Description

The class BOPDS_Iterator is 1.to compute intersections between BRep sub-shapes of arguments of an operation (see the class BOPDS_DS) in terms of theirs bounding boxes 2.provides interface to iterare the pairs of intersected sub-shapes of given type.

Constructor & Destructor Documentation

BOPDS_Iterator::BOPDS_Iterator ( )

Empty contructor.

virtual BOPDS_Iterator::~BOPDS_Iterator ( )
virtual
BOPDS_Iterator::BOPDS_Iterator ( const BOPCol_BaseAllocator theAllocator)

Contructor theAllocator - the allocator to manage the memory.

Member Function Documentation

Standard_Integer BOPDS_Iterator::BlockLength ( ) const

Returns the block length.

const BOPDS_DS& BOPDS_Iterator::DS ( ) const

Selector Returns the data structure.

Standard_Integer BOPDS_Iterator::ExpectedLength ( ) const

Returns the number of intersections founded.

void BOPDS_Iterator::Initialize ( const TopAbs_ShapeEnum  theType1,
const TopAbs_ShapeEnum  theType2 
)

Initializes the iterator theType1 - the first type of shape theType2 - the second type of shape.

virtual void BOPDS_Iterator::Intersect ( )
protectedvirtual

Reimplemented in BOPDS_IteratorSI.

Standard_Boolean BOPDS_Iterator::More ( ) const

Returns true if still there are pairs of intersected shapes.

void BOPDS_Iterator::Next ( )

Moves iterations ahead.

virtual void BOPDS_Iterator::Prepare ( )
virtual

Perform the intersection algorithm and prepare the results to be used.

Standard_Boolean BOPDS_Iterator::RunParallel ( ) const

Returns the flag of parallel processing.

void BOPDS_Iterator::SetDS ( const BOPDS_PDS pDS)

Modifier Sets the data structure <pDS> to process.

void BOPDS_Iterator::SetRunParallel ( const Standard_Boolean  theFlag)

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.

void BOPDS_Iterator::Value ( Standard_Integer theIndex1,
Standard_Integer theIndex2,
Standard_Boolean theWithSubShape 
) const

Returns indices (DS) of intersected shapes theIndex1 - the index of the first shape theIndex2 - the index of the second shape theWithSubShape - flag. True if the sub-shapes of shapes are intersected.

Field Documentation

BOPCol_BaseAllocator BOPDS_Iterator::myAllocator
protected
BOPDS_PDS BOPDS_Iterator::myDS
protected
BOPDS_ListIteratorOfListOfPassKeyBoolean BOPDS_Iterator::myIterator
protected
Standard_Integer BOPDS_Iterator::myLength
protected
BOPDS_VectorOfListOfPassKeyBoolean BOPDS_Iterator::myLists
protected
Standard_Boolean BOPDS_Iterator::myRunParallel
protected

The documentation for this class was generated from the following file: