MEDMEM::SUPPORT Class Reference

Collaboration diagram for MEDMEM::SUPPORT:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 SUPPORT ()
 SUPPORT (MESH *Mesh, string Name="", MED_EN::medEntityMesh Entity=MED_EN::MED_CELL)
 SUPPORT (const SUPPORT &m)
virtual ~SUPPORT ()
SUPPORToperator= (const SUPPORT &support)
bool operator== (const SUPPORT &support) const
bool deepCompare (const SUPPORT &support) const
void update ()
void setName (string Name)
void setDescription (string Description)
void setMesh (MESH *Mesh) const
void setMeshDirectly (MESH *Mesh) const
void setMeshName (const string &meshName)
void setAll (bool All)
void setEntity (MED_EN::medEntityMesh Entity)
void setNumberOfGeometricType (int NumberOfGeometricType)
void setGeometricType (const MED_EN::medGeometryElement *GeometricType)
void setNumberOfElements (const int *NumberOfElements)
void setNumber (MEDSKYLINEARRAY *Number)
void setNumber (const int *index, const int *value, bool shallowCopy=false)
string getName () const
string getDescription () const
virtual MESHgetMesh () const
string getMeshName () const
MED_EN::medEntityMesh getEntity () const
bool isOnAllElements () const
int getNumberOfTypes () const
const MED_EN::medGeometryElement * getTypes () const
int getNumberOfElements (MED_EN::medGeometryElement GeometricType) const throw (MEDEXCEPTION)
const int * getNumberOfElements () const throw (MEDEXCEPTION)
virtual MEDSKYLINEARRAY * getnumber () const throw (MEDEXCEPTION)
virtual MEDSKYLINEARRAY * getnumberFromFile () const throw (MEDEXCEPTION)
virtual const int * getNumber (MED_EN::medGeometryElement GeometricType) const throw (MEDEXCEPTION)
virtual const int * getNumberFromFile (MED_EN::medGeometryElement GeometricType) const throw (MEDEXCEPTION)
virtual const int * getNumberIndex () const throw (MEDEXCEPTION)
virtual int getValIndFromGlobalNumber (const int number) const throw (MEDEXCEPTION)
void blending (SUPPORT *mySupport) throw (MEDEXCEPTION)
void setpartial (string Description, int NumberOfGeometricType, int TotalNumberOfEntity, MED_EN::medGeometryElement *GeometricType, const int *NumberOfEntity, const int *NumberValue)
void setpartial (MEDSKYLINEARRAY *number, bool shallowCopy=false) throw (MEDEXCEPTION)
void setpartial_fromfile (MEDSKYLINEARRAY *number, bool shallowCopy=false) throw (MEDEXCEPTION)
void setProfilNames (vector< string > profilNames) throw (MEDEXCEPTION)
vector< string > getProfilNames () const throw (MEDEXCEPTION)
void getBoundaryElements () throw (MEDEXCEPTION)
void changeElementsNbs (MED_EN::medEntityMesh entity, const int *renumberingFromOldToNew, int limitNbClassicPoly, const int *renumberingFromOldToNewPoly=0)
void intersecting (SUPPORT *mySupport) throw (MEDEXCEPTION)
bool belongsTo (const SUPPORT &other, bool deepCompare=false) const
SUPPORTgetComplement () const
SUPPORTsubstract (const SUPPORT &other) const throw (MEDEXCEPTION)
SUPPORTgetBoundaryElements (MED_EN::medEntityMesh Entity) const throw (MEDEXCEPTION)
void fillFromNodeList (const list< int > &listOfNode) throw (MEDEXCEPTION)
void fillFromElementList (const list< int > &listOfElt) throw (MEDEXCEPTION)
void clearDataOnNumbers ()
MESHmakeMesh ()
virtual void addReference () const
virtual void removeReference () const

Static Protected Member Functions

static list< int > * sub (int start, int end, const int *idsToSuppress, int lgthIdsToSuppress)
static list< int > * sub (const int *ids, int lgthIds, const int *idsToSuppress, int lgthIdsToSuppress)

Protected Attributes

string _name
string _meshName
string _description
MESH_mesh
MED_EN::medEntityMesh _entity
int _numberOfGeometricType
PointerOf
< MED_EN::medGeometryElement > 
_geometricType
bool _isOnAllElts
PointerOf< int > _numberOfElements
int _totalNumberOfElements
MEDSKYLINEARRAY * _number
MEDSKYLINEARRAY * _number_fromfile
vector< string > _profilNames

