Version: 9.12.0
SMESH_GroupBase_i Class Reference

#include <SMESH_Group_i.hxx>

Inheritance diagram for SMESH_GroupBase_i:

Public Member Functions

 SMESH_GroupBase_i (PortableServer::POA_ptr thePOA, SMESH_Mesh_i *theMeshServant, const int theLocalID)
 
virtual ~SMESH_GroupBase_i ()
 
void SetName (const char *name)
 
char * GetName ()
 
SMESH::ElementType GetType ()
 
SMESH::smIdType Size ()
 
CORBA::Boolean IsEmpty ()
 
CORBA::Boolean Contains (SMESH::smIdType elem_id)
 
SMESH::smIdType GetID (SMESH::smIdType elem_index)
 Return ID of theIndex-th group item. More...
 
SMESH::smIdType_arrayGetListOfID ()
 
SMESH::smIdType_arrayGetNodeIDs ()
 Return IDs of nodes of cells included to the group. More...
 
SMESH::smIdType GetNumberOfNodes ()
 return the number of nodes of cells included to the group More...
 
CORBA::Boolean IsNodeInfoAvailable ()
 Return true if GetNumberOfNodes() won't take a long time for computation. More...
 
virtual SMESH::SMESH_Mesh_ptr GetMesh ()
 
virtual SMESH::smIdType_arrayGetMeshInfo ()
 Returns number of mesh elements of each EntityType Result array of number of elements per EntityType Inherited from SMESH_IDSource. More...
 
virtual SMESH::smIdType_arrayGetNbElementsByType ()
 Returns number of mesh elements of each ElementType. More...
 
virtual SMESH::smIdType_arrayGetIDs ()
 Returns a sequence of all element IDs. More...
 
virtual SMESH::array_of_ElementTypeGetTypes ()
 Returns types of elements it contains Inherited from SMESH_IDSource interface. More...
 
virtual bool IsMeshInfoCorrect ()
 Returns false if GetMeshInfo() returns incorrect information that may happen if mesh data is not yet fully loaded from the file of study. More...
 
virtual SALOMEDS::TMPFile * GetVtkUgStream ()
 Returns mesh unstructed grid information. More...
 
virtual CORBA::Boolean IsInDependency (SMESH::SMESH_GroupBase_ptr other)
 Returns true if this group depends on the other via FT_BelongToMeshGroup predicate or vice versa. More...
 
int GetLocalID () const
 
SMESH_Mesh_iGetMeshServant () const
 
SMESH_GroupGetSmeshGroup () const
 
SMESHDS_GroupBaseGetGroupDS () const
 
void SetColor (const SALOMEDS::Color &color)
 
SALOMEDS::Color GetColor ()
 
void SetColorNumber (CORBA::Long color)
 
CORBA::Long GetColorNumber ()
 
virtual void OnBaseObjModified (NotifyerAndWaiter *, bool)
 
void Modified (bool removed=false, NotifyerAndWaiter *who=0)
 calls OnBaseObjModified(), if who != this, and myWaiters[i]->Modified(who) More...
 
void AddModifWaiter (NotifyerAndWaiter *waiter)
 Stores an object to be notified on change of predicate. More...
 
void RemoveModifWaiter (NotifyerAndWaiter *waiter)
 Removes an object to be notified on change of predicate. More...
 
bool ContainModifWaiter (NotifyerAndWaiter *waiter)
 Checks if a waiter is among myWaiters, maybe nested. More...
 

Data Fields

std::list< NotifyerAndWaiter * > myWaiters
 

Protected Member Functions

SMESH_PreMeshInfo *& changePreMeshInfo ()
 

Protected Attributes

SMESH_PreMeshInfomyPreMeshInfo
 
int myNbNodes
 
int myGroupDSTic
 

Private Member Functions

void changeLocalId (int localId)
 

Private Attributes

SMESH_Mesh_imyMeshServant
 
int myLocalID
 

Friends

class SMESH_PreMeshInfo
 
class SMESH_Mesh_i
 

Constructor & Destructor Documentation

◆ SMESH_GroupBase_i()

SMESH_GroupBase_i::SMESH_GroupBase_i ( PortableServer::POA_ptr  thePOA,
SMESH_Mesh_i theMeshServant,
const int  theLocalID 
)

◆ ~SMESH_GroupBase_i()

SMESH_GroupBase_i::~SMESH_GroupBase_i ( )
virtual

References myPreMeshInfo.

Member Function Documentation

◆ AddModifWaiter()

void SMESH::NotifyerAndWaiter::AddModifWaiter ( NotifyerAndWaiter waiter)
inherited

Stores an object to be notified on change of predicate.

References SMESH::NotifyerAndWaiter::myWaiters.

Referenced by SMESH::Filter_i::FindBaseObjects().

◆ changeLocalId()

void SMESH_GroupBase_i::changeLocalId ( int  localId)
private

◆ changePreMeshInfo()

SMESH_PreMeshInfo* & SMESH_GroupBase_i::changePreMeshInfo ( )
protected

◆ ContainModifWaiter()

bool SMESH::NotifyerAndWaiter::ContainModifWaiter ( NotifyerAndWaiter waiter)
inherited

Checks if a waiter is among myWaiters, maybe nested.

References SMESH::NotifyerAndWaiter::myWaiters.

◆ Contains()

CORBA::Boolean SMESH_GroupBase_i::Contains ( SMESH::smIdType  elem_id)

◆ GetColor()

SALOMEDS::Color SMESH_GroupBase_i::GetColor ( )

◆ GetColorNumber()

CORBA::Long SMESH_GroupBase_i::GetColorNumber ( )

◆ GetGroupDS()

