Version: 8.3.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 ()
 
CORBA::Long Size ()
 
CORBA::Boolean IsEmpty ()
 
CORBA::Boolean Contains (CORBA::Long elem_id)
 
CORBA::Long GetID (CORBA::Long elem_index)
 
SMESH::long_arrayGetListOfID ()
 
SMESH::long_arrayGetNodeIDs ()
 Return IDs of nodes of cells included to the group. More...
 
CORBA::Long 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::long_arrayGetMeshInfo ()
 Returns number of mesh elements of each EntityType Result array of number of elements per EntityType Inherited from SMESH_IDSource. More...
 
virtual SMESH::long_arrayGetNbElementsByType ()
 Returns number of mesh elements of each ElementType. More...
 
virtual SMESH::long_arrayGetIDs ()
 Returns a sequence of all element IDs. More...
 
virtual
SMESH::array_of_ElementType
GetTypes ()
 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 *obj, bool removed)
 
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 ( PortableServer::POA_ptr  thePOA,
SMESH_Mesh_i theMeshServant,
const int  theLocalID 
)
SMESH_GroupBase_i::~SMESH_GroupBase_i ( )
virtual

References myPreMeshInfo.

Member Function Documentation

void 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().

void SMESH_GroupBase_i::changeLocalId ( int  localId)
private
SMESH_PreMeshInfo* & SMESH_GroupBase_i::changePreMeshInfo ( )
protected
bool NotifyerAndWaiter::ContainModifWaiter ( NotifyerAndWaiter waiter)
inherited

Checks if a waiter is among myWaiters, maybe nested.

References SMESH::NotifyerAndWaiter::myWaiters.

Referenced by IsInDependency().

CORBA::Boolean SMESH_GroupBase_i::Contains ( CORBA::Long  elem_id)
SALOMEDS::Color SMESH_GroupBase_i::GetColor ( )
CORBA::Long SMESH_GroupBase_i::GetColorNumber ( )
CORBA::Long SMESH_GroupBase_i::GetID ( CORBA::Long  elem_index)
SMESH::long_array * SMESH_GroupBase_i::GetIDs ( )
virtual

Returns a sequence of all element IDs.

References GetListOfID().

SMESH::SMESH_Mesh_ptr SMESH_GroupBase_i::GetMesh ( )
virtual

References myMeshServant.

SMESH::long_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.

SMESH_Mesh_i* SMESH_GroupBase_i::GetMeshServant ( ) const
char * SMESH_GroupBase_i::GetName ( )
SMESH::long_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().

SMESH::long_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.

CORBA::Long 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().

SMESH_Group * SMESH_GroupBase_i::GetSmeshGroup ( ) const
SMESH::array_of_ElementType * SMESH_GroupBase_i::GetTypes ( )
virtual

Returns types of elements it contains Inherited from SMESH_IDSource interface.

References GetType(), and IsEmpty().

Referenced by SMESH_Mesh_i::ConvertToStandalone().

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

Returns mesh unstructed grid information.

CORBA::Boolean SMESH_GroupBase_i::IsEmpty ( )
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.

References SMESH::NotifyerAndWaiter::ContainModifWaiter().

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.

References SMESH_PreMeshInfo::IsMeshInfoCorrect(), and myPreMeshInfo.

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.

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

Reimplemented in SMESH::Filter_i.

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

void NotifyerAndWaiter::RemoveModifWaiter ( NotifyerAndWaiter waiter)
inherited

Removes an object to be notified on change of predicate.

References SMESH::NotifyerAndWaiter::myWaiters.

Referenced by SMESH_GroupOnFilter_i::~SMESH_GroupOnFilter_i().

void SMESH_GroupBase_i::SetColor ( const SALOMEDS::Color &  color)
void SMESH_GroupBase_i::SetColorNumber ( CORBA::Long  color)

Friends And Related Function Documentation

friend class SMESH_Mesh_i
friend
friend class SMESH_PreMeshInfo
friend

Field Documentation

int SMESH_GroupBase_i::myGroupDSTic
protected
int SMESH_GroupBase_i::myLocalID
private

Referenced by GetSmeshGroup().

SMESH_Mesh_i* SMESH_GroupBase_i::myMeshServant
private

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

int SMESH_GroupBase_i::myNbNodes
protected