Friends

MEDMEM_EXPORT ostream & operator<< (ostream &os, const SUPPORT &my)

Detailed Description

This class describe a support of elements on an entity of the mesh.

It contains the list of meshes elements for an entity (MED_NODE, MED_CELL, MED_FACE or MED_EDGE).

Examples:

FIELDcreate.cxx.


Constructor & Destructor Documentation

SUPPORT::SUPPORT (  ) 

Constructor.

MEDMEM::SUPPORT::SUPPORT ( MESH Mesh,
string  Name = "",
MED_EN::medEntityMesh  Entity = MED_EN::MED_CELL 
)
SUPPORT::~SUPPORT (  )  [virtual]

Destructor.

References clearDataOnNumbers().


Member Function Documentation

SUPPORT & SUPPORT::operator= ( const SUPPORT support  ) 
bool MEDMEM::SUPPORT::operator== ( const SUPPORT support  )  const

operator == This operator does not compare attributs _name and _description.

bool MEDMEM::SUPPORT::deepCompare ( const SUPPORT support  )  const

operator == + in case false a test if coordinates and connectivity of _mesh and support->_mesh are the same

References _entity, _geometricType, _isOnAllElts, _mesh, _numberOfElements, _numberOfGeometricType, _totalNumberOfElements, MEDMEM::MESH::deepCompare(), and getNumber().

void SUPPORT::update (  ) 
void MEDMEM::SUPPORT::setName ( string  Name  ) 

set the attribute _name to Name

References _name.

Referenced by getComplement().

void MEDMEM::SUPPORT::setDescription ( string  Description  ) 

set the attribute _description to Description

References _description.

void SUPPORT::setMesh ( MESH Mesh  )  const

set the reference _mesh to Mesh

Referenced by getComplement(), and substract().

void MEDMEM::SUPPORT::setMeshDirectly ( MESH Mesh  )  const
void MEDMEM::SUPPORT::setMeshName ( const string &  meshName  ) 

set the meshName if there is ni reference _mesh to Mesh

References _mesh, and _meshName.

void MEDMEM::SUPPORT::setEntity ( MED_EN::medEntityMesh  Entity  ) 

set the attribute _entity to Entity

References _entity.

Referenced by getComplement(), and substract().

void MEDMEM::SUPPORT::setNumberOfGeometricType ( int  NumberOfGeometricType  ) 

set the attribute _numberOfGeometricType to NumberOfGeometricType

References _geometricType, _numberOfElements, and _numberOfGeometricType.

Referenced by getBoundaryElements(), and MEDMEM::MESH::getSkin().

void MEDMEM::SUPPORT::setGeometricType ( const MED_EN::medGeometryElement *  GeometricType  ) 

set the attribute _geometricType to geometricType

References _geometricType, _name, _numberOfGeometricType, and _profilNames.

Referenced by getBoundaryElements(), and MEDMEM::MESH::getSkin().

void MEDMEM::SUPPORT::setNumberOfElements ( const int *  NumberOfElements  ) 

Set the attribute _numberOfElements to NumberOfElements and calculate the total number of elements.

References _numberOfElements, _numberOfGeometricType, and _totalNumberOfElements.

Referenced by getBoundaryElements(), and MEDMEM::MESH::getSkin().

void MEDMEM::SUPPORT::setNumber ( MEDSKYLINEARRAY *  Number  ) 

set the attribute _totalNumberOfElements to TotalNumberOfElements

set the attribute _number to Number

References _isOnAllElts, and _number.

Referenced by MEDMEM::MESH::getSkin().

void MEDMEM::SUPPORT::setNumber ( const int *  index,
const int *  value,
bool  shallowCopy = false 
)

set the attribute _number with index and value arrays

References _number, _numberOfGeometricType, and _totalNumberOfElements.

string MEDMEM::SUPPORT::getName (  )  const

returns the name of the support.

References _name.

Referenced by makeMesh().

string MEDMEM::SUPPORT::getDescription (  )  const

returns the description of the support.

References _description.

MESH * MEDMEM::SUPPORT::getMesh (  )  const [virtual]
string SUPPORT::getMeshName (  )  const

returns the mesh name

References _mesh, _meshName, and MEDMEM::MESH::getName().

MED_EN::medEntityMesh MEDMEM::SUPPORT::getEntity (  )  const

Returns the medEntityMesh's type used by the support. Note : A support deals only with one entity's type (for example : MED_FACE or MED_NODE)