◆ GetID()

SMESH::smIdType SMESH_GroupBase_i::GetID ( SMESH::smIdType  elem_index)

◆ GetIDs()

SMESH::smIdType_array * SMESH_GroupBase_i::GetIDs ( )
virtual

Returns a sequence of all element IDs.

References GetListOfID().

◆ GetListOfID()

◆ GetLocalID()

◆ GetMesh()

SMESH::SMESH_Mesh_ptr SMESH_GroupBase_i::GetMesh ( )
virtual

References myMeshServant.

◆ GetMeshInfo()

SMESH::smIdType_array * SMESH_GroupBase_i::GetMeshInfo ( )
virtual

Returns number of mesh elements of each EntityType Result array of number of elements per EntityType Inherited from SMESH_IDSource.

Reimplemented in SMESH_GroupOnFilter_i.

References SMESH_Mesh_i::CollectMeshInfo(), SMESH::Entity_Last, SMESH::Entity_Node, GetGroupDS(), SMESH_PreMeshInfo::GetMeshInfo(), GetNumberOfNodes(), myPreMeshInfo, SMDSAbs_Node, and SMDSEntity_Node.

◆ GetMeshServant()

◆ GetName()

char * SMESH_GroupBase_i::GetName ( )

◆ GetNbElementsByType()

SMESH::smIdType_array * SMESH_GroupBase_i::GetNbElementsByType ( )
virtual

Returns number of mesh elements of each ElementType.

References GetType(), myPreMeshInfo, SMESH::NB_ELEMENT_TYPES, SMDS_MeshInfo::NbElements(), and Size().

◆ GetNodeIDs()

SMESH::smIdType_array * SMESH_GroupBase_i::GetNodeIDs ( )

Return IDs of nodes of cells included to the group.

References SMESH_PreMeshInfo::FullLoadFromFile(), GetGroupDS(), GetListOfID(), GetType(), myPreMeshInfo, and SMESH::NODE.

◆ GetNumberOfNodes()

SMESH::smIdType SMESH_GroupBase_i::GetNumberOfNodes ( )

return the number of nodes of cells included to the group

References SMESH_PreMeshInfo::FullLoadFromFile(), GetGroupDS(), GetType(), myGroupDSTic, myNbNodes, myPreMeshInfo, SMESH::NODE, and Size().

Referenced by GetMeshInfo(), and SMESH_GroupOnFilter_i::GetMeshInfo().

◆ GetSmeshGroup()

SMESH_Group * SMESH_GroupBase_i::GetSmeshGroup ( ) const

◆ GetType()

◆ GetTypes()

SMESH::array_of_ElementType * SMESH_GroupBase_i::GetTypes ( )
virtual

Returns types of elements it contains Inherited from SMESH_IDSource interface.

References GetType(), and IsEmpty().

◆ GetVtkUgStream()

SALOMEDS::TMPFile * SMESH_GroupBase_i::GetVtkUgStream ( )
virtual

Returns mesh unstructed grid information.

◆ IsEmpty()

CORBA::Boolean SMESH_GroupBase_i::IsEmpty ( )

◆ IsInDependency()

bool SMESH_GroupBase_i::IsInDependency ( SMESH::SMESH_GroupBase_ptr  other)
virtual

Returns true if this group depends on the other via FT_BelongToMeshGroup predicate or vice versa.

◆ IsMeshInfoCorrect()

bool SMESH_GroupBase_i::IsMeshInfoCorrect ( )
virtual

Returns false if GetMeshInfo() returns incorrect information that may happen if mesh data is not yet fully loaded from the file of study.

Reimplemented in SMESH_GroupOnFilter_i.

References SMESH_PreMeshInfo::IsMeshInfoCorrect(), and myPreMeshInfo.

◆ IsNodeInfoAvailable()

CORBA::Boolean SMESH_GroupBase_i::IsNodeInfoAvailable ( )

Return true if GetNumberOfNodes() won't take a long time for computation.

References GetGroupDS(), GetType(), myGroupDSTic, myNbNodes, myPreMeshInfo, and SMESH::NODE.

◆ Modified()

◆ OnBaseObjModified()

virtual void SMESH::NotifyerAndWaiter::OnBaseObjModified ( NotifyerAndWaiter ,
bool   
)
virtualinherited

Reimplemented in SMESH::Filter_i.

Referenced by SMESH::NotifyerAndWaiter::Modified().

◆ RemoveModifWaiter()

void SMESH::NotifyerAndWaiter::RemoveModifWaiter ( NotifyerAndWaiter waiter)
inherited

Removes an object to be notified on change of predicate.

References SMESH::NotifyerAndWaiter::myWaiters.

◆ SetColor()

void SMESH_GroupBase_i::SetColor ( const SALOMEDS::Color &  color)

◆ SetColorNumber()

void SMESH_GroupBase_i::SetColorNumber ( CORBA::Long  color)

◆ SetName()

◆ Size()

Friends And Related Function Documentation

◆ SMESH_Mesh_i

friend class SMESH_Mesh_i
friend

◆ SMESH_PreMeshInfo

friend class SMESH_PreMeshInfo
friend

Field Documentation

◆ myGroupDSTic

int SMESH_GroupBase_i::myGroupDSTic
protected

◆ myLocalID

int SMESH_GroupBase_i::myLocalID
private

Referenced by GetSmeshGroup().

◆ myMeshServant

SMESH_Mesh_i* SMESH_GroupBase_i::myMeshServant
private

Referenced by GetMesh(), GetSmeshGroup(), and SetName().

◆ myNbNodes

int SMESH_GroupBase_i::myNbNodes
protected

◆ myPreMeshInfo

◆ myWaiters