References _entity.

Referenced by MEDMEM::MED::addField(), and MEDMEM::FIELD< T, INTERLACING_TAG >::buildGradient().

bool MEDMEM::SUPPORT::isOnAllElements (  )  const

Returns true if all elements of this entity are concerned, false otherwise. If true, you must use mesh reference (getMesh) to get more information.

References _isOnAllElts.

Referenced by MEDMEM::FIELD< T, INTERLACING_TAG >::isOnAllElements().

int MEDMEM::SUPPORT::getNumberOfTypes (  )  const

Returns number of geometric Types defines in the support

References _numberOfGeometricType.

Referenced by MEDMEM::FIELD< T, INTERLACING_TAG >::getNumberOfGeometricTypes().

const MED_EN::medGeometryElement * MEDMEM::SUPPORT::getTypes (  )  const

If isOnAllElements is false, returns an array of medGeometryElement types used by the support.

References _geometricType.

Referenced by MEDMEM::FIELD< T, INTERLACING_TAG >::getGeometricTypes(), and makeMesh().

int SUPPORT::getValIndFromGlobalNumber ( const int  number  )  const throw (MEDEXCEPTION) [virtual]

Get the field value index (in fortran mode) from the support global number. Becareful, it doesn't take care of the field number of components

void MEDMEM::SUPPORT::setpartial ( string  Description,
int  NumberOfGeometricType,
int  TotalNumberOfEntity,
MED_EN::medGeometryElement *  GeometricType,
const int *  NumberOfEntity,
const int *  NumberValue 
)
void SUPPORT::setpartial ( MEDSKYLINEARRAY *  number,
bool  shallowCopy = false 
) throw (MEDEXCEPTION)
void SUPPORT::setpartial_fromfile ( MEDSKYLINEARRAY *  number,
bool  shallowCopy = false 
) throw (MEDEXCEPTION)
void SUPPORT::setProfilNames ( vector< string >  profilNames  )  throw (MEDEXCEPTION)
vector< string > SUPPORT::getProfilNames (  )  const throw (MEDEXCEPTION)

References _profilNames.

void MEDMEM::SUPPORT::changeElementsNbs ( MED_EN::medEntityMesh  entity,
const int *  renumberingFromOldToNew,
int  limitNbClassicPoly,
const int *  renumberingFromOldToNewPoly = 0 
)
bool MEDMEM::SUPPORT::belongsTo ( const SUPPORT other,
bool  deepCompare = false 
) const
SUPPORT * MEDMEM::SUPPORT::getComplement (  )  const

returns a new SUPPORT (responsability to caller to destroy it) that is the complement to "this", lying on the same entity than "this".

References _entity, _isOnAllElts, _mesh, _name, _number, MEDMEM::MESH::buildSupportOnElementsFromElementList(), MEDMEM::MESH::buildSupportOnNodeFromElementList(), getNumberOfElements(), MEDMEM::MESH::getNumberOfElements(), setEntity(), setMesh(), setName(), and sub().

Referenced by substract().

SUPPORT * MEDMEM::SUPPORT::substract ( const SUPPORT other  )  const throw (MEDEXCEPTION)

returns a new support the user should delete.

References getComplement(), setEntity(), and setMesh().

SUPPORT* MEDMEM::SUPPORT::getBoundaryElements ( MED_EN::medEntityMesh  Entity  )  const throw (MEDEXCEPTION)
void MEDMEM::SUPPORT::fillFromNodeList ( const list< int > &  listOfNode  )  throw (MEDEXCEPTION)

Method that fills this and updates all its attributes in order to lye on the the listOfNode.

void MEDMEM::SUPPORT::fillFromElementList ( const list< int > &  listOfElt  )  throw (MEDEXCEPTION)
void MEDMEM::SUPPORT::clearDataOnNumbers (  ) 

Method that cleans up all the fields related to _numbers. Defined for code factorization.

References _number, and _totalNumberOfElements.

Referenced by ~SUPPORT().

MESH * SUPPORT::makeMesh (  ) 

creates a MESH that contains only the elements in the current support.

SUPPORT_advanced

The output mesh has no group, nor elements of connectivity lesser than that of the present support. The method does not handle polygon or polyhedral elements. Nodes are renumbered so that they are numberd from 1 to N in the new mesh. The order of the elements in the new mesh corresponds to that of the elements in the original support.

References _entity, _isOnAllElts, _mesh, _numberOfElements, MEDMEM::MESH::getConnectivity(), MEDMEM::MESH::getConnectivityIndex(), MEDMEM::MESH::getConnectivityptr(), MEDMEM::MESH::getCoordinates(), MEDMEM::MESH::getCoordinatesNames(), MEDMEM::MESH::getCoordinatesSystem(), MEDMEM::MESH::getCoordinatesUnits(), MEDMEM::MESH::getGlobalNumberingIndex(), MEDMEM::MESH::getMeshDimension(), getName(), getNumber(), MEDMEM::MESH::getNumberOfElements(), getNumberOfElements(), MEDMEM::MESH::getNumberOfNodes(), MEDMEM::MESH::getPolygonsConnectivity(), MEDMEM::MESH::getPolygonsConnectivityIndex(), MEDMEM::MESH::getPolyhedronConnectivity(), MEDMEM::MESH::getPolyhedronFacesIndex(), MEDMEM::MESH::getPolyhedronIndex(), MEDMEM::MESH::getSpaceDimension(), MEDMEM::MESH::getTypes(), getTypes(), MEDMEM::MESHING::setConnectivity(), MEDMEM::MESHING::setCoordinates(), MEDMEM::MESHING::setCoordinatesNames(), MEDMEM::MESHING::setCoordinatesUnits(), MEDMEM::MESHING::setMeshDimension(), MEDMEM::MESH::setName(), MEDMEM::MESHING::setNumberOfElements(), MEDMEM::MESHING::setNumberOfTypes(), MEDMEM::MESHING::setPolygonsConnectivity(), MEDMEM::MESHING::setPolyhedraConnectivity(), MEDMEM::MESHING::setSpaceDimension(), and MEDMEM::MESHING::setTypes().

void MEDMEM::SUPPORT::addReference (  )  const [virtual]

addReference : reference counter presently disconnected in C++ -> just connected for client.

Referenced by MEDMEM::FIELD_::FIELD_(), and MEDMEM::FIELD_::setSupport().

void MEDMEM::SUPPORT::removeReference (  )  const [virtual]

removeReference : reference counter presently disconnected in C++ -> just connected for client.

Referenced by MEDMEM::FIELD_::setSupport().

list< int > * MEDMEM::SUPPORT::sub ( int  start,
int  end,
const int *  idsToSuppress,
int  lgthIdsToSuppress 
) [static, protected]

performs a common operation : Sub builds a sorted int array that is obtained by supression of all ids contained in array defined by (idsToSuppress,lgthIdsToSuppress) from array [start ... end] Example sub(0,7,{1,2,5},3) => {0,3,4,6,7} - WARNING returned list should be deallocated !

References compareId().

Referenced by getComplement().

list< int > * MEDMEM::SUPPORT::sub ( const int *  ids,
int  lgthIds,
const int *  idsToSuppress,
int  lgthIdsToSuppress 
) [static, protected]

performs a common operation : Sub builds a sorted int array that is obtained by supression of all ids contained in array defined by (idsToSuppress,lgthIdsToSuppress) from array [start ... end] Example sub({1,3,4,5,6,7,9},7,{1,2,5},3) => {3,4,6,7,9} - WARNING returned list should be deallocated !

References compareId().


Friends And Related Function Documentation

MEDMEM_EXPORT ostream& operator<< ( ostream &  os,
const SUPPORT my 
) [friend]

Member Data Documentation

string MEDMEM::SUPPORT::_name [protected]
string MEDMEM::SUPPORT::_meshName [mutable, protected]

Referenced by getMeshName(), and setMeshName().

string MEDMEM::SUPPORT::_description [protected]
MESH* MEDMEM::SUPPORT::_mesh [mutable, protected]
MED_EN::medEntityMesh MEDMEM::SUPPORT::_entity [protected]
PointerOf<MED_EN::medGeometryElement> MEDMEM::SUPPORT::_geometricType [protected]
PointerOf<int> MEDMEM::SUPPORT::_numberOfElements [protected]
MEDSKYLINEARRAY* MEDMEM::SUPPORT::_number [mutable, protected]
MEDSKYLINEARRAY* MEDMEM::SUPPORT::_number_fromfile [mutable, protected]

Referenced by getnumberFromFile().

vector< string > MEDMEM::SUPPORT::_profilNames [protected]
Generated on Sat May 1 03:22:51 2010 for Med Memory Users' Guide by  doxygen 1.6.3